aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/ref/core.internal
diff options
context:
space:
mode:
Diffstat (limited to 'doc/ref/core.internal')
-rw-r--r--doc/ref/core.internal/html/add__channel__arg_8c.html139
-rw-r--r--doc/ref/core.internal/html/add__channel__arg_8h.html140
-rw-r--r--doc/ref/core.internal/html/add__channel__arg_8h_source.html146
-rw-r--r--doc/ref/core.internal/html/alarm_8c.html374
-rw-r--r--doc/ref/core.internal/html/alarm_8h.html200
-rw-r--r--doc/ref/core.internal/html/alarm_8h_source.html205
-rw-r--r--doc/ref/core.internal/html/alarm__heap_8c.html289
-rw-r--r--doc/ref/core.internal/html/alarm__heap_8h.html261
-rw-r--r--doc/ref/core.internal/html/alarm__heap_8h_source.html169
-rw-r--r--doc/ref/core.internal/html/alarm__internal_8h.html216
-rw-r--r--doc/ref/core.internal/html/alarm__internal_8h_source.html170
-rw-r--r--doc/ref/core.internal/html/algorithm_8c.html217
-rw-r--r--doc/ref/core.internal/html/alloc_8c.html219
-rw-r--r--doc/ref/core.internal/html/alloc_8h.html219
-rw-r--r--doc/ref/core.internal/html/alloc_8h_source.html162
-rw-r--r--doc/ref/core.internal/html/alpn_8c.html173
-rw-r--r--doc/ref/core.internal/html/alpn_8h.html173
-rw-r--r--doc/ref/core.internal/html/alpn_8h_source.html152
-rw-r--r--doc/ref/core.internal/html/annotated.html346
-rw-r--r--doc/ref/core.internal/html/atm_8h.html102
-rw-r--r--doc/ref/core.internal/html/atm_8h_source.html195
-rw-r--r--doc/ref/core.internal/html/atm__gcc__atomic_8h.html293
-rw-r--r--doc/ref/core.internal/html/atm__gcc__atomic_8h_source.html177
-rw-r--r--doc/ref/core.internal/html/atm__gcc__sync_8h.html337
-rw-r--r--doc/ref/core.internal/html/atm__gcc__sync_8h_source.html197
-rw-r--r--doc/ref/core.internal/html/atm__win32_8h.html142
-rw-r--r--doc/ref/core.internal/html/atm__win32_8h_source.html240
-rw-r--r--doc/ref/core.internal/html/auth__filters_8h.html137
-rw-r--r--doc/ref/core.internal/html/auth__filters_8h_source.html145
-rw-r--r--doc/ref/core.internal/html/base64_8c.html274
-rw-r--r--doc/ref/core.internal/html/base64_8h.html211
-rw-r--r--doc/ref/core.internal/html/base64_8h_source.html156
-rw-r--r--doc/ref/core.internal/html/basic__timers_8c.html143
-rw-r--r--doc/ref/core.internal/html/bc_s.pngbin0 -> 676 bytes
-rw-r--r--doc/ref/core.internal/html/bdwn.pngbin0 -> 147 bytes
-rw-r--r--doc/ref/core.internal/html/bin__encoder_8c.html200
-rw-r--r--doc/ref/core.internal/html/bin__encoder_8h.html191
-rw-r--r--doc/ref/core.internal/html/bin__encoder_8h_source.html162
-rw-r--r--doc/ref/core.internal/html/byte__buffer_8c.html265
-rw-r--r--doc/ref/core.internal/html/byte__buffer_8h.html416
-rw-r--r--doc/ref/core.internal/html/byte__buffer_8h_source.html212
-rw-r--r--doc/ref/core.internal/html/byte__buffer__queue_8c.html227
-rw-r--r--doc/ref/core.internal/html/byte__buffer__queue_8h.html235
-rw-r--r--doc/ref/core.internal/html/byte__buffer__queue_8h_source.html178
-rw-r--r--doc/ref/core.internal/html/byte__buffer__reader_8c.html200
-rw-r--r--doc/ref/core.internal/html/byte__buffer__reader_8h.html111
-rw-r--r--doc/ref/core.internal/html/byte__buffer__reader_8h_source.html165
-rw-r--r--doc/ref/core.internal/html/call_8c.html954
-rw-r--r--doc/ref/core.internal/html/call_8h.html938
-rw-r--r--doc/ref/core.internal/html/call_8h_source.html330
-rw-r--r--doc/ref/core.internal/html/call__details_8c.html145
-rw-r--r--doc/ref/core.internal/html/call__log__batch_8c.html333
-rw-r--r--doc/ref/core.internal/html/cancellable_8c.html221
-rw-r--r--doc/ref/core.internal/html/cancellable__platform_8h.html113
-rw-r--r--doc/ref/core.internal/html/cancellable__platform_8h_source.html168
-rw-r--r--doc/ref/core.internal/html/census_2context_8h.html110
-rw-r--r--doc/ref/core.internal/html/census_2context_8h_source.html153
-rw-r--r--doc/ref/core.internal/html/census_8h.html369
-rw-r--r--doc/ref/core.internal/html/census_8h_source.html232
-rw-r--r--doc/ref/core.internal/html/census__filter_8h.html137
-rw-r--r--doc/ref/core.internal/html/census__filter_8h_source.html147
-rw-r--r--doc/ref/core.internal/html/channel_2context_8h.html139
-rw-r--r--doc/ref/core.internal/html/channel_2context_8h_source.html154
-rw-r--r--doc/ref/core.internal/html/channel_8c.html639
-rw-r--r--doc/ref/core.internal/html/channel_8h.html405
-rw-r--r--doc/ref/core.internal/html/channel_8h_source.html191
-rw-r--r--doc/ref/core.internal/html/channel__args_8c.html294
-rw-r--r--doc/ref/core.internal/html/channel__args_8h.html293
-rw-r--r--doc/ref/core.internal/html/channel__args_8h_source.html171
-rw-r--r--doc/ref/core.internal/html/channel__connectivity_8c.html232
-rw-r--r--doc/ref/core.internal/html/channel__create_8c.html177
-rw-r--r--doc/ref/core.internal/html/channel__stack_8c.html556
-rw-r--r--doc/ref/core.internal/html/channel__stack_8h.html622
-rw-r--r--doc/ref/core.internal/html/channel__stack_8h_source.html339
-rw-r--r--doc/ref/core.internal/html/chttp2__transport_8c.html651
-rw-r--r--doc/ref/core.internal/html/chttp2__transport_8h.html217
-rw-r--r--doc/ref/core.internal/html/chttp2__transport_8h_source.html160
-rw-r--r--doc/ref/core.internal/html/classes.html177
-rw-r--r--doc/ref/core.internal/html/client__auth__filter_8c.html167
-rw-r--r--doc/ref/core.internal/html/client__channel_8c.html405
-rw-r--r--doc/ref/core.internal/html/client__channel_8h.html293
-rw-r--r--doc/ref/core.internal/html/client__channel_8h_source.html185
-rw-r--r--doc/ref/core.internal/html/client__config_8c.html214
-rw-r--r--doc/ref/core.internal/html/client__config_8h.html231
-rw-r--r--doc/ref/core.internal/html/client__config_8h_source.html158
-rw-r--r--doc/ref/core.internal/html/closed.pngbin0 -> 132 bytes
-rw-r--r--doc/ref/core.internal/html/cmdline_8c.html434
-rw-r--r--doc/ref/core.internal/html/cmdline_8h.html391
-rw-r--r--doc/ref/core.internal/html/cmdline_8h_source.html209
-rw-r--r--doc/ref/core.internal/html/completion__queue_8c.html438
-rw-r--r--doc/ref/core.internal/html/completion__queue_8h.html374
-rw-r--r--doc/ref/core.internal/html/completion__queue_8h_source.html199
-rw-r--r--doc/ref/core.internal/html/compress__filter_8c.html196
-rw-r--r--doc/ref/core.internal/html/compress__filter_8h.html154
-rw-r--r--doc/ref/core.internal/html/compress__filter_8h_source.html145
-rw-r--r--doc/ref/core.internal/html/compression_8h.html305
-rw-r--r--doc/ref/core.internal/html/compression_8h_source.html190
-rw-r--r--doc/ref/core.internal/html/connected__channel_8c.html274
-rw-r--r--doc/ref/core.internal/html/connected__channel_8h.html156
-rw-r--r--doc/ref/core.internal/html/connected__channel_8h_source.html154
-rw-r--r--doc/ref/core.internal/html/connectivity__state_8c.html334
-rw-r--r--doc/ref/core.internal/html/connectivity__state_8h.html344
-rw-r--r--doc/ref/core.internal/html/connectivity__state_8h_source.html194
-rw-r--r--doc/ref/core.internal/html/connector_8c.html183
-rw-r--r--doc/ref/core.internal/html/connector_8h.html233
-rw-r--r--doc/ref/core.internal/html/connector_8h_source.html208
-rw-r--r--doc/ref/core.internal/html/context_8c.html190
-rw-r--r--doc/ref/core.internal/html/cpu_8h.html144
-rw-r--r--doc/ref/core.internal/html/cpu_8h_source.html158
-rw-r--r--doc/ref/core.internal/html/cpu__iphone_8c.html100
-rw-r--r--doc/ref/core.internal/html/cpu__linux_8c.html121
-rw-r--r--doc/ref/core.internal/html/cpu__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/cpu__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/credentials_8c.html825
-rw-r--r--doc/ref/core.internal/html/credentials_8h.html1053
-rw-r--r--doc/ref/core.internal/html/credentials_8h_source.html538
-rw-r--r--doc/ref/core.internal/html/credentials__metadata_8c.html231
-rw-r--r--doc/ref/core.internal/html/credentials__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/credentials__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/dir_03e3f2561cf9e09e514d23ee8902839b.html113
-rw-r--r--doc/ref/core.internal/html/dir_35c0979e6ab890cbca79261dc9fc2958.html103
-rw-r--r--doc/ref/core.internal/html/dir_3f1a464cbd6442b4d6b6ee306c9b0460.html229
-rw-r--r--doc/ref/core.internal/html/dir_3f4beedb24b0e92d29e048ed944a7adc.html105
-rw-r--r--doc/ref/core.internal/html/dir_5349cec9f9058ade8b7779c683443df9.html101
-rw-r--r--doc/ref/core.internal/html/dir_63ea090b1bf0393f23b745b651ae7f2b.html109
-rw-r--r--doc/ref/core.internal/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html99
-rw-r--r--doc/ref/core.internal/html/dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html113
-rw-r--r--doc/ref/core.internal/html/dir_73fa28a1e06161e89b964f34cd202aba.html105
-rw-r--r--doc/ref/core.internal/html/dir_79268b13b30141157b35932967b4e740.html126
-rw-r--r--doc/ref/core.internal/html/dir_8aa15e76222df75340b2e23e43efb3e2.html133
-rw-r--r--doc/ref/core.internal/html/dir_9410f15740cc8f8ab312fa27ab494b45.html187
-rw-r--r--doc/ref/core.internal/html/dir_99f60d2bb6231896bcd2887028065f74.html111
-rw-r--r--doc/ref/core.internal/html/dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html116
-rw-r--r--doc/ref/core.internal/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html125
-rw-r--r--doc/ref/core.internal/html/dir_b758f7a0b27044dfb0efa69af3c473f5.html145
-rw-r--r--doc/ref/core.internal/html/dir_bbc3f91aaf5c0e78deeca586ef449264.html101
-rw-r--r--doc/ref/core.internal/html/dir_bf8522d75c0d0c872d1b1e399b1737b8.html177
-rw-r--r--doc/ref/core.internal/html/dir_c11753f61f8d651d8cfd411cfadfafab.html105
-rw-r--r--doc/ref/core.internal/html/dir_cad3142e04109052413f2d2a2d1813b0.html153
-rw-r--r--doc/ref/core.internal/html/dir_d44c64559bbebec7f509842c48db8b23.html99
-rw-r--r--doc/ref/core.internal/html/dir_d6c86f4345f838817939dd561d8a016c.html142
-rw-r--r--doc/ref/core.internal/html/dir_ea54cbef5e3ffa125df07262bbfc9627.html155
-rw-r--r--doc/ref/core.internal/html/dns__resolver_8c.html141
-rw-r--r--doc/ref/core.internal/html/dns__resolver_8h.html130
-rw-r--r--doc/ref/core.internal/html/dns__resolver_8h_source.html143
-rw-r--r--doc/ref/core.internal/html/doxygen.css1366
-rw-r--r--doc/ref/core.internal/html/doxygen.pngbin0 -> 3779 bytes
-rw-r--r--doc/ref/core.internal/html/dynsections.js97
-rw-r--r--doc/ref/core.internal/html/endpoint_8c.html297
-rw-r--r--doc/ref/core.internal/html/endpoint_8h.html459
-rw-r--r--doc/ref/core.internal/html/endpoint_8h_source.html245
-rw-r--r--doc/ref/core.internal/html/endpoint__pair_8h.html143
-rw-r--r--doc/ref/core.internal/html/endpoint__pair_8h_source.html152
-rw-r--r--doc/ref/core.internal/html/endpoint__pair__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/endpoint__pair__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/env_8h.html156
-rw-r--r--doc/ref/core.internal/html/env_8h_source.html163
-rw-r--r--doc/ref/core.internal/html/env__linux_8c.html121
-rw-r--r--doc/ref/core.internal/html/env__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/env__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/event__string_8c.html129
-rw-r--r--doc/ref/core.internal/html/event__string_8h.html127
-rw-r--r--doc/ref/core.internal/html/event__string_8h_source.html144
-rw-r--r--doc/ref/core.internal/html/fake__transport__security_8c.html245
-rw-r--r--doc/ref/core.internal/html/fake__transport__security_8h.html164
-rw-r--r--doc/ref/core.internal/html/fake__transport__security_8h_source.html165
-rw-r--r--doc/ref/core.internal/html/fd__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/fd__posix_8h.html577
-rw-r--r--doc/ref/core.internal/html/fd__posix_8h_source.html325
-rw-r--r--doc/ref/core.internal/html/file_8c.html146
-rw-r--r--doc/ref/core.internal/html/file_8h.html172
-rw-r--r--doc/ref/core.internal/html/file_8h_source.html166
-rw-r--r--doc/ref/core.internal/html/file__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/file__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/files.html457
-rw-r--r--doc/ref/core.internal/html/format__request_8c.html166
-rw-r--r--doc/ref/core.internal/html/format__request_8h.html162
-rw-r--r--doc/ref/core.internal/html/format__request_8h_source.html150
-rw-r--r--doc/ref/core.internal/html/frame_8h.html371
-rw-r--r--doc/ref/core.internal/html/frame_8h_source.html176
-rw-r--r--doc/ref/core.internal/html/frame__data_8c.html223
-rw-r--r--doc/ref/core.internal/html/frame__data_8h.html288
-rw-r--r--doc/ref/core.internal/html/frame__data_8h_source.html211
-rw-r--r--doc/ref/core.internal/html/frame__goaway_8c.html267
-rw-r--r--doc/ref/core.internal/html/frame__goaway_8h.html326
-rw-r--r--doc/ref/core.internal/html/frame__goaway_8h_source.html207
-rw-r--r--doc/ref/core.internal/html/frame__ping_8c.html219
-rw-r--r--doc/ref/core.internal/html/frame__ping_8h.html224
-rw-r--r--doc/ref/core.internal/html/frame__ping_8h_source.html167
-rw-r--r--doc/ref/core.internal/html/frame__rst__stream_8c.html218
-rw-r--r--doc/ref/core.internal/html/frame__rst__stream_8h.html224
-rw-r--r--doc/ref/core.internal/html/frame__rst__stream_8h_source.html165
-rw-r--r--doc/ref/core.internal/html/frame__settings_8c.html294
-rw-r--r--doc/ref/core.internal/html/frame__settings_8h.html387
-rw-r--r--doc/ref/core.internal/html/frame__settings_8h_source.html244
-rw-r--r--doc/ref/core.internal/html/frame__window__update_8c.html217
-rw-r--r--doc/ref/core.internal/html/frame__window__update_8h.html224
-rw-r--r--doc/ref/core.internal/html/frame__window__update_8h_source.html170
-rw-r--r--doc/ref/core.internal/html/ftv2blank.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2cl.pngbin0 -> 453 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2doc.pngbin0 -> 746 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2folderclosed.pngbin0 -> 616 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2folderopen.pngbin0 -> 597 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2lastnode.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2link.pngbin0 -> 746 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2mlastnode.pngbin0 -> 246 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2mnode.pngbin0 -> 246 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2mo.pngbin0 -> 403 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2node.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2ns.pngbin0 -> 388 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2plastnode.pngbin0 -> 229 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2pnode.pngbin0 -> 229 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2splitbar.pngbin0 -> 314 bytes
-rw-r--r--doc/ref/core.internal/html/ftv2vertline.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/core.internal/html/functions.html275
-rw-r--r--doc/ref/core.internal/html/functions_b.html250
-rw-r--r--doc/ref/core.internal/html/functions_c.html508
-rw-r--r--doc/ref/core.internal/html/functions_d.html261
-rw-r--r--doc/ref/core.internal/html/functions_e.html200
-rw-r--r--doc/ref/core.internal/html/functions_f.html222
-rw-r--r--doc/ref/core.internal/html/functions_g.html192
-rw-r--r--doc/ref/core.internal/html/functions_h.html256
-rw-r--r--doc/ref/core.internal/html/functions_i.html343
-rw-r--r--doc/ref/core.internal/html/functions_j.html144
-rw-r--r--doc/ref/core.internal/html/functions_k.html165
-rw-r--r--doc/ref/core.internal/html/functions_l.html198
-rw-r--r--doc/ref/core.internal/html/functions_m.html290
-rw-r--r--doc/ref/core.internal/html/functions_n.html255
-rw-r--r--doc/ref/core.internal/html/functions_o.html276
-rw-r--r--doc/ref/core.internal/html/functions_p.html355
-rw-r--r--doc/ref/core.internal/html/functions_q.html136
-rw-r--r--doc/ref/core.internal/html/functions_r.html356
-rw-r--r--doc/ref/core.internal/html/functions_s.html533
-rw-r--r--doc/ref/core.internal/html/functions_t.html236
-rw-r--r--doc/ref/core.internal/html/functions_u.html197
-rw-r--r--doc/ref/core.internal/html/functions_v.html178
-rw-r--r--doc/ref/core.internal/html/functions_vars.html275
-rw-r--r--doc/ref/core.internal/html/functions_vars_b.html250
-rw-r--r--doc/ref/core.internal/html/functions_vars_c.html508
-rw-r--r--doc/ref/core.internal/html/functions_vars_d.html261
-rw-r--r--doc/ref/core.internal/html/functions_vars_e.html200
-rw-r--r--doc/ref/core.internal/html/functions_vars_f.html222
-rw-r--r--doc/ref/core.internal/html/functions_vars_g.html192
-rw-r--r--doc/ref/core.internal/html/functions_vars_h.html256
-rw-r--r--doc/ref/core.internal/html/functions_vars_i.html343
-rw-r--r--doc/ref/core.internal/html/functions_vars_j.html144
-rw-r--r--doc/ref/core.internal/html/functions_vars_k.html165
-rw-r--r--doc/ref/core.internal/html/functions_vars_l.html198
-rw-r--r--doc/ref/core.internal/html/functions_vars_m.html290
-rw-r--r--doc/ref/core.internal/html/functions_vars_n.html255
-rw-r--r--doc/ref/core.internal/html/functions_vars_o.html276
-rw-r--r--doc/ref/core.internal/html/functions_vars_p.html355
-rw-r--r--doc/ref/core.internal/html/functions_vars_q.html136
-rw-r--r--doc/ref/core.internal/html/functions_vars_r.html356
-rw-r--r--doc/ref/core.internal/html/functions_vars_s.html533
-rw-r--r--doc/ref/core.internal/html/functions_vars_t.html236
-rw-r--r--doc/ref/core.internal/html/functions_vars_u.html197
-rw-r--r--doc/ref/core.internal/html/functions_vars_v.html178
-rw-r--r--doc/ref/core.internal/html/functions_vars_w.html212
-rw-r--r--doc/ref/core.internal/html/functions_w.html212
-rw-r--r--doc/ref/core.internal/html/globals.html142
-rw-r--r--doc/ref/core.internal/html/globals_a.html154
-rw-r--r--doc/ref/core.internal/html/globals_b.html154
-rw-r--r--doc/ref/core.internal/html/globals_c.html314
-rw-r--r--doc/ref/core.internal/html/globals_d.html151
-rw-r--r--doc/ref/core.internal/html/globals_defs.html136
-rw-r--r--doc/ref/core.internal/html/globals_defs_a.html130
-rw-r--r--doc/ref/core.internal/html/globals_defs_c.html190
-rw-r--r--doc/ref/core.internal/html/globals_defs_d.html142
-rw-r--r--doc/ref/core.internal/html/globals_defs_e.html130
-rw-r--r--doc/ref/core.internal/html/globals_defs_f.html133
-rw-r--r--doc/ref/core.internal/html/globals_defs_g.html752
-rw-r--r--doc/ref/core.internal/html/globals_defs_h.html139
-rw-r--r--doc/ref/core.internal/html/globals_defs_i.html145
-rw-r--r--doc/ref/core.internal/html/globals_defs_l.html130
-rw-r--r--doc/ref/core.internal/html/globals_defs_m.html164
-rw-r--r--doc/ref/core.internal/html/globals_defs_n.html133
-rw-r--r--doc/ref/core.internal/html/globals_defs_o.html133
-rw-r--r--doc/ref/core.internal/html/globals_defs_r.html151
-rw-r--r--doc/ref/core.internal/html/globals_defs_s.html164
-rw-r--r--doc/ref/core.internal/html/globals_defs_t.html199
-rw-r--r--doc/ref/core.internal/html/globals_defs_u.html136
-rw-r--r--doc/ref/core.internal/html/globals_e.html142
-rw-r--r--doc/ref/core.internal/html/globals_enum.html319
-rw-r--r--doc/ref/core.internal/html/globals_eval.html139
-rw-r--r--doc/ref/core.internal/html/globals_eval_b.html145
-rw-r--r--doc/ref/core.internal/html/globals_eval_c.html172
-rw-r--r--doc/ref/core.internal/html/globals_eval_d.html130
-rw-r--r--doc/ref/core.internal/html/globals_eval_e.html133
-rw-r--r--doc/ref/core.internal/html/globals_eval_g.html955
-rw-r--r--doc/ref/core.internal/html/globals_eval_h.html130
-rw-r--r--doc/ref/core.internal/html/globals_eval_i.html136
-rw-r--r--doc/ref/core.internal/html/globals_eval_l.html154
-rw-r--r--doc/ref/core.internal/html/globals_eval_m.html133
-rw-r--r--doc/ref/core.internal/html/globals_eval_n.html136
-rw-r--r--doc/ref/core.internal/html/globals_eval_p.html133
-rw-r--r--doc/ref/core.internal/html/globals_eval_r.html151
-rw-r--r--doc/ref/core.internal/html/globals_eval_s.html166
-rw-r--r--doc/ref/core.internal/html/globals_eval_t.html181
-rw-r--r--doc/ref/core.internal/html/globals_eval_w.html139
-rw-r--r--doc/ref/core.internal/html/globals_eval_z.html130
-rw-r--r--doc/ref/core.internal/html/globals_f.html145
-rw-r--r--doc/ref/core.internal/html/globals_func.html154
-rw-r--r--doc/ref/core.internal/html/globals_func_g.html3085
-rw-r--r--doc/ref/core.internal/html/globals_func_o.html122
-rw-r--r--doc/ref/core.internal/html/globals_func_p.html128
-rw-r--r--doc/ref/core.internal/html/globals_func_t.html228
-rw-r--r--doc/ref/core.internal/html/globals_func_v.html119
-rw-r--r--doc/ref/core.internal/html/globals_g.html5171
-rw-r--r--doc/ref/core.internal/html/globals_h.html148
-rw-r--r--doc/ref/core.internal/html/globals_i.html169
-rw-r--r--doc/ref/core.internal/html/globals_k.html136
-rw-r--r--doc/ref/core.internal/html/globals_l.html169
-rw-r--r--doc/ref/core.internal/html/globals_m.html176
-rw-r--r--doc/ref/core.internal/html/globals_n.html154
-rw-r--r--doc/ref/core.internal/html/globals_o.html145
-rw-r--r--doc/ref/core.internal/html/globals_p.html154
-rw-r--r--doc/ref/core.internal/html/globals_r.html202
-rw-r--r--doc/ref/core.internal/html/globals_s.html218
-rw-r--r--doc/ref/core.internal/html/globals_t.html400
-rw-r--r--doc/ref/core.internal/html/globals_type.html657
-rw-r--r--doc/ref/core.internal/html/globals_u.html142
-rw-r--r--doc/ref/core.internal/html/globals_v.html139
-rw-r--r--doc/ref/core.internal/html/globals_vars.html240
-rw-r--r--doc/ref/core.internal/html/globals_w.html151
-rw-r--r--doc/ref/core.internal/html/globals_z.html136
-rw-r--r--doc/ref/core.internal/html/google__default__credentials_8c.html175
-rw-r--r--doc/ref/core.internal/html/graph_legend.html153
-rw-r--r--doc/ref/core.internal/html/graph_legend.md51
-rw-r--r--doc/ref/core.internal/html/graph_legend.pngbin0 -> 19871 bytes
-rw-r--r--doc/ref/core.internal/html/grpc_8h.html1877
-rw-r--r--doc/ref/core.internal/html/grpc_8h_source.html565
-rw-r--r--doc/ref/core.internal/html/grpc__context_8c.html155
-rw-r--r--doc/ref/core.internal/html/grpc__security_8h.html863
-rw-r--r--doc/ref/core.internal/html/grpc__security_8h_source.html409
-rw-r--r--doc/ref/core.internal/html/histogram_8c.html486
-rw-r--r--doc/ref/core.internal/html/histogram_8h.html495
-rw-r--r--doc/ref/core.internal/html/histogram_8h_source.html198
-rw-r--r--doc/ref/core.internal/html/host__port_8c.html179
-rw-r--r--doc/ref/core.internal/html/host__port_8h.html176
-rw-r--r--doc/ref/core.internal/html/host__port_8h_source.html165
-rw-r--r--doc/ref/core.internal/html/hpack__parser_8c.html387
-rw-r--r--doc/ref/core.internal/html/hpack__parser_8h.html299
-rw-r--r--doc/ref/core.internal/html/hpack__parser_8h_source.html257
-rw-r--r--doc/ref/core.internal/html/hpack__table_8c.html266
-rw-r--r--doc/ref/core.internal/html/hpack__table_8h.html328
-rw-r--r--doc/ref/core.internal/html/hpack__table_8h_source.html221
-rw-r--r--doc/ref/core.internal/html/http2__errors_8h.html171
-rw-r--r--doc/ref/core.internal/html/http2__errors_8h_source.html170
-rw-r--r--doc/ref/core.internal/html/http__client__filter_8c.html175
-rw-r--r--doc/ref/core.internal/html/http__client__filter_8h.html142
-rw-r--r--doc/ref/core.internal/html/http__client__filter_8h_source.html146
-rw-r--r--doc/ref/core.internal/html/http__server__filter_8c.html174
-rw-r--r--doc/ref/core.internal/html/http__server__filter_8h.html123
-rw-r--r--doc/ref/core.internal/html/http__server__filter_8h_source.html144
-rw-r--r--doc/ref/core.internal/html/httpcli_8c.html305
-rw-r--r--doc/ref/core.internal/html/httpcli_8h.html440
-rw-r--r--doc/ref/core.internal/html/httpcli_8h_source.html279
-rw-r--r--doc/ref/core.internal/html/httpcli__security__connector_8c.html159
-rw-r--r--doc/ref/core.internal/html/httpcli__security__connector_8h.html149
-rw-r--r--doc/ref/core.internal/html/httpcli__security__connector_8h_source.html146
-rw-r--r--doc/ref/core.internal/html/huffsyms_8c.html121
-rw-r--r--doc/ref/core.internal/html/huffsyms_8h.html147
-rw-r--r--doc/ref/core.internal/html/huffsyms_8h_source.html152
-rw-r--r--doc/ref/core.internal/html/incoming__metadata_8c.html351
-rw-r--r--doc/ref/core.internal/html/incoming__metadata_8h.html347
-rw-r--r--doc/ref/core.internal/html/incoming__metadata_8h_source.html196
-rw-r--r--doc/ref/core.internal/html/index.html93
-rw-r--r--doc/ref/core.internal/html/init_8c.html184
-rw-r--r--doc/ref/core.internal/html/init_8h.html144
-rw-r--r--doc/ref/core.internal/html/init_8h_source.html141
-rw-r--r--doc/ref/core.internal/html/init__secure_8c.html128
-rw-r--r--doc/ref/core.internal/html/initialize_8c.html189
-rw-r--r--doc/ref/core.internal/html/internal_8h.html1841
-rw-r--r--doc/ref/core.internal/html/internal_8h_source.html887
-rw-r--r--doc/ref/core.internal/html/iocp__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/iocp__windows_8h.html268
-rw-r--r--doc/ref/core.internal/html/iocp__windows_8h_source.html162
-rw-r--r--doc/ref/core.internal/html/iomgr_8c.html340
-rw-r--r--doc/ref/core.internal/html/iomgr_8h.html293
-rw-r--r--doc/ref/core.internal/html/iomgr_8h_source.html172
-rw-r--r--doc/ref/core.internal/html/iomgr__internal_8h.html276
-rw-r--r--doc/ref/core.internal/html/iomgr__internal_8h_source.html169
-rw-r--r--doc/ref/core.internal/html/iomgr__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/iomgr__posix_8h.html145
-rw-r--r--doc/ref/core.internal/html/iomgr__posix_8h_source.html144
-rw-r--r--doc/ref/core.internal/html/iomgr__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/jquery.js31
-rw-r--r--doc/ref/core.internal/html/json_8c.html145
-rw-r--r--doc/ref/core.internal/html/json_8h.html245
-rw-r--r--doc/ref/core.internal/html/json_8h_source.html203
-rw-r--r--doc/ref/core.internal/html/json__common_8h.html151
-rw-r--r--doc/ref/core.internal/html/json__common_8h_source.html157
-rw-r--r--doc/ref/core.internal/html/json__reader_8c.html179
-rw-r--r--doc/ref/core.internal/html/json__reader_8h.html394
-rw-r--r--doc/ref/core.internal/html/json__reader_8h_source.html331
-rw-r--r--doc/ref/core.internal/html/json__string_8c.html214
-rw-r--r--doc/ref/core.internal/html/json__token_8c.html421
-rw-r--r--doc/ref/core.internal/html/json__token_8h.html401
-rw-r--r--doc/ref/core.internal/html/json__token_8h_source.html243
-rw-r--r--doc/ref/core.internal/html/json__writer_8c.html323
-rw-r--r--doc/ref/core.internal/html/json__writer_8h.html366
-rw-r--r--doc/ref/core.internal/html/json__writer_8h_source.html214
-rw-r--r--doc/ref/core.internal/html/jwt__verifier_8c.html514
-rw-r--r--doc/ref/core.internal/html/jwt__verifier_8h.html624
-rw-r--r--doc/ref/core.internal/html/jwt__verifier_8h_source.html274
-rw-r--r--doc/ref/core.internal/html/lame__client_8c.html142
-rw-r--r--doc/ref/core.internal/html/lb__policy_8c.html343
-rw-r--r--doc/ref/core.internal/html/lb__policy_8h.html465
-rw-r--r--doc/ref/core.internal/html/lb__policy_8h_source.html236
-rw-r--r--doc/ref/core.internal/html/log_8c.html203
-rw-r--r--doc/ref/core.internal/html/log_8h.html374
-rw-r--r--doc/ref/core.internal/html/log_8h_source.html221
-rw-r--r--doc/ref/core.internal/html/log__android_8c.html100
-rw-r--r--doc/ref/core.internal/html/log__linux_8c.html135
-rw-r--r--doc/ref/core.internal/html/log__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/log__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/log__win32_8h.html126
-rw-r--r--doc/ref/core.internal/html/log__win32_8h_source.html151
-rw-r--r--doc/ref/core.internal/html/merge__channel__args_8c.html146
-rw-r--r--doc/ref/core.internal/html/merge__channel__args_8h.html140
-rw-r--r--doc/ref/core.internal/html/merge__channel__args_8h_source.html145
-rw-r--r--doc/ref/core.internal/html/message__compress_8c.html232
-rw-r--r--doc/ref/core.internal/html/message__compress_8h.html178
-rw-r--r--doc/ref/core.internal/html/message__compress_8h_source.html157
-rw-r--r--doc/ref/core.internal/html/metadata_8c.html915
-rw-r--r--doc/ref/core.internal/html/metadata_8h.html938
-rw-r--r--doc/ref/core.internal/html/metadata_8h_source.html322
-rw-r--r--doc/ref/core.internal/html/metadata__array_8c.html145
-rw-r--r--doc/ref/core.internal/html/murmur__hash_8c.html225
-rw-r--r--doc/ref/core.internal/html/murmur__hash_8h.html144
-rw-r--r--doc/ref/core.internal/html/murmur__hash_8h_source.html147
-rw-r--r--doc/ref/core.internal/html/nav_f.pngbin0 -> 153 bytes
-rw-r--r--doc/ref/core.internal/html/nav_g.pngbin0 -> 95 bytes
-rw-r--r--doc/ref/core.internal/html/nav_h.pngbin0 -> 98 bytes
-rw-r--r--doc/ref/core.internal/html/noop__filter_8c.html177
-rw-r--r--doc/ref/core.internal/html/noop__filter_8h.html123
-rw-r--r--doc/ref/core.internal/html/noop__filter_8h_source.html146
-rw-r--r--doc/ref/core.internal/html/open.pngbin0 -> 123 bytes
-rw-r--r--doc/ref/core.internal/html/parser_8c.html193
-rw-r--r--doc/ref/core.internal/html/parser_8h.html229
-rw-r--r--doc/ref/core.internal/html/parser_8h_source.html184
-rw-r--r--doc/ref/core.internal/html/parsing_8c.html218
-rw-r--r--doc/ref/core.internal/html/pick__first_8c.html268
-rw-r--r--doc/ref/core.internal/html/pick__first_8h.html140
-rw-r--r--doc/ref/core.internal/html/pick__first_8h_source.html145
-rw-r--r--doc/ref/core.internal/html/pollset_8h.html226
-rw-r--r--doc/ref/core.internal/html/pollset_8h_source.html186
-rw-r--r--doc/ref/core.internal/html/pollset__kick__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__kick__posix_8h.html357
-rw-r--r--doc/ref/core.internal/html/pollset__kick__posix_8h_source.html215
-rw-r--r--doc/ref/core.internal/html/pollset__multipoller__with__epoll_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__multipoller__with__poll__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__posix_8h.html379
-rw-r--r--doc/ref/core.internal/html/pollset__posix_8h_source.html254
-rw-r--r--doc/ref/core.internal/html/pollset__set_8h.html201
-rw-r--r--doc/ref/core.internal/html/pollset__set_8h_source.html167
-rw-r--r--doc/ref/core.internal/html/pollset__set__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__set__posix_8h.html191
-rw-r--r--doc/ref/core.internal/html/pollset__set__posix_8h_source.html170
-rw-r--r--doc/ref/core.internal/html/pollset__set__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__set__windows_8h.html128
-rw-r--r--doc/ref/core.internal/html/pollset__set__windows_8h_source.html141
-rw-r--r--doc/ref/core.internal/html/pollset__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/pollset__windows_8h.html153
-rw-r--r--doc/ref/core.internal/html/pollset__windows_8h_source.html161
-rw-r--r--doc/ref/core.internal/html/port__platform_8h.html352
-rw-r--r--doc/ref/core.internal/html/port__platform_8h_source.html441
-rw-r--r--doc/ref/core.internal/html/record__stat_8c.html142
-rw-r--r--doc/ref/core.internal/html/resolve__address_8h.html241
-rw-r--r--doc/ref/core.internal/html/resolve__address_8h_source.html180
-rw-r--r--doc/ref/core.internal/html/resolve__address__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/resolve__address__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/resolver_8c.html266
-rw-r--r--doc/ref/core.internal/html/resolver_8h.html373
-rw-r--r--doc/ref/core.internal/html/resolver_8h_source.html206
-rw-r--r--doc/ref/core.internal/html/resolver__factory_8c.html180
-rw-r--r--doc/ref/core.internal/html/resolver__factory_8h.html228
-rw-r--r--doc/ref/core.internal/html/resolver__factory_8h_source.html178
-rw-r--r--doc/ref/core.internal/html/resolver__registry_8c.html236
-rw-r--r--doc/ref/core.internal/html/resolver__registry_8h.html209
-rw-r--r--doc/ref/core.internal/html/resolver__registry_8h_source.html156
-rw-r--r--doc/ref/core.internal/html/rpc__stat__id_8h.html206
-rw-r--r--doc/ref/core.internal/html/rpc__stat__id_8h_source.html145
-rw-r--r--doc/ref/core.internal/html/search/all_0.html26
-rw-r--r--doc/ref/core.internal/html/search/all_0.js5
-rw-r--r--doc/ref/core.internal/html/search/all_1.html26
-rw-r--r--doc/ref/core.internal/html/search/all_1.js67
-rw-r--r--doc/ref/core.internal/html/search/all_10.html26
-rw-r--r--doc/ref/core.internal/html/search/all_10.js95
-rw-r--r--doc/ref/core.internal/html/search/all_11.html26
-rw-r--r--doc/ref/core.internal/html/search/all_11.js5
-rw-r--r--doc/ref/core.internal/html/search/all_12.html26
-rw-r--r--doc/ref/core.internal/html/search/all_12.js100
-rw-r--r--doc/ref/core.internal/html/search/all_13.html26
-rw-r--r--doc/ref/core.internal/html/search/all_13.js219
-rw-r--r--doc/ref/core.internal/html/search/all_14.html26
-rw-r--r--doc/ref/core.internal/html/search/all_14.js159
-rw-r--r--doc/ref/core.internal/html/search/all_15.html26
-rw-r--r--doc/ref/core.internal/html/search/all_15.js25
-rw-r--r--doc/ref/core.internal/html/search/all_16.html26
-rw-r--r--doc/ref/core.internal/html/search/all_16.js14
-rw-r--r--doc/ref/core.internal/html/search/all_17.html26
-rw-r--r--doc/ref/core.internal/html/search/all_17.js42
-rw-r--r--doc/ref/core.internal/html/search/all_18.html26
-rw-r--r--doc/ref/core.internal/html/search/all_18.js4
-rw-r--r--doc/ref/core.internal/html/search/all_2.html26
-rw-r--r--doc/ref/core.internal/html/search/all_2.js50
-rw-r--r--doc/ref/core.internal/html/search/all_3.html26
-rw-r--r--doc/ref/core.internal/html/search/all_3.js216
-rw-r--r--doc/ref/core.internal/html/search/all_4.html26
-rw-r--r--doc/ref/core.internal/html/search/all_4.js44
-rw-r--r--doc/ref/core.internal/html/search/all_5.html26
-rw-r--r--doc/ref/core.internal/html/search/all_5.js40
-rw-r--r--doc/ref/core.internal/html/search/all_6.html26
-rw-r--r--doc/ref/core.internal/html/search/all_6.js59
-rw-r--r--doc/ref/core.internal/html/search/all_7.html26
-rw-r--r--doc/ref/core.internal/html/search/all_7.js1522
-rw-r--r--doc/ref/core.internal/html/search/all_8.html26
-rw-r--r--doc/ref/core.internal/html/search/all_8.js65
-rw-r--r--doc/ref/core.internal/html/search/all_9.html26
-rw-r--r--doc/ref/core.internal/html/search/all_9.js94
-rw-r--r--doc/ref/core.internal/html/search/all_a.html26
-rw-r--r--doc/ref/core.internal/html/search/all_a.js23
-rw-r--r--doc/ref/core.internal/html/search/all_b.html26
-rw-r--r--doc/ref/core.internal/html/search/all_b.js11
-rw-r--r--doc/ref/core.internal/html/search/all_c.html26
-rw-r--r--doc/ref/core.internal/html/search/all_c.js46
-rw-r--r--doc/ref/core.internal/html/search/all_d.html26
-rw-r--r--doc/ref/core.internal/html/search/all_d.js70
-rw-r--r--doc/ref/core.internal/html/search/all_e.html26
-rw-r--r--doc/ref/core.internal/html/search/all_e.js42
-rw-r--r--doc/ref/core.internal/html/search/all_f.html26
-rw-r--r--doc/ref/core.internal/html/search/all_f.js52
-rw-r--r--doc/ref/core.internal/html/search/classes_0.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_0.js4
-rw-r--r--doc/ref/core.internal/html/search/classes_1.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_1.js4
-rw-r--r--doc/ref/core.internal/html/search/classes_10.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_10.js19
-rw-r--r--doc/ref/core.internal/html/search/classes_11.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_11.js4
-rw-r--r--doc/ref/core.internal/html/search/classes_12.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_12.js5
-rw-r--r--doc/ref/core.internal/html/search/classes_2.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_2.js16
-rw-r--r--doc/ref/core.internal/html/search/classes_3.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_3.js5
-rw-r--r--doc/ref/core.internal/html/search/classes_4.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_4.js4
-rw-r--r--doc/ref/core.internal/html/search/classes_5.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_5.js5
-rw-r--r--doc/ref/core.internal/html/search/classes_6.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_6.js178
-rw-r--r--doc/ref/core.internal/html/search/classes_7.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_7.js4
-rw-r--r--doc/ref/core.internal/html/search/classes_8.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_8.js6
-rw-r--r--doc/ref/core.internal/html/search/classes_9.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_9.js6
-rw-r--r--doc/ref/core.internal/html/search/classes_a.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_a.js7
-rw-r--r--doc/ref/core.internal/html/search/classes_b.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_b.js5
-rw-r--r--doc/ref/core.internal/html/search/classes_c.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_c.js5
-rw-r--r--doc/ref/core.internal/html/search/classes_d.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_d.js5
-rw-r--r--doc/ref/core.internal/html/search/classes_e.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_e.js11
-rw-r--r--doc/ref/core.internal/html/search/classes_f.html26
-rw-r--r--doc/ref/core.internal/html/search/classes_f.js10
-rw-r--r--doc/ref/core.internal/html/search/close.pngbin0 -> 273 bytes
-rw-r--r--doc/ref/core.internal/html/search/defines_0.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_0.js5
-rw-r--r--doc/ref/core.internal/html/search/defines_1.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_1.js4
-rw-r--r--doc/ref/core.internal/html/search/defines_10.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_10.js6
-rw-r--r--doc/ref/core.internal/html/search/defines_2.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_2.js24
-rw-r--r--doc/ref/core.internal/html/search/defines_3.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_3.js8
-rw-r--r--doc/ref/core.internal/html/search/defines_4.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_4.js4
-rw-r--r--doc/ref/core.internal/html/search/defines_5.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_5.js5
-rw-r--r--doc/ref/core.internal/html/search/defines_6.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_6.js206
-rw-r--r--doc/ref/core.internal/html/search/defines_7.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_7.js7
-rw-r--r--doc/ref/core.internal/html/search/defines_8.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_8.js9
-rw-r--r--doc/ref/core.internal/html/search/defines_9.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_9.js4
-rw-r--r--doc/ref/core.internal/html/search/defines_a.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_a.js15
-rw-r--r--doc/ref/core.internal/html/search/defines_b.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_b.js5
-rw-r--r--doc/ref/core.internal/html/search/defines_c.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_c.js5
-rw-r--r--doc/ref/core.internal/html/search/defines_d.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_d.js11
-rw-r--r--doc/ref/core.internal/html/search/defines_e.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_e.js15
-rw-r--r--doc/ref/core.internal/html/search/defines_f.html26
-rw-r--r--doc/ref/core.internal/html/search/defines_f.js26
-rw-r--r--doc/ref/core.internal/html/search/enums_0.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_0.js4
-rw-r--r--doc/ref/core.internal/html/search/enums_1.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_1.js4
-rw-r--r--doc/ref/core.internal/html/search/enums_2.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_2.js6
-rw-r--r--doc/ref/core.internal/html/search/enums_3.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_3.js5
-rw-r--r--doc/ref/core.internal/html/search/enums_4.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_4.js41
-rw-r--r--doc/ref/core.internal/html/search/enums_5.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_5.js4
-rw-r--r--doc/ref/core.internal/html/search/enums_6.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_6.js6
-rw-r--r--doc/ref/core.internal/html/search/enums_7.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_7.js5
-rw-r--r--doc/ref/core.internal/html/search/enums_8.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_8.js5
-rw-r--r--doc/ref/core.internal/html/search/enums_9.html26
-rw-r--r--doc/ref/core.internal/html/search/enums_9.js4
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_0.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_0.js7
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_1.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_1.js9
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_10.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_10.js4
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_2.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_2.js18
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_3.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_3.js4
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_4.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_4.js5
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_5.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_5.js279
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_6.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_6.js4
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_7.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_7.js6
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_8.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_8.js12
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_9.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_9.js5
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_a.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_a.js6
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_b.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_b.js5
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_c.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_c.js11
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_d.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_d.js16
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_e.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_e.js21
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_f.html26
-rw-r--r--doc/ref/core.internal/html/search/enumvalues_f.js7
-rw-r--r--doc/ref/core.internal/html/search/files_0.html26
-rw-r--r--doc/ref/core.internal/html/search/files_0.js20
-rw-r--r--doc/ref/core.internal/html/search/files_1.html26
-rw-r--r--doc/ref/core.internal/html/search/files_1.js14
-rw-r--r--doc/ref/core.internal/html/search/files_10.html26
-rw-r--r--doc/ref/core.internal/html/search/files_10.js42
-rw-r--r--doc/ref/core.internal/html/search/files_11.html26
-rw-r--r--doc/ref/core.internal/html/search/files_11.js6
-rw-r--r--doc/ref/core.internal/html/search/files_12.html26
-rw-r--r--doc/ref/core.internal/html/search/files_12.js6
-rw-r--r--doc/ref/core.internal/html/search/files_13.html26
-rw-r--r--doc/ref/core.internal/html/search/files_13.js10
-rw-r--r--doc/ref/core.internal/html/search/files_2.html26
-rw-r--r--doc/ref/core.internal/html/search/files_2.js52
-rw-r--r--doc/ref/core.internal/html/search/files_3.html26
-rw-r--r--doc/ref/core.internal/html/search/files_3.js5
-rw-r--r--doc/ref/core.internal/html/search/files_4.html26
-rw-r--r--doc/ref/core.internal/html/search/files_4.js14
-rw-r--r--doc/ref/core.internal/html/search/files_5.html26
-rw-r--r--doc/ref/core.internal/html/search/files_5.js26
-rw-r--r--doc/ref/core.internal/html/search/files_6.html26
-rw-r--r--doc/ref/core.internal/html/search/files_6.js7
-rw-r--r--doc/ref/core.internal/html/search/files_7.html26
-rw-r--r--doc/ref/core.internal/html/search/files_7.js22
-rw-r--r--doc/ref/core.internal/html/search/files_8.html26
-rw-r--r--doc/ref/core.internal/html/search/files_8.js18
-rw-r--r--doc/ref/core.internal/html/search/files_9.html26
-rw-r--r--doc/ref/core.internal/html/search/files_9.js15
-rw-r--r--doc/ref/core.internal/html/search/files_a.html26
-rw-r--r--doc/ref/core.internal/html/search/files_a.js13
-rw-r--r--doc/ref/core.internal/html/search/files_b.html26
-rw-r--r--doc/ref/core.internal/html/search/files_b.js12
-rw-r--r--doc/ref/core.internal/html/search/files_c.html26
-rw-r--r--doc/ref/core.internal/html/search/files_c.js5
-rw-r--r--doc/ref/core.internal/html/search/files_d.html26
-rw-r--r--doc/ref/core.internal/html/search/files_d.js23
-rw-r--r--doc/ref/core.internal/html/search/files_e.html26
-rw-r--r--doc/ref/core.internal/html/search/files_e.js14
-rw-r--r--doc/ref/core.internal/html/search/files_f.html26
-rw-r--r--doc/ref/core.internal/html/search/files_f.js71
-rw-r--r--doc/ref/core.internal/html/search/functions_0.html26
-rw-r--r--doc/ref/core.internal/html/search/functions_0.js13
-rw-r--r--doc/ref/core.internal/html/search/functions_1.html26
-rw-r--r--doc/ref/core.internal/html/search/functions_1.js777
-rw-r--r--doc/ref/core.internal/html/search/functions_2.html26
-rw-r--r--doc/ref/core.internal/html/search/functions_2.js5
-rw-r--r--doc/ref/core.internal/html/search/functions_3.html26
-rw-r--r--doc/ref/core.internal/html/search/functions_3.js7
-rw-r--r--doc/ref/core.internal/html/search/functions_4.html26
-rw-r--r--doc/ref/core.internal/html/search/functions_4.js31
-rw-r--r--doc/ref/core.internal/html/search/functions_5.html26
-rw-r--r--doc/ref/core.internal/html/search/functions_5.js4
-rw-r--r--doc/ref/core.internal/html/search/mag_sel.pngbin0 -> 563 bytes
-rw-r--r--doc/ref/core.internal/html/search/nomatches.html12
-rw-r--r--doc/ref/core.internal/html/search/pages_0.html26
-rw-r--r--doc/ref/core.internal/html/search/pages_0.js4
-rw-r--r--doc/ref/core.internal/html/search/search.css271
-rw-r--r--doc/ref/core.internal/html/search/search.js811
-rw-r--r--doc/ref/core.internal/html/search/search_l.pngbin0 -> 604 bytes
-rw-r--r--doc/ref/core.internal/html/search/search_m.pngbin0 -> 158 bytes
-rw-r--r--doc/ref/core.internal/html/search/search_r.pngbin0 -> 612 bytes
-rw-r--r--doc/ref/core.internal/html/search/typedefs_0.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_0.js4
-rw-r--r--doc/ref/core.internal/html/search/typedefs_1.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_1.js7
-rw-r--r--doc/ref/core.internal/html/search/typedefs_2.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_2.js138
-rw-r--r--doc/ref/core.internal/html/search/typedefs_3.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_3.js5
-rw-r--r--doc/ref/core.internal/html/search/typedefs_4.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_4.js5
-rw-r--r--doc/ref/core.internal/html/search/typedefs_5.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_5.js5
-rw-r--r--doc/ref/core.internal/html/search/typedefs_6.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_6.js4
-rw-r--r--doc/ref/core.internal/html/search/typedefs_7.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_7.js7
-rw-r--r--doc/ref/core.internal/html/search/typedefs_8.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_8.js4
-rw-r--r--doc/ref/core.internal/html/search/typedefs_9.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_9.js9
-rw-r--r--doc/ref/core.internal/html/search/typedefs_a.html26
-rw-r--r--doc/ref/core.internal/html/search/typedefs_a.js4
-rw-r--r--doc/ref/core.internal/html/search/variables_0.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_0.js44
-rw-r--r--doc/ref/core.internal/html/search/variables_1.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_1.js31
-rw-r--r--doc/ref/core.internal/html/search/variables_10.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_10.js5
-rw-r--r--doc/ref/core.internal/html/search/variables_11.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_11.js66
-rw-r--r--doc/ref/core.internal/html/search/variables_12.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_12.js121
-rw-r--r--doc/ref/core.internal/html/search/variables_13.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_13.js33
-rw-r--r--doc/ref/core.internal/html/search/variables_14.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_14.js19
-rw-r--r--doc/ref/core.internal/html/search/variables_15.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_15.js9
-rw-r--r--doc/ref/core.internal/html/search/variables_16.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_16.js30
-rw-r--r--doc/ref/core.internal/html/search/variables_2.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_2.js109
-rw-r--r--doc/ref/core.internal/html/search/variables_3.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_3.js35
-rw-r--r--doc/ref/core.internal/html/search/variables_4.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_4.js25
-rw-r--r--doc/ref/core.internal/html/search/variables_5.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_5.js31
-rw-r--r--doc/ref/core.internal/html/search/variables_6.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_6.js50
-rw-r--r--doc/ref/core.internal/html/search/variables_7.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_7.js41
-rw-r--r--doc/ref/core.internal/html/search/variables_8.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_8.js66
-rw-r--r--doc/ref/core.internal/html/search/variables_9.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_9.js8
-rw-r--r--doc/ref/core.internal/html/search/variables_a.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_a.js11
-rw-r--r--doc/ref/core.internal/html/search/variables_b.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_b.js22
-rw-r--r--doc/ref/core.internal/html/search/variables_c.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_c.js45
-rw-r--r--doc/ref/core.internal/html/search/variables_d.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_d.js33
-rw-r--r--doc/ref/core.internal/html/search/variables_e.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_e.js48
-rw-r--r--doc/ref/core.internal/html/search/variables_f.html26
-rw-r--r--doc/ref/core.internal/html/search/variables_f.js67
-rw-r--r--doc/ref/core.internal/html/secure__channel__create_8c.html183
-rw-r--r--doc/ref/core.internal/html/secure__endpoint_8c.html199
-rw-r--r--doc/ref/core.internal/html/secure__endpoint_8h.html169
-rw-r--r--doc/ref/core.internal/html/secure__endpoint_8h_source.html155
-rw-r--r--doc/ref/core.internal/html/secure__transport__setup_8c.html177
-rw-r--r--doc/ref/core.internal/html/secure__transport__setup_8h.html169
-rw-r--r--doc/ref/core.internal/html/secure__transport__setup_8h_source.html161
-rw-r--r--doc/ref/core.internal/html/security__connector_8c.html534
-rw-r--r--doc/ref/core.internal/html/security__connector_8h.html689
-rw-r--r--doc/ref/core.internal/html/security__connector_8h_source.html381
-rw-r--r--doc/ref/core.internal/html/security__context_8c.html511
-rw-r--r--doc/ref/core.internal/html/security__context_8h.html396
-rw-r--r--doc/ref/core.internal/html/security__context_8h_source.html240
-rw-r--r--doc/ref/core.internal/html/server_8c.html863
-rw-r--r--doc/ref/core.internal/html/server_8h.html291
-rw-r--r--doc/ref/core.internal/html/server_8h_source.html183
-rw-r--r--doc/ref/core.internal/html/server__auth__filter_8c.html175
-rw-r--r--doc/ref/core.internal/html/server__chttp2_8c.html147
-rw-r--r--doc/ref/core.internal/html/server__create_8c.html132
-rw-r--r--doc/ref/core.internal/html/server__secure__chttp2_8c.html199
-rw-r--r--doc/ref/core.internal/html/slice_8c.html538
-rw-r--r--doc/ref/core.internal/html/slice_8h.html643
-rw-r--r--doc/ref/core.internal/html/slice_8h_source.html308
-rw-r--r--doc/ref/core.internal/html/slice__buffer_8c.html380
-rw-r--r--doc/ref/core.internal/html/slice__buffer_8h.html380
-rw-r--r--doc/ref/core.internal/html/slice__buffer_8h_source.html212
-rw-r--r--doc/ref/core.internal/html/sockaddr_8h.html102
-rw-r--r--doc/ref/core.internal/html/sockaddr_8h_source.html149
-rw-r--r--doc/ref/core.internal/html/sockaddr__posix_8h.html107
-rw-r--r--doc/ref/core.internal/html/sockaddr__posix_8h_source.html143
-rw-r--r--doc/ref/core.internal/html/sockaddr__resolver_8c.html202
-rw-r--r--doc/ref/core.internal/html/sockaddr__resolver_8h.html146
-rw-r--r--doc/ref/core.internal/html/sockaddr__resolver_8h_source.html154
-rw-r--r--doc/ref/core.internal/html/sockaddr__utils_8c.html386
-rw-r--r--doc/ref/core.internal/html/sockaddr__utils_8h.html381
-rw-r--r--doc/ref/core.internal/html/sockaddr__utils_8h_source.html199
-rw-r--r--doc/ref/core.internal/html/sockaddr__win32_8h.html104
-rw-r--r--doc/ref/core.internal/html/sockaddr__win32_8h_source.html145
-rw-r--r--doc/ref/core.internal/html/socket__utils__common__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/socket__utils__linux_8c.html100
-rw-r--r--doc/ref/core.internal/html/socket__utils__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/socket__utils__posix_8h.html415
-rw-r--r--doc/ref/core.internal/html/socket__utils__posix_8h_source.html226
-rw-r--r--doc/ref/core.internal/html/socket__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/socket__windows_8h.html237
-rw-r--r--doc/ref/core.internal/html/socket__windows_8h_source.html250
-rw-r--r--doc/ref/core.internal/html/ssl__transport__security_8c.html451
-rw-r--r--doc/ref/core.internal/html/ssl__transport__security_8h.html446
-rw-r--r--doc/ref/core.internal/html/ssl__transport__security_8h_source.html282
-rw-r--r--doc/ref/core.internal/html/stack__lockfree_8c.html259
-rw-r--r--doc/ref/core.internal/html/stack__lockfree_8h.html209
-rw-r--r--doc/ref/core.internal/html/stack__lockfree_8h_source.html156
-rw-r--r--doc/ref/core.internal/html/stap__timers_8c.html100
-rw-r--r--doc/ref/core.internal/html/status_8h.html184
-rw-r--r--doc/ref/core.internal/html/status_8h_source.html281
-rw-r--r--doc/ref/core.internal/html/status__conversion_8c.html179
-rw-r--r--doc/ref/core.internal/html/status__conversion_8h.html182
-rw-r--r--doc/ref/core.internal/html/status__conversion_8h_source.html157
-rw-r--r--doc/ref/core.internal/html/stream__encoder_8c.html444
-rw-r--r--doc/ref/core.internal/html/stream__encoder_8h.html305
-rw-r--r--doc/ref/core.internal/html/stream__encoder_8h_source.html221
-rw-r--r--doc/ref/core.internal/html/stream__lists_8c.html995
-rw-r--r--doc/ref/core.internal/html/stream__map_8c.html327
-rw-r--r--doc/ref/core.internal/html/stream__map_8h.html332
-rw-r--r--doc/ref/core.internal/html/stream__map_8h_source.html202
-rw-r--r--doc/ref/core.internal/html/stream__op_8c.html705
-rw-r--r--doc/ref/core.internal/html/stream__op_8h.html913
-rw-r--r--doc/ref/core.internal/html/stream__op_8h_source.html339
-rw-r--r--doc/ref/core.internal/html/string_8c.html493
-rw-r--r--doc/ref/core.internal/html/string_8h.html521
-rw-r--r--doc/ref/core.internal/html/string_8h_source.html231
-rw-r--r--doc/ref/core.internal/html/string__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/string__util_8h.html160
-rw-r--r--doc/ref/core.internal/html/string__util_8h_source.html162
-rw-r--r--doc/ref/core.internal/html/string__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/string__win32_8h.html102
-rw-r--r--doc/ref/core.internal/html/string__win32_8h_source.html147
-rw-r--r--doc/ref/core.internal/html/structarg.html176
-rw-r--r--doc/ref/core.internal/html/structb64__huff__sym.html134
-rw-r--r--doc/ref/core.internal/html/structcall__data.html874
-rw-r--r--doc/ref/core.internal/html/structcall__link.html134
-rw-r--r--doc/ref/core.internal/html/structcensus__context.html136
-rw-r--r--doc/ref/core.internal/html/structcensus__stat.html136
-rw-r--r--doc/ref/core.internal/html/structchannel__broadcaster.html134
-rw-r--r--doc/ref/core.internal/html/structchannel__data.html849
-rw-r--r--doc/ref/core.internal/html/structchannel__registered__method.html148
-rw-r--r--doc/ref/core.internal/html/structcompleted__request.html148
-rw-r--r--doc/ref/core.internal/html/structcompute__engine__detector.html148
-rw-r--r--doc/ref/core.internal/html/structconnected__channel__call__data.html120
-rw-r--r--doc/ref/core.internal/html/structconnected__channel__channel__data.html120
-rw-r--r--doc/ref/core.internal/html/structconnection.html140
-rw-r--r--doc/ref/core.internal/html/structconnector.html191
-rw-r--r--doc/ref/core.internal/html/structdns__resolver.html327
-rw-r--r--doc/ref/core.internal/html/structdump__out.html148
-rw-r--r--doc/ref/core.internal/html/structemail__key__mapping.html134
-rw-r--r--doc/ref/core.internal/html/structfinished__loose__op__allocated__args.html134
-rw-r--r--doc/ref/core.internal/html/structframer__state.html190
-rw-r--r--doc/ref/core.internal/html/structgpr__cancellable.html150
-rw-r--r--doc/ref/core.internal/html/structgpr__cancellable__list__.html164
-rw-r--r--doc/ref/core.internal/html/structgpr__cmdline.html232
-rw-r--r--doc/ref/core.internal/html/structgpr__event.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__gcc__thread__local.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__histogram.html246
-rw-r--r--doc/ref/core.internal/html/structgpr__log__func__args.html164
-rw-r--r--doc/ref/core.internal/html/structgpr__msvc__thread__local.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__mu.html136
-rw-r--r--doc/ref/core.internal/html/structgpr__pthread__thread__local.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__refcount.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__slice.html223
-rw-r--r--doc/ref/core.internal/html/structgpr__slice__buffer.html178
-rw-r--r--doc/ref/core.internal/html/structgpr__slice__refcount.html136
-rw-r--r--doc/ref/core.internal/html/structgpr__stack__lockfree.html148
-rw-r--r--doc/ref/core.internal/html/structgpr__stats__counter.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__strvec.html150
-rw-r--r--doc/ref/core.internal/html/structgpr__thd__options.html122
-rw-r--r--doc/ref/core.internal/html/structgpr__timespec.html153
-rw-r--r--doc/ref/core.internal/html/structgrpc__access__token__credentials.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__alarm.html206
-rw-r--r--doc/ref/core.internal/html/structgrpc__alarm__heap.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__arg.html245
-rw-r--r--doc/ref/core.internal/html/structgrpc__auth__context.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__auth__json__key.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__auth__property.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__auth__property__iterator.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__auth__refresh__token.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__bbq__array.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__begin__message.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__byte__buffer.html180
-rw-r--r--doc/ref/core.internal/html/structgrpc__byte__buffer__queue.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__byte__buffer__reader.html165
-rw-r--r--doc/ref/core.internal/html/structgrpc__call.html846
-rw-r--r--doc/ref/core.internal/html/structgrpc__call__context__element.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__call__details.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__call__element.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__call__stack.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__channel.html308
-rw-r--r--doc/ref/core.internal/html/structgrpc__channel__args.html142
-rw-r--r--doc/ref/core.internal/html/structgrpc__channel__element.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__channel__filter.html248
-rw-r--r--doc/ref/core.internal/html/structgrpc__channel__security__connector.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__channel__stack.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__data__parser.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__goaway__parser.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__hpack__compressor.html276
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser.html390
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser__string.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__hptbl.html220
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__hptbl__find__result.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__huffsym.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__buffer.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__live__op__buffer.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__outstanding__ping.html166
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__ping__parser.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__rst__stream__parser.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__setting__parameters.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__settings__parser.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream__global.html453
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream__link.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream__list.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream__map.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream__parsing.html258
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__stream__writing.html176
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__transport.html492
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__transport__global.html411
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__transport__parsing.html621
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__transport__writing.html159
-rw-r--r--doc/ref/core.internal/html/structgrpc__chttp2__window__update__parser.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__client__config.html134
-rw-r--r--doc/ref/core.internal/html/structgrpc__client__security__context.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__completion__queue.html233
-rw-r--r--doc/ref/core.internal/html/structgrpc__composite__credentials.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__composite__credentials__metadata__context.html204
-rw-r--r--doc/ref/core.internal/html/structgrpc__connect__in__args.html207
-rw-r--r--doc/ref/core.internal/html/structgrpc__connect__out__args.html156
-rw-r--r--doc/ref/core.internal/html/structgrpc__connectivity__state__tracker.html159
-rw-r--r--doc/ref/core.internal/html/structgrpc__connectivity__state__watcher.html160
-rw-r--r--doc/ref/core.internal/html/structgrpc__connector.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__connector__vtable.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__cq__completion.html173
-rw-r--r--doc/ref/core.internal/html/structgrpc__credentials.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__credentials__array.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__credentials__md.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__credentials__md__store.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__credentials__metadata__request.html162
-rw-r--r--doc/ref/core.internal/html/structgrpc__credentials__vtable.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__endpoint.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__endpoint__pair.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__endpoint__vtable.html206
-rw-r--r--doc/ref/core.internal/html/structgrpc__event.html167
-rw-r--r--doc/ref/core.internal/html/structgrpc__fake__channel__security__connector.html134
-rw-r--r--doc/ref/core.internal/html/structgrpc__fake__oauth2__credentials.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__fd.html318
-rw-r--r--doc/ref/core.internal/html/structgrpc__fd__watcher.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__httpcli__context.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__httpcli__header.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__httpcli__parser.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__httpcli__request.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__httpcli__response.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__httpcli__ssl__channel__security__connector.html148
-rw-r--r--doc/ref/core.internal/html/structgrpc__iam__credentials.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__iomgr__closure.html179
-rw-r--r--doc/ref/core.internal/html/structgrpc__iomgr__object.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__ioreq.html153
-rw-r--r--doc/ref/core.internal/html/structgrpc__json.html206
-rw-r--r--doc/ref/core.internal/html/structgrpc__json__reader.html248
-rw-r--r--doc/ref/core.internal/html/structgrpc__json__reader__vtable.html276
-rw-r--r--doc/ref/core.internal/html/structgrpc__json__writer.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__json__writer__vtable.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__jwt__claims.html232
-rw-r--r--doc/ref/core.internal/html/structgrpc__jwt__verifier.html162
-rw-r--r--doc/ref/core.internal/html/structgrpc__jwt__verifier__email__domain__key__url__mapping.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__kick__fd__info.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__lb__policy.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__lb__policy__vtable.html222
-rw-r--r--doc/ref/core.internal/html/structgrpc__linked__mdelem.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__mdctx.html246
-rw-r--r--doc/ref/core.internal/html/structgrpc__mdelem.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__mdelem__list.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__mdstr.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__metadata.html188
-rw-r--r--doc/ref/core.internal/html/structgrpc__metadata__array.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__metadata__batch.html159
-rw-r--r--doc/ref/core.internal/html/structgrpc__oauth2__token__fetcher__credentials.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__op.html439
-rw-r--r--doc/ref/core.internal/html/structgrpc__pollset.html292
-rw-r--r--doc/ref/core.internal/html/structgrpc__pollset__kick__state.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__pollset__set.html221
-rw-r--r--doc/ref/core.internal/html/structgrpc__pollset__vtable.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__precise__clock.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__refresh__token__credentials.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__resolved__address.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__resolved__addresses.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__resolver.html141
-rw-r--r--doc/ref/core.internal/html/structgrpc__resolver__factory.html128
-rw-r--r--doc/ref/core.internal/html/structgrpc__resolver__factory__vtable.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__resolver__vtable.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__secure__transport__setup.html232
-rw-r--r--doc/ref/core.internal/html/structgrpc__security__connector.html179
-rw-r--r--doc/ref/core.internal/html/structgrpc__security__connector__vtable.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__server.html423
-rw-r--r--doc/ref/core.internal/html/structgrpc__server__credentials.html137
-rw-r--r--doc/ref/core.internal/html/structgrpc__server__credentials__vtable.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__server__secure__state.html204
-rw-r--r--doc/ref/core.internal/html/structgrpc__server__security__context.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__service__account__credentials.html164
-rw-r--r--doc/ref/core.internal/html/structgrpc__service__account__jwt__access__credentials.html221
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__channel__security__connector.html176
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__config.html192
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__credentials.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__pem__key__cert__pair.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__server__config.html220
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__server__credentials.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__ssl__server__security__connector.html134
-rw-r--r--doc/ref/core.internal/html/structgrpc__stream__op.html179
-rw-r--r--doc/ref/core.internal/html/structgrpc__stream__op__buffer.html169
-rw-r--r--doc/ref/core.internal/html/structgrpc__subchannel.html506
-rw-r--r--doc/ref/core.internal/html/structgrpc__subchannel__args.html224
-rw-r--r--doc/ref/core.internal/html/structgrpc__subchannel__call.html134
-rw-r--r--doc/ref/core.internal/html/structgrpc__subchannel__factory.html129
-rw-r--r--doc/ref/core.internal/html/structgrpc__subchannel__factory__vtable.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__time__averaged__stats.html206
-rw-r--r--doc/ref/core.internal/html/structgrpc__transport.html122
-rw-r--r--doc/ref/core.internal/html/structgrpc__transport__op.html308
-rw-r--r--doc/ref/core.internal/html/structgrpc__transport__stream__op.html266
-rw-r--r--doc/ref/core.internal/html/structgrpc__transport__vtable.html206
-rw-r--r--doc/ref/core.internal/html/structgrpc__uri.html150
-rw-r--r--doc/ref/core.internal/html/structgrpc__wakeup__fd__info.html136
-rw-r--r--doc/ref/core.internal/html/structgrpc__wakeup__fd__vtable.html178
-rw-r--r--doc/ref/core.internal/html/structgrpc__winsocket.html220
-rw-r--r--doc/ref/core.internal/html/structgrpc__winsocket__callback__info.html206
-rw-r--r--doc/ref/core.internal/html/structhuff__out.html148
-rw-r--r--doc/ref/core.internal/html/structinternal__metadata.html218
-rw-r--r--doc/ref/core.internal/html/structinternal__request.html302
-rw-r--r--doc/ref/core.internal/html/structinternal__string.html218
-rw-r--r--doc/ref/core.internal/html/structjose__header.html162
-rw-r--r--doc/ref/core.internal/html/structjson__reader__userdata.html218
-rw-r--r--doc/ref/core.internal/html/structjson__writer__userdata.html162
-rw-r--r--doc/ref/core.internal/html/structlb__policy__connectivity__watcher.html168
-rw-r--r--doc/ref/core.internal/html/structlistener.html162
-rw-r--r--doc/ref/core.internal/html/structlockfree__node__contents.html120
-rw-r--r--doc/ref/core.internal/html/structmalloc__refcount.html134
-rw-r--r--doc/ref/core.internal/html/structmerge__args__factory.html162
-rw-r--r--doc/ref/core.internal/html/structnew__slice__refcount.html162
-rw-r--r--doc/ref/core.internal/html/structnew__with__len__slice__refcount.html176
-rw-r--r--doc/ref/core.internal/html/structpending__pick.html162
-rw-r--r--doc/ref/core.internal/html/structpick__first__lb__policy.html304
-rw-r--r--doc/ref/core.internal/html/structreceived__status.html148
-rw-r--r--doc/ref/core.internal/html/structregistered__call.html148
-rw-r--r--doc/ref/core.internal/html/structregistered__method.html162
-rw-r--r--doc/ref/core.internal/html/structregistered__resolver.html134
-rw-r--r--doc/ref/core.internal/html/structreqinfo__master.html176
-rw-r--r--doc/ref/core.internal/html/structrequest__killer.html148
-rw-r--r--doc/ref/core.internal/html/structrequest__matcher.html148
-rw-r--r--doc/ref/core.internal/html/structrequested__call.html321
-rw-r--r--doc/ref/core.internal/html/structsecure__endpoint.html302
-rw-r--r--doc/ref/core.internal/html/structshard__type.html204
-rw-r--r--doc/ref/core.internal/html/structshutdown__cleanup__args.html134
-rw-r--r--doc/ref/core.internal/html/structshutdown__tag.html148
-rw-r--r--doc/ref/core.internal/html/structsockaddr__resolver.html273
-rw-r--r--doc/ref/core.internal/html/structstate__watcher.html303
-rw-r--r--doc/ref/core.internal/html/structsubchannel__factory.html191
-rw-r--r--doc/ref/core.internal/html/structtcp__endpoint__list.html134
-rw-r--r--doc/ref/core.internal/html/structtracer.html148
-rw-r--r--doc/ref/core.internal/html/structtsi__fake__frame.html176
-rw-r--r--doc/ref/core.internal/html/structtsi__fake__frame__protector.html162
-rw-r--r--doc/ref/core.internal/html/structtsi__fake__handshaker.html204
-rw-r--r--doc/ref/core.internal/html/structtsi__frame__protector.html122
-rw-r--r--doc/ref/core.internal/html/structtsi__frame__protector__vtable.html164
-rw-r--r--doc/ref/core.internal/html/structtsi__handshaker.html136
-rw-r--r--doc/ref/core.internal/html/structtsi__handshaker__vtable.html192
-rw-r--r--doc/ref/core.internal/html/structtsi__peer.html136
-rw-r--r--doc/ref/core.internal/html/structtsi__peer__property.html165
-rw-r--r--doc/ref/core.internal/html/structtsi__ssl__client__handshaker__factory.html162
-rw-r--r--doc/ref/core.internal/html/structtsi__ssl__frame__protector.html204
-rw-r--r--doc/ref/core.internal/html/structtsi__ssl__handshaker.html176
-rw-r--r--doc/ref/core.internal/html/structtsi__ssl__handshaker__factory.html134
-rw-r--r--doc/ref/core.internal/html/structtsi__ssl__server__handshaker__factory.html190
-rw-r--r--doc/ref/core.internal/html/structverifier__cb__ctx.html232
-rw-r--r--doc/ref/core.internal/html/structwaiting__call.html134
-rw-r--r--doc/ref/core.internal/html/structwaiting__for__connect.html190
-rw-r--r--doc/ref/core.internal/html/subchannel_8c.html789
-rw-r--r--doc/ref/core.internal/html/subchannel_8h.html642
-rw-r--r--doc/ref/core.internal/html/subchannel_8h_source.html246
-rw-r--r--doc/ref/core.internal/html/subchannel__factory_8c.html174
-rw-r--r--doc/ref/core.internal/html/subchannel__factory_8h.html221
-rw-r--r--doc/ref/core.internal/html/subchannel__factory_8h_source.html171
-rw-r--r--doc/ref/core.internal/html/subprocess_8h.html226
-rw-r--r--doc/ref/core.internal/html/subprocess_8h_source.html162
-rw-r--r--doc/ref/core.internal/html/subprocess__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/surface__trace_8c.html121
-rw-r--r--doc/ref/core.internal/html/surface__trace_8h.html167
-rw-r--r--doc/ref/core.internal/html/surface__trace_8h_source.html151
-rw-r--r--doc/ref/core.internal/html/sync_8c.html431
-rw-r--r--doc/ref/core.internal/html/sync_8h.html740
-rw-r--r--doc/ref/core.internal/html/sync_8h_source.html492
-rw-r--r--doc/ref/core.internal/html/sync__generic_8h.html147
-rw-r--r--doc/ref/core.internal/html/sync__generic_8h_source.html168
-rw-r--r--doc/ref/core.internal/html/sync__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/sync__posix_8h.html171
-rw-r--r--doc/ref/core.internal/html/sync__posix_8h_source.html150
-rw-r--r--doc/ref/core.internal/html/sync__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/sync__win32_8h.html162
-rw-r--r--doc/ref/core.internal/html/sync__win32_8h_source.html154
-rw-r--r--doc/ref/core.internal/html/sync_off.pngbin0 -> 853 bytes
-rw-r--r--doc/ref/core.internal/html/sync_on.pngbin0 -> 845 bytes
-rw-r--r--doc/ref/core.internal/html/tab_a.pngbin0 -> 142 bytes
-rw-r--r--doc/ref/core.internal/html/tab_b.pngbin0 -> 169 bytes
-rw-r--r--doc/ref/core.internal/html/tab_h.pngbin0 -> 177 bytes
-rw-r--r--doc/ref/core.internal/html/tab_s.pngbin0 -> 184 bytes
-rw-r--r--doc/ref/core.internal/html/tabs.css60
-rw-r--r--doc/ref/core.internal/html/tcp__client_8h.html164
-rw-r--r--doc/ref/core.internal/html/tcp__client_8h_source.html160
-rw-r--r--doc/ref/core.internal/html/tcp__client__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/tcp__client__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/tcp__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/tcp__posix_8h.html182
-rw-r--r--doc/ref/core.internal/html/tcp__posix_8h_source.html164
-rw-r--r--doc/ref/core.internal/html/tcp__server_8h.html302
-rw-r--r--doc/ref/core.internal/html/tcp__server_8h_source.html188
-rw-r--r--doc/ref/core.internal/html/tcp__server__posix_8c.html121
-rw-r--r--doc/ref/core.internal/html/tcp__server__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/tcp__windows_8c.html100
-rw-r--r--doc/ref/core.internal/html/tcp__windows_8h.html156
-rw-r--r--doc/ref/core.internal/html/tcp__windows_8h_source.html162
-rw-r--r--doc/ref/core.internal/html/thd_8c.html222
-rw-r--r--doc/ref/core.internal/html/thd_8h.html300
-rw-r--r--doc/ref/core.internal/html/thd_8h_source.html204
-rw-r--r--doc/ref/core.internal/html/thd__internal_8h.html101
-rw-r--r--doc/ref/core.internal/html/thd__internal_8h_source.html138
-rw-r--r--doc/ref/core.internal/html/thd__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/thd__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/time_8c.html652
-rw-r--r--doc/ref/core.internal/html/time_8h.html769
-rw-r--r--doc/ref/core.internal/html/time_8h_source.html254
-rw-r--r--doc/ref/core.internal/html/time__averaged__stats_8c.html193
-rw-r--r--doc/ref/core.internal/html/time__averaged__stats_8h.html200
-rw-r--r--doc/ref/core.internal/html/time__averaged__stats_8h_source.html199
-rw-r--r--doc/ref/core.internal/html/time__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/time__win32_8c.html100
-rw-r--r--doc/ref/core.internal/html/timeout__encoding_8c.html165
-rw-r--r--doc/ref/core.internal/html/timeout__encoding_8h.html185
-rw-r--r--doc/ref/core.internal/html/timeout__encoding_8h_source.html151
-rw-r--r--doc/ref/core.internal/html/timers_8h.html524
-rw-r--r--doc/ref/core.internal/html/timers_8h_source.html267
-rw-r--r--doc/ref/core.internal/html/timers__preciseclock_8h.html168
-rw-r--r--doc/ref/core.internal/html/timers__preciseclock_8h_source.html207
-rw-r--r--doc/ref/core.internal/html/tls_8h.html102
-rw-r--r--doc/ref/core.internal/html/tls_8h_source.html180
-rw-r--r--doc/ref/core.internal/html/tls__gcc_8h.html214
-rw-r--r--doc/ref/core.internal/html/tls__gcc_8h_source.html154
-rw-r--r--doc/ref/core.internal/html/tls__msvc_8h.html214
-rw-r--r--doc/ref/core.internal/html/tls__msvc_8h_source.html154
-rw-r--r--doc/ref/core.internal/html/tls__pthread_8c.html100
-rw-r--r--doc/ref/core.internal/html/tls__pthread_8h.html221
-rw-r--r--doc/ref/core.internal/html/tls__pthread_8h_source.html165
-rw-r--r--doc/ref/core.internal/html/trace_8c.html234
-rw-r--r--doc/ref/core.internal/html/trace_8h.html173
-rw-r--r--doc/ref/core.internal/html/trace_8h_source.html146
-rw-r--r--doc/ref/core.internal/html/transport_8c.html344
-rw-r--r--doc/ref/core.internal/html/transport_8h.html568
-rw-r--r--doc/ref/core.internal/html/transport_8h_source.html334
-rw-r--r--doc/ref/core.internal/html/transport__impl_8h.html132
-rw-r--r--doc/ref/core.internal/html/transport__impl_8h_source.html185
-rw-r--r--doc/ref/core.internal/html/transport__op__string_8c.html195
-rw-r--r--doc/ref/core.internal/html/transport__security_8c.html670
-rw-r--r--doc/ref/core.internal/html/transport__security_8h.html330
-rw-r--r--doc/ref/core.internal/html/transport__security_8h_source.html231
-rw-r--r--doc/ref/core.internal/html/transport__security__interface_8h.html638
-rw-r--r--doc/ref/core.internal/html/transport__security__interface_8h_source.html479
-rw-r--r--doc/ref/core.internal/html/uniongrpc__ioreq__data.html323
-rw-r--r--doc/ref/core.internal/html/unionlockfree__node.html134
-rw-r--r--doc/ref/core.internal/html/uri__parser_8c.html163
-rw-r--r--doc/ref/core.internal/html/uri__parser_8h.html166
-rw-r--r--doc/ref/core.internal/html/uri__parser_8h_source.html152
-rw-r--r--doc/ref/core.internal/html/useful_8h.html450
-rw-r--r--doc/ref/core.internal/html/useful_8h_source.html170
-rw-r--r--doc/ref/core.internal/html/varint_8c.html159
-rw-r--r--doc/ref/core.internal/html/varint_8h.html277
-rw-r--r--doc/ref/core.internal/html/varint_8h_source.html177
-rw-r--r--doc/ref/core.internal/html/version_8c.html128
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__eventfd_8c.html100
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__nospecial_8c.html100
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__pipe_8c.html100
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__pipe_8h.html123
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__pipe_8h_source.html143
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__posix_8c.html100
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__posix_8h.html318
-rw-r--r--doc/ref/core.internal/html/wakeup__fd__posix_8h_source.html216
-rw-r--r--doc/ref/core.internal/html/writing_8c.html197
1221 files changed, 219176 insertions, 0 deletions
diff --git a/doc/ref/core.internal/html/add__channel__arg_8c.html b/doc/ref/core.internal/html/add__channel__arg_8c.html
new file mode 100644
index 0000000000..501666f6c8
--- /dev/null
+++ b/doc/ref/core.internal/html/add__channel__arg_8c.html
@@ -0,0 +1,139 @@
+<!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: src/core/client_config/subchannel_factory_decorators/add_channel_arg.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">add_channel_arg.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="add__channel__arg_8h_source.html">src/core/client_config/subchannel_factory_decorators/add_channel_arg.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="merge__channel__args_8h_source.html">src/core/client_config/subchannel_factory_decorators/merge_channel_args.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aec70a5daa15f33d18edc47ebc0270c34"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="add__channel__arg_8c.html#aec70a5daa15f33d18edc47ebc0270c34">grpc_subchannel_factory_add_channel_arg</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *input, const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="memdesc:aec70a5daa15f33d18edc47ebc0270c34"><td class="mdescLeft">&#160;</td><td class="mdescRight">Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, arg is retained by the caller. <a href="#aec70a5daa15f33d18edc47ebc0270c34">More...</a><br/></td></tr>
+<tr class="separator:aec70a5daa15f33d18edc47ebc0270c34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aec70a5daa15f33d18edc47ebc0270c34"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* grpc_subchannel_factory_add_channel_arg </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td>
+ <td class="paramname"><em>arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, arg is retained by the caller. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/add__channel__arg_8h.html b/doc/ref/core.internal/html/add__channel__arg_8h.html
new file mode 100644
index 0000000000..8b8715fb8d
--- /dev/null
+++ b/doc/ref/core.internal/html/add__channel__arg_8h.html
@@ -0,0 +1,140 @@
+<!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: src/core/client_config/subchannel_factory_decorators/add_channel_arg.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">add_channel_arg.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="subchannel__factory_8h_source.html">src/core/client_config/subchannel_factory.h</a>&quot;</code><br/>
+</div>
+<p><a href="add__channel__arg_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aec70a5daa15f33d18edc47ebc0270c34"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34">grpc_subchannel_factory_add_channel_arg</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *input, const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="memdesc:aec70a5daa15f33d18edc47ebc0270c34"><td class="mdescLeft">&#160;</td><td class="mdescRight">Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, arg is retained by the caller. <a href="#aec70a5daa15f33d18edc47ebc0270c34">More...</a><br/></td></tr>
+<tr class="separator:aec70a5daa15f33d18edc47ebc0270c34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aec70a5daa15f33d18edc47ebc0270c34"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* grpc_subchannel_factory_add_channel_arg </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td>
+ <td class="paramname"><em>arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, arg is retained by the caller. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/add__channel__arg_8h_source.html b/doc/ref/core.internal/html/add__channel__arg_8h_source.html
new file mode 100644
index 0000000000..48c0cf1533
--- /dev/null
+++ b/doc/ref/core.internal/html/add__channel__arg_8h_source.html
@@ -0,0 +1,146 @@
+<!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: src/core/client_config/subchannel_factory_decorators/add_channel_arg.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">add_channel_arg.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="add__channel__arg_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_DECORATORS_ADD_CHANNEL_ARG_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_DECORATORS_ADD_CHANNEL_ARG_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subchannel__factory_8h.html">src/core/client_config/subchannel_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="code" href="add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34">grpc_subchannel_factory_add_channel_arg</a>(</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *input, <span class="keyword">const</span> <a class="code" href="structgrpc__arg.html">grpc_arg</a> *<a class="code" href="structarg.html">arg</a>);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_DECORATORS_ADD_CHANNEL_ARG_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="subchannel__factory_8h_html"><div class="ttname"><a href="subchannel__factory_8h.html">subchannel_factory.h</a></div></div>
+<div class="ttc" id="structgrpc__arg_html"><div class="ttname"><a href="structgrpc__arg.html">grpc_arg</a></div><div class="ttdoc">A single argument... </div><div class="ttdef"><b>Definition:</b> grpc.h:91</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="add__channel__arg_8h_html_aec70a5daa15f33d18edc47ebc0270c34"><div class="ttname"><a href="add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34">grpc_subchannel_factory_add_channel_arg</a></div><div class="ttdeci">grpc_subchannel_factory * grpc_subchannel_factory_add_channel_arg(grpc_subchannel_factory *input, const grpc_arg *arg)</div><div class="ttdoc">Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argu...</div><div class="ttdef"><b>Definition:</b> add_channel_arg.c:37</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html"><div class="ttname"><a href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></div><div class="ttdoc">Constructor for new configured channels. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:45</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/alarm_8c.html b/doc/ref/core.internal/html/alarm_8c.html
new file mode 100644
index 0000000000..339609c449
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm_8c.html
@@ -0,0 +1,374 @@
+<!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: src/core/iomgr/alarm.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alarm.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="alarm_8h_source.html">src/core/iomgr/alarm.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alarm__heap_8h_source.html">src/core/iomgr/alarm_heap.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alarm__internal_8h_source.html">src/core/iomgr/alarm_internal.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="time__averaged__stats_8h_source.html">src/core/iomgr/time_averaged_stats.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html">shard_type</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab10c095adee8fff29f7d8e4209b70c66"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#ab10c095adee8fff29f7d8e4209b70c66">INVALID_HEAP_INDEX</a>&#160;&#160;&#160;0xffffffffu</td></tr>
+<tr class="separator:ab10c095adee8fff29f7d8e4209b70c66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae48da0bb5039d191e6de667c888624c1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#ae48da0bb5039d191e6de667c888624c1">LOG2_NUM_SHARDS</a>&#160;&#160;&#160;5</td></tr>
+<tr class="separator:ae48da0bb5039d191e6de667c888624c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc8b3b06fc834d57a69ca6ed5e3dfe3e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#abc8b3b06fc834d57a69ca6ed5e3dfe3e">NUM_SHARDS</a>&#160;&#160;&#160;(1 &lt;&lt; <a class="el" href="alarm_8c.html#ae48da0bb5039d191e6de667c888624c1">LOG2_NUM_SHARDS</a>)</td></tr>
+<tr class="separator:abc8b3b06fc834d57a69ca6ed5e3dfe3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a035d5ac078d2c49bd8bc08a56eaeb7bb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a035d5ac078d2c49bd8bc08a56eaeb7bb">MAX_ALARMS_PER_CHECK</a>&#160;&#160;&#160;128</td></tr>
+<tr class="separator:a035d5ac078d2c49bd8bc08a56eaeb7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27a820068e725cd087726fc5d913a5b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a27a820068e725cd087726fc5d913a5b6">ADD_DEADLINE_SCALE</a>&#160;&#160;&#160;0.33</td></tr>
+<tr class="separator:a27a820068e725cd087726fc5d913a5b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1998a9b10fbd17ad50ff85991aeaa645"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a1998a9b10fbd17ad50ff85991aeaa645">MIN_QUEUE_WINDOW_DURATION</a>&#160;&#160;&#160;0.01</td></tr>
+<tr class="separator:a1998a9b10fbd17ad50ff85991aeaa645"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7820b33745be59861679298b76d9a95"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#aa7820b33745be59861679298b76d9a95">MAX_QUEUE_WINDOW_DURATION</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:aa7820b33745be59861679298b76d9a95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7f76e290e84d187382a25d0d6999067e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a7f76e290e84d187382a25d0d6999067e">grpc_alarm_list_init</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> now)</td></tr>
+<tr class="separator:a7f76e290e84d187382a25d0d6999067e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a768994cd3fff1f9b3ca7805dee7b3831"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a768994cd3fff1f9b3ca7805dee7b3831">grpc_alarm_list_shutdown</a> (void)</td></tr>
+<tr class="separator:a768994cd3fff1f9b3ca7805dee7b3831"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50483486a229b573a29ed9fa30807999"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a50483486a229b573a29ed9fa30807999">grpc_alarm_init</a> (<a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> alarm_cb, void *alarm_cb_arg, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now)</td></tr>
+<tr class="separator:a50483486a229b573a29ed9fa30807999"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a921e9a2f728d338f42ad586e6d4eaf60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a921e9a2f728d338f42ad586e6d4eaf60">grpc_alarm_cancel</a> (<a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm)</td></tr>
+<tr class="separator:a921e9a2f728d338f42ad586e6d4eaf60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28de65beea264f65e15824cbf866d863"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a28de65beea264f65e15824cbf866d863">grpc_alarm_check</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *drop_mu, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *next)</td></tr>
+<tr class="separator:a28de65beea264f65e15824cbf866d863"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a257c1eaf2f1c2f352893dcc0af034dfa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html#a257c1eaf2f1c2f352893dcc0af034dfa">grpc_alarm_list_next_timeout</a> (void)</td></tr>
+<tr class="separator:a257c1eaf2f1c2f352893dcc0af034dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a27a820068e725cd087726fc5d913a5b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ADD_DEADLINE_SCALE&#160;&#160;&#160;0.33</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab10c095adee8fff29f7d8e4209b70c66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define INVALID_HEAP_INDEX&#160;&#160;&#160;0xffffffffu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae48da0bb5039d191e6de667c888624c1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define LOG2_NUM_SHARDS&#160;&#160;&#160;5</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a035d5ac078d2c49bd8bc08a56eaeb7bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_ALARMS_PER_CHECK&#160;&#160;&#160;128</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7820b33745be59861679298b76d9a95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_QUEUE_WINDOW_DURATION&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1998a9b10fbd17ad50ff85991aeaa645"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MIN_QUEUE_WINDOW_DURATION&#160;&#160;&#160;0.01</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc8b3b06fc834d57a69ca6ed5e3dfe3e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define NUM_SHARDS&#160;&#160;&#160;(1 &lt;&lt; <a class="el" href="alarm_8c.html#ae48da0bb5039d191e6de667c888624c1">LOG2_NUM_SHARDS</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a921e9a2f728d338f42ad586e6d4eaf60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a28de65beea264f65e15824cbf866d863"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_check </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>drop_mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>next</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a50483486a229b573a29ed9fa30807999"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>&#160;</td>
+ <td class="paramname"><em>alarm_cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>alarm_cb_arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7f76e290e84d187382a25d0d6999067e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_list_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a257c1eaf2f1c2f352893dcc0af034dfa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_alarm_list_next_timeout </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a768994cd3fff1f9b3ca7805dee7b3831"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_list_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alarm_8h.html b/doc/ref/core.internal/html/alarm_8h.html
new file mode 100644
index 0000000000..9ea5a2a482
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm_8h.html
@@ -0,0 +1,200 @@
+<!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: src/core/iomgr/alarm.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alarm.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="alarm_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a2a31b5bd57cc9f6b862e9b8ef0ec2bea"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__alarm.html">grpc_alarm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea">grpc_alarm</a></td></tr>
+<tr class="separator:a2a31b5bd57cc9f6b862e9b8ef0ec2bea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a50483486a229b573a29ed9fa30807999"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8h.html#a50483486a229b573a29ed9fa30807999">grpc_alarm_init</a> (<a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> alarm_cb, void *alarm_cb_arg, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now)</td></tr>
+<tr class="separator:a50483486a229b573a29ed9fa30807999"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a921e9a2f728d338f42ad586e6d4eaf60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60">grpc_alarm_cancel</a> (<a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm)</td></tr>
+<tr class="separator:a921e9a2f728d338f42ad586e6d4eaf60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a2a31b5bd57cc9f6b862e9b8ef0ec2bea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> <a class="el" href="structgrpc__alarm.html">grpc_alarm</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a921e9a2f728d338f42ad586e6d4eaf60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a50483486a229b573a29ed9fa30807999"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>&#160;</td>
+ <td class="paramname"><em>alarm_cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>alarm_cb_arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alarm_8h_source.html b/doc/ref/core.internal/html/alarm_8h_source.html
new file mode 100644
index 0000000000..3677d544cd
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm_8h_source.html
@@ -0,0 +1,205 @@
+<!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: src/core/iomgr/alarm.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">alarm.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="alarm_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_ALARM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_ALARM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr_8h.html">src/core/iomgr/iomgr.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__alarm.html">grpc_alarm</a> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126"> 42</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126">deadline</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b"> 43</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b">heap_index</a>; <span class="comment">/* INVALID_HEAP_INDEX if not in heap */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f"> 44</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f">triggered</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab"> 45</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *<a class="code" href="structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab">next</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97"> 46</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *<a class="code" href="structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97">prev</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd"> 47</a></span>&#160; <a class="code" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> <a class="code" href="structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd">cb</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3"> 48</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3">cb_arg</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;} <a class="code" href="alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea">grpc_alarm</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">/* Initialize *alarm. When expired or canceled, alarm_cb will be called with</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> *alarm_cb_arg and status to indicate if it expired (SUCCESS) or was</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> canceled (CANCELLED). alarm_cb is guaranteed to be called exactly once,</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> and application code should check the status to determine how it was</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> invoked. The application callback is also responsible for maintaining</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> information about when to free up any user-level state. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm_8h.html#a50483486a229b573a29ed9fa30807999">grpc_alarm_init</a>(<a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *alarm, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126">deadline</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> alarm_cb, <span class="keywordtype">void</span> *alarm_cb_arg,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> now);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* Note that there is no alarm destroy function. This is because the</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> alarm is a one-time occurrence with a guarantee that the callback will</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> be called exactly once, either at expiration or cancellation. Thus, all</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> the internal alarm event management state is destroyed just before</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> that callback is invoked. If the user has additional state associated with</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> the alarm, the user is responsible for determining when it is safe to</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> destroy that state. */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Cancel an *alarm.</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> There are three cases:</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> 1. We normally cancel the alarm</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> 2. The alarm has already run</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> 3. We can&#39;t cancel the alarm because it is &quot;in flight&quot;.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> In all of these cases, the cancellation is still considered successful.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> They are essentially distinguished in that the alarm_cb will be run</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> exactly once from either the cancellation (with status CANCELLED)</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> or from the activation (with status SUCCESS)</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> Note carefully that the callback function MAY occur in the same callstack</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> as grpc_alarm_cancel. It&#39;s expected that most alarms will be cancelled (their</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> primary use is to implement deadlines), and so this code is optimized such</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> that cancellation costs as little as possible. Making callbacks run inline</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> matches this aim.</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> Requires: cancel() must happen after add() on a given alarm */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60">grpc_alarm_cancel</a>(<a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *alarm);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_ALARM_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__alarm_html"><div class="ttname"><a href="structgrpc__alarm.html">grpc_alarm</a></div><div class="ttdef"><b>Definition:</b> alarm.h:41</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="alarm_8h_html_a921e9a2f728d338f42ad586e6d4eaf60"><div class="ttname"><a href="alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60">grpc_alarm_cancel</a></div><div class="ttdeci">void grpc_alarm_cancel(grpc_alarm *alarm)</div><div class="ttdef"><b>Definition:</b> alarm.c:227</div></div>
+<div class="ttc" id="structgrpc__alarm_html_a85a6797057eb75a49d63f4301b4b32dd"><div class="ttname"><a href="structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd">grpc_alarm::cb</a></div><div class="ttdeci">grpc_iomgr_cb_func cb</div><div class="ttdef"><b>Definition:</b> alarm.h:47</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="structgrpc__alarm_html_a2f83596c1a3e1337f333dcffebabb7ab"><div class="ttname"><a href="structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab">grpc_alarm::next</a></div><div class="ttdeci">struct grpc_alarm * next</div><div class="ttdef"><b>Definition:</b> alarm.h:45</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__alarm_html_a0f9db224dc882f41a1d676115ede23c3"><div class="ttname"><a href="structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3">grpc_alarm::cb_arg</a></div><div class="ttdeci">void * cb_arg</div><div class="ttdef"><b>Definition:</b> alarm.h:48</div></div>
+<div class="ttc" id="alarm_8h_html_a50483486a229b573a29ed9fa30807999"><div class="ttname"><a href="alarm_8h.html#a50483486a229b573a29ed9fa30807999">grpc_alarm_init</a></div><div class="ttdeci">void grpc_alarm_init(grpc_alarm *alarm, gpr_timespec deadline, grpc_iomgr_cb_func alarm_cb, void *alarm_cb_arg, gpr_timespec now)</div><div class="ttdef"><b>Definition:</b> alarm.c:176</div></div>
+<div class="ttc" id="structgrpc__alarm_html_adef760998486aa79b9637e95a83e061b"><div class="ttname"><a href="structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b">grpc_alarm::heap_index</a></div><div class="ttdeci">gpr_uint32 heap_index</div><div class="ttdef"><b>Definition:</b> alarm.h:43</div></div>
+<div class="ttc" id="structgrpc__alarm_html_a8f3f1ae9b65a0cc76971ea7daed1b126"><div class="ttname"><a href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126">grpc_alarm::deadline</a></div><div class="ttdeci">gpr_timespec deadline</div><div class="ttdef"><b>Definition:</b> alarm.h:42</div></div>
+<div class="ttc" id="iomgr_8h_html_ad4037ad983dff2d616a6fb90158baad3"><div class="ttname"><a href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a></div><div class="ttdeci">void(* grpc_iomgr_cb_func)(void *arg, int success)</div><div class="ttdoc">gRPC Callback definition. </div><div class="ttdef"><b>Definition:</b> iomgr.h:42</div></div>
+<div class="ttc" id="alarm_8h_html_a2a31b5bd57cc9f6b862e9b8ef0ec2bea"><div class="ttname"><a href="alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea">grpc_alarm</a></div><div class="ttdeci">struct grpc_alarm grpc_alarm</div></div>
+<div class="ttc" id="structgrpc__alarm_html_a75136c755eae954d2955f3519ea2919f"><div class="ttname"><a href="structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f">grpc_alarm::triggered</a></div><div class="ttdeci">int triggered</div><div class="ttdef"><b>Definition:</b> alarm.h:44</div></div>
+<div class="ttc" id="structgrpc__alarm_html_a806b141943b6b45f16cc7459ab035b97"><div class="ttname"><a href="structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97">grpc_alarm::prev</a></div><div class="ttdeci">struct grpc_alarm * prev</div><div class="ttdef"><b>Definition:</b> alarm.h:46</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="iomgr_8h_html"><div class="ttname"><a href="iomgr_8h.html">iomgr.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/alarm__heap_8c.html b/doc/ref/core.internal/html/alarm__heap_8c.html
new file mode 100644
index 0000000000..39e8fecd3c
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm__heap_8c.html
@@ -0,0 +1,289 @@
+<!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: src/core/iomgr/alarm_heap.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alarm_heap.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="alarm__heap_8h_source.html">src/core/iomgr/alarm_heap.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:acea3d7e412eaa9246638bc218372f55e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#acea3d7e412eaa9246638bc218372f55e">SHRINK_MIN_ELEMS</a>&#160;&#160;&#160;8</td></tr>
+<tr class="separator:acea3d7e412eaa9246638bc218372f55e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5064e56882ef0a36524cae10ac800ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#ac5064e56882ef0a36524cae10ac800ce">SHRINK_FULLNESS_FACTOR</a>&#160;&#160;&#160;2</td></tr>
+<tr class="separator:ac5064e56882ef0a36524cae10ac800ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a353a4a1809ac4546d62b3098dda8f674"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a353a4a1809ac4546d62b3098dda8f674">grpc_alarm_heap_init</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a353a4a1809ac4546d62b3098dda8f674"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a827cbed1eadd7b307da4f509bb0e4ff9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a827cbed1eadd7b307da4f509bb0e4ff9">grpc_alarm_heap_destroy</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a827cbed1eadd7b307da4f509bb0e4ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96e6b49b0020da6f3163dfaeac36fed4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a96e6b49b0020da6f3163dfaeac36fed4">grpc_alarm_heap_add</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap, <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm)</td></tr>
+<tr class="separator:a96e6b49b0020da6f3163dfaeac36fed4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69c5b3ff692b6ca36c48d727acd45e9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a69c5b3ff692b6ca36c48d727acd45e9c">grpc_alarm_heap_remove</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap, <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm)</td></tr>
+<tr class="separator:a69c5b3ff692b6ca36c48d727acd45e9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52d3c052d322cc97ced32a68bd9048cb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a52d3c052d322cc97ced32a68bd9048cb">grpc_alarm_heap_is_empty</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a52d3c052d322cc97ced32a68bd9048cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c81a64c942586da4313547cc8d259ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a1c81a64c942586da4313547cc8d259ea">grpc_alarm_heap_top</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a1c81a64c942586da4313547cc8d259ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40cf7d2741c1640309682f14cafbb029"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html#a40cf7d2741c1640309682f14cafbb029">grpc_alarm_heap_pop</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a40cf7d2741c1640309682f14cafbb029"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ac5064e56882ef0a36524cae10ac800ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define SHRINK_FULLNESS_FACTOR&#160;&#160;&#160;2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acea3d7e412eaa9246638bc218372f55e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define SHRINK_MIN_ELEMS&#160;&#160;&#160;8</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a96e6b49b0020da6f3163dfaeac36fed4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_heap_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a827cbed1eadd7b307da4f509bb0e4ff9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a353a4a1809ac4546d62b3098dda8f674"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52d3c052d322cc97ced32a68bd9048cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_heap_is_empty </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40cf7d2741c1640309682f14cafbb029"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a69c5b3ff692b6ca36c48d727acd45e9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_remove </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1c81a64c942586da4313547cc8d259ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>* grpc_alarm_heap_top </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alarm__heap_8h.html b/doc/ref/core.internal/html/alarm__heap_8h.html
new file mode 100644
index 0000000000..f28312f126
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm__heap_8h.html
@@ -0,0 +1,261 @@
+<!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: src/core/iomgr/alarm_heap.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alarm_heap.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="alarm_8h_source.html">src/core/iomgr/alarm.h</a>&quot;</code><br/>
+</div>
+<p><a href="alarm__heap_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a96e6b49b0020da6f3163dfaeac36fed4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4">grpc_alarm_heap_add</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap, <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm)</td></tr>
+<tr class="separator:a96e6b49b0020da6f3163dfaeac36fed4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a353a4a1809ac4546d62b3098dda8f674"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674">grpc_alarm_heap_init</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a353a4a1809ac4546d62b3098dda8f674"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a827cbed1eadd7b307da4f509bb0e4ff9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9">grpc_alarm_heap_destroy</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a827cbed1eadd7b307da4f509bb0e4ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69c5b3ff692b6ca36c48d727acd45e9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c">grpc_alarm_heap_remove</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap, <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *alarm)</td></tr>
+<tr class="separator:a69c5b3ff692b6ca36c48d727acd45e9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c81a64c942586da4313547cc8d259ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea">grpc_alarm_heap_top</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a1c81a64c942586da4313547cc8d259ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40cf7d2741c1640309682f14cafbb029"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029">grpc_alarm_heap_pop</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a40cf7d2741c1640309682f14cafbb029"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52d3c052d322cc97ced32a68bd9048cb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb">grpc_alarm_heap_is_empty</a> (<a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap)</td></tr>
+<tr class="separator:a52d3c052d322cc97ced32a68bd9048cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a96e6b49b0020da6f3163dfaeac36fed4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_heap_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a827cbed1eadd7b307da4f509bb0e4ff9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a353a4a1809ac4546d62b3098dda8f674"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52d3c052d322cc97ced32a68bd9048cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_heap_is_empty </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40cf7d2741c1640309682f14cafbb029"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a69c5b3ff692b6ca36c48d727acd45e9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_heap_remove </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td>
+ <td class="paramname"><em>alarm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1c81a64c942586da4313547cc8d259ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>* grpc_alarm_heap_top </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *&#160;</td>
+ <td class="paramname"><em>heap</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alarm__heap_8h_source.html b/doc/ref/core.internal/html/alarm__heap_8h_source.html
new file mode 100644
index 0000000000..cd8052d36b
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm__heap_8h_source.html
@@ -0,0 +1,169 @@
+<!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: src/core/iomgr/alarm_heap.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">alarm_heap.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="alarm__heap_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_ALARM_HEAP_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_ALARM_HEAP_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="alarm_8h.html">src/core/iomgr/alarm.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structgrpc__alarm__heap.html"> 39</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82"> 40</a></span>&#160; <a class="code" href="structgrpc__alarm.html">grpc_alarm</a> **<a class="code" href="structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82">alarms</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5"> 41</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5">alarm_count</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd"> 42</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd">alarm_capacity</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;} <a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* return 1 if the new alarm is the first alarm in the heap */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">int</span> <a class="code" href="alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4">grpc_alarm_heap_add</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap, <a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *alarm);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674">grpc_alarm_heap_init</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9">grpc_alarm_heap_destroy</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c">grpc_alarm_heap_remove</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap, <a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *alarm);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<a class="code" href="structgrpc__alarm.html">grpc_alarm</a> *<a class="code" href="alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea">grpc_alarm_heap_top</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029">grpc_alarm_heap_pop</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">int</span> <a class="code" href="alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb">grpc_alarm_heap_is_empty</a>(<a class="code" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> *heap);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_ALARM_HEAP_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__alarm_html"><div class="ttname"><a href="structgrpc__alarm.html">grpc_alarm</a></div><div class="ttdef"><b>Definition:</b> alarm.h:41</div></div>
+<div class="ttc" id="structgrpc__alarm__heap_html_a6f3027df3cbd0286bd72f5f569b6e7bd"><div class="ttname"><a href="structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd">grpc_alarm_heap::alarm_capacity</a></div><div class="ttdeci">int alarm_capacity</div><div class="ttdef"><b>Definition:</b> alarm_heap.h:42</div></div>
+<div class="ttc" id="alarm__heap_8h_html_a40cf7d2741c1640309682f14cafbb029"><div class="ttname"><a href="alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029">grpc_alarm_heap_pop</a></div><div class="ttdeci">void grpc_alarm_heap_pop(grpc_alarm_heap *heap)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:146</div></div>
+<div class="ttc" id="alarm__heap_8h_html_a52d3c052d322cc97ced32a68bd9048cb"><div class="ttname"><a href="alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb">grpc_alarm_heap_is_empty</a></div><div class="ttdeci">int grpc_alarm_heap_is_empty(grpc_alarm_heap *heap)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:138</div></div>
+<div class="ttc" id="alarm__heap_8h_html_a69c5b3ff692b6ca36c48d727acd45e9c"><div class="ttname"><a href="alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c">grpc_alarm_heap_remove</a></div><div class="ttdeci">void grpc_alarm_heap_remove(grpc_alarm_heap *heap, grpc_alarm *alarm)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:124</div></div>
+<div class="ttc" id="structgrpc__alarm__heap_html"><div class="ttname"><a href="structgrpc__alarm__heap.html">grpc_alarm_heap</a></div><div class="ttdef"><b>Definition:</b> alarm_heap.h:39</div></div>
+<div class="ttc" id="alarm__heap_8h_html_a353a4a1809ac4546d62b3098dda8f674"><div class="ttname"><a href="alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674">grpc_alarm_heap_init</a></div><div class="ttdeci">void grpc_alarm_heap_init(grpc_alarm_heap *heap)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:105</div></div>
+<div class="ttc" id="structgrpc__alarm__heap_html_a0d4ddd4a84b673b0bdf91eb5d219bfa5"><div class="ttname"><a href="structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5">grpc_alarm_heap::alarm_count</a></div><div class="ttdeci">int alarm_count</div><div class="ttdef"><b>Definition:</b> alarm_heap.h:41</div></div>
+<div class="ttc" id="structgrpc__alarm__heap_html_af2b6cbe9ec6e6c97a43d21f874264a82"><div class="ttname"><a href="structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82">grpc_alarm_heap::alarms</a></div><div class="ttdeci">grpc_alarm ** alarms</div><div class="ttdef"><b>Definition:</b> alarm_heap.h:40</div></div>
+<div class="ttc" id="alarm_8h_html"><div class="ttname"><a href="alarm_8h.html">alarm.h</a></div></div>
+<div class="ttc" id="alarm__heap_8h_html_a1c81a64c942586da4313547cc8d259ea"><div class="ttname"><a href="alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea">grpc_alarm_heap_top</a></div><div class="ttdeci">grpc_alarm * grpc_alarm_heap_top(grpc_alarm_heap *heap)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:142</div></div>
+<div class="ttc" id="alarm__heap_8h_html_a96e6b49b0020da6f3163dfaeac36fed4"><div class="ttname"><a href="alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4">grpc_alarm_heap_add</a></div><div class="ttdeci">int grpc_alarm_heap_add(grpc_alarm_heap *heap, grpc_alarm *alarm)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:111</div></div>
+<div class="ttc" id="alarm__heap_8h_html_a827cbed1eadd7b307da4f509bb0e4ff9"><div class="ttname"><a href="alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9">grpc_alarm_heap_destroy</a></div><div class="ttdeci">void grpc_alarm_heap_destroy(grpc_alarm_heap *heap)</div><div class="ttdef"><b>Definition:</b> alarm_heap.c:109</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/alarm__internal_8h.html b/doc/ref/core.internal/html/alarm__internal_8h.html
new file mode 100644
index 0000000000..0d72b6c868
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm__internal_8h.html
@@ -0,0 +1,216 @@
+<!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: src/core/iomgr/alarm_internal.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alarm_internal.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="alarm__internal_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a28de65beea264f65e15824cbf866d863"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863">grpc_alarm_check</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *drop_mu, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *next)</td></tr>
+<tr class="separator:a28de65beea264f65e15824cbf866d863"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7f76e290e84d187382a25d0d6999067e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e">grpc_alarm_list_init</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> now)</td></tr>
+<tr class="separator:a7f76e290e84d187382a25d0d6999067e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a768994cd3fff1f9b3ca7805dee7b3831"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831">grpc_alarm_list_shutdown</a> (void)</td></tr>
+<tr class="separator:a768994cd3fff1f9b3ca7805dee7b3831"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a257c1eaf2f1c2f352893dcc0af034dfa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa">grpc_alarm_list_next_timeout</a> (void)</td></tr>
+<tr class="separator:a257c1eaf2f1c2f352893dcc0af034dfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac483dfd6e19fa9df68620e7f7a0697f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f">grpc_kick_poller</a> (void)</td></tr>
+<tr class="separator:aac483dfd6e19fa9df68620e7f7a0697f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a28de65beea264f65e15824cbf866d863"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_check </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>drop_mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>next</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7f76e290e84d187382a25d0d6999067e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_list_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a257c1eaf2f1c2f352893dcc0af034dfa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_alarm_list_next_timeout </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a768994cd3fff1f9b3ca7805dee7b3831"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_alarm_list_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aac483dfd6e19fa9df68620e7f7a0697f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_kick_poller </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alarm__internal_8h_source.html b/doc/ref/core.internal/html/alarm__internal_8h_source.html
new file mode 100644
index 0000000000..cec947087f
--- /dev/null
+++ b/doc/ref/core.internal/html/alarm__internal_8h_source.html
@@ -0,0 +1,170 @@
+<!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: src/core/iomgr/alarm_internal.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">alarm_internal.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="alarm__internal_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_ALARM_INTERNAL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_ALARM_INTERNAL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* iomgr internal api for dealing with alarms */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* Check for alarms to be run, and run them.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> Return non zero if alarm callbacks were executed.</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> Drops drop_mu if it is non-null before executing callbacks.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> If next is non-null, TRY to update *next with the next running alarm</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> IF that alarm occurs before *next current value.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> *next is never guaranteed to be updated on any given execution; however,</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> with high probability at least one thread in the system will see an update</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> at any time slice. */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">int</span> <a class="code" href="alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863">grpc_alarm_check</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *drop_mu, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> now, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> *next);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e">grpc_alarm_list_init</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> now);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831">grpc_alarm_list_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa">grpc_alarm_list_next_timeout</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">/* the following must be implemented by each iomgr implementation */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f">grpc_kick_poller</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_ALARM_INTERNAL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="alarm__internal_8h_html_a7f76e290e84d187382a25d0d6999067e"><div class="ttname"><a href="alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e">grpc_alarm_list_init</a></div><div class="ttdeci">void grpc_alarm_list_init(gpr_timespec now)</div><div class="ttdef"><b>Definition:</b> alarm.c:85</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="alarm__internal_8h_html_a28de65beea264f65e15824cbf866d863"><div class="ttname"><a href="alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863">grpc_alarm_check</a></div><div class="ttdeci">int grpc_alarm_check(gpr_mu *drop_mu, gpr_timespec now, gpr_timespec *next)</div><div class="ttdef"><b>Definition:</b> alarm.c:362</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="alarm__internal_8h_html_aac483dfd6e19fa9df68620e7f7a0697f"><div class="ttname"><a href="alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f">grpc_kick_poller</a></div><div class="ttdeci">void grpc_kick_poller(void)</div><div class="ttdef"><b>Definition:</b> iomgr.c:82</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="alarm__internal_8h_html_a257c1eaf2f1c2f352893dcc0af034dfa"><div class="ttname"><a href="alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa">grpc_alarm_list_next_timeout</a></div><div class="ttdeci">gpr_timespec grpc_alarm_list_next_timeout(void)</div><div class="ttdef"><b>Definition:</b> alarm.c:369</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="alarm__internal_8h_html_a768994cd3fff1f9b3ca7805dee7b3831"><div class="ttname"><a href="alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831">grpc_alarm_list_shutdown</a></div><div class="ttdeci">void grpc_alarm_list_shutdown(void)</div><div class="ttdef"><b>Definition:</b> alarm.c:106</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/algorithm_8c.html b/doc/ref/core.internal/html/algorithm_8c.html
new file mode 100644
index 0000000000..6636fa645d
--- /dev/null
+++ b/doc/ref/core.internal/html/algorithm_8c.html
@@ -0,0 +1,217 @@
+<!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: src/core/compression/algorithm.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html">compression</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">algorithm.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a996f65ae42d05dd7ef9da9c6d6586397"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="algorithm_8c.html#a996f65ae42d05dd7ef9da9c6d6586397">grpc_compression_algorithm_parse</a> (const char *name, <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> *algorithm)</td></tr>
+<tr class="memdesc:a996f65ae42d05dd7ef9da9c6d6586397"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses <em>name</em> as a grpc_compression_algorithm instance, updating <em>algorithm</em>. <a href="#a996f65ae42d05dd7ef9da9c6d6586397">More...</a><br/></td></tr>
+<tr class="separator:a996f65ae42d05dd7ef9da9c6d6586397"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adce0341ab8fd560dc39e9e96daf7cb14"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="algorithm_8c.html#adce0341ab8fd560dc39e9e96daf7cb14">grpc_compression_algorithm_name</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, char **name)</td></tr>
+<tr class="memdesc:adce0341ab8fd560dc39e9e96daf7cb14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates <em>name</em> with the encoding name corresponding to a valid <em>algorithm</em>. <a href="#adce0341ab8fd560dc39e9e96daf7cb14">More...</a><br/></td></tr>
+<tr class="separator:adce0341ab8fd560dc39e9e96daf7cb14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a382cce802b53a6f85deb706caf1dccd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="algorithm_8c.html#a382cce802b53a6f85deb706caf1dccd6">grpc_compression_algorithm_for_level</a> (<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> level)</td></tr>
+<tr class="memdesc:a382cce802b53a6f85deb706caf1dccd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the compression algorithm corresponding to <em>level</em>. <a href="#a382cce802b53a6f85deb706caf1dccd6">More...</a><br/></td></tr>
+<tr class="separator:a382cce802b53a6f85deb706caf1dccd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace80040d9c2a916ddd4d2f2d2ec44dba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="algorithm_8c.html#ace80040d9c2a916ddd4d2f2d2ec44dba">grpc_compression_level_for_algorithm</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm)</td></tr>
+<tr class="memdesc:ace80040d9c2a916ddd4d2f2d2ec44dba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the compression level corresponding to <em>algorithm</em>. <a href="#ace80040d9c2a916ddd4d2f2d2ec44dba">More...</a><br/></td></tr>
+<tr class="separator:ace80040d9c2a916ddd4d2f2d2ec44dba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a382cce802b53a6f85deb706caf1dccd6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_compression_algorithm_for_level </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a>&#160;</td>
+ <td class="paramname"><em>level</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the compression algorithm corresponding to <em>level</em>. </p>
+<p>It abort()s for unknown levels . </p>
+
+</div>
+</div>
+<a class="anchor" id="adce0341ab8fd560dc39e9e96daf7cb14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_compression_algorithm_name </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Updates <em>name</em> with the encoding name corresponding to a valid <em>algorithm</em>. </p>
+<p>Returns 1 upon success, 0 otherwise. </p>
+
+</div>
+</div>
+<a class="anchor" id="a996f65ae42d05dd7ef9da9c6d6586397"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_compression_algorithm_parse </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> *&#160;</td>
+ <td class="paramname"><em>algorithm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Parses <em>name</em> as a grpc_compression_algorithm instance, updating <em>algorithm</em>. </p>
+<p>Returns 1 upon success, 0 otherwise. </p>
+
+</div>
+</div>
+<a class="anchor" id="ace80040d9c2a916ddd4d2f2d2ec44dba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> grpc_compression_level_for_algorithm </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the compression level corresponding to <em>algorithm</em>. </p>
+<p>It abort()s for unknown algorithms. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alloc_8c.html b/doc/ref/core.internal/html/alloc_8c.html
new file mode 100644
index 0000000000..79ef100357
--- /dev/null
+++ b/doc/ref/core.internal/html/alloc_8c.html
@@ -0,0 +1,219 @@
+<!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: src/core/support/alloc.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alloc.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af5896bb446b6179f35651730357149bb"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8c.html#af5896bb446b6179f35651730357149bb">gpr_malloc</a> (size_t size)</td></tr>
+<tr class="separator:af5896bb446b6179f35651730357149bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb8ce294adb033ac54e7a2e28b9bdac6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8c.html#abb8ce294adb033ac54e7a2e28b9bdac6">gpr_free</a> (void *p)</td></tr>
+<tr class="separator:abb8ce294adb033ac54e7a2e28b9bdac6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25d9a067b093e9c76dbbd77995b1bc91"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8c.html#a25d9a067b093e9c76dbbd77995b1bc91">gpr_realloc</a> (void *p, size_t size)</td></tr>
+<tr class="separator:a25d9a067b093e9c76dbbd77995b1bc91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73551a6249ae9b0a73ad75733c67ead4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8c.html#a73551a6249ae9b0a73ad75733c67ead4">gpr_malloc_aligned</a> (size_t size, size_t alignment_log)</td></tr>
+<tr class="separator:a73551a6249ae9b0a73ad75733c67ead4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9b603aefd33752e1b473856af77cbc9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8c.html#af9b603aefd33752e1b473856af77cbc9">gpr_free_aligned</a> (void *ptr)</td></tr>
+<tr class="separator:af9b603aefd33752e1b473856af77cbc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="abb8ce294adb033ac54e7a2e28b9bdac6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_free </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af9b603aefd33752e1b473856af77cbc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_free_aligned </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ptr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af5896bb446b6179f35651730357149bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_malloc </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a73551a6249ae9b0a73ad75733c67ead4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_malloc_aligned </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>alignment_log</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a25d9a067b093e9c76dbbd77995b1bc91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_realloc </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alloc_8h.html b/doc/ref/core.internal/html/alloc_8h.html
new file mode 100644
index 0000000000..56ac3fc42e
--- /dev/null
+++ b/doc/ref/core.internal/html/alloc_8h.html
@@ -0,0 +1,219 @@
+<!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: include/grpc/support/alloc.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alloc.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+</div>
+<p><a href="alloc_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af5896bb446b6179f35651730357149bb"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8h.html#af5896bb446b6179f35651730357149bb">gpr_malloc</a> (size_t size)</td></tr>
+<tr class="separator:af5896bb446b6179f35651730357149bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0d621b472031a64c77bd2e9fea495e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">gpr_free</a> (void *ptr)</td></tr>
+<tr class="separator:ae0d621b472031a64c77bd2e9fea495e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25d9a067b093e9c76dbbd77995b1bc91"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91">gpr_realloc</a> (void *p, size_t size)</td></tr>
+<tr class="separator:a25d9a067b093e9c76dbbd77995b1bc91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73551a6249ae9b0a73ad75733c67ead4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4">gpr_malloc_aligned</a> (size_t size, size_t alignment_log)</td></tr>
+<tr class="separator:a73551a6249ae9b0a73ad75733c67ead4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9b603aefd33752e1b473856af77cbc9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8h.html#af9b603aefd33752e1b473856af77cbc9">gpr_free_aligned</a> (void *ptr)</td></tr>
+<tr class="separator:af9b603aefd33752e1b473856af77cbc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae0d621b472031a64c77bd2e9fea495e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_free </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ptr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af9b603aefd33752e1b473856af77cbc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_free_aligned </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ptr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af5896bb446b6179f35651730357149bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_malloc </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a73551a6249ae9b0a73ad75733c67ead4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_malloc_aligned </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>alignment_log</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a25d9a067b093e9c76dbbd77995b1bc91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_realloc </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alloc_8h_source.html b/doc/ref/core.internal/html/alloc_8h_source.html
new file mode 100644
index 0000000000..027820fe04
--- /dev/null
+++ b/doc/ref/core.internal/html/alloc_8h_source.html
@@ -0,0 +1,162 @@
+<!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: include/grpc/support/alloc.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">alloc.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="alloc_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_ALLOC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_ALLOC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* malloc, never returns NULL */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="alloc_8h.html#af5896bb446b6179f35651730357149bb">gpr_malloc</a>(<span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* free */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">gpr_free</a>(<span class="keywordtype">void</span> *ptr);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* realloc, never returns NULL */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91">gpr_realloc</a>(<span class="keywordtype">void</span> *p, <span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* aligned malloc, never returns NULL, will align to 1 &lt;&lt; alignment_log */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4">gpr_malloc_aligned</a>(<span class="keywordtype">size_t</span> size, <span class="keywordtype">size_t</span> alignment_log);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">/* free memory allocated by gpr_malloc_aligned */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="alloc_8h.html#af9b603aefd33752e1b473856af77cbc9">gpr_free_aligned</a>(<span class="keywordtype">void</span> *ptr);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_ALLOC_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="alloc_8h_html_af9b603aefd33752e1b473856af77cbc9"><div class="ttname"><a href="alloc_8h.html#af9b603aefd33752e1b473856af77cbc9">gpr_free_aligned</a></div><div class="ttdeci">void gpr_free_aligned(void *ptr)</div><div class="ttdef"><b>Definition:</b> alloc.c:66</div></div>
+<div class="ttc" id="alloc_8h_html_a25d9a067b093e9c76dbbd77995b1bc91"><div class="ttname"><a href="alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91">gpr_realloc</a></div><div class="ttdeci">void * gpr_realloc(void *p, size_t size)</div><div class="ttdef"><b>Definition:</b> alloc.c:49</div></div>
+<div class="ttc" id="alloc_8h_html_af5896bb446b6179f35651730357149bb"><div class="ttname"><a href="alloc_8h.html#af5896bb446b6179f35651730357149bb">gpr_malloc</a></div><div class="ttdeci">void * gpr_malloc(size_t size)</div><div class="ttdef"><b>Definition:</b> alloc.c:39</div></div>
+<div class="ttc" id="alloc_8h_html_a73551a6249ae9b0a73ad75733c67ead4"><div class="ttname"><a href="alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4">gpr_malloc_aligned</a></div><div class="ttdeci">void * gpr_malloc_aligned(size_t size, size_t alignment_log)</div><div class="ttdef"><b>Definition:</b> alloc.c:57</div></div>
+<div class="ttc" id="alloc_8h_html_ae0d621b472031a64c77bd2e9fea495e8"><div class="ttname"><a href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">gpr_free</a></div><div class="ttdeci">void gpr_free(void *ptr)</div><div class="ttdef"><b>Definition:</b> alloc.c:47</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/alpn_8c.html b/doc/ref/core.internal/html/alpn_8c.html
new file mode 100644
index 0000000000..31e29d6433
--- /dev/null
+++ b/doc/ref/core.internal/html/alpn_8c.html
@@ -0,0 +1,173 @@
+<!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: src/core/transport/chttp2/alpn.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alpn.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="alpn_8h_source.html">src/core/transport/chttp2/alpn.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad4d4c481dfaefe5690ccb83861466f6b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8c.html#ad4d4c481dfaefe5690ccb83861466f6b">grpc_chttp2_is_alpn_version_supported</a> (const char *version, size_t size)</td></tr>
+<tr class="separator:ad4d4c481dfaefe5690ccb83861466f6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7e91d317127b4a8a8a1cbb6acc942f5"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8c.html#aa7e91d317127b4a8a8a1cbb6acc942f5">grpc_chttp2_num_alpn_versions</a> (void)</td></tr>
+<tr class="separator:aa7e91d317127b4a8a8a1cbb6acc942f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f09d970c73c43952620b5e983c77dc5"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8c.html#a3f09d970c73c43952620b5e983c77dc5">grpc_chttp2_get_alpn_version_index</a> (size_t i)</td></tr>
+<tr class="separator:a3f09d970c73c43952620b5e983c77dc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a3f09d970c73c43952620b5e983c77dc5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_chttp2_get_alpn_version_index </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4d4c481dfaefe5690ccb83861466f6b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_is_alpn_version_supported </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>version</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7e91d317127b4a8a8a1cbb6acc942f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_num_alpn_versions </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alpn_8h.html b/doc/ref/core.internal/html/alpn_8h.html
new file mode 100644
index 0000000000..69259eb80a
--- /dev/null
+++ b/doc/ref/core.internal/html/alpn_8h.html
@@ -0,0 +1,173 @@
+<!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: src/core/transport/chttp2/alpn.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">alpn.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div>
+<p><a href="alpn_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad4d4c481dfaefe5690ccb83861466f6b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b">grpc_chttp2_is_alpn_version_supported</a> (const char *version, size_t size)</td></tr>
+<tr class="separator:ad4d4c481dfaefe5690ccb83861466f6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7e91d317127b4a8a8a1cbb6acc942f5"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5">grpc_chttp2_num_alpn_versions</a> (void)</td></tr>
+<tr class="separator:aa7e91d317127b4a8a8a1cbb6acc942f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f09d970c73c43952620b5e983c77dc5"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5">grpc_chttp2_get_alpn_version_index</a> (size_t i)</td></tr>
+<tr class="separator:a3f09d970c73c43952620b5e983c77dc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a3f09d970c73c43952620b5e983c77dc5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_chttp2_get_alpn_version_index </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4d4c481dfaefe5690ccb83861466f6b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_is_alpn_version_supported </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>version</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7e91d317127b4a8a8a1cbb6acc942f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_num_alpn_versions </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/alpn_8h_source.html b/doc/ref/core.internal/html/alpn_8h_source.html
new file mode 100644
index 0000000000..cafd87846b
--- /dev/null
+++ b/doc/ref/core.internal/html/alpn_8h_source.html
@@ -0,0 +1,152 @@
+<!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: src/core/transport/chttp2/alpn.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">alpn.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="alpn_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_ALPN_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_ALPN_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="string_8h.html">string.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Retuns 1 if the version is supported, 0 otherwise. */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keywordtype">int</span> <a class="code" href="alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b">grpc_chttp2_is_alpn_version_supported</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *version, <span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* Returns the number of protocol versions to advertise */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5">grpc_chttp2_num_alpn_versions</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Returns the protocol version at index i (0 &lt;= i &lt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> * grpc_chttp2_num_alpn_versions()) */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5">grpc_chttp2_get_alpn_version_index</a>(<span class="keywordtype">size_t</span> i);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_ALPN_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="alpn_8h_html_a3f09d970c73c43952620b5e983c77dc5"><div class="ttname"><a href="alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5">grpc_chttp2_get_alpn_version_index</a></div><div class="ttdeci">const char * grpc_chttp2_get_alpn_version_index(size_t i)</div><div class="ttdef"><b>Definition:</b> alpn.c:53</div></div>
+<div class="ttc" id="alpn_8h_html_aa7e91d317127b4a8a8a1cbb6acc942f5"><div class="ttname"><a href="alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5">grpc_chttp2_num_alpn_versions</a></div><div class="ttdeci">size_t grpc_chttp2_num_alpn_versions(void)</div><div class="ttdef"><b>Definition:</b> alpn.c:49</div></div>
+<div class="ttc" id="string_8h_html"><div class="ttname"><a href="string_8h.html">string.h</a></div></div>
+<div class="ttc" id="alpn_8h_html_ad4d4c481dfaefe5690ccb83861466f6b"><div class="ttname"><a href="alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b">grpc_chttp2_is_alpn_version_supported</a></div><div class="ttdeci">int grpc_chttp2_is_alpn_version_supported(const char *version, size_t size)</div><div class="ttdef"><b>Definition:</b> alpn.c:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/annotated.html b/doc/ref/core.internal/html/annotated.html
new file mode 100644
index 0000000000..53ac2d6c94
--- /dev/null
+++ b/doc/ref/core.internal/html/annotated.html
@@ -0,0 +1,346 @@
+<!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: Data Structures</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 class="current"><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>
+</div><!-- top -->
+<!-- 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 class="header">
+ <div class="headertitle">
+<div class="title">Data Structures</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
+<table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structarg.html" target="_self">arg</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structb64__huff__sym.html" target="_self">b64_huff_sym</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structcall__data.html" target="_self">call_data</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structcall__link.html" target="_self">call_link</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structcensus__context.html" target="_self">census_context</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structcensus__stat.html" target="_self">census_stat</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structchannel__broadcaster.html" target="_self">channel_broadcaster</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structchannel__data.html" target="_self">channel_data</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structchannel__registered__method.html" target="_self">channel_registered_method</a></td><td class="desc"></td></tr>
+<tr id="row_9_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structcompleted__request.html" target="_self">completed_request</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structcompute__engine__detector.html" target="_self">compute_engine_detector</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structconnected__channel__call__data.html" target="_self">connected_channel_call_data</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structconnected__channel__channel__data.html" target="_self">connected_channel_channel_data</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structconnection.html" target="_self">connection</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structconnector.html" target="_self">connector</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structdns__resolver.html" target="_self">dns_resolver</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structdump__out.html" target="_self">dump_out</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structemail__key__mapping.html" target="_self">email_key_mapping</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structfinished__loose__op__allocated__args.html" target="_self">finished_loose_op_allocated_args</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structframer__state.html" target="_self">framer_state</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__cancellable.html" target="_self">gpr_cancellable</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__cancellable__list__.html" target="_self">gpr_cancellable_list_</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__cmdline.html" target="_self">gpr_cmdline</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__event.html" target="_self">gpr_event</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__gcc__thread__local.html" target="_self">gpr_gcc_thread_local</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__histogram.html" target="_self">gpr_histogram</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__log__func__args.html" target="_self">gpr_log_func_args</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__msvc__thread__local.html" target="_self">gpr_msvc_thread_local</a></td><td class="desc"></td></tr>
+<tr id="row_28_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__mu.html" target="_self">gpr_mu</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__pthread__thread__local.html" target="_self">gpr_pthread_thread_local</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__refcount.html" target="_self">gpr_refcount</a></td><td class="desc"></td></tr>
+<tr id="row_31_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__slice.html" target="_self">gpr_slice</a></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__slice__buffer.html" target="_self">gpr_slice_buffer</a></td><td class="desc"></td></tr>
+<tr id="row_33_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__slice__refcount.html" target="_self">gpr_slice_refcount</a></td><td class="desc"></td></tr>
+<tr id="row_34_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__stack__lockfree.html" target="_self">gpr_stack_lockfree</a></td><td class="desc"></td></tr>
+<tr id="row_35_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__stats__counter.html" target="_self">gpr_stats_counter</a></td><td class="desc"></td></tr>
+<tr id="row_36_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__strvec.html" target="_self">gpr_strvec</a></td><td class="desc"></td></tr>
+<tr id="row_37_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__thd__options.html" target="_self">gpr_thd_options</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgpr__timespec.html" target="_self">gpr_timespec</a></td><td class="desc"></td></tr>
+<tr id="row_39_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__access__token__credentials.html" target="_self">grpc_access_token_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__alarm.html" target="_self">grpc_alarm</a></td><td class="desc"></td></tr>
+<tr id="row_41_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__alarm__heap.html" target="_self">grpc_alarm_heap</a></td><td class="desc"></td></tr>
+<tr id="row_42_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__arg.html" target="_self">grpc_arg</a></td><td class="desc">A single argument.. </td></tr>
+<tr id="row_43_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__auth__context.html" target="_self">grpc_auth_context</a></td><td class="desc"></td></tr>
+<tr id="row_44_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__auth__json__key.html" target="_self">grpc_auth_json_key</a></td><td class="desc"></td></tr>
+<tr id="row_45_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__auth__property.html" target="_self">grpc_auth_property</a></td><td class="desc"></td></tr>
+<tr id="row_46_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__auth__property__iterator.html" target="_self">grpc_auth_property_iterator</a></td><td class="desc"></td></tr>
+<tr id="row_47_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__auth__refresh__token.html" target="_self">grpc_auth_refresh_token</a></td><td class="desc"></td></tr>
+<tr id="row_48_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__bbq__array.html" target="_self">grpc_bbq_array</a></td><td class="desc"></td></tr>
+<tr id="row_49_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__begin__message.html" target="_self">grpc_begin_message</a></td><td class="desc"></td></tr>
+<tr id="row_50_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__byte__buffer.html" target="_self">grpc_byte_buffer</a></td><td class="desc"></td></tr>
+<tr id="row_51_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__byte__buffer__queue.html" target="_self">grpc_byte_buffer_queue</a></td><td class="desc"></td></tr>
+<tr id="row_52_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__byte__buffer__reader.html" target="_self">grpc_byte_buffer_reader</a></td><td class="desc"></td></tr>
+<tr id="row_53_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__call.html" target="_self">grpc_call</a></td><td class="desc"></td></tr>
+<tr id="row_54_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__call__context__element.html" target="_self">grpc_call_context_element</a></td><td class="desc"></td></tr>
+<tr id="row_55_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__call__details.html" target="_self">grpc_call_details</a></td><td class="desc"></td></tr>
+<tr id="row_56_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__call__element.html" target="_self">grpc_call_element</a></td><td class="desc"></td></tr>
+<tr id="row_57_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__call__stack.html" target="_self">grpc_call_stack</a></td><td class="desc"></td></tr>
+<tr id="row_58_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__channel.html" target="_self">grpc_channel</a></td><td class="desc"></td></tr>
+<tr id="row_59_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__channel__args.html" target="_self">grpc_channel_args</a></td><td class="desc">An array of arguments that can be passed around </td></tr>
+<tr id="row_60_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__channel__element.html" target="_self">grpc_channel_element</a></td><td class="desc"></td></tr>
+<tr id="row_61_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__channel__filter.html" target="_self">grpc_channel_filter</a></td><td class="desc"></td></tr>
+<tr id="row_62_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__channel__security__connector.html" target="_self">grpc_channel_security_connector</a></td><td class="desc"></td></tr>
+<tr id="row_63_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__channel__stack.html" target="_self">grpc_channel_stack</a></td><td class="desc"></td></tr>
+<tr id="row_64_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__data__parser.html" target="_self">grpc_chttp2_data_parser</a></td><td class="desc"></td></tr>
+<tr id="row_65_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__goaway__parser.html" target="_self">grpc_chttp2_goaway_parser</a></td><td class="desc"></td></tr>
+<tr id="row_66_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__hpack__compressor.html" target="_self">grpc_chttp2_hpack_compressor</a></td><td class="desc"></td></tr>
+<tr id="row_67_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__hpack__parser.html" target="_self">grpc_chttp2_hpack_parser</a></td><td class="desc"></td></tr>
+<tr id="row_68_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__hpack__parser__string.html" target="_self">grpc_chttp2_hpack_parser_string</a></td><td class="desc"></td></tr>
+<tr id="row_69_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__hptbl.html" target="_self">grpc_chttp2_hptbl</a></td><td class="desc"></td></tr>
+<tr id="row_70_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__hptbl__find__result.html" target="_self">grpc_chttp2_hptbl_find_result</a></td><td class="desc"></td></tr>
+<tr id="row_71_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__huffsym.html" target="_self">grpc_chttp2_huffsym</a></td><td class="desc"></td></tr>
+<tr id="row_72_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html" target="_self">grpc_chttp2_incoming_metadata_buffer</a></td><td class="desc"></td></tr>
+<tr id="row_73_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html" target="_self">grpc_chttp2_incoming_metadata_live_op_buffer</a></td><td class="desc"></td></tr>
+<tr id="row_74_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__outstanding__ping.html" target="_self">grpc_chttp2_outstanding_ping</a></td><td class="desc"></td></tr>
+<tr id="row_75_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__ping__parser.html" target="_self">grpc_chttp2_ping_parser</a></td><td class="desc"></td></tr>
+<tr id="row_76_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__rst__stream__parser.html" target="_self">grpc_chttp2_rst_stream_parser</a></td><td class="desc"></td></tr>
+<tr id="row_77_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__setting__parameters.html" target="_self">grpc_chttp2_setting_parameters</a></td><td class="desc"></td></tr>
+<tr id="row_78_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__settings__parser.html" target="_self">grpc_chttp2_settings_parser</a></td><td class="desc"></td></tr>
+<tr id="row_79_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream.html" target="_self">grpc_chttp2_stream</a></td><td class="desc"></td></tr>
+<tr id="row_80_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream__global.html" target="_self">grpc_chttp2_stream_global</a></td><td class="desc"></td></tr>
+<tr id="row_81_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream__link.html" target="_self">grpc_chttp2_stream_link</a></td><td class="desc"></td></tr>
+<tr id="row_82_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream__list.html" target="_self">grpc_chttp2_stream_list</a></td><td class="desc"></td></tr>
+<tr id="row_83_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream__map.html" target="_self">grpc_chttp2_stream_map</a></td><td class="desc"></td></tr>
+<tr id="row_84_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream__parsing.html" target="_self">grpc_chttp2_stream_parsing</a></td><td class="desc"></td></tr>
+<tr id="row_85_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__stream__writing.html" target="_self">grpc_chttp2_stream_writing</a></td><td class="desc"></td></tr>
+<tr id="row_86_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__transport.html" target="_self">grpc_chttp2_transport</a></td><td class="desc"></td></tr>
+<tr id="row_87_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__transport__global.html" target="_self">grpc_chttp2_transport_global</a></td><td class="desc"></td></tr>
+<tr id="row_88_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__transport__parsing.html" target="_self">grpc_chttp2_transport_parsing</a></td><td class="desc"></td></tr>
+<tr id="row_89_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__transport__writing.html" target="_self">grpc_chttp2_transport_writing</a></td><td class="desc"></td></tr>
+<tr id="row_90_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__chttp2__window__update__parser.html" target="_self">grpc_chttp2_window_update_parser</a></td><td class="desc"></td></tr>
+<tr id="row_91_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__client__config.html" target="_self">grpc_client_config</a></td><td class="desc"></td></tr>
+<tr id="row_92_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__client__security__context.html" target="_self">grpc_client_security_context</a></td><td class="desc"></td></tr>
+<tr id="row_93_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__completion__queue.html" target="_self">grpc_completion_queue</a></td><td class="desc"></td></tr>
+<tr id="row_94_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__composite__credentials.html" target="_self">grpc_composite_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_95_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__composite__credentials__metadata__context.html" target="_self">grpc_composite_credentials_metadata_context</a></td><td class="desc"></td></tr>
+<tr id="row_96_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__connect__in__args.html" target="_self">grpc_connect_in_args</a></td><td class="desc"></td></tr>
+<tr id="row_97_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__connect__out__args.html" target="_self">grpc_connect_out_args</a></td><td class="desc"></td></tr>
+<tr id="row_98_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__connectivity__state__tracker.html" target="_self">grpc_connectivity_state_tracker</a></td><td class="desc"></td></tr>
+<tr id="row_99_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__connectivity__state__watcher.html" target="_self">grpc_connectivity_state_watcher</a></td><td class="desc"></td></tr>
+<tr id="row_100_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__connector.html" target="_self">grpc_connector</a></td><td class="desc"></td></tr>
+<tr id="row_101_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__connector__vtable.html" target="_self">grpc_connector_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_102_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__cq__completion.html" target="_self">grpc_cq_completion</a></td><td class="desc"></td></tr>
+<tr id="row_103_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__credentials.html" target="_self">grpc_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_104_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__credentials__array.html" target="_self">grpc_credentials_array</a></td><td class="desc"></td></tr>
+<tr id="row_105_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__credentials__md.html" target="_self">grpc_credentials_md</a></td><td class="desc"></td></tr>
+<tr id="row_106_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__credentials__md__store.html" target="_self">grpc_credentials_md_store</a></td><td class="desc"></td></tr>
+<tr id="row_107_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__credentials__metadata__request.html" target="_self">grpc_credentials_metadata_request</a></td><td class="desc"></td></tr>
+<tr id="row_108_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__credentials__vtable.html" target="_self">grpc_credentials_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_109_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__endpoint.html" target="_self">grpc_endpoint</a></td><td class="desc"></td></tr>
+<tr id="row_110_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__endpoint__pair.html" target="_self">grpc_endpoint_pair</a></td><td class="desc"></td></tr>
+<tr id="row_111_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__endpoint__vtable.html" target="_self">grpc_endpoint_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_112_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__event.html" target="_self">grpc_event</a></td><td class="desc">The result of an operation </td></tr>
+<tr id="row_113_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__fake__channel__security__connector.html" target="_self">grpc_fake_channel_security_connector</a></td><td class="desc"></td></tr>
+<tr id="row_114_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__fake__oauth2__credentials.html" target="_self">grpc_fake_oauth2_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_115_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__fd.html" target="_self">grpc_fd</a></td><td class="desc"></td></tr>
+<tr id="row_116_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__fd__watcher.html" target="_self">grpc_fd_watcher</a></td><td class="desc"></td></tr>
+<tr id="row_117_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__httpcli__context.html" target="_self">grpc_httpcli_context</a></td><td class="desc"></td></tr>
+<tr id="row_118_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__httpcli__header.html" target="_self">grpc_httpcli_header</a></td><td class="desc"></td></tr>
+<tr id="row_119_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__httpcli__parser.html" target="_self">grpc_httpcli_parser</a></td><td class="desc"></td></tr>
+<tr id="row_120_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__httpcli__request.html" target="_self">grpc_httpcli_request</a></td><td class="desc"></td></tr>
+<tr id="row_121_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__httpcli__response.html" target="_self">grpc_httpcli_response</a></td><td class="desc"></td></tr>
+<tr id="row_122_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html" target="_self">grpc_httpcli_ssl_channel_security_connector</a></td><td class="desc"></td></tr>
+<tr id="row_123_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__iam__credentials.html" target="_self">grpc_iam_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_124_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__iomgr__closure.html" target="_self">grpc_iomgr_closure</a></td><td class="desc">A closure over a grpc_iomgr_cb_func </td></tr>
+<tr id="row_125_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__iomgr__object.html" target="_self">grpc_iomgr_object</a></td><td class="desc"></td></tr>
+<tr id="row_126_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ioreq.html" target="_self">grpc_ioreq</a></td><td class="desc"></td></tr>
+<tr id="row_127_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="uniongrpc__ioreq__data.html" target="_self">grpc_ioreq_data</a></td><td class="desc"></td></tr>
+<tr id="row_128_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__json.html" target="_self">grpc_json</a></td><td class="desc"></td></tr>
+<tr id="row_129_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__json__reader.html" target="_self">grpc_json_reader</a></td><td class="desc"></td></tr>
+<tr id="row_130_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__json__reader__vtable.html" target="_self">grpc_json_reader_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_131_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__json__writer.html" target="_self">grpc_json_writer</a></td><td class="desc"></td></tr>
+<tr id="row_132_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__json__writer__vtable.html" target="_self">grpc_json_writer_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_133_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__jwt__claims.html" target="_self">grpc_jwt_claims</a></td><td class="desc"></td></tr>
+<tr id="row_134_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__jwt__verifier.html" target="_self">grpc_jwt_verifier</a></td><td class="desc"></td></tr>
+<tr id="row_135_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html" target="_self">grpc_jwt_verifier_email_domain_key_url_mapping</a></td><td class="desc"></td></tr>
+<tr id="row_136_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__kick__fd__info.html" target="_self">grpc_kick_fd_info</a></td><td class="desc"></td></tr>
+<tr id="row_137_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__lb__policy.html" target="_self">grpc_lb_policy</a></td><td class="desc"></td></tr>
+<tr id="row_138_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__lb__policy__vtable.html" target="_self">grpc_lb_policy_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_139_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__linked__mdelem.html" target="_self">grpc_linked_mdelem</a></td><td class="desc"></td></tr>
+<tr id="row_140_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__mdctx.html" target="_self">grpc_mdctx</a></td><td class="desc"></td></tr>
+<tr id="row_141_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__mdelem.html" target="_self">grpc_mdelem</a></td><td class="desc"></td></tr>
+<tr id="row_142_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__mdelem__list.html" target="_self">grpc_mdelem_list</a></td><td class="desc"></td></tr>
+<tr id="row_143_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__mdstr.html" target="_self">grpc_mdstr</a></td><td class="desc"></td></tr>
+<tr id="row_144_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__metadata.html" target="_self">grpc_metadata</a></td><td class="desc">A single metadata element </td></tr>
+<tr id="row_145_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__metadata__array.html" target="_self">grpc_metadata_array</a></td><td class="desc"></td></tr>
+<tr id="row_146_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__metadata__batch.html" target="_self">grpc_metadata_batch</a></td><td class="desc"></td></tr>
+<tr id="row_147_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html" target="_self">grpc_oauth2_token_fetcher_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_148_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__op.html" target="_self">grpc_op</a></td><td class="desc">Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) </td></tr>
+<tr id="row_149_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__pollset.html" target="_self">grpc_pollset</a></td><td class="desc"></td></tr>
+<tr id="row_150_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__pollset__kick__state.html" target="_self">grpc_pollset_kick_state</a></td><td class="desc"></td></tr>
+<tr id="row_151_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__pollset__set.html" target="_self">grpc_pollset_set</a></td><td class="desc"></td></tr>
+<tr id="row_152_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__pollset__vtable.html" target="_self">grpc_pollset_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_153_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__precise__clock.html" target="_self">grpc_precise_clock</a></td><td class="desc"></td></tr>
+<tr id="row_154_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__refresh__token__credentials.html" target="_self">grpc_refresh_token_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_155_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__resolved__address.html" target="_self">grpc_resolved_address</a></td><td class="desc"></td></tr>
+<tr id="row_156_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__resolved__addresses.html" target="_self">grpc_resolved_addresses</a></td><td class="desc"></td></tr>
+<tr id="row_157_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__resolver.html" target="_self">grpc_resolver</a></td><td class="desc">Grpc_resolver provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects </td></tr>
+<tr id="row_158_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__resolver__factory.html" target="_self">grpc_resolver_factory</a></td><td class="desc">Grpc_resolver provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects </td></tr>
+<tr id="row_159_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__resolver__factory__vtable.html" target="_self">grpc_resolver_factory_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_160_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__resolver__vtable.html" target="_self">grpc_resolver_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_161_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__secure__transport__setup.html" target="_self">grpc_secure_transport_setup</a></td><td class="desc"></td></tr>
+<tr id="row_162_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__security__connector.html" target="_self">grpc_security_connector</a></td><td class="desc"></td></tr>
+<tr id="row_163_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__security__connector__vtable.html" target="_self">grpc_security_connector_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_164_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__server.html" target="_self">grpc_server</a></td><td class="desc"></td></tr>
+<tr id="row_165_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__server__credentials.html" target="_self">grpc_server_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_166_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__server__credentials__vtable.html" target="_self">grpc_server_credentials_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_167_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__server__secure__state.html" target="_self">grpc_server_secure_state</a></td><td class="desc"></td></tr>
+<tr id="row_168_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__server__security__context.html" target="_self">grpc_server_security_context</a></td><td class="desc"></td></tr>
+<tr id="row_169_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__service__account__credentials.html" target="_self">grpc_service_account_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_170_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__service__account__jwt__access__credentials.html" target="_self">grpc_service_account_jwt_access_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_171_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__channel__security__connector.html" target="_self">grpc_ssl_channel_security_connector</a></td><td class="desc"></td></tr>
+<tr id="row_172_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__config.html" target="_self">grpc_ssl_config</a></td><td class="desc"></td></tr>
+<tr id="row_173_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__credentials.html" target="_self">grpc_ssl_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_174_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html" target="_self">grpc_ssl_pem_key_cert_pair</a></td><td class="desc"></td></tr>
+<tr id="row_175_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__server__config.html" target="_self">grpc_ssl_server_config</a></td><td class="desc"></td></tr>
+<tr id="row_176_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__server__credentials.html" target="_self">grpc_ssl_server_credentials</a></td><td class="desc"></td></tr>
+<tr id="row_177_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__ssl__server__security__connector.html" target="_self">grpc_ssl_server_security_connector</a></td><td class="desc"></td></tr>
+<tr id="row_178_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__stream__op.html" target="_self">grpc_stream_op</a></td><td class="desc"></td></tr>
+<tr id="row_179_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__stream__op__buffer.html" target="_self">grpc_stream_op_buffer</a></td><td class="desc">A stream op buffer is a wrapper around stream operations that is dynamically extendable </td></tr>
+<tr id="row_180_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__subchannel.html" target="_self">grpc_subchannel</a></td><td class="desc"></td></tr>
+<tr id="row_181_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__subchannel__args.html" target="_self">grpc_subchannel_args</a></td><td class="desc"></td></tr>
+<tr id="row_182_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__subchannel__call.html" target="_self">grpc_subchannel_call</a></td><td class="desc"></td></tr>
+<tr id="row_183_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__subchannel__factory.html" target="_self">grpc_subchannel_factory</a></td><td class="desc">Constructor for new configured channels </td></tr>
+<tr id="row_184_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__subchannel__factory__vtable.html" target="_self">grpc_subchannel_factory_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_185_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__time__averaged__stats.html" target="_self">grpc_time_averaged_stats</a></td><td class="desc"></td></tr>
+<tr id="row_186_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__transport.html" target="_self">grpc_transport</a></td><td class="desc"></td></tr>
+<tr id="row_187_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__transport__op.html" target="_self">grpc_transport_op</a></td><td class="desc">Transport op: a set of operations to perform on a transport as a whole </td></tr>
+<tr id="row_188_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__transport__stream__op.html" target="_self">grpc_transport_stream_op</a></td><td class="desc"></td></tr>
+<tr id="row_189_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__transport__vtable.html" target="_self">grpc_transport_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_190_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__uri.html" target="_self">grpc_uri</a></td><td class="desc"></td></tr>
+<tr id="row_191_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__wakeup__fd__info.html" target="_self">grpc_wakeup_fd_info</a></td><td class="desc"></td></tr>
+<tr id="row_192_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__wakeup__fd__vtable.html" target="_self">grpc_wakeup_fd_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_193_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__winsocket.html" target="_self">grpc_winsocket</a></td><td class="desc"></td></tr>
+<tr id="row_194_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc__winsocket__callback__info.html" target="_self">grpc_winsocket_callback_info</a></td><td class="desc"></td></tr>
+<tr id="row_195_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structhuff__out.html" target="_self">huff_out</a></td><td class="desc"></td></tr>
+<tr id="row_196_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinternal__metadata.html" target="_self">internal_metadata</a></td><td class="desc"></td></tr>
+<tr id="row_197_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinternal__request.html" target="_self">internal_request</a></td><td class="desc"></td></tr>
+<tr id="row_198_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinternal__string.html" target="_self">internal_string</a></td><td class="desc"></td></tr>
+<tr id="row_199_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structjose__header.html" target="_self">jose_header</a></td><td class="desc"></td></tr>
+<tr id="row_200_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structjson__reader__userdata.html" target="_self">json_reader_userdata</a></td><td class="desc"></td></tr>
+<tr id="row_201_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structjson__writer__userdata.html" target="_self">json_writer_userdata</a></td><td class="desc"></td></tr>
+<tr id="row_202_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structlb__policy__connectivity__watcher.html" target="_self">lb_policy_connectivity_watcher</a></td><td class="desc">We create one watcher for each new lb_policy that is returned from a resolver, to watch for state changes from the lb_policy </td></tr>
+<tr id="row_203_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structlistener.html" target="_self">listener</a></td><td class="desc"></td></tr>
+<tr id="row_204_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="unionlockfree__node.html" target="_self">lockfree_node</a></td><td class="desc"></td></tr>
+<tr id="row_205_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structlockfree__node__contents.html" target="_self">lockfree_node_contents</a></td><td class="desc"></td></tr>
+<tr id="row_206_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmalloc__refcount.html" target="_self">malloc_refcount</a></td><td class="desc"></td></tr>
+<tr id="row_207_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmerge__args__factory.html" target="_self">merge_args_factory</a></td><td class="desc"></td></tr>
+<tr id="row_208_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnew__slice__refcount.html" target="_self">new_slice_refcount</a></td><td class="desc"></td></tr>
+<tr id="row_209_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnew__with__len__slice__refcount.html" target="_self">new_with_len_slice_refcount</a></td><td class="desc"></td></tr>
+<tr id="row_210_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structpending__pick.html" target="_self">pending_pick</a></td><td class="desc"></td></tr>
+<tr id="row_211_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structpick__first__lb__policy.html" target="_self">pick_first_lb_policy</a></td><td class="desc"></td></tr>
+<tr id="row_212_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structreceived__status.html" target="_self">received_status</a></td><td class="desc"></td></tr>
+<tr id="row_213_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structregistered__call.html" target="_self">registered_call</a></td><td class="desc"></td></tr>
+<tr id="row_214_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structregistered__method.html" target="_self">registered_method</a></td><td class="desc"></td></tr>
+<tr id="row_215_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structregistered__resolver.html" target="_self">registered_resolver</a></td><td class="desc"></td></tr>
+<tr id="row_216_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structreqinfo__master.html" target="_self">reqinfo_master</a></td><td class="desc"></td></tr>
+<tr id="row_217_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structrequest__killer.html" target="_self">request_killer</a></td><td class="desc"></td></tr>
+<tr id="row_218_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structrequest__matcher.html" target="_self">request_matcher</a></td><td class="desc"></td></tr>
+<tr id="row_219_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structrequested__call.html" target="_self">requested_call</a></td><td class="desc"></td></tr>
+<tr id="row_220_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsecure__endpoint.html" target="_self">secure_endpoint</a></td><td class="desc"></td></tr>
+<tr id="row_221_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structshard__type.html" target="_self">shard_type</a></td><td class="desc"></td></tr>
+<tr id="row_222_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structshutdown__cleanup__args.html" target="_self">shutdown_cleanup_args</a></td><td class="desc"></td></tr>
+<tr id="row_223_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structshutdown__tag.html" target="_self">shutdown_tag</a></td><td class="desc"></td></tr>
+<tr id="row_224_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsockaddr__resolver.html" target="_self">sockaddr_resolver</a></td><td class="desc"></td></tr>
+<tr id="row_225_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structstate__watcher.html" target="_self">state_watcher</a></td><td class="desc"></td></tr>
+<tr id="row_226_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsubchannel__factory.html" target="_self">subchannel_factory</a></td><td class="desc"></td></tr>
+<tr id="row_227_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtcp__endpoint__list.html" target="_self">tcp_endpoint_list</a></td><td class="desc"></td></tr>
+<tr id="row_228_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtracer.html" target="_self">tracer</a></td><td class="desc"></td></tr>
+<tr id="row_229_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__fake__frame.html" target="_self">tsi_fake_frame</a></td><td class="desc"></td></tr>
+<tr id="row_230_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__fake__frame__protector.html" target="_self">tsi_fake_frame_protector</a></td><td class="desc"></td></tr>
+<tr id="row_231_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__fake__handshaker.html" target="_self">tsi_fake_handshaker</a></td><td class="desc"></td></tr>
+<tr id="row_232_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__frame__protector.html" target="_self">tsi_frame_protector</a></td><td class="desc"></td></tr>
+<tr id="row_233_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__frame__protector__vtable.html" target="_self">tsi_frame_protector_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_234_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__handshaker.html" target="_self">tsi_handshaker</a></td><td class="desc"></td></tr>
+<tr id="row_235_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__handshaker__vtable.html" target="_self">tsi_handshaker_vtable</a></td><td class="desc"></td></tr>
+<tr id="row_236_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__peer.html" target="_self">tsi_peer</a></td><td class="desc"></td></tr>
+<tr id="row_237_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__peer__property.html" target="_self">tsi_peer_property</a></td><td class="desc"></td></tr>
+<tr id="row_238_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__ssl__client__handshaker__factory.html" target="_self">tsi_ssl_client_handshaker_factory</a></td><td class="desc"></td></tr>
+<tr id="row_239_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__ssl__frame__protector.html" target="_self">tsi_ssl_frame_protector</a></td><td class="desc"></td></tr>
+<tr id="row_240_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__ssl__handshaker.html" target="_self">tsi_ssl_handshaker</a></td><td class="desc"></td></tr>
+<tr id="row_241_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__ssl__handshaker__factory.html" target="_self">tsi_ssl_handshaker_factory</a></td><td class="desc"></td></tr>
+<tr id="row_242_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtsi__ssl__server__handshaker__factory.html" target="_self">tsi_ssl_server_handshaker_factory</a></td><td class="desc"></td></tr>
+<tr id="row_243_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structverifier__cb__ctx.html" target="_self">verifier_cb_ctx</a></td><td class="desc"></td></tr>
+<tr id="row_244_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structwaiting__call.html" target="_self">waiting_call</a></td><td class="desc"></td></tr>
+<tr id="row_245_"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structwaiting__for__connect.html" target="_self">waiting_for_connect</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</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>
diff --git a/doc/ref/core.internal/html/atm_8h.html b/doc/ref/core.internal/html/atm_8h.html
new file mode 100644
index 0000000000..b3ad30f705
--- /dev/null
+++ b/doc/ref/core.internal/html/atm_8h.html
@@ -0,0 +1,102 @@
+<!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: include/grpc/support/atm.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">atm.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="atm_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/atm_8h_source.html b/doc/ref/core.internal/html/atm_8h_source.html
new file mode 100644
index 0000000000..7cfe4b08e2
--- /dev/null
+++ b/doc/ref/core.internal/html/atm_8h_source.html
@@ -0,0 +1,195 @@
+<!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: include/grpc/support/atm.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">atm.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="atm_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_ATM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_ATM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* This interface provides atomic operations and barriers.</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> It is internal to gpr support code and should not be used outside it.</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> If an operation with acquire semantics precedes another memory access by the</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> same thread, the operation will precede that other access as seen by other</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> threads.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> If an operation with release semantics follows another memory access by the</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> same thread, the operation will follow that other access as seen by other</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> threads.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> Routines with &quot;acq&quot; or &quot;full&quot; in the name have acquire semantics. Routines</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> with &quot;rel&quot; or &quot;full&quot; in the name have release semantics. Routines with</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> &quot;no_barrier&quot; in the name have neither acquire not release semantics.</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> The routines may be implemented as macros.</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> // Atomic operations act on an intergral_type gpr_atm that is guaranteed to</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> // be the same size as a pointer.</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> typedef gpr_intptr gpr_atm;</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> // A memory barrier, providing both acquire and release semantics, but not</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> // otherwise acting on memory.</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> void gpr_atm_full_barrier(void);</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> // Atomically return *p, with acquire semantics.</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> gpr_atm gpr_atm_acq_load(gpr_atm *p);</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> // Atomically set *p = value, with release semantics.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> void gpr_atm_rel_store(gpr_atm *p, gpr_atm value);</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> // Atomically add delta to *p, and return the old value of *p, with</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> // the barriers specified.</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> gpr_atm gpr_atm_no_barrier_fetch_add(gpr_atm *p, gpr_atm delta);</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> gpr_atm gpr_atm_full_fetch_add(gpr_atm *p, gpr_atm delta);</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> // Atomically, if *p==o, set *p=n and return non-zero otherwise return 0,</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> // with the barriers specified if the operation succeeds.</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> int gpr_atm_no_barrier_cas(gpr_atm *p, gpr_atm o, gpr_atm n);</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> int gpr_atm_acq_cas(gpr_atm *p, gpr_atm o, gpr_atm n);</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> int gpr_atm_rel_cas(gpr_atm *p, gpr_atm o, gpr_atm n);</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#if defined(GPR_GCC_ATOMIC)</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="atm__gcc__atomic_8h.html">grpc/support/atm_gcc_atomic.h</a>&gt;</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#elif defined(GPR_GCC_SYNC)</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="atm__gcc__sync_8h.html">grpc/support/atm_gcc_sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#elif defined(GPR_WIN32_ATOMIC)</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="atm__win32_8h.html">grpc/support/atm_win32.h</a>&gt;</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error could not determine platform for atm</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_ATM_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="atm__win32_8h_html"><div class="ttname"><a href="atm__win32_8h.html">atm_win32.h</a></div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html"><div class="ttname"><a href="atm__gcc__atomic_8h.html">atm_gcc_atomic.h</a></div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html"><div class="ttname"><a href="atm__gcc__sync_8h.html">atm_gcc_sync.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/atm__gcc__atomic_8h.html b/doc/ref/core.internal/html/atm__gcc__atomic_8h.html
new file mode 100644
index 0000000000..fe86186f00
--- /dev/null
+++ b/doc/ref/core.internal/html/atm__gcc__atomic_8h.html
@@ -0,0 +1,293 @@
+<!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: include/grpc/support/atm_gcc_atomic.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">atm_gcc_atomic.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="atm__gcc__atomic_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a95f86e51ae9a479026bd237cb792193e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#a95f86e51ae9a479026bd237cb792193e">gpr_atm_full_barrier</a>()&#160;&#160;&#160;(__atomic_thread_fence(__ATOMIC_SEQ_CST))</td></tr>
+<tr class="separator:a95f86e51ae9a479026bd237cb792193e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44607f95f7ee40eba592c7fe10960a06"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">gpr_atm_acq_load</a>(p)&#160;&#160;&#160;(__atomic_load_n((p), __ATOMIC_ACQUIRE))</td></tr>
+<tr class="separator:a44607f95f7ee40eba592c7fe10960a06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa647aa9c97294a6709bbf2ac401cd9a6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">gpr_atm_no_barrier_load</a>(p)&#160;&#160;&#160;(__atomic_load_n((p), __ATOMIC_RELAXED))</td></tr>
+<tr class="separator:aa647aa9c97294a6709bbf2ac401cd9a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42e3982d45ae4cec439a12b8fcd618e9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">gpr_atm_rel_store</a>(p, <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)&#160;&#160;&#160;(__atomic_store_n((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>), __ATOMIC_RELEASE))</td></tr>
+<tr class="separator:a42e3982d45ae4cec439a12b8fcd618e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afad47d4c311c5439371fcdd4a0b6794e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">gpr_atm_no_barrier_store</a>(p, <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)&#160;&#160;&#160;(__atomic_store_n((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>), __ATOMIC_RELAXED))</td></tr>
+<tr class="separator:afad47d4c311c5439371fcdd4a0b6794e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae337dc477a6a45ac3d91e41e8f3f2f8c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">gpr_atm_no_barrier_fetch_add</a>(p, delta)&#160;&#160;&#160;(__atomic_fetch_add((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(delta), __ATOMIC_RELAXED))</td></tr>
+<tr class="separator:ae337dc477a6a45ac3d91e41e8f3f2f8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abada8771b338845e4c6ef93c8392582c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c">gpr_atm_full_fetch_add</a>(p, delta)&#160;&#160;&#160;(__atomic_fetch_add((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(delta), __ATOMIC_ACQ_REL))</td></tr>
+<tr class="separator:abada8771b338845e4c6ef93c8392582c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aa9e4b16c09888debe306f14e8090b1cc"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></td></tr>
+<tr class="separator:aa9e4b16c09888debe306f14e8090b1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a44607f95f7ee40eba592c7fe10960a06"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_acq_load</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p</td><td>)</td>
+ <td>&#160;&#160;&#160;(__atomic_load_n((p), __ATOMIC_ACQUIRE))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95f86e51ae9a479026bd237cb792193e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_full_barrier</td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td>&#160;&#160;&#160;(__atomic_thread_fence(__ATOMIC_SEQ_CST))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abada8771b338845e4c6ef93c8392582c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_full_fetch_add</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">delta&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(__atomic_fetch_add((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(delta), __ATOMIC_ACQ_REL))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae337dc477a6a45ac3d91e41e8f3f2f8c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_no_barrier_fetch_add</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">delta&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(__atomic_fetch_add((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(delta), __ATOMIC_RELAXED))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa647aa9c97294a6709bbf2ac401cd9a6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_no_barrier_load</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p</td><td>)</td>
+ <td>&#160;&#160;&#160;(__atomic_load_n((p), __ATOMIC_RELAXED))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afad47d4c311c5439371fcdd4a0b6794e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_no_barrier_store</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(__atomic_store_n((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>), __ATOMIC_RELAXED))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a42e3982d45ae4cec439a12b8fcd618e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_rel_store</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(__atomic_store_n((p), (<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)(<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>), __ATOMIC_RELEASE))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aa9e4b16c09888debe306f14e8090b1cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/atm__gcc__atomic_8h_source.html b/doc/ref/core.internal/html/atm__gcc__atomic_8h_source.html
new file mode 100644
index 0000000000..ac370067f2
--- /dev/null
+++ b/doc/ref/core.internal/html/atm__gcc__atomic_8h_source.html
@@ -0,0 +1,177 @@
+<!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: include/grpc/support/atm_gcc_atomic.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">atm_gcc_atomic.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="atm__gcc__atomic_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_ATM_GCC_ATOMIC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_ATM_GCC_ATOMIC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* atm_platform.h for gcc and gcc-like compilers with the</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> __atomic_* interface. */</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc"> 41</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#a95f86e51ae9a479026bd237cb792193e"> 43</a></span>&#160;<span class="preprocessor">#define gpr_atm_full_barrier() (__atomic_thread_fence(__ATOMIC_SEQ_CST))</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06"> 45</a></span>&#160;<span class="preprocessor">#define gpr_atm_acq_load(p) (__atomic_load_n((p), __ATOMIC_ACQUIRE))</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6"> 46</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_no_barrier_load(p) (__atomic_load_n((p), __ATOMIC_RELAXED))</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9"> 47</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_rel_store(p, value) \</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"> (__atomic_store_n((p), (gpr_intptr)(value), __ATOMIC_RELEASE))</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e"> 49</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_no_barrier_store(p, value) \</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"> (__atomic_store_n((p), (gpr_intptr)(value), __ATOMIC_RELAXED))</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c"> 52</a></span>&#160;<span class="preprocessor">#define gpr_atm_no_barrier_fetch_add(p, delta) \</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"> (__atomic_fetch_add((p), (gpr_intptr)(delta), __ATOMIC_RELAXED))</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c"> 54</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_full_fetch_add(p, delta) \</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"> (__atomic_fetch_add((p), (gpr_intptr)(delta), __ATOMIC_ACQ_REL))</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">int</span> <a class="code" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">gpr_atm_no_barrier_cas</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> o, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> n) {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">return</span> __atomic_compare_exchange_n(p, &amp;o, n, 0, __ATOMIC_RELAXED,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; __ATOMIC_RELAXED);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;}</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">int</span> <a class="code" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> o, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> n) {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> __atomic_compare_exchange_n(p, &amp;o, n, 0, __ATOMIC_ACQUIRE,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; __ATOMIC_RELAXED);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;}</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">int</span> <a class="code" href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">gpr_atm_rel_cas</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> o, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> n) {</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> __atomic_compare_exchange_n(p, &amp;o, n, 0, __ATOMIC_RELEASE,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; __ATOMIC_RELAXED);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_ATM_GCC_ATOMIC_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_a1a90e5777158aaa53624822f1f87dd90"><div class="ttname"><a href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a></div><div class="ttdeci">#define gpr_atm_acq_cas(p, o, n)</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:84</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_ad39536b08912ac4a0770655ed334d260"><div class="ttname"><a href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">gpr_atm_no_barrier_cas</a></div><div class="ttdeci">#define gpr_atm_no_barrier_cas(p, o, n)</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:83</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_ae7c3b215cda868ee9ee778822000c3f2"><div class="ttname"><a href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">gpr_atm_rel_cas</a></div><div class="ttdeci">#define gpr_atm_rel_cas(p, o, n)</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:85</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/atm__gcc__sync_8h.html b/doc/ref/core.internal/html/atm__gcc__sync_8h.html
new file mode 100644
index 0000000000..80a174c5c0
--- /dev/null
+++ b/doc/ref/core.internal/html/atm__gcc__sync_8h.html
@@ -0,0 +1,337 @@
+<!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: include/grpc/support/atm_gcc_sync.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">atm_gcc_sync.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="atm__gcc__sync_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a5a1f94112dcd03309d6716d43c8edf3f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f">GPR_ATM_COMPILE_BARRIER_</a>()&#160;&#160;&#160;__asm__ __volatile__(&quot;&quot; : : : &quot;memory&quot;)</td></tr>
+<tr class="separator:a5a1f94112dcd03309d6716d43c8edf3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ceb46c9b854db0ade8cfe2f37edb878"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878">GPR_ATM_LS_BARRIER_</a>()&#160;&#160;&#160;<a class="el" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">gpr_atm_full_barrier</a>()</td></tr>
+<tr class="separator:a4ceb46c9b854db0ade8cfe2f37edb878"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95f86e51ae9a479026bd237cb792193e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#a95f86e51ae9a479026bd237cb792193e">gpr_atm_full_barrier</a>()&#160;&#160;&#160;(__sync_synchronize())</td></tr>
+<tr class="separator:a95f86e51ae9a479026bd237cb792193e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae337dc477a6a45ac3d91e41e8f3f2f8c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">gpr_atm_no_barrier_fetch_add</a>(p, delta)&#160;&#160;&#160;<a class="el" href="atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c">gpr_atm_full_fetch_add</a>((p), (delta))</td></tr>
+<tr class="separator:ae337dc477a6a45ac3d91e41e8f3f2f8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abada8771b338845e4c6ef93c8392582c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c">gpr_atm_full_fetch_add</a>(p, delta)&#160;&#160;&#160;(__sync_fetch_and_add((p), (delta)))</td></tr>
+<tr class="separator:abada8771b338845e4c6ef93c8392582c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad39536b08912ac4a0770655ed334d260"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">gpr_atm_no_barrier_cas</a>(p, o, n)&#160;&#160;&#160;<a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>((p), (o), (n))</td></tr>
+<tr class="separator:ad39536b08912ac4a0770655ed334d260"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a90e5777158aaa53624822f1f87dd90"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>(p, o, n)&#160;&#160;&#160;(__sync_bool_compare_and_swap((p), (o), (n)))</td></tr>
+<tr class="separator:a1a90e5777158aaa53624822f1f87dd90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7c3b215cda868ee9ee778822000c3f2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">gpr_atm_rel_cas</a>(p, o, n)&#160;&#160;&#160;<a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>((p), (o), (n))</td></tr>
+<tr class="separator:ae7c3b215cda868ee9ee778822000c3f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aa9e4b16c09888debe306f14e8090b1cc"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></td></tr>
+<tr class="separator:aa9e4b16c09888debe306f14e8090b1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a1a90e5777158aaa53624822f1f87dd90"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_acq_cas</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">o, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(__sync_bool_compare_and_swap((p), (o), (n)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a1f94112dcd03309d6716d43c8edf3f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ATM_COMPILE_BARRIER_</td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td>&#160;&#160;&#160;__asm__ __volatile__(&quot;&quot; : : : &quot;memory&quot;)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95f86e51ae9a479026bd237cb792193e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_full_barrier</td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td>&#160;&#160;&#160;(__sync_synchronize())</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abada8771b338845e4c6ef93c8392582c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_full_fetch_add</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">delta&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(__sync_fetch_and_add((p), (delta)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4ceb46c9b854db0ade8cfe2f37edb878"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ATM_LS_BARRIER_</td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">gpr_atm_full_barrier</a>()</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad39536b08912ac4a0770655ed334d260"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_no_barrier_cas</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">o, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>((p), (o), (n))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae337dc477a6a45ac3d91e41e8f3f2f8c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_no_barrier_fetch_add</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">delta&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c">gpr_atm_full_fetch_add</a>((p), (delta))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7c3b215cda868ee9ee778822000c3f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_rel_cas</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">o, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>((p), (o), (n))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aa9e4b16c09888debe306f14e8090b1cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/atm__gcc__sync_8h_source.html b/doc/ref/core.internal/html/atm__gcc__sync_8h_source.html
new file mode 100644
index 0000000000..94344f76f5
--- /dev/null
+++ b/doc/ref/core.internal/html/atm__gcc__sync_8h_source.html
@@ -0,0 +1,197 @@
+<!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: include/grpc/support/atm_gcc_sync.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">atm_gcc_sync.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="atm__gcc__sync_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_ATM_GCC_SYNC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_ATM_GCC_SYNC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* variant of atm_platform.h for gcc and gcc-like compiers with __sync_*</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> interface */</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc"> 41</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f"> 43</a></span>&#160;<span class="preprocessor">#define GPR_ATM_COMPILE_BARRIER_() __asm__ __volatile__(&quot;&quot; : : : &quot;memory&quot;)</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#if defined(__i386) || defined(__x86_64__)</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span><span class="comment">/* All loads are acquire loads and all stores are release stores. */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define GPR_ATM_LS_BARRIER_() GPR_ATM_COMPILE_BARRIER_()</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878"> 49</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ATM_LS_BARRIER_() gpr_atm_full_barrier()</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#a95f86e51ae9a479026bd237cb792193e"> 52</a></span>&#160;<span class="preprocessor">#define gpr_atm_full_barrier() (__sync_synchronize())</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">static</span> __inline <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">gpr_atm_acq_load</a>(<span class="keyword">const</span> <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p) {</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a> = *p;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878">GPR_ATM_LS_BARRIER_</a>();</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">return</span> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">static</span> __inline <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">gpr_atm_no_barrier_load</a>(<span class="keyword">const</span> <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p) {</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a> = *p;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f">GPR_ATM_COMPILE_BARRIER_</a>();</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;}</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">void</span> <a class="code" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">gpr_atm_rel_store</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878">GPR_ATM_LS_BARRIER_</a>();</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; *p = <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;}</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">void</span> <a class="code" href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">gpr_atm_no_barrier_store</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) {</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f">GPR_ATM_COMPILE_BARRIER_</a>();</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; *p = <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#undef GPR_ATM_LS_BARRIER_</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef GPR_ATM_COMPILE_BARRIER_</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c"> 79</a></span>&#160;<span class="preprocessor">#define gpr_atm_no_barrier_fetch_add(p, delta) \</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor"> gpr_atm_full_fetch_add((p), (delta))</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c"> 81</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_full_fetch_add(p, delta) (__sync_fetch_and_add((p), (delta)))</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260"> 83</a></span>&#160;<span class="preprocessor">#define gpr_atm_no_barrier_cas(p, o, n) gpr_atm_acq_cas((p), (o), (n))</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90"> 84</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_acq_cas(p, o, n) (__sync_bool_compare_and_swap((p), (o), (n)))</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2"> 85</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_atm_rel_cas(p, o, n) gpr_atm_acq_cas((p), (o), (n))</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_ATM_GCC_SYNC_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_a4ceb46c9b854db0ade8cfe2f37edb878"><div class="ttname"><a href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878">GPR_ATM_LS_BARRIER_</a></div><div class="ttdeci">#define GPR_ATM_LS_BARRIER_()</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:49</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_a5a1f94112dcd03309d6716d43c8edf3f"><div class="ttname"><a href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f">GPR_ATM_COMPILE_BARRIER_</a></div><div class="ttdeci">#define GPR_ATM_COMPILE_BARRIER_()</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:43</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_a44607f95f7ee40eba592c7fe10960a06"><div class="ttname"><a href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">gpr_atm_acq_load</a></div><div class="ttdeci">#define gpr_atm_acq_load(p)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:45</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa647aa9c97294a6709bbf2ac401cd9a6"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">gpr_atm_no_barrier_load</a></div><div class="ttdeci">#define gpr_atm_no_barrier_load(p)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:46</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:41</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_afad47d4c311c5439371fcdd4a0b6794e"><div class="ttname"><a href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">gpr_atm_no_barrier_store</a></div><div class="ttdeci">#define gpr_atm_no_barrier_store(p, value)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:49</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_a42e3982d45ae4cec439a12b8fcd618e9"><div class="ttname"><a href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">gpr_atm_rel_store</a></div><div class="ttdeci">#define gpr_atm_rel_store(p, value)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:47</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/atm__win32_8h.html b/doc/ref/core.internal/html/atm__win32_8h.html
new file mode 100644
index 0000000000..fb6f677fd8
--- /dev/null
+++ b/doc/ref/core.internal/html/atm__win32_8h.html
@@ -0,0 +1,142 @@
+<!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: include/grpc/support/atm_win32.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">atm_win32.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="atm__win32_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8e58c94aff5c7161bc3cbfde878dd03d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">gpr_atm_full_barrier</a>&#160;&#160;&#160;MemoryBarrier</td></tr>
+<tr class="separator:a8e58c94aff5c7161bc3cbfde878dd03d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aa9e4b16c09888debe306f14e8090b1cc"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></td></tr>
+<tr class="separator:aa9e4b16c09888debe306f14e8090b1cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a8e58c94aff5c7161bc3cbfde878dd03d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_atm_full_barrier&#160;&#160;&#160;MemoryBarrier</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aa9e4b16c09888debe306f14e8090b1cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/atm__win32_8h_source.html b/doc/ref/core.internal/html/atm__win32_8h_source.html
new file mode 100644
index 0000000000..905ef11021
--- /dev/null
+++ b/doc/ref/core.internal/html/atm__win32_8h_source.html
@@ -0,0 +1,240 @@
+<!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: include/grpc/support/atm_win32.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">atm_win32.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="atm__win32_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_ATM_WIN32_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_ATM_WIN32_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Win32 variant of atm_platform.h */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc"> 40</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d"> 42</a></span>&#160;<span class="preprocessor">#define gpr_atm_full_barrier MemoryBarrier</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">static</span> __inline <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">gpr_atm_acq_load</a>(<span class="keyword">const</span> <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p) {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> result = *p;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">gpr_atm_full_barrier</a>();</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">return</span> result;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;}</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">static</span> __inline <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">gpr_atm_no_barrier_load</a>(<span class="keyword">const</span> <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p) {</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">/* TODO(dklempner): Can we implement something better here? */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordflow">return</span> <a class="code" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">gpr_atm_acq_load</a>(p);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;}</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">void</span> <a class="code" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">gpr_atm_rel_store</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) {</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">gpr_atm_full_barrier</a>();</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; *p = <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">void</span> <a class="code" href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">gpr_atm_no_barrier_store</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) {</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">/* TODO(ctiller): Can we implement something better here? */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">gpr_atm_rel_store</a>(p, value);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;}</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">int</span> <a class="code" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">gpr_atm_no_barrier_cas</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> o, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> n) {</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* InterlockedCompareExchangePointerNoFence() not available on vista or</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> windows7 */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#ifdef GPR_ARCH_64</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> o == (<a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchangeAcquire64((<span class="keyword">volatile</span> LONGLONG *) p,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; (LONGLONG) n, (LONGLONG) o);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> o == (<a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchangeAcquire((<span class="keyword">volatile</span> LONG *) p,</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; (LONG) n, (LONG) o);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">int</span> <a class="code" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> o, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> n) {</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#ifdef GPR_ARCH_64</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> o == (<a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchangeAcquire64((<span class="keyword">volatile</span> LONGLONG *) p,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; (LONGLONG) n, (LONGLONG) o);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> o == (<a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchangeAcquire((<span class="keyword">volatile</span> LONG *) p,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; (LONG) n, (LONG) o);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keyword">static</span> __inline <span class="keywordtype">int</span> <a class="code" href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">gpr_atm_rel_cas</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> o, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> n) {</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#ifdef GPR_ARCH_64</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> o == (<a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchangeRelease64((<span class="keyword">volatile</span> LONGLONG *) p,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; (LONGLONG) n, (LONGLONG) o);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> o == (<a class="code" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchangeRelease((<span class="keyword">volatile</span> LONG *) p,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; (LONG) n, (LONG) o);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keyword">static</span> __inline <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">gpr_atm_no_barrier_fetch_add</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> delta) {</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">/* Use the CAS operation to get pointer-sized fetch and add */</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> old;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">do</span> {</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; old = *p;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; } <span class="keywordflow">while</span> (!<a class="code" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">gpr_atm_no_barrier_cas</a>(p, old, old + delta));</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> old;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;}</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keyword">static</span> __inline <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c">gpr_atm_full_fetch_add</a>(<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> *p, <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> delta) {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">/* Use a CAS operation to get pointer-sized fetch and add */</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> old;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#ifdef GPR_ARCH_64</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">do</span> {</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; old = *p;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; } <span class="keywordflow">while</span> (old != (<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchange64((<span class="keyword">volatile</span> LONGLONG *) p,</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; (LONGLONG) old + delta,</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; (LONGLONG) old));</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">do</span> {</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; old = *p;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; } <span class="keywordflow">while</span> (old != (<a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>)InterlockedCompareExchange((<span class="keyword">volatile</span> LONG *) p,</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; (LONG) old + delta,</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; (LONG) old));</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span> old;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;}</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_ATM_WIN32_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_ae337dc477a6a45ac3d91e41e8f3f2f8c"><div class="ttname"><a href="atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">gpr_atm_no_barrier_fetch_add</a></div><div class="ttdeci">#define gpr_atm_no_barrier_fetch_add(p, delta)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:52</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_a44607f95f7ee40eba592c7fe10960a06"><div class="ttname"><a href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">gpr_atm_acq_load</a></div><div class="ttdeci">#define gpr_atm_acq_load(p)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:45</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa647aa9c97294a6709bbf2ac401cd9a6"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">gpr_atm_no_barrier_load</a></div><div class="ttdeci">#define gpr_atm_no_barrier_load(p)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:46</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_a1a90e5777158aaa53624822f1f87dd90"><div class="ttname"><a href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">gpr_atm_acq_cas</a></div><div class="ttdeci">#define gpr_atm_acq_cas(p, o, n)</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:84</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_abada8771b338845e4c6ef93c8392582c"><div class="ttname"><a href="atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c">gpr_atm_full_fetch_add</a></div><div class="ttdeci">#define gpr_atm_full_fetch_add(p, delta)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:54</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_afad47d4c311c5439371fcdd4a0b6794e"><div class="ttname"><a href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">gpr_atm_no_barrier_store</a></div><div class="ttdeci">#define gpr_atm_no_barrier_store(p, value)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:49</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_a42e3982d45ae4cec439a12b8fcd618e9"><div class="ttname"><a href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">gpr_atm_rel_store</a></div><div class="ttdeci">#define gpr_atm_rel_store(p, value)</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:47</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_ad39536b08912ac4a0770655ed334d260"><div class="ttname"><a href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">gpr_atm_no_barrier_cas</a></div><div class="ttdeci">#define gpr_atm_no_barrier_cas(p, o, n)</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:83</div></div>
+<div class="ttc" id="atm__gcc__sync_8h_html_ae7c3b215cda868ee9ee778822000c3f2"><div class="ttname"><a href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">gpr_atm_rel_cas</a></div><div class="ttdeci">#define gpr_atm_rel_cas(p, o, n)</div><div class="ttdef"><b>Definition:</b> atm_gcc_sync.h:85</div></div>
+<div class="ttc" id="atm__win32_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_win32.h:40</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:41</div></div>
+<div class="ttc" id="atm__win32_8h_html_a8e58c94aff5c7161bc3cbfde878dd03d"><div class="ttname"><a href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">gpr_atm_full_barrier</a></div><div class="ttdeci">#define gpr_atm_full_barrier</div><div class="ttdef"><b>Definition:</b> atm_win32.h:42</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/auth__filters_8h.html b/doc/ref/core.internal/html/auth__filters_8h.html
new file mode 100644
index 0000000000..8bd3b1124c
--- /dev/null
+++ b/doc/ref/core.internal/html/auth__filters_8h.html
@@ -0,0 +1,137 @@
+<!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: src/core/security/auth_filters.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">auth_filters.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="auth__filters_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ab5f3c640585f742a46197f407218c194"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="auth__filters_8h.html#ab5f3c640585f742a46197f407218c194">grpc_client_auth_filter</a></td></tr>
+<tr class="separator:ab5f3c640585f742a46197f407218c194"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2041d6372525de50a18f156d1b94cfae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae">grpc_server_auth_filter</a></td></tr>
+<tr class="separator:a2041d6372525de50a18f156d1b94cfae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="ab5f3c640585f742a46197f407218c194"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_client_auth_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2041d6372525de50a18f156d1b94cfae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_server_auth_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/auth__filters_8h_source.html b/doc/ref/core.internal/html/auth__filters_8h_source.html
new file mode 100644
index 0000000000..2488272922
--- /dev/null
+++ b/doc/ref/core.internal/html/auth__filters_8h_source.html
@@ -0,0 +1,145 @@
+<!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: src/core/security/auth_filters.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">auth_filters.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="auth__filters_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_AUTH_FILTERS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_AUTH_FILTERS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="auth__filters_8h.html#ab5f3c640585f742a46197f407218c194">grpc_client_auth_filter</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae">grpc_server_auth_filter</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_AUTH_FILTERS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="auth__filters_8h_html_ab5f3c640585f742a46197f407218c194"><div class="ttname"><a href="auth__filters_8h.html#ab5f3c640585f742a46197f407218c194">grpc_client_auth_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_client_auth_filter</div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:346</div></div>
+<div class="ttc" id="auth__filters_8h_html_a2041d6372525de50a18f156d1b94cfae"><div class="ttname"><a href="auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae">grpc_server_auth_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_server_auth_filter</div><div class="ttdef"><b>Definition:</b> server_auth_filter.c:122</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/base64_8c.html b/doc/ref/core.internal/html/base64_8c.html
new file mode 100644
index 0000000000..e90fe234c3
--- /dev/null
+++ b/doc/ref/core.internal/html/base64_8c.html
@@ -0,0 +1,274 @@
+<!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: src/core/security/base64.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">base64.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="base64_8h_source.html">src/core/security/base64.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a6ccc23e3f23a06fd1e83f07fc80a36f5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#a6ccc23e3f23a06fd1e83f07fc80a36f5">GRPC_BASE64_PAD_CHAR</a>&#160;&#160;&#160;'='</td></tr>
+<tr class="separator:a6ccc23e3f23a06fd1e83f07fc80a36f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74d467f02f0a2a5e88cc0231ea2d3603"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#a74d467f02f0a2a5e88cc0231ea2d3603">GRPC_BASE64_PAD_BYTE</a>&#160;&#160;&#160;0x7F</td></tr>
+<tr class="separator:a74d467f02f0a2a5e88cc0231ea2d3603"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a044b2c792f69cf3efaad0895e38122a7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#a044b2c792f69cf3efaad0895e38122a7">GRPC_BASE64_MULTILINE_LINE_LEN</a>&#160;&#160;&#160;76</td></tr>
+<tr class="separator:a044b2c792f69cf3efaad0895e38122a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf98a03e292b4943e5d9df3314a91d2e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#abf98a03e292b4943e5d9df3314a91d2e">GRPC_BASE64_MULTILINE_NUM_BLOCKS</a>&#160;&#160;&#160;(<a class="el" href="base64_8c.html#a044b2c792f69cf3efaad0895e38122a7">GRPC_BASE64_MULTILINE_LINE_LEN</a> / 4)</td></tr>
+<tr class="separator:abf98a03e292b4943e5d9df3314a91d2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a52b0da4b71404bafb66d7cd2d6bc898a"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#a52b0da4b71404bafb66d7cd2d6bc898a">grpc_base64_encode</a> (const void *vdata, size_t data_size, int url_safe, int multiline)</td></tr>
+<tr class="separator:a52b0da4b71404bafb66d7cd2d6bc898a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81bf1bd8387f2d69d6fe48e463a40c96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#a81bf1bd8387f2d69d6fe48e463a40c96">grpc_base64_decode</a> (const char *b64, int url_safe)</td></tr>
+<tr class="separator:a81bf1bd8387f2d69d6fe48e463a40c96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d9a616e303d93f4cb0733fe96a0f28f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html#a2d9a616e303d93f4cb0733fe96a0f28f">grpc_base64_decode_with_len</a> (const char *b64, size_t b64_len, int url_safe)</td></tr>
+<tr class="separator:a2d9a616e303d93f4cb0733fe96a0f28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a044b2c792f69cf3efaad0895e38122a7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_BASE64_MULTILINE_LINE_LEN&#160;&#160;&#160;76</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf98a03e292b4943e5d9df3314a91d2e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_BASE64_MULTILINE_NUM_BLOCKS&#160;&#160;&#160;(<a class="el" href="base64_8c.html#a044b2c792f69cf3efaad0895e38122a7">GRPC_BASE64_MULTILINE_LINE_LEN</a> / 4)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a74d467f02f0a2a5e88cc0231ea2d3603"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_BASE64_PAD_BYTE&#160;&#160;&#160;0x7F</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ccc23e3f23a06fd1e83f07fc80a36f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_BASE64_PAD_CHAR&#160;&#160;&#160;'='</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a81bf1bd8387f2d69d6fe48e463a40c96"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_base64_decode </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>b64</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>url_safe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2d9a616e303d93f4cb0733fe96a0f28f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_base64_decode_with_len </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>b64</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>b64_len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>url_safe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52b0da4b71404bafb66d7cd2d6bc898a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_base64_encode </td>
+ <td>(</td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>vdata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>data_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>url_safe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>multiline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/base64_8h.html b/doc/ref/core.internal/html/base64_8h.html
new file mode 100644
index 0000000000..893c52b802
--- /dev/null
+++ b/doc/ref/core.internal/html/base64_8h.html
@@ -0,0 +1,211 @@
+<!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: src/core/security/base64.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">base64.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="base64_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af3751ba76aa864e4983cea879fb437d8"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8h.html#af3751ba76aa864e4983cea879fb437d8">grpc_base64_encode</a> (const void *data, size_t data_size, int url_safe, int multiline)</td></tr>
+<tr class="separator:af3751ba76aa864e4983cea879fb437d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81bf1bd8387f2d69d6fe48e463a40c96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96">grpc_base64_decode</a> (const char *b64, int url_safe)</td></tr>
+<tr class="separator:a81bf1bd8387f2d69d6fe48e463a40c96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d9a616e303d93f4cb0733fe96a0f28f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f">grpc_base64_decode_with_len</a> (const char *b64, size_t b64_len, int url_safe)</td></tr>
+<tr class="separator:a2d9a616e303d93f4cb0733fe96a0f28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a81bf1bd8387f2d69d6fe48e463a40c96"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_base64_decode </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>b64</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>url_safe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2d9a616e303d93f4cb0733fe96a0f28f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_base64_decode_with_len </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>b64</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>b64_len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>url_safe</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af3751ba76aa864e4983cea879fb437d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_base64_encode </td>
+ <td>(</td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>data_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>url_safe</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>multiline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/base64_8h_source.html b/doc/ref/core.internal/html/base64_8h_source.html
new file mode 100644
index 0000000000..de94bcc1de
--- /dev/null
+++ b/doc/ref/core.internal/html/base64_8h_source.html
@@ -0,0 +1,156 @@
+<!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: src/core/security/base64.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">base64.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="base64_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_BASE64_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_BASE64_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Encodes data using base64. It is the caller&#39;s responsability to free</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> the returned char * using gpr_free. Returns NULL on NULL input. */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="base64_8h.html#af3751ba76aa864e4983cea879fb437d8">grpc_base64_encode</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *data, <span class="keywordtype">size_t</span> data_size, <span class="keywordtype">int</span> url_safe,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">int</span> multiline);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* Decodes data according to the base64 specification. Returns an empty</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> slice in case of failure. */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96">grpc_base64_decode</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *b64, <span class="keywordtype">int</span> url_safe);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* Same as above except that the length is provided by the caller. */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f">grpc_base64_decode_with_len</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *b64, <span class="keywordtype">size_t</span> b64_len,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">int</span> url_safe);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_BASE64_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="base64_8h_html_a81bf1bd8387f2d69d6fe48e463a40c96"><div class="ttname"><a href="base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96">grpc_base64_decode</a></div><div class="ttdeci">gpr_slice grpc_base64_decode(const char *b64, int url_safe)</div><div class="ttdef"><b>Definition:</b> base64.c:122</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="base64_8h_html_a2d9a616e303d93f4cb0733fe96a0f28f"><div class="ttname"><a href="base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f">grpc_base64_decode_with_len</a></div><div class="ttdeci">gpr_slice grpc_base64_decode_with_len(const char *b64, size_t b64_len, int url_safe)</div><div class="ttdef"><b>Definition:</b> base64.c:183</div></div>
+<div class="ttc" id="base64_8h_html_af3751ba76aa864e4983cea879fb437d8"><div class="ttname"><a href="base64_8h.html#af3751ba76aa864e4983cea879fb437d8">grpc_base64_encode</a></div><div class="ttdeci">char * grpc_base64_encode(const void *data, size_t data_size, int url_safe, int multiline)</div><div class="ttdef"><b>Definition:</b> base64.c:69</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/basic__timers_8c.html b/doc/ref/core.internal/html/basic__timers_8c.html
new file mode 100644
index 0000000000..78969d07d9
--- /dev/null
+++ b/doc/ref/core.internal/html/basic__timers_8c.html
@@ -0,0 +1,143 @@
+<!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: src/core/profiling/basic_timers.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">basic_timers.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac34b4d619b9ed067e02e037b21a6feac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="basic__timers_8c.html#ac34b4d619b9ed067e02e037b21a6feac">grpc_timers_global_init</a> (void)</td></tr>
+<tr class="separator:ac34b4d619b9ed067e02e037b21a6feac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3464d3fdd0cc9ab2543195d5ee3fec13"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="basic__timers_8c.html#a3464d3fdd0cc9ab2543195d5ee3fec13">grpc_timers_global_destroy</a> (void)</td></tr>
+<tr class="separator:a3464d3fdd0cc9ab2543195d5ee3fec13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a3464d3fdd0cc9ab2543195d5ee3fec13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timers_global_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac34b4d619b9ed067e02e037b21a6feac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timers_global_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/bc_s.png b/doc/ref/core.internal/html/bc_s.png
new file mode 100644
index 0000000000..224b29aa98
--- /dev/null
+++ b/doc/ref/core.internal/html/bc_s.png
Binary files differ
diff --git a/doc/ref/core.internal/html/bdwn.png b/doc/ref/core.internal/html/bdwn.png
new file mode 100644
index 0000000000..940a0b9504
--- /dev/null
+++ b/doc/ref/core.internal/html/bdwn.png
Binary files differ
diff --git a/doc/ref/core.internal/html/bin__encoder_8c.html b/doc/ref/core.internal/html/bin__encoder_8c.html
new file mode 100644
index 0000000000..ee0084324e
--- /dev/null
+++ b/doc/ref/core.internal/html/bin__encoder_8c.html
@@ -0,0 +1,200 @@
+<!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: src/core/transport/chttp2/bin_encoder.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">bin_encoder.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="bin__encoder_8h_source.html">src/core/transport/chttp2/bin_encoder.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="huffsyms_8h_source.html">src/core/transport/chttp2/huffsyms.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb64__huff__sym.html">b64_huff_sym</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structhuff__out.html">huff_out</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1435a6d866c6e7f7989ca786facc1fde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8c.html#a1435a6d866c6e7f7989ca786facc1fde">grpc_chttp2_base64_encode</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> input)</td></tr>
+<tr class="separator:a1435a6d866c6e7f7989ca786facc1fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4445cb57a3331537c4d942764b555123"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8c.html#a4445cb57a3331537c4d942764b555123">grpc_chttp2_huffman_compress</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> input)</td></tr>
+<tr class="separator:a4445cb57a3331537c4d942764b555123"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d29385f837594681b517d91d5d578a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8c.html#a0d29385f837594681b517d91d5d578a7">grpc_chttp2_base64_encode_and_huffman_compress</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> input)</td></tr>
+<tr class="separator:a0d29385f837594681b517d91d5d578a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ce0fde0cf6e820ca0c95dae4653039e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8c.html#a6ce0fde0cf6e820ca0c95dae4653039e">grpc_is_binary_header</a> (const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, size_t length)</td></tr>
+<tr class="separator:a6ce0fde0cf6e820ca0c95dae4653039e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1435a6d866c6e7f7989ca786facc1fde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_base64_encode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d29385f837594681b517d91d5d578a7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_base64_encode_and_huffman_compress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4445cb57a3331537c4d942764b555123"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_huffman_compress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ce0fde0cf6e820ca0c95dae4653039e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_is_binary_header </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/bin__encoder_8h.html b/doc/ref/core.internal/html/bin__encoder_8h.html
new file mode 100644
index 0000000000..d71b52f606
--- /dev/null
+++ b/doc/ref/core.internal/html/bin__encoder_8h.html
@@ -0,0 +1,191 @@
+<!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: src/core/transport/chttp2/bin_encoder.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">bin_encoder.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="bin__encoder_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1435a6d866c6e7f7989ca786facc1fde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde">grpc_chttp2_base64_encode</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> input)</td></tr>
+<tr class="separator:a1435a6d866c6e7f7989ca786facc1fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4445cb57a3331537c4d942764b555123"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123">grpc_chttp2_huffman_compress</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> input)</td></tr>
+<tr class="separator:a4445cb57a3331537c4d942764b555123"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d29385f837594681b517d91d5d578a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7">grpc_chttp2_base64_encode_and_huffman_compress</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> input)</td></tr>
+<tr class="separator:a0d29385f837594681b517d91d5d578a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ce0fde0cf6e820ca0c95dae4653039e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e">grpc_is_binary_header</a> (const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, size_t length)</td></tr>
+<tr class="separator:a6ce0fde0cf6e820ca0c95dae4653039e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1435a6d866c6e7f7989ca786facc1fde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_base64_encode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d29385f837594681b517d91d5d578a7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_base64_encode_and_huffman_compress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4445cb57a3331537c4d942764b555123"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_huffman_compress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ce0fde0cf6e820ca0c95dae4653039e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_is_binary_header </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/bin__encoder_8h_source.html b/doc/ref/core.internal/html/bin__encoder_8h_source.html
new file mode 100644
index 0000000000..80f899abc9
--- /dev/null
+++ b/doc/ref/core.internal/html/bin__encoder_8h_source.html
@@ -0,0 +1,162 @@
+<!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: src/core/transport/chttp2/bin_encoder.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">bin_encoder.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="bin__encoder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_BIN_ENCODER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_BIN_ENCODER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* base64 encode a slice. Returns a new slice, does not take ownership of the</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> input */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde">grpc_chttp2_base64_encode</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> input);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* Compress a slice with the static huffman encoder detailed in the hpack</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> standard. Returns a new slice, does not take ownership of the input */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123">grpc_chttp2_huffman_compress</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> input);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* equivalent to:</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> gpr_slice x = grpc_chttp2_base64_encode(input);</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> gpr_slice y = grpc_chttp2_huffman_compress(x);</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> gpr_slice_unref(x);</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> return y; */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7">grpc_chttp2_base64_encode_and_huffman_compress</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> input);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">int</span> <a class="code" href="bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e">grpc_is_binary_header</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <span class="keywordtype">size_t</span> length);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_BIN_ENCODER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="bin__encoder_8h_html_a0d29385f837594681b517d91d5d578a7"><div class="ttname"><a href="bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7">grpc_chttp2_base64_encode_and_huffman_compress</a></div><div class="ttdeci">gpr_slice grpc_chttp2_base64_encode_and_huffman_compress(gpr_slice input)</div><div class="ttdef"><b>Definition:</b> bin_encoder.c:173</div></div>
+<div class="ttc" id="bin__encoder_8h_html_a1435a6d866c6e7f7989ca786facc1fde"><div class="ttname"><a href="bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde">grpc_chttp2_base64_encode</a></div><div class="ttdeci">gpr_slice grpc_chttp2_base64_encode(gpr_slice input)</div><div class="ttdef"><b>Definition:</b> bin_encoder.c:64</div></div>
+<div class="ttc" id="bin__encoder_8h_html_a4445cb57a3331537c4d942764b555123"><div class="ttname"><a href="bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123">grpc_chttp2_huffman_compress</a></div><div class="ttdeci">gpr_slice grpc_chttp2_huffman_compress(gpr_slice input)</div><div class="ttdef"><b>Definition:</b> bin_encoder.c:108</div></div>
+<div class="ttc" id="bin__encoder_8h_html_a6ce0fde0cf6e820ca0c95dae4653039e"><div class="ttname"><a href="bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e">grpc_is_binary_header</a></div><div class="ttdeci">int grpc_is_binary_header(const char *key, size_t length)</div><div class="ttdef"><b>Definition:</b> bin_encoder.c:224</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="hpack__table_8c_html_acd3d88da3c0e0313c3645ff34f62f542"><div class="ttname"><a href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> hpack_table.c:43</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/byte__buffer_8c.html b/doc/ref/core.internal/html/byte__buffer_8c.html
new file mode 100644
index 0000000000..4389d60bbc
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer_8c.html
@@ -0,0 +1,265 @@
+<!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: src/core/surface/byte_buffer.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1aaaa0d8a1609166e0b0bb2b42332618"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html#a1aaaa0d8a1609166e0b0bb2b42332618">grpc_raw_byte_buffer_create</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices)</td></tr>
+<tr class="memdesc:a1aaaa0d8a1609166e0b0bb2b42332618"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a RAW byte buffer instance over the given slices (up to <em>nslices</em>). <a href="#a1aaaa0d8a1609166e0b0bb2b42332618">More...</a><br/></td></tr>
+<tr class="separator:a1aaaa0d8a1609166e0b0bb2b42332618"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9801acc1dbfd02b2c51ed9d504cd12b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html#af9801acc1dbfd02b2c51ed9d504cd12b">grpc_raw_compressed_byte_buffer_create</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> compression)</td></tr>
+<tr class="memdesc:af9801acc1dbfd02b2c51ed9d504cd12b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <em>compressed</em> RAW byte buffer instance over the given slices (up to <em>nslices</em>). <a href="#af9801acc1dbfd02b2c51ed9d504cd12b">More...</a><br/></td></tr>
+<tr class="separator:af9801acc1dbfd02b2c51ed9d504cd12b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b4f877e32f45e0e704970e89582e0df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html#a9b4f877e32f45e0e704970e89582e0df">grpc_raw_byte_buffer_from_reader</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader)</td></tr>
+<tr class="memdesc:a9b4f877e32f45e0e704970e89582e0df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a RAW byte buffer instance from the output of <em>reader</em>. <a href="#a9b4f877e32f45e0e704970e89582e0df">More...</a><br/></td></tr>
+<tr class="separator:a9b4f877e32f45e0e704970e89582e0df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac8a5605c5de93a78da7e8ca06a80efb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html#aac8a5605c5de93a78da7e8ca06a80efb">grpc_byte_buffer_copy</a> (<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb)</td></tr>
+<tr class="memdesc:aac8a5605c5de93a78da7e8ca06a80efb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copies input byte buffer <em>bb</em>. <a href="#aac8a5605c5de93a78da7e8ca06a80efb">More...</a><br/></td></tr>
+<tr class="separator:aac8a5605c5de93a78da7e8ca06a80efb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0099fc01264d8aeb7cd56dfb58652d22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html#a0099fc01264d8aeb7cd56dfb58652d22">grpc_byte_buffer_destroy</a> (<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb)</td></tr>
+<tr class="memdesc:a0099fc01264d8aeb7cd56dfb58652d22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys <em>byte_buffer</em> deallocating all its memory. <a href="#a0099fc01264d8aeb7cd56dfb58652d22">More...</a><br/></td></tr>
+<tr class="separator:a0099fc01264d8aeb7cd56dfb58652d22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61b6ac03d6a50664786e45d616ba435d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html#a61b6ac03d6a50664786e45d616ba435d">grpc_byte_buffer_length</a> (<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb)</td></tr>
+<tr class="memdesc:a61b6ac03d6a50664786e45d616ba435d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of the given byte buffer, in bytes. <a href="#a61b6ac03d6a50664786e45d616ba435d">More...</a><br/></td></tr>
+<tr class="separator:a61b6ac03d6a50664786e45d616ba435d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aac8a5605c5de93a78da7e8ca06a80efb"></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_byte_buffer_copy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>bb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Copies input byte buffer <em>bb</em>. </p>
+<p>Increases the reference count of all the source slices. The user is responsible for calling grpc_byte_buffer_destroy over the returned copy. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0099fc01264d8aeb7cd56dfb58652d22"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_byte_buffer_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>byte_buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroys <em>byte_buffer</em> deallocating all its memory. </p>
+
+</div>
+</div>
+<a class="anchor" id="a61b6ac03d6a50664786e45d616ba435d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_byte_buffer_length </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>bb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the size of the given byte buffer, in bytes. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1aaaa0d8a1609166e0b0bb2b42332618"></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_raw_byte_buffer_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a RAW byte buffer instance over the given slices (up to <em>nslices</em>). </p>
+<p>Increases the reference count for all <em>slices</em> processed. The user is responsible for invoking grpc_byte_buffer_destroy on the returned instance. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9b4f877e32f45e0e704970e89582e0df"></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_raw_byte_buffer_from_reader </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a RAW byte buffer instance from the output of <em>reader</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="af9801acc1dbfd02b2c51ed9d504cd12b"></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_raw_compressed_byte_buffer_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>compression</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a <em>compressed</em> RAW byte buffer instance over the given slices (up to <em>nslices</em>). </p>
+<p>The <em>compression</em> argument defines the compression algorithm used to generate the data in <em>slices</em>.</p>
+<p>Increases the reference count for all <em>slices</em> processed. The user is responsible for invoking grpc_byte_buffer_destroy on the returned instance. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/byte__buffer_8h.html b/doc/ref/core.internal/html/byte__buffer_8h.html
new file mode 100644
index 0000000000..a3871f8b5a
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer_8h.html
@@ -0,0 +1,416 @@
+<!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: include/grpc/byte_buffer.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+</div>
+<p><a href="byte__buffer_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a670951ae03b0a2dc4e50f4e25160fc2e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a670951ae03b0a2dc4e50f4e25160fc2e">grpc_byte_buffer</a></td></tr>
+<tr class="separator:a670951ae03b0a2dc4e50f4e25160fc2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16143f22ea46cc7fa6b53e6cb30715f1"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a16143f22ea46cc7fa6b53e6cb30715f1">grpc_byte_buffer_reader</a></td></tr>
+<tr class="separator:a16143f22ea46cc7fa6b53e6cb30715f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:acdc94363b280bde9c82e3d9b5dc3b3e6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a> { <a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636">GRPC_BB_RAW</a>
+ }</td></tr>
+<tr class="separator:acdc94363b280bde9c82e3d9b5dc3b3e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1aaaa0d8a1609166e0b0bb2b42332618"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618">grpc_raw_byte_buffer_create</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices)</td></tr>
+<tr class="memdesc:a1aaaa0d8a1609166e0b0bb2b42332618"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a RAW byte buffer instance over the given slices (up to <em>nslices</em>). <a href="#a1aaaa0d8a1609166e0b0bb2b42332618">More...</a><br/></td></tr>
+<tr class="separator:a1aaaa0d8a1609166e0b0bb2b42332618"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9801acc1dbfd02b2c51ed9d504cd12b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b">grpc_raw_compressed_byte_buffer_create</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> compression)</td></tr>
+<tr class="memdesc:af9801acc1dbfd02b2c51ed9d504cd12b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a <em>compressed</em> RAW byte buffer instance over the given slices (up to <em>nslices</em>). <a href="#af9801acc1dbfd02b2c51ed9d504cd12b">More...</a><br/></td></tr>
+<tr class="separator:af9801acc1dbfd02b2c51ed9d504cd12b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac8a5605c5de93a78da7e8ca06a80efb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb">grpc_byte_buffer_copy</a> (<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb)</td></tr>
+<tr class="memdesc:aac8a5605c5de93a78da7e8ca06a80efb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copies input byte buffer <em>bb</em>. <a href="#aac8a5605c5de93a78da7e8ca06a80efb">More...</a><br/></td></tr>
+<tr class="separator:aac8a5605c5de93a78da7e8ca06a80efb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61b6ac03d6a50664786e45d616ba435d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d">grpc_byte_buffer_length</a> (<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb)</td></tr>
+<tr class="memdesc:a61b6ac03d6a50664786e45d616ba435d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the size of the given byte buffer, in bytes. <a href="#a61b6ac03d6a50664786e45d616ba435d">More...</a><br/></td></tr>
+<tr class="separator:a61b6ac03d6a50664786e45d616ba435d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a9ccea69a6ba41d34a6985837fd88f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5">grpc_byte_buffer_destroy</a> (<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *byte_buffer)</td></tr>
+<tr class="memdesc:a5a9ccea69a6ba41d34a6985837fd88f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys <em>byte_buffer</em> deallocating all its memory. <a href="#a5a9ccea69a6ba41d34a6985837fd88f5">More...</a><br/></td></tr>
+<tr class="separator:a5a9ccea69a6ba41d34a6985837fd88f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71016674849f4f57c1a4319d7964d268"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268">grpc_byte_buffer_reader_init</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *buffer)</td></tr>
+<tr class="memdesc:a71016674849f4f57c1a4319d7964d268"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize <em>reader</em> to read over <em>buffer</em>. <a href="#a71016674849f4f57c1a4319d7964d268">More...</a><br/></td></tr>
+<tr class="separator:a71016674849f4f57c1a4319d7964d268"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed5f40a76941741b7672c14f15be0778"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778">grpc_byte_buffer_reader_destroy</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader)</td></tr>
+<tr class="memdesc:aed5f40a76941741b7672c14f15be0778"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cleanup and destroy <em>reader</em>. <a href="#aed5f40a76941741b7672c14f15be0778">More...</a><br/></td></tr>
+<tr class="separator:aed5f40a76941741b7672c14f15be0778"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff713900a0177997a0be49a40781bcc9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9">grpc_byte_buffer_reader_next</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slice)</td></tr>
+<tr class="memdesc:aff713900a0177997a0be49a40781bcc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates <em>slice</em> with the next piece of data from from <em>reader</em> and returns. <a href="#aff713900a0177997a0be49a40781bcc9">More...</a><br/></td></tr>
+<tr class="separator:aff713900a0177997a0be49a40781bcc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b4f877e32f45e0e704970e89582e0df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df">grpc_raw_byte_buffer_from_reader</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader)</td></tr>
+<tr class="memdesc:a9b4f877e32f45e0e704970e89582e0df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a RAW byte buffer instance from the output of <em>reader</em>. <a href="#a9b4f877e32f45e0e704970e89582e0df">More...</a><br/></td></tr>
+<tr class="separator:a9b4f877e32f45e0e704970e89582e0df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a670951ae03b0a2dc4e50f4e25160fc2e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16143f22ea46cc7fa6b53e6cb30715f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> <a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="acdc94363b280bde9c82e3d9b5dc3b3e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636"></a>GRPC_BB_RAW</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aac8a5605c5de93a78da7e8ca06a80efb"></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_byte_buffer_copy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>bb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Copies input byte buffer <em>bb</em>. </p>
+<p>Increases the reference count of all the source slices. The user is responsible for calling grpc_byte_buffer_destroy over the returned copy. </p>
+
+</div>
+</div>
+<a class="anchor" id="a5a9ccea69a6ba41d34a6985837fd88f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_byte_buffer_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>byte_buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroys <em>byte_buffer</em> deallocating all its memory. </p>
+
+</div>
+</div>
+<a class="anchor" id="a61b6ac03d6a50664786e45d616ba435d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_byte_buffer_length </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>bb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the size of the given byte buffer, in bytes. </p>
+
+</div>
+</div>
+<a class="anchor" id="aed5f40a76941741b7672c14f15be0778"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_byte_buffer_reader_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Cleanup and destroy <em>reader</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a71016674849f4f57c1a4319d7964d268"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_byte_buffer_reader_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initialize <em>reader</em> to read over <em>buffer</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="aff713900a0177997a0be49a40781bcc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_byte_buffer_reader_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Updates <em>slice</em> with the next piece of data from from <em>reader</em> and returns. </p>
+<ol type="1">
+<li>Returns 0 at the end of the stream. Caller is responsible for calling gpr_slice_unref on the result. </li>
+</ol>
+
+</div>
+</div>
+<a class="anchor" id="a1aaaa0d8a1609166e0b0bb2b42332618"></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_raw_byte_buffer_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a RAW byte buffer instance over the given slices (up to <em>nslices</em>). </p>
+<p>Increases the reference count for all <em>slices</em> processed. The user is responsible for invoking grpc_byte_buffer_destroy on the returned instance. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9b4f877e32f45e0e704970e89582e0df"></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_raw_byte_buffer_from_reader </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a RAW byte buffer instance from the output of <em>reader</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="af9801acc1dbfd02b2c51ed9d504cd12b"></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_raw_compressed_byte_buffer_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>compression</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a <em>compressed</em> RAW byte buffer instance over the given slices (up to <em>nslices</em>). </p>
+<p>The <em>compression</em> argument defines the compression algorithm used to generate the data in <em>slices</em>.</p>
+<p>Increases the reference count for all <em>slices</em> processed. The user is responsible for invoking grpc_byte_buffer_destroy on the returned instance. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/byte__buffer_8h_source.html b/doc/ref/core.internal/html/byte__buffer_8h_source.html
new file mode 100644
index 0000000000..d4fbcf97f6
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer_8h_source.html
@@ -0,0 +1,212 @@
+<!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: include/grpc/byte_buffer.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">byte_buffer.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="byte__buffer_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_BYTE_BUFFER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_BYTE_BUFFER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="compression_8h.html">grpc/compression.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice__buffer_8h.html">grpc/support/slice_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636"> 45</a></span>&#160; <a class="code" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636">GRPC_BB_RAW</a></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">/* Future types may include GRPC_BB_PROTOBUF, etc. */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <a class="code" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer.html"> 49</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8"> 50</a></span>&#160; <a class="code" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a> <a class="code" href="structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8">type</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399"> 53</a></span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> <a class="code" href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399">compression</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae"> 54</a></span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> <a class="code" href="structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae">slice_buffer</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; } <a class="code" href="structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6">raw</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; } <a class="code" href="structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f">data</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;};</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="byte__buffer_8h.html#a670951ae03b0a2dc4e50f4e25160fc2e"> 58</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618">grpc_raw_byte_buffer_create</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> *slices,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">size_t</span> nslices);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b">grpc_raw_compressed_byte_buffer_create</a>(</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *slices, <span class="keywordtype">size_t</span> nslices, <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> <a class="code" href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399">compression</a>);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb">grpc_byte_buffer_copy</a>(<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d">grpc_byte_buffer_length</a>(<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span> <a class="code" href="byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5">grpc_byte_buffer_destroy</a>(<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *byte_buffer);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a>;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="byte__buffer_8h.html#a16143f22ea46cc7fa6b53e6cb30715f1"> 90</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> <a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">void</span> <a class="code" href="byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268">grpc_byte_buffer_reader_init</a>(<a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *buffer);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keywordtype">void</span> <a class="code" href="byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778">grpc_byte_buffer_reader_destroy</a>(<a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="keywordtype">int</span> <a class="code" href="byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9">grpc_byte_buffer_reader_next</a>(<a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader,</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *slice);</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df">grpc_raw_byte_buffer_from_reader</a>(</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader);</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_BYTE_BUFFER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="compression_8h_html"><div class="ttname"><a href="compression_8h.html">compression.h</a></div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm</div><div class="ttdef"><b>Definition:</b> compression.h:45</div></div>
+<div class="ttc" id="byte__buffer_8h_html_aff713900a0177997a0be49a40781bcc9"><div class="ttname"><a href="byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9">grpc_byte_buffer_reader_next</a></div><div class="ttdeci">int grpc_byte_buffer_reader_next(grpc_byte_buffer_reader *reader, gpr_slice *slice)</div><div class="ttdoc">Updates slice with the next piece of data from from reader and returns. </div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.c:90</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html_a9bee8905a97b4972f9ec1d18e5fe513f"><div class="ttname"><a href="structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f">grpc_byte_buffer::data</a></div><div class="ttdeci">union grpc_byte_buffer::@0 data</div></div>
+<div class="ttc" id="byte__buffer_8h_html_a71016674849f4f57c1a4319d7964d268"><div class="ttname"><a href="byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268">grpc_byte_buffer_reader_init</a></div><div class="ttdeci">void grpc_byte_buffer_reader_init(grpc_byte_buffer_reader *reader, grpc_byte_buffer *buffer)</div><div class="ttdoc">Initialize reader to read over buffer. </div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.c:56</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html_ae93126777b4832bc327b7e10104f0eae"><div class="ttname"><a href="structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae">grpc_byte_buffer::slice_buffer</a></div><div class="ttdeci">gpr_slice_buffer slice_buffer</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:54</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html_aa7357d67e401d5bc9d10d8fed008dec8"><div class="ttname"><a href="structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8">grpc_byte_buffer::type</a></div><div class="ttdeci">grpc_byte_buffer_type type</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:50</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html"><div class="ttname"><a href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="byte__buffer_8h_html_acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636"><div class="ttname"><a href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636">GRPC_BB_RAW</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:45</div></div>
+<div class="ttc" id="byte__buffer_8h_html_acdc94363b280bde9c82e3d9b5dc3b3e6"><div class="ttname"><a href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a></div><div class="ttdeci">grpc_byte_buffer_type</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:44</div></div>
+<div class="ttc" id="byte__buffer_8h_html_a5a9ccea69a6ba41d34a6985837fd88f5"><div class="ttname"><a href="byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5">grpc_byte_buffer_destroy</a></div><div class="ttdeci">void grpc_byte_buffer_destroy(grpc_byte_buffer *byte_buffer)</div><div class="ttdoc">Destroys byte_buffer deallocating all its memory. </div><div class="ttdef"><b>Definition:</b> byte_buffer.c:83</div></div>
+<div class="ttc" id="byte__buffer_8h_html_af9801acc1dbfd02b2c51ed9d504cd12b"><div class="ttname"><a href="byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b">grpc_raw_compressed_byte_buffer_create</a></div><div class="ttdeci">grpc_byte_buffer * grpc_raw_compressed_byte_buffer_create(gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression)</div><div class="ttdoc">Returns a compressed RAW byte buffer instance over the given slices (up to nslices). </div><div class="ttdef"><b>Definition:</b> byte_buffer.c:44</div></div>
+<div class="ttc" id="byte__buffer_8h_html_a9b4f877e32f45e0e704970e89582e0df"><div class="ttname"><a href="byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df">grpc_raw_byte_buffer_from_reader</a></div><div class="ttdeci">grpc_byte_buffer * grpc_raw_byte_buffer_from_reader(grpc_byte_buffer_reader *reader)</div><div class="ttdoc">Returns a RAW byte buffer instance from the output of reader. </div><div class="ttdef"><b>Definition:</b> byte_buffer.c:58</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html_ae8231d6e62b3d7f4cfbc6a564c84bae6"><div class="ttname"><a href="structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6">grpc_byte_buffer::raw</a></div><div class="ttdeci">struct grpc_byte_buffer::@0::@1 raw</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html_a3663648016e1076b82c5e731dc5b2399"><div class="ttname"><a href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399">grpc_byte_buffer::compression</a></div><div class="ttdeci">grpc_compression_algorithm compression</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:53</div></div>
+<div class="ttc" id="byte__buffer_8h_html_aed5f40a76941741b7672c14f15be0778"><div class="ttname"><a href="byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778">grpc_byte_buffer_reader_destroy</a></div><div class="ttdeci">void grpc_byte_buffer_reader_destroy(grpc_byte_buffer_reader *reader)</div><div class="ttdoc">Cleanup and destroy reader. </div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.c:79</div></div>
+<div class="ttc" id="byte__buffer_8h_html_a61b6ac03d6a50664786e45d616ba435d"><div class="ttname"><a href="byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d">grpc_byte_buffer_length</a></div><div class="ttdeci">size_t grpc_byte_buffer_length(grpc_byte_buffer *bb)</div><div class="ttdoc">Returns the size of the given byte buffer, in bytes. </div><div class="ttdef"><b>Definition:</b> byte_buffer.c:93</div></div>
+<div class="ttc" id="slice__buffer_8h_html"><div class="ttname"><a href="slice__buffer_8h.html">slice_buffer.h</a></div></div>
+<div class="ttc" id="byte__buffer_8h_html_a1aaaa0d8a1609166e0b0bb2b42332618"><div class="ttname"><a href="byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618">grpc_raw_byte_buffer_create</a></div><div class="ttdeci">grpc_byte_buffer * grpc_raw_byte_buffer_create(gpr_slice *slices, size_t nslices)</div><div class="ttdoc">Returns a RAW byte buffer instance over the given slices (up to nslices). </div><div class="ttdef"><b>Definition:</b> byte_buffer.c:38</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__reader_html"><div class="ttname"><a href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a></div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.h:44</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="byte__buffer_8h_html_aac8a5605c5de93a78da7e8ca06a80efb"><div class="ttname"><a href="byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb">grpc_byte_buffer_copy</a></div><div class="ttdeci">grpc_byte_buffer * grpc_byte_buffer_copy(grpc_byte_buffer *bb)</div><div class="ttdoc">Copies input byte buffer bb. </div><div class="ttdef"><b>Definition:</b> byte_buffer.c:72</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/byte__buffer__queue_8c.html b/doc/ref/core.internal/html/byte__buffer__queue_8c.html
new file mode 100644
index 0000000000..44b76ee807
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer__queue_8c.html
@@ -0,0 +1,227 @@
+<!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: src/core/surface/byte_buffer_queue.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer_queue.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="byte__buffer__queue_8h_source.html">src/core/surface/byte_buffer_queue.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae1f26933a5e6e643c3c31de676804edb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html#ae1f26933a5e6e643c3c31de676804edb">grpc_bbq_destroy</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:ae1f26933a5e6e643c3c31de676804edb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa5f8cf8f94340a6e2f6c803a8001c15"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html#aaa5f8cf8f94340a6e2f6c803a8001c15">grpc_bbq_empty</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:aaa5f8cf8f94340a6e2f6c803a8001c15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34702570a1438c8cf7a4dcdcc65a5891"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html#a34702570a1438c8cf7a4dcdcc65a5891">grpc_bbq_push</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *buffer)</td></tr>
+<tr class="separator:a34702570a1438c8cf7a4dcdcc65a5891"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8308c0116008c7abd4554a34a549e94a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html#a8308c0116008c7abd4554a34a549e94a">grpc_bbq_flush</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:a8308c0116008c7abd4554a34a549e94a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86c63b57cc95e136b8de2592e4dedf28"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html#a86c63b57cc95e136b8de2592e4dedf28">grpc_bbq_bytes</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:a86c63b57cc95e136b8de2592e4dedf28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0539ad1d8c25d3060475370bcc9d37c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html#a0539ad1d8c25d3060475370bcc9d37c5">grpc_bbq_pop</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:a0539ad1d8c25d3060475370bcc9d37c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a86c63b57cc95e136b8de2592e4dedf28"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_bbq_bytes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae1f26933a5e6e643c3c31de676804edb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_bbq_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa5f8cf8f94340a6e2f6c803a8001c15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_bbq_empty </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8308c0116008c7abd4554a34a549e94a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_bbq_flush </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0539ad1d8c25d3060475370bcc9d37c5"></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_bbq_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34702570a1438c8cf7a4dcdcc65a5891"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_bbq_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/byte__buffer__queue_8h.html b/doc/ref/core.internal/html/byte__buffer__queue_8h.html
new file mode 100644
index 0000000000..ea55c37e09
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer__queue_8h.html
@@ -0,0 +1,235 @@
+<!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: src/core/surface/byte_buffer_queue.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer_queue.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+</div>
+<p><a href="byte__buffer__queue_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__bbq__array.html">grpc_bbq_array</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae1f26933a5e6e643c3c31de676804edb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb">grpc_bbq_destroy</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:ae1f26933a5e6e643c3c31de676804edb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0539ad1d8c25d3060475370bcc9d37c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5">grpc_bbq_pop</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:a0539ad1d8c25d3060475370bcc9d37c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8308c0116008c7abd4554a34a549e94a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a">grpc_bbq_flush</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:a8308c0116008c7abd4554a34a549e94a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa5f8cf8f94340a6e2f6c803a8001c15"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15">grpc_bbq_empty</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:aaa5f8cf8f94340a6e2f6c803a8001c15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28f3a949b2a27c25929fdb86819e4dae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae">grpc_bbq_push</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb)</td></tr>
+<tr class="separator:a28f3a949b2a27c25929fdb86819e4dae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86c63b57cc95e136b8de2592e4dedf28"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28">grpc_bbq_bytes</a> (<a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q)</td></tr>
+<tr class="separator:a86c63b57cc95e136b8de2592e4dedf28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a86c63b57cc95e136b8de2592e4dedf28"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_bbq_bytes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae1f26933a5e6e643c3c31de676804edb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_bbq_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa5f8cf8f94340a6e2f6c803a8001c15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_bbq_empty </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8308c0116008c7abd4554a34a549e94a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_bbq_flush </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0539ad1d8c25d3060475370bcc9d37c5"></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_bbq_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a28f3a949b2a27c25929fdb86819e4dae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_bbq_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *&#160;</td>
+ <td class="paramname"><em>q</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>bb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/byte__buffer__queue_8h_source.html b/doc/ref/core.internal/html/byte__buffer__queue_8h_source.html
new file mode 100644
index 0000000000..12d0d9eb20
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer__queue_8h_source.html
@@ -0,0 +1,178 @@
+<!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: src/core/surface/byte_buffer_queue.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">byte_buffer_queue.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="byte__buffer__queue_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_BYTE_BUFFER_QUEUE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_BYTE_BUFFER_QUEUE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="byte__buffer_8h.html">grpc/byte_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* TODO(ctiller): inline an element or two into this struct to avoid per-call</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> allocations */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__bbq__array.html"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51"> 42</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **<a class="code" href="structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51">data</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2"> 43</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2">count</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9"> 44</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9">capacity</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;} <a class="code" href="structgrpc__bbq__array.html">grpc_bbq_array</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* should be initialized by zeroing memory */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__queue.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b"> 49</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b">drain_pos</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c"> 50</a></span>&#160; <a class="code" href="structgrpc__bbq__array.html">grpc_bbq_array</a> <a class="code" href="structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c">filling</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b"> 51</a></span>&#160; <a class="code" href="structgrpc__bbq__array.html">grpc_bbq_array</a> <a class="code" href="structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b">draining</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59"> 52</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59">bytes</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb">grpc_bbq_destroy</a>(<a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5">grpc_bbq_pop</a>(<a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a">grpc_bbq_flush</a>(<a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">int</span> <a class="code" href="byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15">grpc_bbq_empty</a>(<a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">void</span> <a class="code" href="byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae">grpc_bbq_push</a>(<a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q, <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *bb);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28">grpc_bbq_bytes</a>(<a class="code" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> *q);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_BYTE_BUFFER_QUEUE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__byte__buffer__queue_html"><div class="ttname"><a href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a></div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:48</div></div>
+<div class="ttc" id="structgrpc__bbq__array_html_a1b857914bbbac7d1713797819a597fb2"><div class="ttname"><a href="structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2">grpc_bbq_array::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:43</div></div>
+<div class="ttc" id="byte__buffer_8h_html"><div class="ttname"><a href="byte__buffer_8h.html">byte_buffer.h</a></div></div>
+<div class="ttc" id="structgrpc__byte__buffer__queue_html_a59362dc489f174084408061a3c86af7c"><div class="ttname"><a href="structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c">grpc_byte_buffer_queue::filling</a></div><div class="ttdeci">grpc_bbq_array filling</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:50</div></div>
+<div class="ttc" id="byte__buffer__queue_8h_html_a28f3a949b2a27c25929fdb86819e4dae"><div class="ttname"><a href="byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae">grpc_bbq_push</a></div><div class="ttdeci">void grpc_bbq_push(grpc_byte_buffer_queue *q, grpc_byte_buffer *bb)</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.c:64</div></div>
+<div class="ttc" id="byte__buffer__queue_8h_html_a8308c0116008c7abd4554a34a549e94a"><div class="ttname"><a href="byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a">grpc_bbq_flush</a></div><div class="ttdeci">void grpc_bbq_flush(grpc_byte_buffer_queue *q)</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.c:69</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html"><div class="ttname"><a href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+<div class="ttc" id="byte__buffer__queue_8h_html_aaa5f8cf8f94340a6e2f6c803a8001c15"><div class="ttname"><a href="byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15">grpc_bbq_empty</a></div><div class="ttdeci">int grpc_bbq_empty(grpc_byte_buffer_queue *q)</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.c:60</div></div>
+<div class="ttc" id="byte__buffer__queue_8h_html_a86c63b57cc95e136b8de2592e4dedf28"><div class="ttname"><a href="byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28">grpc_bbq_bytes</a></div><div class="ttdeci">size_t grpc_bbq_bytes(grpc_byte_buffer_queue *q)</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.c:76</div></div>
+<div class="ttc" id="structgrpc__bbq__array_html"><div class="ttname"><a href="structgrpc__bbq__array.html">grpc_bbq_array</a></div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:41</div></div>
+<div class="ttc" id="byte__buffer__queue_8h_html_ae1f26933a5e6e643c3c31de676804edb"><div class="ttname"><a href="byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb">grpc_bbq_destroy</a></div><div class="ttdeci">void grpc_bbq_destroy(grpc_byte_buffer_queue *q)</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.c:55</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__queue_html_a16c6f1877a10ab226a2fd9988612ea59"><div class="ttname"><a href="structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59">grpc_byte_buffer_queue::bytes</a></div><div class="ttdeci">size_t bytes</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:52</div></div>
+<div class="ttc" id="structgrpc__bbq__array_html_afbcd5e2a41d2eb5d0ede543818c7cf51"><div class="ttname"><a href="structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51">grpc_bbq_array::data</a></div><div class="ttdeci">grpc_byte_buffer ** data</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:42</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__queue_html_a892ef76ec959884e1ac9bfa3bc71912b"><div class="ttname"><a href="structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b">grpc_byte_buffer_queue::drain_pos</a></div><div class="ttdeci">size_t drain_pos</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:49</div></div>
+<div class="ttc" id="byte__buffer__queue_8h_html_a0539ad1d8c25d3060475370bcc9d37c5"><div class="ttname"><a href="byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5">grpc_bbq_pop</a></div><div class="ttdeci">grpc_byte_buffer * grpc_bbq_pop(grpc_byte_buffer_queue *q)</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.c:78</div></div>
+<div class="ttc" id="structgrpc__bbq__array_html_aab53971ceac3b56cd690f24fe646bba9"><div class="ttname"><a href="structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9">grpc_bbq_array::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:44</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__queue_html_a4ada3647f6060be981ff3dbd1ed2f54b"><div class="ttname"><a href="structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b">grpc_byte_buffer_queue::draining</a></div><div class="ttdeci">grpc_bbq_array draining</div><div class="ttdef"><b>Definition:</b> byte_buffer_queue.h:51</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/byte__buffer__reader_8c.html b/doc/ref/core.internal/html/byte__buffer__reader_8c.html
new file mode 100644
index 0000000000..4095b36851
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer__reader_8c.html
@@ -0,0 +1,200 @@
+<!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: src/core/surface/byte_buffer_reader.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer_reader.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="byte__buffer__reader_8h_source.html">grpc/byte_buffer_reader.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="message__compress_8h_source.html">src/core/compression/message_compress.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a71016674849f4f57c1a4319d7964d268"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__reader_8c.html#a71016674849f4f57c1a4319d7964d268">grpc_byte_buffer_reader_init</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *buffer)</td></tr>
+<tr class="memdesc:a71016674849f4f57c1a4319d7964d268"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize <em>reader</em> to read over <em>buffer</em>. <a href="#a71016674849f4f57c1a4319d7964d268">More...</a><br/></td></tr>
+<tr class="separator:a71016674849f4f57c1a4319d7964d268"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed5f40a76941741b7672c14f15be0778"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__reader_8c.html#aed5f40a76941741b7672c14f15be0778">grpc_byte_buffer_reader_destroy</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader)</td></tr>
+<tr class="memdesc:aed5f40a76941741b7672c14f15be0778"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cleanup and destroy <em>reader</em>. <a href="#aed5f40a76941741b7672c14f15be0778">More...</a><br/></td></tr>
+<tr class="separator:aed5f40a76941741b7672c14f15be0778"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff713900a0177997a0be49a40781bcc9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__reader_8c.html#aff713900a0177997a0be49a40781bcc9">grpc_byte_buffer_reader_next</a> (<a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *reader, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slice)</td></tr>
+<tr class="memdesc:aff713900a0177997a0be49a40781bcc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates <em>slice</em> with the next piece of data from from <em>reader</em> and returns. <a href="#aff713900a0177997a0be49a40781bcc9">More...</a><br/></td></tr>
+<tr class="separator:aff713900a0177997a0be49a40781bcc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aed5f40a76941741b7672c14f15be0778"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_byte_buffer_reader_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Cleanup and destroy <em>reader</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a71016674849f4f57c1a4319d7964d268"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_byte_buffer_reader_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initialize <em>reader</em> to read over <em>buffer</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="aff713900a0177997a0be49a40781bcc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_byte_buffer_reader_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Updates <em>slice</em> with the next piece of data from from <em>reader</em> and returns. </p>
+<ol type="1">
+<li>Returns 0 at the end of the stream. Caller is responsible for calling gpr_slice_unref on the result. </li>
+</ol>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/byte__buffer__reader_8h.html b/doc/ref/core.internal/html/byte__buffer__reader_8h.html
new file mode 100644
index 0000000000..7aedcc5238
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer__reader_8h.html
@@ -0,0 +1,111 @@
+<!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: include/grpc/byte_buffer_reader.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer_reader.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+</div>
+<p><a href="byte__buffer__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/byte__buffer__reader_8h_source.html b/doc/ref/core.internal/html/byte__buffer__reader_8h_source.html
new file mode 100644
index 0000000000..cb98285b54
--- /dev/null
+++ b/doc/ref/core.internal/html/byte__buffer__reader_8h_source.html
@@ -0,0 +1,165 @@
+<!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: include/grpc/byte_buffer_reader.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">byte_buffer_reader.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="byte__buffer__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_BYTE_BUFFER_READER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_BYTE_BUFFER_READER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="byte__buffer_8h.html">grpc/byte_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__reader.html"> 44</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22"> 45</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22">buffer_in</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47"> 46</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47">buffer_out</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="comment">/* Different current objects correspond to different types of byte buffers */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* Index into a slice buffer&#39;s array of slices */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb"> 50</a></span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb">index</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; } <a class="code" href="structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f">current</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;};</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_BYTE_BUFFER_READER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="byte__buffer_8h_html"><div class="ttname"><a href="byte__buffer_8h.html">byte_buffer.h</a></div></div>
+<div class="ttc" id="structgrpc__byte__buffer__reader_html_aa947e8d51e0b4333e2b68f0ac55f4e47"><div class="ttname"><a href="structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47">grpc_byte_buffer_reader::buffer_out</a></div><div class="ttdeci">grpc_byte_buffer * buffer_out</div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.h:46</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html"><div class="ttname"><a href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__reader_html_a948b75a404899c348fc6a52e1a6e63cb"><div class="ttname"><a href="structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb">grpc_byte_buffer_reader::index</a></div><div class="ttdeci">unsigned index</div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.h:50</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__reader_html_aaa53ee469c319cbdd72d44548d1f981f"><div class="ttname"><a href="structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f">grpc_byte_buffer_reader::current</a></div><div class="ttdeci">union grpc_byte_buffer_reader::@2 current</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__reader_html_a8856d955b045dab1a425fac372e0be22"><div class="ttname"><a href="structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22">grpc_byte_buffer_reader::buffer_in</a></div><div class="ttdeci">grpc_byte_buffer * buffer_in</div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.h:45</div></div>
+<div class="ttc" id="structgrpc__byte__buffer__reader_html"><div class="ttname"><a href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a></div><div class="ttdef"><b>Definition:</b> byte_buffer_reader.h:44</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/call_8c.html b/doc/ref/core.internal/html/call_8c.html
new file mode 100644
index 0000000000..6150b09518
--- /dev/null
+++ b/doc/ref/core.internal/html/call_8c.html
@@ -0,0 +1,954 @@
+<!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: src/core/surface/call.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">call.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;assert.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alarm_8h_source.html">src/core/iomgr/alarm.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="timers_8h_source.html">src/core/profiling/timers.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="byte__buffer__queue_8h_source.html">src/core/surface/byte_buffer_queue.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="completion__queue_8h_source.html">src/core/surface/completion_queue.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompleted__request.html">completed_request</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreqinfo__master.html">reqinfo_master</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreceived__status.html">received_status</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html">grpc_call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfinished__loose__op__allocated__args.html">finished_loose_op_allocated_args</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:adc0473bd2ea598bc8b0d09c6f43b3a89"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#adc0473bd2ea598bc8b0d09c6f43b3a89">MAX_CONCURRENT_COMPLETIONS</a>&#160;&#160;&#160;6</td></tr>
+<tr class="memdesc:adc0473bd2ea598bc8b0d09c6f43b3a89"><td class="mdescLeft">&#160;</td><td class="mdescRight">The maximum number of completions possible. <a href="#adc0473bd2ea598bc8b0d09c6f43b3a89">More...</a><br/></td></tr>
+<tr class="separator:adc0473bd2ea598bc8b0d09c6f43b3a89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7810380d8811f64f6167a7427f22beb4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a7810380d8811f64f6167a7427f22beb4">REQSET_EMPTY</a>&#160;&#160;&#160;'X'</td></tr>
+<tr class="separator:a7810380d8811f64f6167a7427f22beb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa1b821bc0571d94c462688e3deeeafd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#afa1b821bc0571d94c462688e3deeeafd">REQSET_DONE</a>&#160;&#160;&#160;'Y'</td></tr>
+<tr class="separator:afa1b821bc0571d94c462688e3deeeafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0c91da8d11c6964aded3fbecff4a15c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#ab0c91da8d11c6964aded3fbecff4a15c">MAX_SEND_INITIAL_METADATA_COUNT</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:ab0c91da8d11c6964aded3fbecff4a15c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25608dcdb8f5bf9b8afc358125b59b5b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b">CALL_STACK_FROM_CALL</a>(call)&#160;&#160;&#160;((<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *)((call) + 1))</td></tr>
+<tr class="separator:a25608dcdb8f5bf9b8afc358125b59b5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e0acdef58012600d44f7978256c82d9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a5e0acdef58012600d44f7978256c82d9">CALL_FROM_CALL_STACK</a>(call_stack)&#160;&#160;&#160;(((<a class="el" href="structgrpc__call.html">grpc_call</a> *)(call_stack)) - 1)</td></tr>
+<tr class="separator:a5e0acdef58012600d44f7978256c82d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd274f346b0ea7fc3235481cb7726c25"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#acd274f346b0ea7fc3235481cb7726c25">CALL_ELEM_FROM_CALL</a>(call, idx)&#160;&#160;&#160;<a class="el" href="channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333">grpc_call_stack_element</a>(<a class="el" href="call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b">CALL_STACK_FROM_CALL</a>(call), idx)</td></tr>
+<tr class="separator:acd274f346b0ea7fc3235481cb7726c25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a195c2e9b9e6551cf5973560eec7a97fa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a195c2e9b9e6551cf5973560eec7a97fa">CALL_FROM_TOP_ELEM</a>(top_elem)&#160;&#160;&#160;<a class="el" href="call_8c.html#a5e0acdef58012600d44f7978256c82d9">CALL_FROM_CALL_STACK</a>(<a class="el" href="channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c">grpc_call_stack_from_top_element</a>(top_elem))</td></tr>
+<tr class="separator:a195c2e9b9e6551cf5973560eec7a97fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3959778b8b4ee593c16fa33a06d844c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#ac3959778b8b4ee593c16fa33a06d844c">STATUS_OFFSET</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:ac3959778b8b4ee593c16fa33a06d844c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94d05fca53ff43502691278ac008b36c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a94d05fca53ff43502691278ac008b36c">COMPRESS_OFFSET</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:a94d05fca53ff43502691278ac008b36c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a54d1fff20be8e7414ba15f456824bb17"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17">req_state</a> { <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a6268d672744bde6005590a30c8189779">REQ_INITIAL</a> = 0,
+<a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a99044b02beb639fe667b1a5fcae61a96">REQ_READY</a>,
+<a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a9156fc9ac04c64171f05a5692a1356a9">REQ_DONE</a>
+ }</td></tr>
+<tr class="separator:a54d1fff20be8e7414ba15f456824bb17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c099cbc41809afd83d900cef74c2819"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819">send_action</a> { <br/>
+&#160;&#160;<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819ad40596b21bcebc4654bb8da5c7469b01">SEND_NOTHING</a>,
+<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a7045eff04495ab507242e5da11bcb4ff">SEND_INITIAL_METADATA</a>,
+<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819aa0eea39729a5b7c862262626fbe3d352">SEND_BUFFERED_INITIAL_METADATA</a>,
+<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a5def54f3ec39f74661e1614669603d71">SEND_MESSAGE</a>,
+<br/>
+&#160;&#160;<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819ad0b19b54eb40a63af9f7d957ff717f6e">SEND_BUFFERED_MESSAGE</a>,
+<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a69a25d71b99a99c66c39696b038aa486">SEND_TRAILING_METADATA_AND_FINISH</a>,
+<a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819addfb3ce4bfcd50ee7ec74608fb32f8ef">SEND_FINISH</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a5c099cbc41809afd83d900cef74c2819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9291c3528e3f346e6ae8137ac9e76271"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271">status_source</a> { <br/>
+&#160;&#160;<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271afd2f639169b914143f3b412ed1a2ef00">STATUS_FROM_API_OVERRIDE</a> = 0,
+<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a48a145dfa9c97761d84d36131d27a72e">STATUS_FROM_CORE</a>,
+<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a825b6688b57f66bdb07fef664aa8d569">STATUS_FROM_WIRE</a>,
+<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271aad4663967ed2d5b74e875954573b5c64">STATUS_FROM_SERVER_STATUS</a>,
+<br/>
+&#160;&#160;<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22">STATUS_SOURCE_COUNT</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a9291c3528e3f346e6ae8137ac9e76271"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67c68be8fc9fb0341b9c1c0881f19d17"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17">read_state</a> { <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17ad2197f646af67a6d937754c3a1417439">READ_STATE_INITIAL</a> = 0,
+<a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a37370f960213dc0f115eb8495e038b2a">READ_STATE_GOT_INITIAL_METADATA</a>,
+<a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a9c7de87cb383873b75a6de98df2dc445">READ_STATE_READ_CLOSED</a>,
+<a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17add056921b7a5dd24d85db716da87594a">READ_STATE_STREAM_CLOSED</a>
+ }</td></tr>
+<tr class="separator:a67c68be8fc9fb0341b9c1c0881f19d17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ed0172019dfa72bf69d881d3f06688d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688d">write_state</a> { <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688da18e6209a49059c72ae1a0671fbe729f3">WRITE_STATE_INITIAL</a> = 0,
+<a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688da26c7fbe66a37088b9bc8f34edd4e2634">WRITE_STATE_STARTED</a>,
+<a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688daa6f0a8cbb946569f2f609e500abbbff4">WRITE_STATE_WRITE_CLOSED</a>
+ }</td></tr>
+<tr class="separator:a5ed0172019dfa72bf69d881d3f06688d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0199bd70012c6e2dfa8667dd1d280109"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a0199bd70012c6e2dfa8667dd1d280109">grpc_call_create</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, const void *server_transport_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> **add_initial_metadata, size_t add_initial_metadata_count, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> send_deadline)</td></tr>
+<tr class="separator:a0199bd70012c6e2dfa8667dd1d280109"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29e0a4ca5d3d86c071b41dcb30c117bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a29e0a4ca5d3d86c071b41dcb30c117bd">grpc_call_set_completion_queue</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq)</td></tr>
+<tr class="separator:a29e0a4ca5d3d86c071b41dcb30c117bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a383950ef84646c0f3cb3cb38807503db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a383950ef84646c0f3cb3cb38807503db">grpc_call_get_completion_queue</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a383950ef84646c0f3cb3cb38807503db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afdbe0f591e358205051b2af04a8df4f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#afdbe0f591e358205051b2af04a8df4f8">grpc_call_internal_ref</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *c)</td></tr>
+<tr class="separator:afdbe0f591e358205051b2af04a8df4f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc70fe56761341f774d1b03a55a0e0e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#afc70fe56761341f774d1b03a55a0e0e9">grpc_call_internal_unref</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *c, int allow_immediate_deletion)</td></tr>
+<tr class="separator:afc70fe56761341f774d1b03a55a0e0e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5128cbee3e5ed3cd97b4043c0f6d7d04"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a5128cbee3e5ed3cd97b4043c0f6d7d04">grpc_call_get_compression_algorithm</a> (const <a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a5128cbee3e5ed3cd97b4043c0f6d7d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef30c2ddcfea12c0df20548f32b4378d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#aef30c2ddcfea12c0df20548f32b4378d">grpc_call_start_ioreq_and_call_back</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, const <a class="el" href="structgrpc__ioreq.html">grpc_ioreq</a> *reqs, size_t nreqs, <a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a> on_complete, void *user_data)</td></tr>
+<tr class="separator:aef30c2ddcfea12c0df20548f32b4378d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a456f491fd120a1561aa8cd1178ddb4c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a456f491fd120a1561aa8cd1178ddb4c7">grpc_call_destroy</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *c)</td></tr>
+<tr class="memdesc:a456f491fd120a1561aa8cd1178ddb4c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a call. <a href="#a456f491fd120a1561aa8cd1178ddb4c7">More...</a><br/></td></tr>
+<tr class="separator:a456f491fd120a1561aa8cd1178ddb4c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adce32a3168cfc0048423af94a3961878"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#adce32a3168cfc0048423af94a3961878">grpc_call_cancel</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="memdesc:adce32a3168cfc0048423af94a3961878"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by clients to cancel an RPC on the server. <a href="#adce32a3168cfc0048423af94a3961878">More...</a><br/></td></tr>
+<tr class="separator:adce32a3168cfc0048423af94a3961878"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1adb0f85dd491cc47dd8da655c4e30a6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a1adb0f85dd491cc47dd8da655c4e30a6">grpc_call_cancel_with_status</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *c, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, const char *description)</td></tr>
+<tr class="memdesc:a1adb0f85dd491cc47dd8da655c4e30a6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by clients to cancel an RPC on the server. <a href="#a1adb0f85dd491cc47dd8da655c4e30a6">More...</a><br/></td></tr>
+<tr class="separator:a1adb0f85dd491cc47dd8da655c4e30a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf4ac8b78da7b957ce05dc0f62719ada"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#adf4ac8b78da7b957ce05dc0f62719ada">grpc_call_get_peer</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="memdesc:adf4ac8b78da7b957ce05dc0f62719ada"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a newly allocated string representing the endpoint to which this call is communicating with. <a href="#adf4ac8b78da7b957ce05dc0f62719ada">More...</a><br/></td></tr>
+<tr class="separator:adf4ac8b78da7b957ce05dc0f62719ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92d6bdbeddb5e6918e118bc0979a1a9b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a92d6bdbeddb5e6918e118bc0979a1a9b">grpc_call_from_top_element</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a92d6bdbeddb5e6918e118bc0979a1a9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a089e0677c51d9a5d4a4a7e582f86b27f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a089e0677c51d9a5d4a4a7e582f86b27f">grpc_call_get_call_stack</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a089e0677c51d9a5d4a4a7e582f86b27f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0e60993c9d6e5ceccaf2e61f690b101"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#ae0e60993c9d6e5ceccaf2e61f690b101">grpc_call_start_batch</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, const <a class="el" href="structgrpc__op.html">grpc_op</a> *ops, size_t nops, void *tag)</td></tr>
+<tr class="memdesc:ae0e60993c9d6e5ceccaf2e61f690b101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start a batch of operations defined in the array ops; when complete, post a completion of type 'tag' to the completion queue bound to the call. <a href="#ae0e60993c9d6e5ceccaf2e61f690b101">More...</a><br/></td></tr>
+<tr class="separator:ae0e60993c9d6e5ceccaf2e61f690b101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adad531b2cfc5574dbc4bebaafe0db1e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#adad531b2cfc5574dbc4bebaafe0db1e9">grpc_call_context_set</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> elem, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, void(*destroy)(void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>))</td></tr>
+<tr class="separator:adad531b2cfc5574dbc4bebaafe0db1e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a039322642b1682808002d1302c248c5f"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#a039322642b1682808002d1302c248c5f">grpc_call_context_get</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> elem)</td></tr>
+<tr class="separator:a039322642b1682808002d1302c248c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af101e4a67c8995de55cbd8b113e3b394"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html#af101e4a67c8995de55cbd8b113e3b394">grpc_call_is_client</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:af101e4a67c8995de55cbd8b113e3b394"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="acd274f346b0ea7fc3235481cb7726c25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CALL_ELEM_FROM_CALL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">idx&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333">grpc_call_stack_element</a>(<a class="el" href="call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b">CALL_STACK_FROM_CALL</a>(call), idx)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e0acdef58012600d44f7978256c82d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CALL_FROM_CALL_STACK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call_stack</td><td>)</td>
+ <td>&#160;&#160;&#160;(((<a class="el" href="structgrpc__call.html">grpc_call</a> *)(call_stack)) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a195c2e9b9e6551cf5973560eec7a97fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CALL_FROM_TOP_ELEM</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">top_elem</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="call_8c.html#a5e0acdef58012600d44f7978256c82d9">CALL_FROM_CALL_STACK</a>(<a class="el" href="channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c">grpc_call_stack_from_top_element</a>(top_elem))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a25608dcdb8f5bf9b8afc358125b59b5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CALL_STACK_FROM_CALL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *)((call) + 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a94d05fca53ff43502691278ac008b36c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define COMPRESS_OFFSET&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adc0473bd2ea598bc8b0d09c6f43b3a89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_CONCURRENT_COMPLETIONS&#160;&#160;&#160;6</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The maximum number of completions possible. </p>
+<p>Based upon the maximum number of individually queueable ops in the batch api:</p>
+<ul>
+<li>initial metadata send</li>
+<li>message send</li>
+<li>status/close send (depending on client/server)</li>
+<li>initial metadata recv</li>
+<li>message recv</li>
+<li>status/close recv (depending on client/server) </li>
+</ul>
+
+</div>
+</div>
+<a class="anchor" id="ab0c91da8d11c6964aded3fbecff4a15c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_SEND_INITIAL_METADATA_COUNT&#160;&#160;&#160;3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afa1b821bc0571d94c462688e3deeeafd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define REQSET_DONE&#160;&#160;&#160;'Y'</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7810380d8811f64f6167a7427f22beb4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define REQSET_EMPTY&#160;&#160;&#160;'X'</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac3959778b8b4ee593c16fa33a06d844c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STATUS_OFFSET&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a67c68be8fc9fb0341b9c1c0881f19d17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17">read_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a67c68be8fc9fb0341b9c1c0881f19d17ad2197f646af67a6d937754c3a1417439"></a>READ_STATE_INITIAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a67c68be8fc9fb0341b9c1c0881f19d17a37370f960213dc0f115eb8495e038b2a"></a>READ_STATE_GOT_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a67c68be8fc9fb0341b9c1c0881f19d17a9c7de87cb383873b75a6de98df2dc445"></a>READ_STATE_READ_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a67c68be8fc9fb0341b9c1c0881f19d17add056921b7a5dd24d85db716da87594a"></a>READ_STATE_STREAM_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a54d1fff20be8e7414ba15f456824bb17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17">req_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a54d1fff20be8e7414ba15f456824bb17a6268d672744bde6005590a30c8189779"></a>REQ_INITIAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a54d1fff20be8e7414ba15f456824bb17a99044b02beb639fe667b1a5fcae61a96"></a>REQ_READY</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a54d1fff20be8e7414ba15f456824bb17a9156fc9ac04c64171f05a5692a1356a9"></a>REQ_DONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a5c099cbc41809afd83d900cef74c2819"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819">send_action</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819ad40596b21bcebc4654bb8da5c7469b01"></a>SEND_NOTHING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819a7045eff04495ab507242e5da11bcb4ff"></a>SEND_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819aa0eea39729a5b7c862262626fbe3d352"></a>SEND_BUFFERED_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819a5def54f3ec39f74661e1614669603d71"></a>SEND_MESSAGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819ad0b19b54eb40a63af9f7d957ff717f6e"></a>SEND_BUFFERED_MESSAGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819a69a25d71b99a99c66c39696b038aa486"></a>SEND_TRAILING_METADATA_AND_FINISH</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5c099cbc41809afd83d900cef74c2819addfb3ce4bfcd50ee7ec74608fb32f8ef"></a>SEND_FINISH</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a9291c3528e3f346e6ae8137ac9e76271"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271">status_source</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a9291c3528e3f346e6ae8137ac9e76271afd2f639169b914143f3b412ed1a2ef00"></a>STATUS_FROM_API_OVERRIDE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a9291c3528e3f346e6ae8137ac9e76271a48a145dfa9c97761d84d36131d27a72e"></a>STATUS_FROM_CORE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a9291c3528e3f346e6ae8137ac9e76271a825b6688b57f66bdb07fef664aa8d569"></a>STATUS_FROM_WIRE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a9291c3528e3f346e6ae8137ac9e76271aad4663967ed2d5b74e875954573b5c64"></a>STATUS_FROM_SERVER_STATUS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22"></a>STATUS_SOURCE_COUNT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a5ed0172019dfa72bf69d881d3f06688d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688d">write_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a5ed0172019dfa72bf69d881d3f06688da18e6209a49059c72ae1a0671fbe729f3"></a>WRITE_STATE_INITIAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5ed0172019dfa72bf69d881d3f06688da26c7fbe66a37088b9bc8f34edd4e2634"></a>WRITE_STATE_STARTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5ed0172019dfa72bf69d881d3f06688daa6f0a8cbb946569f2f609e500abbbff4"></a>WRITE_STATE_WRITE_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="adce32a3168cfc0048423af94a3961878"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Called by clients to cancel an RPC on the server. </p>
+<p>Can be called multiple times, from any thread. THREAD-SAFETY grpc_call_cancel and grpc_call_cancel_with_status are thread-safe, and can be called at any point before grpc_call_destroy is called. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1adb0f85dd491cc47dd8da655c4e30a6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_cancel_with_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>description</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Called by clients to cancel an RPC on the server. </p>
+<p>Can be called multiple times, from any thread. If a status has not been received for the call, set it to the status code and description passed in. Importantly, this function does not send status nor description to the remote endpoint. </p>
+
+</div>
+</div>
+<a class="anchor" id="a039322642b1682808002d1302c248c5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_call_context_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a>&#160;</td>
+ <td class="paramname"><em>elem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adad531b2cfc5574dbc4bebaafe0db1e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_context_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a>&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0199bd70012c6e2dfa8667dd1d280109"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_call_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>server_transport_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> **&#160;</td>
+ <td class="paramname"><em>add_initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>add_initial_metadata_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>send_deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a456f491fd120a1561aa8cd1178ddb4c7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a call. </p>
+<p>THREAD SAFETY: grpc_call_destroy is thread-compatible </p>
+
+</div>
+</div>
+<a class="anchor" id="a92d6bdbeddb5e6918e118bc0979a1a9b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_call_from_top_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a089e0677c51d9a5d4a4a7e582f86b27f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a>* grpc_call_get_call_stack </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a383950ef84646c0f3cb3cb38807503db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* grpc_call_get_completion_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5128cbee3e5ed3cd97b4043c0f6d7d04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_call_get_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf4ac8b78da7b957ce05dc0f62719ada"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_call_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a newly allocated string representing the endpoint to which this call is communicating with. </p>
+<p>The string is in the uri format accepted by grpc_channel_create. The returned string should be disposed of with <a class="el" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">gpr_free()</a>.</p>
+<p>WARNING: this value is never authenticated or subject to any security related code. It must not be used for any authentication related functionality. Instead, use <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>. </p>
+
+</div>
+</div>
+<a class="anchor" id="afdbe0f591e358205051b2af04a8df4f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_internal_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc70fe56761341f774d1b03a55a0e0e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_internal_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>allow_immediate_deletion</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af101e4a67c8995de55cbd8b113e3b394"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call_is_client </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29e0a4ca5d3d86c071b41dcb30c117bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_set_completion_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae0e60993c9d6e5ceccaf2e61f690b101"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_start_batch </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__op.html">grpc_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start a batch of operations defined in the array ops; when complete, post a completion of type 'tag' to the completion queue bound to the call. </p>
+<p>The order of ops specified in the batch has no significance. Only one operation of each type can be active at once in any given batch. You must call grpc_completion_queue_next or grpc_completion_queue_pluck on the completion queue associated with 'call' for work to be performed. THREAD SAFETY: access to grpc_call_start_batch in multi-threaded environment needs to be synchronized. As an optimization, you may synchronize batches containing just send operations independently from batches containing just receive operations. </p>
+
+</div>
+</div>
+<a class="anchor" id="aef30c2ddcfea12c0df20548f32b4378d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_start_ioreq_and_call_back </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__ioreq.html">grpc_ioreq</a> *&#160;</td>
+ <td class="paramname"><em>reqs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nreqs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a>&#160;</td>
+ <td class="paramname"><em>on_complete</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/call_8h.html b/doc/ref/core.internal/html/call_8h.html
new file mode 100644
index 0000000000..f4c86dbf84
--- /dev/null
+++ b/doc/ref/core.internal/html/call_8h.html
@@ -0,0 +1,938 @@
+<!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: src/core/surface/call.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">call.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_2context_8h_source.html">src/core/channel/context.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+</div>
+<p><a href="call_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ioreq.html">grpc_ioreq</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8096750f0a0c7cb97a4c38df49242f8b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a8096750f0a0c7cb97a4c38df49242f8b">GRPC_CALL_INTERNAL_REF</a>(call, reason)&#160;&#160;&#160;<a class="el" href="call_8c.html#afdbe0f591e358205051b2af04a8df4f8">grpc_call_internal_ref</a>(call)</td></tr>
+<tr class="separator:a8096750f0a0c7cb97a4c38df49242f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88a83bb312e007ce3b253c97a567383b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a88a83bb312e007ce3b253c97a567383b">GRPC_CALL_INTERNAL_UNREF</a>(call, reason, allow_immediate_deletion)&#160;&#160;&#160;<a class="el" href="call_8c.html#afc70fe56761341f774d1b03a55a0e0e9">grpc_call_internal_unref</a>(call, allow_immediate_deletion)</td></tr>
+<tr class="separator:a88a83bb312e007ce3b253c97a567383b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afb66440381d35f27f8a59ce496970c8a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#afb66440381d35f27f8a59ce496970c8a">GRPC_CALL_LOG_BATCH</a>(sev, call, ops, nops, tag)&#160;&#160;&#160;if (<a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a>) <a class="el" href="call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6">grpc_call_log_batch</a>(sev, call, ops, nops, tag)</td></tr>
+<tr class="separator:afb66440381d35f27f8a59ce496970c8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2248e590ae0f4d7aba76fbf76110db6c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a2248e590ae0f4d7aba76fbf76110db6c">GRPC_SERVER_LOG_REQUEST_CALL</a>(sev, server, call, details,initial_metadata, cq_bound_to_call,cq_for_notifications, tag)</td></tr>
+<tr class="separator:a2248e590ae0f4d7aba76fbf76110db6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b82c07496b462c41ce400559c5219e7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a0b82c07496b462c41ce400559c5219e7">GRPC_SERVER_LOG_SHUTDOWN</a>(sev, server, cq, tag)&#160;&#160;&#160;if (<a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a>) <a class="el" href="call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89">grpc_server_log_shutdown</a>(sev, server, cq, tag)</td></tr>
+<tr class="separator:a0b82c07496b462c41ce400559c5219e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ac4899ae8f97f4bc7e61ae178d853373b"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a> )(<a class="el" href="structgrpc__call.html">grpc_call</a> *call, int success, void *user_data)</td></tr>
+<tr class="separator:ac4899ae8f97f4bc7e61ae178d853373b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a6197b03dc8f1e7b26c62190faf505077"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a> { <br/>
+&#160;&#160;<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282">GRPC_IOREQ_RECV_INITIAL_METADATA</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb">GRPC_IOREQ_RECV_MESSAGE</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf">GRPC_IOREQ_RECV_TRAILING_METADATA</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a">GRPC_IOREQ_RECV_STATUS</a>,
+<br/>
+&#160;&#160;<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795">GRPC_IOREQ_RECV_STATUS_DETAILS</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632">GRPC_IOREQ_RECV_CLOSE</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7">GRPC_IOREQ_SEND_INITIAL_METADATA</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246">GRPC_IOREQ_SEND_MESSAGE</a>,
+<br/>
+&#160;&#160;<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522">GRPC_IOREQ_SEND_TRAILING_METADATA</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c">GRPC_IOREQ_SEND_STATUS</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a">GRPC_IOREQ_SEND_CLOSE</a>,
+<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a6197b03dc8f1e7b26c62190faf505077"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0199bd70012c6e2dfa8667dd1d280109"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a0199bd70012c6e2dfa8667dd1d280109">grpc_call_create</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, const void *server_transport_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> **add_initial_metadata, size_t add_initial_metadata_count, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> send_deadline)</td></tr>
+<tr class="separator:a0199bd70012c6e2dfa8667dd1d280109"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29e0a4ca5d3d86c071b41dcb30c117bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd">grpc_call_set_completion_queue</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq)</td></tr>
+<tr class="separator:a29e0a4ca5d3d86c071b41dcb30c117bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a383950ef84646c0f3cb3cb38807503db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a383950ef84646c0f3cb3cb38807503db">grpc_call_get_completion_queue</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a383950ef84646c0f3cb3cb38807503db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6845825cac8a628227db13fef74ac84d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a6845825cac8a628227db13fef74ac84d">grpc_call_internal_ref</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a6845825cac8a628227db13fef74ac84d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f5aa8da7ebb5abc159c079891fbbe76"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76">grpc_call_internal_unref</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, int allow_immediate_deletion)</td></tr>
+<tr class="separator:a5f5aa8da7ebb5abc159c079891fbbe76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef30c2ddcfea12c0df20548f32b4378d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#aef30c2ddcfea12c0df20548f32b4378d">grpc_call_start_ioreq_and_call_back</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, const <a class="el" href="structgrpc__ioreq.html">grpc_ioreq</a> *reqs, size_t nreqs, <a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a> on_complete, void *user_data)</td></tr>
+<tr class="separator:aef30c2ddcfea12c0df20548f32b4378d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a089e0677c51d9a5d4a4a7e582f86b27f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f">grpc_call_get_call_stack</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a089e0677c51d9a5d4a4a7e582f86b27f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86f68a55fd9421d297c43cb4f0911d1e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e">grpc_call_from_top_element</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *surface_element)</td></tr>
+<tr class="separator:a86f68a55fd9421d297c43cb4f0911d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70fab32081ad1821de8bf3979cfa01d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a70fab32081ad1821de8bf3979cfa01d6">grpc_call_log_batch</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__call.html">grpc_call</a> *call, const <a class="el" href="structgrpc__op.html">grpc_op</a> *ops, size_t nops, void *tag)</td></tr>
+<tr class="separator:a70fab32081ad1821de8bf3979cfa01d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a731e08efd7f3cab089d2239f0ed931d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">grpc_server_log_request_call</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__call.html">grpc_call</a> **call, <a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *details, <a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *initial_metadata, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, void *tag)</td></tr>
+<tr class="separator:a731e08efd7f3cab089d2239f0ed931d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e7c36965ffbb52c576b6b0bf819ab89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89">grpc_server_log_shutdown</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag)</td></tr>
+<tr class="separator:a0e7c36965ffbb52c576b6b0bf819ab89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adad531b2cfc5574dbc4bebaafe0db1e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9">grpc_call_context_set</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> elem, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, void(*destroy)(void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>))</td></tr>
+<tr class="separator:adad531b2cfc5574dbc4bebaafe0db1e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a039322642b1682808002d1302c248c5f"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a039322642b1682808002d1302c248c5f">grpc_call_context_get</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> elem)</td></tr>
+<tr class="separator:a039322642b1682808002d1302c248c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af101e4a67c8995de55cbd8b113e3b394"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#af101e4a67c8995de55cbd8b113e3b394">grpc_call_is_client</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:af101e4a67c8995de55cbd8b113e3b394"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9fa9c0e067be7cfea08021b019544382"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a></td></tr>
+<tr class="separator:a9fa9c0e067be7cfea08021b019544382"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a8096750f0a0c7cb97a4c38df49242f8b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CALL_INTERNAL_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="call_8c.html#afdbe0f591e358205051b2af04a8df4f8">grpc_call_internal_ref</a>(call)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a88a83bb312e007ce3b253c97a567383b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CALL_INTERNAL_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">allow_immediate_deletion&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="call_8c.html#afc70fe56761341f774d1b03a55a0e0e9">grpc_call_internal_unref</a>(call, allow_immediate_deletion)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afb66440381d35f27f8a59ce496970c8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CALL_LOG_BATCH</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sev, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">ops, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">nops, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;if (<a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a>) <a class="el" href="call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6">grpc_call_log_batch</a>(sev, call, ops, nops, tag)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2248e590ae0f4d7aba76fbf76110db6c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SERVER_LOG_REQUEST_CALL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sev, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">server, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">details, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">initial_metadata, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">cq_bound_to_call, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">cq_for_notifications, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (<a class="code" href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a>) <a class="code" href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">\</a></div>
+<div class="line"><a class="code" href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5"> grpc_server_log_request_call</a>(sev, server, call, details, initial_metadata, \</div>
+<div class="line"> cq_bound_to_call, cq_for_notifications, tag)</div>
+<div class="ttc" id="call_8h_html_a731e08efd7f3cab089d2239f0ed931d5"><div class="ttname"><a href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">grpc_server_log_request_call</a></div><div class="ttdeci">void grpc_server_log_request_call(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag)</div><div class="ttdef"><b>Definition:</b> call_log_batch.c:124</div></div>
+<div class="ttc" id="call_8h_html_a9fa9c0e067be7cfea08021b019544382"><div class="ttname"><a href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a></div><div class="ttdeci">int grpc_trace_batch</div><div class="ttdef"><b>Definition:</b> call_log_batch.c:40</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a0b82c07496b462c41ce400559c5219e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SERVER_LOG_SHUTDOWN</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sev, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">server, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">cq, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;if (<a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a>) <a class="el" href="call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89">grpc_server_log_shutdown</a>(sev, server, cq, tag)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ac4899ae8f97f4bc7e61ae178d853373b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_ioreq_completion_func)(<a class="el" href="structgrpc__call.html">grpc_call</a> *call, int success, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282"></a>GRPC_IOREQ_RECV_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb"></a>GRPC_IOREQ_RECV_MESSAGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf"></a>GRPC_IOREQ_RECV_TRAILING_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a"></a>GRPC_IOREQ_RECV_STATUS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795"></a>GRPC_IOREQ_RECV_STATUS_DETAILS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632"></a>GRPC_IOREQ_RECV_CLOSE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7"></a>GRPC_IOREQ_SEND_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246"></a>GRPC_IOREQ_SEND_MESSAGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522"></a>GRPC_IOREQ_SEND_TRAILING_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c"></a>GRPC_IOREQ_SEND_STATUS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a"></a>GRPC_IOREQ_SEND_CLOSE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660"></a>GRPC_IOREQ_OP_COUNT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a039322642b1682808002d1302c248c5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_call_context_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a>&#160;</td>
+ <td class="paramname"><em>elem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adad531b2cfc5574dbc4bebaafe0db1e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_context_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a>&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0199bd70012c6e2dfa8667dd1d280109"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_call_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>server_transport_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> **&#160;</td>
+ <td class="paramname"><em>add_initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>add_initial_metadata_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>send_deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86f68a55fd9421d297c43cb4f0911d1e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_call_from_top_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>surface_element</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a089e0677c51d9a5d4a4a7e582f86b27f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a>* grpc_call_get_call_stack </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a383950ef84646c0f3cb3cb38807503db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* grpc_call_get_completion_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6845825cac8a628227db13fef74ac84d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_internal_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5f5aa8da7ebb5abc159c079891fbbe76"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_internal_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>allow_immediate_deletion</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af101e4a67c8995de55cbd8b113e3b394"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call_is_client </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a70fab32081ad1821de8bf3979cfa01d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_log_batch </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__op.html">grpc_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29e0a4ca5d3d86c071b41dcb30c117bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_set_completion_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef30c2ddcfea12c0df20548f32b4378d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_start_ioreq_and_call_back </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__ioreq.html">grpc_ioreq</a> *&#160;</td>
+ <td class="paramname"><em>reqs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nreqs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a>&#160;</td>
+ <td class="paramname"><em>on_complete</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a731e08efd7f3cab089d2239f0ed931d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_log_request_call </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>details</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_bound_to_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_for_notification</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0e7c36965ffbb52c576b6b0bf819ab89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_log_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a9fa9c0e067be7cfea08021b019544382"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_trace_batch</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/call_8h_source.html b/doc/ref/core.internal/html/call_8h_source.html
new file mode 100644
index 0000000000..0ea32c40a1
--- /dev/null
+++ b/doc/ref/core.internal/html/call_8h_source.html
@@ -0,0 +1,330 @@
+<!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: src/core/surface/call.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">call.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="call_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_CALL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_CALL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel_2context_8h.html">src/core/channel/context.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Primitive operation types - grpc_op&#39;s get rewritten into these */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282"> 43</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282">GRPC_IOREQ_RECV_INITIAL_METADATA</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb"> 44</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb">GRPC_IOREQ_RECV_MESSAGE</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf"> 45</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf">GRPC_IOREQ_RECV_TRAILING_METADATA</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a"> 46</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a">GRPC_IOREQ_RECV_STATUS</a>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795"> 47</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795">GRPC_IOREQ_RECV_STATUS_DETAILS</a>,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632"> 48</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632">GRPC_IOREQ_RECV_CLOSE</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7"> 49</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7">GRPC_IOREQ_SEND_INITIAL_METADATA</a>,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246"> 50</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246">GRPC_IOREQ_SEND_MESSAGE</a>,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522"> 51</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522">GRPC_IOREQ_SEND_TRAILING_METADATA</a>,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c"> 52</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c">GRPC_IOREQ_SEND_STATUS</a>,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a"> 53</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a">GRPC_IOREQ_SEND_CLOSE</a>,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660"> 54</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;} <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html"> 57</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8"> 58</a></span>&#160; <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *<a class="code" href="uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8">recv_metadata</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0"> 59</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **<a class="code" href="uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0">recv_message</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#aedb6839ded1488cf3bd6905345fba0d2"> 61</a></span>&#160; void (*set_value)(<a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331"> 62</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">user_data</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; } recv_status;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6"> 65</a></span>&#160; <span class="keywordtype">char</span> **<a class="code" href="uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6">details</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468"> 66</a></span>&#160; <span class="keywordtype">size_t</span> *<a class="code" href="uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468">details_capacity</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; } recv_status_details;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a"> 69</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a">count</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968"> 70</a></span>&#160; <a class="code" href="structgrpc__metadata.html">grpc_metadata</a> *<a class="code" href="uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968">metadata</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; } send_metadata;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45"> 72</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45">send_message</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1"> 74</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1">code</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="uniongrpc__ioreq__data.html#aabf2513498a2eee60eec1d1d70968169"> 75</a></span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="uniongrpc__ioreq__data.html#aabf2513498a2eee60eec1d1d70968169">details</a>;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; } send_status;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;} <a class="code" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__ioreq.html"> 79</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0"> 80</a></span>&#160; <a class="code" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a> <a class="code" href="structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0">op</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1"> 81</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1">flags</a>; </div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61"> 82</a></span>&#160; <a class="code" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a> <a class="code" href="structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61">data</a>;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;} <a class="code" href="structgrpc__ioreq.html">grpc_ioreq</a>;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b"> 85</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a>)(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keywordtype">int</span> success,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<a class="code" href="structgrpc__call.html">grpc_call</a> *<a class="code" href="call_8h.html#a0199bd70012c6e2dfa8667dd1d280109">grpc_call_create</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *server_transport_data,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> **add_initial_metadata,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">size_t</span> add_initial_metadata_count,</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> send_deadline);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd">grpc_call_set_completion_queue</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *<a class="code" href="call_8h.html#a383950ef84646c0f3cb3cb38807503db">grpc_call_get_completion_queue</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#ifdef GRPC_CALL_REF_COUNT_DEBUG</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="call_8h.html#a6845825cac8a628227db13fef74ac84d">grpc_call_internal_ref</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76">grpc_call_internal_unref</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason,</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">int</span> allow_immediate_deletion);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor">#define GRPC_CALL_INTERNAL_REF(call, reason) \</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor"> grpc_call_internal_ref(call, reason)</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CALL_INTERNAL_UNREF(call, reason, allow_immediate_deletion) \</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor"> grpc_call_internal_unref(call, reason, allow_immediate_deletion)</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="call_8h.html#a6845825cac8a628227db13fef74ac84d">grpc_call_internal_ref</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76">grpc_call_internal_unref</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keywordtype">int</span> allow_immediate_deletion);</div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="call_8h.html#a8096750f0a0c7cb97a4c38df49242f8b"> 108</a></span>&#160;<span class="preprocessor">#define GRPC_CALL_INTERNAL_REF(call, reason) grpc_call_internal_ref(call)</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="call_8h.html#a88a83bb312e007ce3b253c97a567383b"> 109</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CALL_INTERNAL_UNREF(call, reason, allow_immediate_deletion) \</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"> grpc_call_internal_unref(call, allow_immediate_deletion)</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="call_8h.html#aef30c2ddcfea12c0df20548f32b4378d">grpc_call_start_ioreq_and_call_back</a>(</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keyword">const</span> <a class="code" href="structgrpc__ioreq.html">grpc_ioreq</a> *reqs, <span class="keywordtype">size_t</span> nreqs,</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a> on_complete, <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a> *<a class="code" href="call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f">grpc_call_get_call_stack</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment">/* Given the top call_element, get the call object. */</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<a class="code" href="structgrpc__call.html">grpc_call</a> *<a class="code" href="call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e">grpc_call_from_top_element</a>(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *surface_element);</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a>;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#a70fab32081ad1821de8bf3979cfa01d6">grpc_call_log_batch</a>(<span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line, <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity,</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keyword">const</span> <a class="code" href="structgrpc__op.html">grpc_op</a> *ops, <span class="keywordtype">size_t</span> nops,</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">void</span> *tag);</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">grpc_server_log_request_call</a>(<span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity,</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="structgrpc__server.html">grpc_server</a> *server, <a class="code" href="structgrpc__call.html">grpc_call</a> **call,</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details,</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *initial_metadata,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call,</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification,</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordtype">void</span> *tag);</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89">grpc_server_log_shutdown</a>(<span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line, <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity,</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="structgrpc__server.html">grpc_server</a> *server, <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq,</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordtype">void</span> *tag);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment">/* Set a context pointer.</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> No thread safety guarantees are made wrt this value. */</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keywordtype">void</span> <a class="code" href="call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9">grpc_call_context_set</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <a class="code" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> elem,</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">void</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, <span class="keywordtype">void</span> (*destroy)(<span class="keywordtype">void</span> *value));</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment">/* Get a context pointer. */</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="call_8h.html#a039322642b1682808002d1302c248c5f">grpc_call_context_get</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <a class="code" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> elem);</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="call_8h.html#afb66440381d35f27f8a59ce496970c8a"> 148</a></span>&#160;<span class="preprocessor">#define GRPC_CALL_LOG_BATCH(sev, call, ops, nops, tag) \</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor"> if (grpc_trace_batch) grpc_call_log_batch(sev, call, ops, nops, tag)</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="call_8h.html#a2248e590ae0f4d7aba76fbf76110db6c"> 151</a></span>&#160;<span class="preprocessor">#define GRPC_SERVER_LOG_REQUEST_CALL(sev, server, call, details, \</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="preprocessor"> initial_metadata, cq_bound_to_call, \</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor"> cq_for_notifications, tag) \</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor"> if (grpc_trace_batch) \</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="preprocessor"> grpc_server_log_request_call(sev, server, call, details, initial_metadata, \</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="preprocessor"> cq_bound_to_call, cq_for_notifications, tag)</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="call_8h.html#a0b82c07496b462c41ce400559c5219e7"> 158</a></span>&#160;<span class="preprocessor">#define GRPC_SERVER_LOG_SHUTDOWN(sev, server, cq, tag) \</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor"> if (grpc_trace_batch) grpc_server_log_shutdown(sev, server, cq, tag)</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="call_8h.html#af101e4a67c8995de55cbd8b113e3b394">grpc_call_is_client</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_CALL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c">GRPC_IOREQ_SEND_STATUS</a></div><div class="ttdef"><b>Definition:</b> call.h:52</div></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="call_8h_html_a0199bd70012c6e2dfa8667dd1d280109"><div class="ttname"><a href="call_8h.html#a0199bd70012c6e2dfa8667dd1d280109">grpc_call_create</a></div><div class="ttdeci">grpc_call * grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq, const void *server_transport_data, grpc_mdelem **add_initial_metadata, size_t add_initial_metadata_count, gpr_timespec send_deadline)</div><div class="ttdef"><b>Definition:</b> call.c:293</div></div>
+<div class="ttc" id="call_8h_html_a0e7c36965ffbb52c576b6b0bf819ab89"><div class="ttname"><a href="call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89">grpc_server_log_shutdown</a></div><div class="ttdeci">void grpc_server_log_shutdown(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_completion_queue *cq, void *tag)</div><div class="ttdef"><b>Definition:</b> call_log_batch.c:140</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a></div><div class="ttdef"><b>Definition:</b> call.h:54</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html"><div class="ttname"><a href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a></div><div class="ttdef"><b>Definition:</b> call.h:57</div></div>
+<div class="ttc" id="structgrpc__channel_html"><div class="ttname"><a href="structgrpc__channel.html">grpc_channel</a></div><div class="ttdef"><b>Definition:</b> channel.c:61</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf">GRPC_IOREQ_RECV_TRAILING_METADATA</a></div><div class="ttdef"><b>Definition:</b> call.h:45</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a42f927cee57659aa72d79546b897b468"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468">grpc_ioreq_data::details_capacity</a></div><div class="ttdeci">size_t * details_capacity</div><div class="ttdef"><b>Definition:</b> call.h:66</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a">GRPC_IOREQ_RECV_STATUS</a></div><div class="ttdef"><b>Definition:</b> call.h:46</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="structgrpc__mdstr_html"><div class="ttname"><a href="structgrpc__mdstr.html">grpc_mdstr</a></div><div class="ttdef"><b>Definition:</b> metadata.h:70</div></div>
+<div class="ttc" id="call_8h_html_a039322642b1682808002d1302c248c5f"><div class="ttname"><a href="call_8h.html#a039322642b1682808002d1302c248c5f">grpc_call_context_get</a></div><div class="ttdeci">void * grpc_call_context_get(grpc_call *call, grpc_context_index elem)</div><div class="ttdef"><b>Definition:</b> call.c:1583</div></div>
+<div class="ttc" id="structgrpc__call__details_html"><div class="ttname"><a href="structgrpc__call__details.html">grpc_call_details</a></div><div class="ttdef"><b>Definition:</b> grpc.h:244</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html"><div class="ttname"><a href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+<div class="ttc" id="structgrpc__metadata__array_html"><div class="ttname"><a href="structgrpc__metadata__array.html">grpc_metadata_array</a></div><div class="ttdef"><b>Definition:</b> grpc.h:235</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__ioreq_html_a448abf6e8036e7d9ba0c554936e6f4d0"><div class="ttname"><a href="structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0">grpc_ioreq::op</a></div><div class="ttdeci">grpc_ioreq_op op</div><div class="ttdef"><b>Definition:</b> call.h:80</div></div>
+<div class="ttc" id="call_8h_html_ac4899ae8f97f4bc7e61ae178d853373b"><div class="ttname"><a href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a></div><div class="ttdeci">void(* grpc_ioreq_completion_func)(grpc_call *call, int success, void *user_data)</div><div class="ttdef"><b>Definition:</b> call.h:85</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a34eacee09dcb1156021aaeea8206a42a"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a">grpc_ioreq_data::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> call.h:69</div></div>
+<div class="ttc" id="log_8h_html_af10334b4085ac6985a2af9c08478ad48"><div class="ttname"><a href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a></div><div class="ttdeci">gpr_log_severity</div><div class="ttdef"><b>Definition:</b> log.h:56</div></div>
+<div class="ttc" id="call_8h_html_a731e08efd7f3cab089d2239f0ed931d5"><div class="ttname"><a href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">grpc_server_log_request_call</a></div><div class="ttdeci">void grpc_server_log_request_call(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag)</div><div class="ttdef"><b>Definition:</b> call_log_batch.c:124</div></div>
+<div class="ttc" id="call_8h_html_aef30c2ddcfea12c0df20548f32b4378d"><div class="ttname"><a href="call_8h.html#aef30c2ddcfea12c0df20548f32b4378d">grpc_call_start_ioreq_and_call_back</a></div><div class="ttdeci">grpc_call_error grpc_call_start_ioreq_and_call_back(grpc_call *call, const grpc_ioreq *reqs, size_t nreqs, grpc_ioreq_completion_func on_complete, void *user_data)</div><div class="ttdef"><b>Definition:</b> call.c:1167</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795">GRPC_IOREQ_RECV_STATUS_DETAILS</a></div><div class="ttdef"><b>Definition:</b> call.h:47</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785b"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a></div><div class="ttdeci">grpc_call_error</div><div class="ttdoc">Result of a grpc call. </div><div class="ttdef"><b>Definition:</b> grpc.h:156</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a77fea25992234ba3a0174207114ebbb1"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1">grpc_ioreq_data::code</a></div><div class="ttdeci">grpc_status_code code</div><div class="ttdef"><b>Definition:</b> call.h:74</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a58b11308558f97bf335ce5575d951968"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968">grpc_ioreq_data::metadata</a></div><div class="ttdeci">grpc_metadata * metadata</div><div class="ttdef"><b>Definition:</b> call.h:70</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a6b5db9dd6e61e416c3514b787b25dcc6"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6">grpc_ioreq_data::details</a></div><div class="ttdeci">char ** details</div><div class="ttdef"><b>Definition:</b> call.h:65</div></div>
+<div class="ttc" id="call_8h_html_a089e0677c51d9a5d4a4a7e582f86b27f"><div class="ttname"><a href="call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f">grpc_call_get_call_stack</a></div><div class="ttdeci">grpc_call_stack * grpc_call_get_call_stack(grpc_call *call)</div><div class="ttdef"><b>Definition:</b> call.c:1397</div></div>
+<div class="ttc" id="structgrpc__metadata_html"><div class="ttname"><a href="structgrpc__metadata.html">grpc_metadata</a></div><div class="ttdoc">A single metadata element. </div><div class="ttdef"><b>Definition:</b> grpc.h:197</div></div>
+<div class="ttc" id="call_8h_html_a6845825cac8a628227db13fef74ac84d"><div class="ttname"><a href="call_8h.html#a6845825cac8a628227db13fef74ac84d">grpc_call_internal_ref</a></div><div class="ttdeci">void grpc_call_internal_ref(grpc_call *call)</div><div class="ttdef"><b>Definition:</b> call.c:399</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="structgrpc__op_html"><div class="ttname"><a href="structgrpc__op.html">grpc_op</a></div><div class="ttdoc">Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) ...</div><div class="ttdef"><b>Definition:</b> grpc.h:287</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a></div><div class="ttdeci">grpc_ioreq_op</div><div class="ttdef"><b>Definition:</b> call.h:42</div></div>
+<div class="ttc" id="structgrpc__ioreq_html_a97a3d5c809f88a76f20727e2afa539d1"><div class="ttname"><a href="structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1">grpc_ioreq::flags</a></div><div class="ttdeci">gpr_uint32 flags</div><div class="ttdoc">A copy of the write flags from grpc_op. </div><div class="ttdef"><b>Definition:</b> call.h:81</div></div>
+<div class="ttc" id="call_8h_html_af101e4a67c8995de55cbd8b113e3b394"><div class="ttname"><a href="call_8h.html#af101e4a67c8995de55cbd8b113e3b394">grpc_call_is_client</a></div><div class="ttdeci">gpr_uint8 grpc_call_is_client(grpc_call *call)</div><div class="ttdef"><b>Definition:</b> call.c:1587</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a4e3eb01d90e05b23a70c19ad92cdafc8"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8">grpc_ioreq_data::recv_metadata</a></div><div class="ttdeci">grpc_metadata_array * recv_metadata</div><div class="ttdef"><b>Definition:</b> call.h:58</div></div>
+<div class="ttc" id="structgrpc__completion__queue_html"><div class="ttname"><a href="structgrpc__completion__queue.html">grpc_completion_queue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.c:49</div></div>
+<div class="ttc" id="call_8h_html_a29e0a4ca5d3d86c071b41dcb30c117bd"><div class="ttname"><a href="call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd">grpc_call_set_completion_queue</a></div><div class="ttdeci">void grpc_call_set_completion_queue(grpc_call *call, grpc_completion_queue *cq)</div><div class="ttdef"><b>Definition:</b> call.c:357</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282">GRPC_IOREQ_RECV_INITIAL_METADATA</a></div><div class="ttdef"><b>Definition:</b> call.h:43</div></div>
+<div class="ttc" id="call_8h_html_a70fab32081ad1821de8bf3979cfa01d6"><div class="ttname"><a href="call_8h.html#a70fab32081ad1821de8bf3979cfa01d6">grpc_call_log_batch</a></div><div class="ttdeci">void grpc_call_log_batch(char *file, int line, gpr_log_severity severity, grpc_call *call, const grpc_op *ops, size_t nops, void *tag)</div><div class="ttdef"><b>Definition:</b> call_log_batch.c:110</div></div>
+<div class="ttc" id="structgrpc__ioreq_html_a1d53ade2406d59d0d67729ecab438d61"><div class="ttname"><a href="structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61">grpc_ioreq::data</a></div><div class="ttdeci">grpc_ioreq_data data</div><div class="ttdef"><b>Definition:</b> call.h:82</div></div>
+<div class="ttc" id="channel_2context_8h_html"><div class="ttname"><a href="channel_2context_8h.html">context.h</a></div></div>
+<div class="ttc" id="call_8h_html_adad531b2cfc5574dbc4bebaafe0db1e9"><div class="ttname"><a href="call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9">grpc_call_context_set</a></div><div class="ttdeci">void grpc_call_context_set(grpc_call *call, grpc_context_index elem, void *value, void(*destroy)(void *value))</div><div class="ttdef"><b>Definition:</b> call.c:1574</div></div>
+<div class="ttc" id="structgrpc__call__stack_html"><div class="ttname"><a href="structgrpc__call__stack.html">grpc_call_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:141</div></div>
+<div class="ttc" id="call_8h_html_a5f5aa8da7ebb5abc159c079891fbbe76"><div class="ttname"><a href="call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76">grpc_call_internal_unref</a></div><div class="ttdeci">void grpc_call_internal_unref(grpc_call *call, int allow_immediate_deletion)</div><div class="ttdef"><b>Definition:</b> call.c:447</div></div>
+<div class="ttc" id="channel_2context_8h_html_ad9f29fba1468a9a1384b9104bf368dff"><div class="ttname"><a href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a></div><div class="ttdeci">grpc_context_index</div><div class="ttdef"><b>Definition:</b> context.h:38</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a5ea7284dc03df43bf75f8111bd9339f0"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0">grpc_ioreq_data::recv_message</a></div><div class="ttdeci">grpc_byte_buffer ** recv_message</div><div class="ttdef"><b>Definition:</b> call.h:59</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_aabf2513498a2eee60eec1d1d70968169"><div class="ttname"><a href="uniongrpc__ioreq__data.html#aabf2513498a2eee60eec1d1d70968169">grpc_ioreq_data::details</a></div><div class="ttdeci">grpc_mdstr * details</div><div class="ttdef"><b>Definition:</b> call.h:75</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522">GRPC_IOREQ_SEND_TRAILING_METADATA</a></div><div class="ttdef"><b>Definition:</b> call.h:51</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_abcf05c127005fb6267a4f1ef73daec45"><div class="ttname"><a href="uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45">grpc_ioreq_data::send_message</a></div><div class="ttdeci">grpc_byte_buffer * send_message</div><div class="ttdef"><b>Definition:</b> call.h:72</div></div>
+<div class="ttc" id="call_8h_html_a86f68a55fd9421d297c43cb4f0911d1e"><div class="ttname"><a href="call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e">grpc_call_from_top_element</a></div><div class="ttdeci">grpc_call * grpc_call_from_top_element(grpc_call_element *surface_element)</div><div class="ttdef"><b>Definition:</b> call.c:1261</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="structgrpc__call__element_html"><div class="ttname"><a href="structgrpc__call__element.html">grpc_call_element</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:124</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb">GRPC_IOREQ_RECV_MESSAGE</a></div><div class="ttdef"><b>Definition:</b> call.h:44</div></div>
+<div class="ttc" id="call_8h_html_a383950ef84646c0f3cb3cb38807503db"><div class="ttname"><a href="call_8h.html#a383950ef84646c0f3cb3cb38807503db">grpc_call_get_completion_queue</a></div><div class="ttdeci">grpc_completion_queue * grpc_call_get_completion_queue(grpc_call *call)</div><div class="ttdef"><b>Definition:</b> call.c:367</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632">GRPC_IOREQ_RECV_CLOSE</a></div><div class="ttdef"><b>Definition:</b> call.h:48</div></div>
+<div class="ttc" id="uniongrpc__ioreq__data_html_a442beede6948f0efc06a0a9404b49331"><div class="ttname"><a href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">grpc_ioreq_data::user_data</a></div><div class="ttdeci">void * user_data</div><div class="ttdef"><b>Definition:</b> call.h:62</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a">GRPC_IOREQ_SEND_CLOSE</a></div><div class="ttdef"><b>Definition:</b> call.h:53</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7">GRPC_IOREQ_SEND_INITIAL_METADATA</a></div><div class="ttdef"><b>Definition:</b> call.h:49</div></div>
+<div class="ttc" id="call_8h_html_a9fa9c0e067be7cfea08021b019544382"><div class="ttname"><a href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a></div><div class="ttdeci">int grpc_trace_batch</div><div class="ttdef"><b>Definition:</b> call_log_batch.c:40</div></div>
+<div class="ttc" id="structgrpc__call_html"><div class="ttname"><a href="structgrpc__call.html">grpc_call</a></div><div class="ttdef"><b>Definition:</b> call.c:143</div></div>
+<div class="ttc" id="call_8h_html_a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246"><div class="ttname"><a href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246">GRPC_IOREQ_SEND_MESSAGE</a></div><div class="ttdef"><b>Definition:</b> call.h:50</div></div>
+<div class="ttc" id="structgrpc__ioreq_html"><div class="ttname"><a href="structgrpc__ioreq.html">grpc_ioreq</a></div><div class="ttdef"><b>Definition:</b> call.h:79</div></div>
+<div class="ttc" id="structgrpc__server_html"><div class="ttname"><a href="structgrpc__server.html">grpc_server</a></div><div class="ttdef"><b>Definition:</b> server.c:181</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/call__details_8c.html b/doc/ref/core.internal/html/call__details_8c.html
new file mode 100644
index 0000000000..f3326c16ab
--- /dev/null
+++ b/doc/ref/core.internal/html/call__details_8c.html
@@ -0,0 +1,145 @@
+<!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: src/core/surface/call_details.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">call_details.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aec87c14a6d7452bfb029af6a317a6cff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__details_8c.html#aec87c14a6d7452bfb029af6a317a6cff">grpc_call_details_init</a> (<a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *cd)</td></tr>
+<tr class="separator:aec87c14a6d7452bfb029af6a317a6cff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ac75052ac470570689777a7a2684012"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__details_8c.html#a8ac75052ac470570689777a7a2684012">grpc_call_details_destroy</a> (<a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *cd)</td></tr>
+<tr class="separator:a8ac75052ac470570689777a7a2684012"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8ac75052ac470570689777a7a2684012"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_details_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>cd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aec87c14a6d7452bfb029af6a317a6cff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_details_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>cd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/call__log__batch_8c.html b/doc/ref/core.internal/html/call__log__batch_8c.html
new file mode 100644
index 0000000000..59e9a1fbbc
--- /dev/null
+++ b/doc/ref/core.internal/html/call__log__batch_8c.html
@@ -0,0 +1,333 @@
+<!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: src/core/surface/call_log_batch.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">call_log_batch.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a20665cb5606e67c3748f0df7c3f93998"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__log__batch_8c.html#a20665cb5606e67c3748f0df7c3f93998">grpc_op_string</a> (const <a class="el" href="structgrpc__op.html">grpc_op</a> *op)</td></tr>
+<tr class="separator:a20665cb5606e67c3748f0df7c3f93998"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70fab32081ad1821de8bf3979cfa01d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6">grpc_call_log_batch</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__call.html">grpc_call</a> *call, const <a class="el" href="structgrpc__op.html">grpc_op</a> *ops, size_t nops, void *tag)</td></tr>
+<tr class="separator:a70fab32081ad1821de8bf3979cfa01d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a731e08efd7f3cab089d2239f0ed931d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__log__batch_8c.html#a731e08efd7f3cab089d2239f0ed931d5">grpc_server_log_request_call</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__call.html">grpc_call</a> **call, <a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *details, <a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *initial_metadata, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, void *tag)</td></tr>
+<tr class="separator:a731e08efd7f3cab089d2239f0ed931d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e7c36965ffbb52c576b6b0bf819ab89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89">grpc_server_log_shutdown</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag)</td></tr>
+<tr class="separator:a0e7c36965ffbb52c576b6b0bf819ab89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a9fa9c0e067be7cfea08021b019544382"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">grpc_trace_batch</a> = 0</td></tr>
+<tr class="separator:a9fa9c0e067be7cfea08021b019544382"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a70fab32081ad1821de8bf3979cfa01d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_log_batch </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__op.html">grpc_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a20665cb5606e67c3748f0df7c3f93998"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_op_string </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__op.html">grpc_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a731e08efd7f3cab089d2239f0ed931d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_log_request_call </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>details</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_bound_to_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_for_notification</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0e7c36965ffbb52c576b6b0bf819ab89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_log_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a9fa9c0e067be7cfea08021b019544382"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_trace_batch = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cancellable_8c.html b/doc/ref/core.internal/html/cancellable_8c.html
new file mode 100644
index 0000000000..1f038329b4
--- /dev/null
+++ b/doc/ref/core.internal/html/cancellable_8c.html
@@ -0,0 +1,221 @@
+<!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: src/core/support/cancellable.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">cancellable.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aec0b0e9b9f084550cdec300da1f31add"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable_8c.html#aec0b0e9b9f084550cdec300da1f31add">gpr_cancellable_init</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:aec0b0e9b9f084550cdec300da1f31add"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa82b7172b992bd33bd6fd4b4dc89e338"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable_8c.html#aa82b7172b992bd33bd6fd4b4dc89e338">gpr_cancellable_destroy</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:aa82b7172b992bd33bd6fd4b4dc89e338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e53047443e5eb1f9895be0c90bc790b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable_8c.html#a1e53047443e5eb1f9895be0c90bc790b">gpr_cancellable_is_cancelled</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:a1e53047443e5eb1f9895be0c90bc790b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a895fb73161d2dd1fa19be10d5395001c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable_8c.html#a895fb73161d2dd1fa19be10d5395001c">gpr_cancellable_cancel</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:a895fb73161d2dd1fa19be10d5395001c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f1df649a9885ff2354dd4ce611017d9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable_8c.html#a5f1df649a9885ff2354dd4ce611017d9">gpr_cv_cancellable_wait</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv, <a class="el" href="structgpr__mu.html">gpr_mu</a> *mu, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline, <a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:a5f1df649a9885ff2354dd4ce611017d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a895fb73161d2dd1fa19be10d5395001c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cancellable_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa82b7172b992bd33bd6fd4b4dc89e338"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cancellable_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aec0b0e9b9f084550cdec300da1f31add"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cancellable_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1e53047443e5eb1f9895be0c90bc790b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_cancellable_is_cancelled </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5f1df649a9885ff2354dd4ce611017d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_cv_cancellable_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cancellable__platform_8h.html b/doc/ref/core.internal/html/cancellable__platform_8h.html
new file mode 100644
index 0000000000..80590cf51f
--- /dev/null
+++ b/doc/ref/core.internal/html/cancellable__platform_8h.html
@@ -0,0 +1,113 @@
+<!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: include/grpc/support/cancellable_platform.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> </div>
+ <div class="headertitle">
+<div class="title">cancellable_platform.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+</div>
+<p><a href="cancellable__platform_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/cancellable__platform_8h_source.html b/doc/ref/core.internal/html/cancellable__platform_8h_source.html
new file mode 100644
index 0000000000..27c6e8acf3
--- /dev/null
+++ b/doc/ref/core.internal/html/cancellable__platform_8h_source.html
@@ -0,0 +1,168 @@
+<!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: include/grpc/support/cancellable_platform.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">cancellable_platform.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="cancellable__platform_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_CANCELLABLE_PLATFORM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_CANCELLABLE_PLATFORM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="atm_8h.html">grpc/support/atm.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgpr__cancellable__list__.html"> 40</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="comment">/* a doubly-linked list on cancellable&#39;s waiters queue */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a"> 42</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> *<a class="code" href="structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a">next</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4"> 43</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> *<a class="code" href="structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4">prev</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">/* The following two fields are arguments to gpr_cv_cancellable_wait() */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282"> 45</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> *<a class="code" href="structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282">mu</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459"> 46</a></span>&#160; <a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *<a class="code" href="structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459">cv</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;};</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* Internal definition of gpr_cancellable. */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgpr__cancellable.html"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f"> 51</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f">mu</a>; <span class="comment">/* protects waiters and modifications to cancelled */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2"> 52</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2">cancelled</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgpr__cancellable.html#a99dfebf899cae60307fb8b83e8cfdb43"> 53</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> waiters;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="structgpr__cancellable.html">gpr_cancellable</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_CANCELLABLE_PLATFORM_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="atm_8h_html"><div class="ttname"><a href="atm_8h.html">atm.h</a></div></div>
+<div class="ttc" id="structgpr__cancellable__list___html_a58fba7e59ac49bbb9468c2669e21b8b4"><div class="ttname"><a href="structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4">gpr_cancellable_list_::prev</a></div><div class="ttdeci">struct gpr_cancellable_list_ * prev</div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:43</div></div>
+<div class="ttc" id="structgpr__cancellable__list___html"><div class="ttname"><a href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a></div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:40</div></div>
+<div class="ttc" id="structgpr__cancellable__list___html_ae47b7ccae73001ae1539dfe3bcc8a459"><div class="ttname"><a href="structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459">gpr_cancellable_list_::cv</a></div><div class="ttdeci">gpr_cv * cv</div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:46</div></div>
+<div class="ttc" id="structgpr__cancellable_html_a1729b5836bf4181d092f3636368d17b2"><div class="ttname"><a href="structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2">gpr_cancellable::cancelled</a></div><div class="ttdeci">gpr_atm cancelled</div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:52</div></div>
+<div class="ttc" id="sync__posix_8h_html_a1ad613e07180c0459cda9f3f6d881885"><div class="ttname"><a href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></div><div class="ttdeci">pthread_cond_t gpr_cv</div><div class="ttdef"><b>Definition:</b> sync_posix.h:42</div></div>
+<div class="ttc" id="structgpr__cancellable_html"><div class="ttname"><a href="structgpr__cancellable.html">gpr_cancellable</a></div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:50</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="structgpr__cancellable__list___html_abf62ecf7376ec1e9f708e2671e494282"><div class="ttname"><a href="structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282">gpr_cancellable_list_::mu</a></div><div class="ttdeci">gpr_mu * mu</div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:45</div></div>
+<div class="ttc" id="structgpr__cancellable_html_a423e728b92c8890d63490cf4b1fdc30f"><div class="ttname"><a href="structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f">gpr_cancellable::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:51</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="structgpr__cancellable__list___html_a425195e5ab594a2cfdcc976e5167242a"><div class="ttname"><a href="structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a">gpr_cancellable_list_::next</a></div><div class="ttdeci">struct gpr_cancellable_list_ * next</div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:42</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/census_2context_8h.html b/doc/ref/core.internal/html/census_2context_8h.html
new file mode 100644
index 0000000000..2d3d69fca1
--- /dev/null
+++ b/doc/ref/core.internal/html/census_2context_8h.html
@@ -0,0 +1,110 @@
+<!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: src/core/census/context.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> </div>
+ <div class="headertitle">
+<div class="title">context.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="census_8h_source.html">grpc/census.h</a>&gt;</code><br/>
+</div>
+<p><a href="census_2context_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcensus__context.html">census_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/census_2context_8h_source.html b/doc/ref/core.internal/html/census_2context_8h_source.html
new file mode 100644
index 0000000000..946ecfbe31
--- /dev/null
+++ b/doc/ref/core.internal/html/census_2context_8h_source.html
@@ -0,0 +1,153 @@
+<!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: src/core/census/context.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">context.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="census_2context_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CENSUS_CONTEXT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CENSUS_CONTEXT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="census_8h.html">grpc/census.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* census_context is the in-memory representation of information needed to</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> * maintain tracing, RPC statistics and resource usage information. */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structcensus__context.html"> 41</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structcensus__context.html">census_context</a> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structcensus__context.html#ab46ba00da079c14fed8259bae560fdac"> 42</a></span>&#160; <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="code" href="structcensus__context.html#ab46ba00da079c14fed8259bae560fdac">op_id</a>; <span class="comment">/* Operation identifier - unique per-context */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structcensus__context.html#af2f543e5253035ca31b883c23453c918"> 43</a></span>&#160; <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="code" href="structcensus__context.html#af2f543e5253035ca31b883c23453c918">trace_id</a>; <span class="comment">/* Globally unique trace identifier */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">/* TODO(aveitch) Add census tags:</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> const census_tag_set *tags;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;};</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CENSUS_CONTEXT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structcensus__context_html_af2f543e5253035ca31b883c23453c918"><div class="ttname"><a href="structcensus__context.html#af2f543e5253035ca31b883c23453c918">census_context::trace_id</a></div><div class="ttdeci">gpr_uint64 trace_id</div><div class="ttdef"><b>Definition:</b> context.h:43</div></div>
+<div class="ttc" id="structcensus__context_html"><div class="ttname"><a href="structcensus__context.html">census_context</a></div><div class="ttdef"><b>Definition:</b> context.h:41</div></div>
+<div class="ttc" id="census_8h_html"><div class="ttname"><a href="census_8h.html">census.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_a737bb95b7b58d90b4215602d36ed65b6"><div class="ttname"><a href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a></div><div class="ttdeci">uint64_t gpr_uint64</div><div class="ttdef"><b>Definition:</b> port_platform.h:310</div></div>
+<div class="ttc" id="structcensus__context_html_ab46ba00da079c14fed8259bae560fdac"><div class="ttname"><a href="structcensus__context.html#ab46ba00da079c14fed8259bae560fdac">census_context::op_id</a></div><div class="ttdeci">gpr_uint64 op_id</div><div class="ttdef"><b>Definition:</b> context.h:42</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/census_8h.html b/doc/ref/core.internal/html/census_8h.html
new file mode 100644
index 0000000000..8129fdf064
--- /dev/null
+++ b/doc/ref/core.internal/html/census_8h.html
@@ -0,0 +1,369 @@
+<!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: include/grpc/census.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">census.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+</div>
+<p><a href="census_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcensus__stat.html">census_stat</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a27fc8788690179599713226f1f054736"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcensus__context.html">census_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#a27fc8788690179599713226f1f054736">census_context</a></td></tr>
+<tr class="separator:a27fc8788690179599713226f1f054736"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:abe92e59c22481b0de3742673cbbb1bf8"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8">census_features</a> { <br/>
+&#160;&#160;<a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab">CENSUS_FEATURE_NONE</a> = 0,
+<a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718">CENSUS_FEATURE_TRACING</a> = 1,
+<a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a">CENSUS_FEATURE_STATS</a> = 2,
+<a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5">CENSUS_FEATURE_CPU</a> = 4,
+<br/>
+&#160;&#160;<a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c">CENSUS_FEATURE_ALL</a>
+<br/>
+ }</td></tr>
+<tr class="separator:abe92e59c22481b0de3742673cbbb1bf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4cea92157f3de215724f6bf4aeaee1b6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6">census_initialize</a> (int features)</td></tr>
+<tr class="memdesc:a4cea92157f3de215724f6bf4aeaee1b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shutdown and startup census subsystem. <a href="#a4cea92157f3de215724f6bf4aeaee1b6">More...</a><br/></td></tr>
+<tr class="separator:a4cea92157f3de215724f6bf4aeaee1b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa792b067548ecdd987d560b492c83d85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census_shutdown</a> (void)</td></tr>
+<tr class="separator:aa792b067548ecdd987d560b492c83d85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5f627a64ac4febbc61d2b89801d40e9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9">census_supported</a> (void)</td></tr>
+<tr class="memdesc:ad5f627a64ac4febbc61d2b89801d40e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the features supported by the current census implementation (not all features will be available on all platforms). <a href="#ad5f627a64ac4febbc61d2b89801d40e9">More...</a><br/></td></tr>
+<tr class="separator:ad5f627a64ac4febbc61d2b89801d40e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742616973e78aaf969389cea20feea9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#a742616973e78aaf969389cea20feea9f">census_enabled</a> (void)</td></tr>
+<tr class="memdesc:a742616973e78aaf969389cea20feea9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the census features currently enabled. <a href="#a742616973e78aaf969389cea20feea9f">More...</a><br/></td></tr>
+<tr class="separator:a742616973e78aaf969389cea20feea9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9a7d3170ecf720e1b22a4f255605748"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#ad9a7d3170ecf720e1b22a4f255605748">census_context_serialize</a> (const <a class="el" href="structcensus__context.html">census_context</a> *context, char *buffer, size_t buf_size)</td></tr>
+<tr class="separator:ad9a7d3170ecf720e1b22a4f255605748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9daab242b41571299ac5b3bca71fc0d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#ad9daab242b41571299ac5b3bca71fc0d">census_context_deserialize</a> (const char *buffer, <a class="el" href="structcensus__context.html">census_context</a> **context)</td></tr>
+<tr class="separator:ad9daab242b41571299ac5b3bca71fc0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bfcd1edc546eeacf111c3316ae7785d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d">census_context_destroy</a> (<a class="el" href="structcensus__context.html">census_context</a> *context)</td></tr>
+<tr class="separator:a5bfcd1edc546eeacf111c3316ae7785d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cdd5ba86b080e6b5a4b47cfaa5b51cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">census_record_stat</a> (<a class="el" href="structcensus__context.html">census_context</a> *context, <a class="el" href="structcensus__stat.html">census_stat</a> *stats, size_t nstats)</td></tr>
+<tr class="separator:a0cdd5ba86b080e6b5a4b47cfaa5b51cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a27fc8788690179599713226f1f054736"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcensus__context.html">census_context</a> <a class="el" href="structcensus__context.html">census_context</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="abe92e59c22481b0de3742673cbbb1bf8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8">census_features</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab"></a>CENSUS_FEATURE_NONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718"></a>CENSUS_FEATURE_TRACING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a"></a>CENSUS_FEATURE_STATS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5"></a>CENSUS_FEATURE_CPU</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c"></a>CENSUS_FEATURE_ALL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad9daab242b41571299ac5b3bca71fc0d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_context_deserialize </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> **&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5bfcd1edc546eeacf111c3316ae7785d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void census_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad9a7d3170ecf720e1b22a4f255605748"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t census_context_serialize </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>buf_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a742616973e78aaf969389cea20feea9f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_enabled </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the census features currently enabled. </p>
+
+</div>
+</div>
+<a class="anchor" id="a4cea92157f3de215724f6bf4aeaee1b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_initialize </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>features</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Shutdown and startup census subsystem. </p>
+<p>The 'features' argument should be the OR (|) of census_features values. If census fails to initialize, then <a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6" title="Shutdown and startup census subsystem. ">census_initialize()</a> will return a non-zero value. It is an error to call <a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6" title="Shutdown and startup census subsystem. ">census_initialize()</a> more than once (without an intervening <a class="el" href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census_shutdown()</a>). </p>
+
+</div>
+</div>
+<a class="anchor" id="a0cdd5ba86b080e6b5a4b47cfaa5b51cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void census_record_stat </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structcensus__stat.html">census_stat</a> *&#160;</td>
+ <td class="paramname"><em>stats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nstats</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa792b067548ecdd987d560b492c83d85"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void census_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad5f627a64ac4febbc61d2b89801d40e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_supported </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the features supported by the current census implementation (not all features will be available on all platforms). </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/census_8h_source.html b/doc/ref/core.internal/html/census_8h_source.html
new file mode 100644
index 0000000000..986d7760bf
--- /dev/null
+++ b/doc/ref/core.internal/html/census_8h_source.html
@@ -0,0 +1,232 @@
+<!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: include/grpc/census.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">census.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="census_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment">/* RPC-internal Census API&#39;s. These are designed to be generic enough that</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> * they can (ultimately) be used in many different RPC systems (with differing</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> * implementations). */</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#ifndef CENSUS_CENSUS_H</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_CENSUS_H</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Identify census features that can be enabled via census_initialize(). */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8"> 48</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8">census_features</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab"> 49</a></span>&#160; <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab">CENSUS_FEATURE_NONE</a> = 0, <span class="comment">/* Do not enable census. */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718"> 50</a></span>&#160; <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718">CENSUS_FEATURE_TRACING</a> = 1, <span class="comment">/* Enable census tracing. */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a"> 51</a></span>&#160; <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a">CENSUS_FEATURE_STATS</a> = 2, <span class="comment">/* Enable Census stats collection. */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5"> 52</a></span>&#160; <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5">CENSUS_FEATURE_CPU</a> = 4, <span class="comment">/* Enable Census CPU usage collection. */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c"> 53</a></span>&#160; <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c">CENSUS_FEATURE_ALL</a> =</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718">CENSUS_FEATURE_TRACING</a> | <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a">CENSUS_FEATURE_STATS</a> | <a class="code" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5">CENSUS_FEATURE_CPU</a></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;};</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">int</span> <a class="code" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6">census_initialize</a>(<span class="keywordtype">int</span> features);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keywordtype">void</span> <a class="code" href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">int</span> <a class="code" href="census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9">census_supported</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">int</span> <a class="code" href="census_8h.html#a742616973e78aaf969389cea20feea9f">census_enabled</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">/* Internally, Census relies on a context, which should be propagated across</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> * RPC&#39;s. From the RPC subsystems viewpoint, this is an opaque data structure.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * A context must be used as the first argument to all other census</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * functions. Conceptually, contexts should be thought of as specific to</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> * single RPC/thread. The context can be serialized for passing across the</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> * wire. */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="census_8h.html#a27fc8788690179599713226f1f054736"> 78</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structcensus__context.html">census_context</a> <a class="code" href="structcensus__context.html">census_context</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/* This function is called by the RPC subsystem whenever it needs to get a</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> * serialized form of the current census context (presumably to pass across</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * the wire). Arguments:</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> * &#39;buffer&#39;: pointer to memory into which serialized context will be placed</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> * &#39;buf_size&#39;: size of &#39;buffer&#39;</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> * Returns: the number of bytes used in buffer if successful, or 0 if the</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> * buffer is of insufficient size.</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> * TODO(aveitch): determine how best to communicate required/max buffer size</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> * so caller doesn&#39;t have to guess. */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="census_8h.html#ad9a7d3170ecf720e1b22a4f255605748">census_context_serialize</a>(<span class="keyword">const</span> <a class="code" href="structcensus__context.html">census_context</a> *context, <span class="keywordtype">char</span> *buffer,</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">size_t</span> buf_size);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment">/* Create a new census context, possibly from a serialized buffer. If &#39;buffer&#39;</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> * is non-NULL, it is assumed that it is a buffer encoded by</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> * census_context_serialize(). If `buffer` is NULL, a new, empty context is</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> * created. The decoded/new contest is returned in &#39;context&#39;.</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> * Returns 0 if no errors, non-zero if buffer is incorrectly formatted, in</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> * which case a new empty context will be returned. */</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keywordtype">int</span> <a class="code" href="census_8h.html#ad9daab242b41571299ac5b3bca71fc0d">census_context_deserialize</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buffer, <a class="code" href="structcensus__context.html">census_context</a> **context);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* The given context is destroyed. Once destroyed, using the context in</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> * future census calls will result in undefined behavior. */</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keywordtype">void</span> <a class="code" href="census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d">census_context_destroy</a>(<a class="code" href="structcensus__context.html">census_context</a> *context);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment">/* A census statistic to be recorded comprises two parts: an ID for the</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> * particular statistic and the value to be recorded against it. */</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structcensus__stat.html"> 109</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3"> 110</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3">id</a>;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179"> 111</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179">value</a>;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;} <a class="code" href="structcensus__stat.html">census_stat</a>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment">/* Record new stats against the given context. */</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keywordtype">void</span> <a class="code" href="census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">census_record_stat</a>(<a class="code" href="structcensus__context.html">census_context</a> *context, <a class="code" href="structcensus__stat.html">census_stat</a> *stats,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">size_t</span> nstats);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* CENSUS_CENSUS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="census_8h_html_a5bfcd1edc546eeacf111c3316ae7785d"><div class="ttname"><a href="census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d">census_context_destroy</a></div><div class="ttdeci">void census_context_destroy(census_context *context)</div><div class="ttdef"><b>Definition:</b> context.c:59</div></div>
+<div class="ttc" id="census_8h_html_ad9daab242b41571299ac5b3bca71fc0d"><div class="ttname"><a href="census_8h.html#ad9daab242b41571299ac5b3bca71fc0d">census_context_deserialize</a></div><div class="ttdeci">int census_context_deserialize(const char *buffer, census_context **context)</div><div class="ttdef"><b>Definition:</b> context.c:48</div></div>
+<div class="ttc" id="census_8h_html_abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718"><div class="ttname"><a href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718">CENSUS_FEATURE_TRACING</a></div><div class="ttdef"><b>Definition:</b> census.h:50</div></div>
+<div class="ttc" id="census_8h_html_a4cea92157f3de215724f6bf4aeaee1b6"><div class="ttname"><a href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6">census_initialize</a></div><div class="ttdeci">int census_initialize(int features)</div><div class="ttdoc">Shutdown and startup census subsystem. </div><div class="ttdef"><b>Definition:</b> initialize.c:38</div></div>
+<div class="ttc" id="census_8h_html_abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5"><div class="ttname"><a href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5">CENSUS_FEATURE_CPU</a></div><div class="ttdef"><b>Definition:</b> census.h:52</div></div>
+<div class="ttc" id="census_8h_html_abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c"><div class="ttname"><a href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c">CENSUS_FEATURE_ALL</a></div><div class="ttdef"><b>Definition:</b> census.h:53</div></div>
+<div class="ttc" id="census_8h_html_abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a"><div class="ttname"><a href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a">CENSUS_FEATURE_STATS</a></div><div class="ttdef"><b>Definition:</b> census.h:51</div></div>
+<div class="ttc" id="census_8h_html_aa792b067548ecdd987d560b492c83d85"><div class="ttname"><a href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census_shutdown</a></div><div class="ttdeci">void census_shutdown(void)</div><div class="ttdef"><b>Definition:</b> initialize.c:50</div></div>
+<div class="ttc" id="structcensus__stat_html_a1151cb5a250db9b70ba8fc13453abcf3"><div class="ttname"><a href="structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3">census_stat::id</a></div><div class="ttdeci">int id</div><div class="ttdef"><b>Definition:</b> census.h:110</div></div>
+<div class="ttc" id="census_8h_html_ad5f627a64ac4febbc61d2b89801d40e9"><div class="ttname"><a href="census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9">census_supported</a></div><div class="ttdeci">int census_supported(void)</div><div class="ttdoc">Return the features supported by the current census implementation (not all features will be availabl...</div><div class="ttdef"><b>Definition:</b> initialize.c:52</div></div>
+<div class="ttc" id="structcensus__stat_html_a3daa951eaf025870b0ab4b63343fe179"><div class="ttname"><a href="structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179">census_stat::value</a></div><div class="ttdeci">double value</div><div class="ttdef"><b>Definition:</b> census.h:111</div></div>
+<div class="ttc" id="structcensus__context_html"><div class="ttname"><a href="structcensus__context.html">census_context</a></div><div class="ttdef"><b>Definition:</b> context.h:41</div></div>
+<div class="ttc" id="census_8h_html_abe92e59c22481b0de3742673cbbb1bf8"><div class="ttname"><a href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8">census_features</a></div><div class="ttdeci">census_features</div><div class="ttdef"><b>Definition:</b> census.h:48</div></div>
+<div class="ttc" id="census_8h_html_a0cdd5ba86b080e6b5a4b47cfaa5b51cb"><div class="ttname"><a href="census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">census_record_stat</a></div><div class="ttdeci">void census_record_stat(census_context *context, census_stat *stats, size_t nstats)</div><div class="ttdef"><b>Definition:</b> record_stat.c:37</div></div>
+<div class="ttc" id="census_8h_html_a742616973e78aaf969389cea20feea9f"><div class="ttname"><a href="census_8h.html#a742616973e78aaf969389cea20feea9f">census_enabled</a></div><div class="ttdeci">int census_enabled(void)</div><div class="ttdoc">Return the census features currently enabled. </div><div class="ttdef"><b>Definition:</b> initialize.c:57</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="census_8h_html_ad9a7d3170ecf720e1b22a4f255605748"><div class="ttname"><a href="census_8h.html#ad9a7d3170ecf720e1b22a4f255605748">census_context_serialize</a></div><div class="ttdeci">size_t census_context_serialize(const census_context *context, char *buffer, size_t buf_size)</div><div class="ttdef"><b>Definition:</b> context.c:42</div></div>
+<div class="ttc" id="structcensus__stat_html"><div class="ttname"><a href="structcensus__stat.html">census_stat</a></div><div class="ttdef"><b>Definition:</b> census.h:109</div></div>
+<div class="ttc" id="census_8h_html_abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab"><div class="ttname"><a href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab">CENSUS_FEATURE_NONE</a></div><div class="ttdef"><b>Definition:</b> census.h:49</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/census__filter_8h.html b/doc/ref/core.internal/html/census__filter_8h.html
new file mode 100644
index 0000000000..3d190f75f6
--- /dev/null
+++ b/doc/ref/core.internal/html/census__filter_8h.html
@@ -0,0 +1,137 @@
+<!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: src/core/channel/census_filter.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">census_filter.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="census__filter_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8b0a34120ce851f7a8f539c3a14eecb4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4">grpc_client_census_filter</a></td></tr>
+<tr class="separator:a8b0a34120ce851f7a8f539c3a14eecb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a710f293782b7b759efd8bf5acd011963"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census__filter_8h.html#a710f293782b7b759efd8bf5acd011963">grpc_server_census_filter</a></td></tr>
+<tr class="separator:a710f293782b7b759efd8bf5acd011963"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a8b0a34120ce851f7a8f539c3a14eecb4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_client_census_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a710f293782b7b759efd8bf5acd011963"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_server_census_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/census__filter_8h_source.html b/doc/ref/core.internal/html/census__filter_8h_source.html
new file mode 100644
index 0000000000..9ae7bf2ab0
--- /dev/null
+++ b/doc/ref/core.internal/html/census__filter_8h_source.html
@@ -0,0 +1,147 @@
+<!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: src/core/channel/census_filter.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">census_filter.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="census__filter_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_CENSUS_FILTER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_CENSUS_FILTER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Census filters: provides tracing and stats collection functionalities. It</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> needs to reside right below the surface filter in the channel stack. */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4">grpc_client_census_filter</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="census__filter_8h.html#a710f293782b7b759efd8bf5acd011963">grpc_server_census_filter</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_CENSUS_FILTER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="census__filter_8h_html_a710f293782b7b759efd8bf5acd011963"><div class="ttname"><a href="census__filter_8h.html#a710f293782b7b759efd8bf5acd011963">grpc_server_census_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_server_census_filter</div></div>
+<div class="ttc" id="census__filter_8h_html_a8b0a34120ce851f7a8f539c3a14eecb4"><div class="ttname"><a href="census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4">grpc_client_census_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_client_census_filter</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/channel_2context_8h.html b/doc/ref/core.internal/html/channel_2context_8h.html
new file mode 100644
index 0000000000..f458318c55
--- /dev/null
+++ b/doc/ref/core.internal/html/channel_2context_8h.html
@@ -0,0 +1,139 @@
+<!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: src/core/channel/context.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">context.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="channel_2context_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__context__element.html">grpc_call_context_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ad9f29fba1468a9a1384b9104bf368dff"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a> { <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b">GRPC_CONTEXT_SECURITY</a> = 0,
+<a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80">GRPC_CONTEXT_TRACING</a>,
+<a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">GRPC_CONTEXT_COUNT</a>
+ }</td></tr>
+<tr class="separator:ad9f29fba1468a9a1384b9104bf368dff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="ad9f29fba1468a9a1384b9104bf368dff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b"></a>GRPC_CONTEXT_SECURITY</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80"></a>GRPC_CONTEXT_TRACING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7"></a>GRPC_CONTEXT_COUNT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel_2context_8h_source.html b/doc/ref/core.internal/html/channel_2context_8h_source.html
new file mode 100644
index 0000000000..04dbab536b
--- /dev/null
+++ b/doc/ref/core.internal/html/channel_2context_8h_source.html
@@ -0,0 +1,154 @@
+<!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: src/core/channel/context.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">context.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="channel_2context_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_CONTEXT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_CONTEXT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Call object context pointers */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff"> 38</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b"> 39</a></span>&#160; <a class="code" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b">GRPC_CONTEXT_SECURITY</a> = 0,</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80"> 40</a></span>&#160; <a class="code" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80">GRPC_CONTEXT_TRACING</a>,</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7"> 41</a></span>&#160; <a class="code" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">GRPC_CONTEXT_COUNT</a></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;} <a class="code" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__call__context__element.html"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4"> 45</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4">value</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__call__context__element.html#a896c4d5b89848f2f14678745b6162f94"> 46</a></span>&#160; void (*destroy)(<span class="keywordtype">void</span> *);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <a class="code" href="structgrpc__call__context__element.html">grpc_call_context_element</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_CONTEXT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="channel_2context_8h_html_ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80"><div class="ttname"><a href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80">GRPC_CONTEXT_TRACING</a></div><div class="ttdef"><b>Definition:</b> context.h:40</div></div>
+<div class="ttc" id="structgrpc__call__context__element_html_ad87c86a02e8563e6f99a4711737df3d4"><div class="ttname"><a href="structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4">grpc_call_context_element::value</a></div><div class="ttdeci">void * value</div><div class="ttdef"><b>Definition:</b> context.h:45</div></div>
+<div class="ttc" id="structgrpc__call__context__element_html"><div class="ttname"><a href="structgrpc__call__context__element.html">grpc_call_context_element</a></div><div class="ttdef"><b>Definition:</b> context.h:44</div></div>
+<div class="ttc" id="channel_2context_8h_html_ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7"><div class="ttname"><a href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">GRPC_CONTEXT_COUNT</a></div><div class="ttdef"><b>Definition:</b> context.h:41</div></div>
+<div class="ttc" id="channel_2context_8h_html_ad9f29fba1468a9a1384b9104bf368dff"><div class="ttname"><a href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">grpc_context_index</a></div><div class="ttdeci">grpc_context_index</div><div class="ttdef"><b>Definition:</b> context.h:38</div></div>
+<div class="ttc" id="channel_2context_8h_html_ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b"><div class="ttname"><a href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b">GRPC_CONTEXT_SECURITY</a></div><div class="ttdef"><b>Definition:</b> context.h:39</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/channel_8c.html b/doc/ref/core.internal/html/channel_8c.html
new file mode 100644
index 0000000000..1be01c2300
--- /dev/null
+++ b/doc/ref/core.internal/html/channel_8c.html
@@ -0,0 +1,639 @@
+<!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: src/core/surface/channel.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">channel.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="init_8h_source.html">src/core/surface/init.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__call.html">registered_call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html">grpc_channel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a30ddfda40b473a077ff7c70a7687ddb1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a30ddfda40b473a077ff7c70a7687ddb1">NUM_CACHED_STATUS_ELEMS</a>&#160;&#160;&#160;3</td></tr>
+<tr class="memdesc:a30ddfda40b473a077ff7c70a7687ddb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache grpc-status: X mdelems for X = 0..NUM_CACHED_STATUS_ELEMS. <a href="#a30ddfda40b473a077ff7c70a7687ddb1">More...</a><br/></td></tr>
+<tr class="separator:a30ddfda40b473a077ff7c70a7687ddb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66dde7aaec84b22bf4ddfa999a2201ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a66dde7aaec84b22bf4ddfa999a2201ed">CHANNEL_STACK_FROM_CHANNEL</a>(c)&#160;&#160;&#160;((<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *)((c) + 1))</td></tr>
+<tr class="separator:a66dde7aaec84b22bf4ddfa999a2201ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9cf519e646bc07f4b32920f39fba049"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#ae9cf519e646bc07f4b32920f39fba049">CHANNEL_FROM_CHANNEL_STACK</a>(channel_stack)&#160;&#160;&#160;(((<a class="el" href="structgrpc__channel.html">grpc_channel</a> *)(channel_stack)) - 1)</td></tr>
+<tr class="separator:ae9cf519e646bc07f4b32920f39fba049"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79c20e305865805bbe3e21adc8da9e72"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a79c20e305865805bbe3e21adc8da9e72">CHANNEL_FROM_TOP_ELEM</a>(top_elem)&#160;&#160;&#160;<a class="el" href="channel_8c.html#ae9cf519e646bc07f4b32920f39fba049">CHANNEL_FROM_CHANNEL_STACK</a>(<a class="el" href="channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406">grpc_channel_stack_from_top_element</a>(top_elem))</td></tr>
+<tr class="separator:a79c20e305865805bbe3e21adc8da9e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac48c5c1b1a6288d82d88bad6aa306d56"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#ac48c5c1b1a6288d82d88bad6aa306d56">DEFAULT_MAX_MESSAGE_LENGTH</a>&#160;&#160;&#160;(100 * 1024 * 1024)</td></tr>
+<tr class="separator:ac48c5c1b1a6288d82d88bad6aa306d56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a52a88ba75481c926895932b8b05951c2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structregistered__call.html">registered_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a52a88ba75481c926895932b8b05951c2">registered_call</a></td></tr>
+<tr class="separator:a52a88ba75481c926895932b8b05951c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a32e56f0a0ab55d90624b92cbbf7bd384"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a32e56f0a0ab55d90624b92cbbf7bd384">grpc_channel_create_from_filters</a> (const char *target, const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t num_filters, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx, int is_client)</td></tr>
+<tr class="separator:a32e56f0a0ab55d90624b92cbbf7bd384"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a108ef86bc0e5ebcb05f744315e2a6499"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a108ef86bc0e5ebcb05f744315e2a6499">grpc_channel_get_target</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a108ef86bc0e5ebcb05f744315e2a6499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a newly allocated string representing the target a channel was created for. <a href="#a108ef86bc0e5ebcb05f744315e2a6499">More...</a><br/></td></tr>
+<tr class="separator:a108ef86bc0e5ebcb05f744315e2a6499"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b80c5019007f758b1bf414e323db05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#aa6b80c5019007f758b1bf414e323db05">grpc_channel_create_call</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, const char *method, const char *host, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:aa6b80c5019007f758b1bf414e323db05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a call given a <a class="el" href="structgrpc__channel.html">grpc_channel</a>, in order to call 'method'. <a href="#aa6b80c5019007f758b1bf414e323db05">More...</a><br/></td></tr>
+<tr class="separator:aa6b80c5019007f758b1bf414e323db05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af00855f27d8b7c6b232982446371c04d"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#af00855f27d8b7c6b232982446371c04d">grpc_channel_register_call</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, const char *method, const char *host)</td></tr>
+<tr class="memdesc:af00855f27d8b7c6b232982446371c04d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-register a method/host pair on a channel. <a href="#af00855f27d8b7c6b232982446371c04d">More...</a><br/></td></tr>
+<tr class="separator:af00855f27d8b7c6b232982446371c04d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">grpc_channel_create_registered_call</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *completion_queue, void *registered_call_handle, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a call given a handle returned from grpc_channel_register_call. <a href="#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">More...</a><br/></td></tr>
+<tr class="separator:a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e9137c2c6f7cc3c1cdc27fbc5f23b41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41">grpc_channel_internal_ref</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *c)</td></tr>
+<tr class="separator:a7e9137c2c6f7cc3c1cdc27fbc5f23b41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fe6e3f3337487d8b584cb8d51bdfa6b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a7fe6e3f3337487d8b584cb8d51bdfa6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16e4b95581ad12e8e0af2af8d41b71b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a16e4b95581ad12e8e0af2af8d41b71b3">grpc_channel_destroy</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a16e4b95581ad12e8e0af2af8d41b71b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close and destroy a grpc channel. <a href="#a16e4b95581ad12e8e0af2af8d41b71b3">More...</a><br/></td></tr>
+<tr class="separator:a16e4b95581ad12e8e0af2af8d41b71b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a264b543c86559165c42b1c41cb4c9045"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a264b543c86559165c42b1c41cb4c9045">grpc_channel_get_channel_stack</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a264b543c86559165c42b1c41cb4c9045"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a (borrowed) pointer to this channels underlying channel stack. <a href="#a264b543c86559165c42b1c41cb4c9045">More...</a><br/></td></tr>
+<tr class="separator:a264b543c86559165c42b1c41cb4c9045"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b9ee58f86b3e3026767b37bbc3efa80"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a6b9ee58f86b3e3026767b37bbc3efa80">grpc_channel_get_metadata_context</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a6b9ee58f86b3e3026767b37bbc3efa80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a (borrowed) pointer to the channel wide metadata context. <a href="#a6b9ee58f86b3e3026767b37bbc3efa80">More...</a><br/></td></tr>
+<tr class="separator:a6b9ee58f86b3e3026767b37bbc3efa80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2192de2d31a54523311ce241f933e048"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a2192de2d31a54523311ce241f933e048">grpc_channel_get_status_string</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a2192de2d31a54523311ce241f933e048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee69f0f30f9cdcdd3961b1d253fa29af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#aee69f0f30f9cdcdd3961b1d253fa29af">grpc_channel_get_compression_algorithm_string</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:aee69f0f30f9cdcdd3961b1d253fa29af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49c14becac82008119b5e9fd9d554983"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a49c14becac82008119b5e9fd9d554983">grpc_channel_get_reffed_status_elem</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, int i)</td></tr>
+<tr class="memdesc:a49c14becac82008119b5e9fd9d554983"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> of grpc-status: X where X is the numeric value of status_code. <a href="#a49c14becac82008119b5e9fd9d554983">More...</a><br/></td></tr>
+<tr class="separator:a49c14becac82008119b5e9fd9d554983"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3008e3086b47f6170180c32ef88c83db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html#a3008e3086b47f6170180c32ef88c83db">grpc_channel_get_message_string</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a3008e3086b47f6170180c32ef88c83db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f91159c2a0d259aa7f854ba4204cafd"><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="channel_8c.html#a1f91159c2a0d259aa7f854ba4204cafd">grpc_channel_get_max_message_length</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a1f91159c2a0d259aa7f854ba4204cafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ae9cf519e646bc07f4b32920f39fba049"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CHANNEL_FROM_CHANNEL_STACK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">channel_stack</td><td>)</td>
+ <td>&#160;&#160;&#160;(((<a class="el" href="structgrpc__channel.html">grpc_channel</a> *)(channel_stack)) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a79c20e305865805bbe3e21adc8da9e72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CHANNEL_FROM_TOP_ELEM</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">top_elem</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="channel_8c.html#ae9cf519e646bc07f4b32920f39fba049">CHANNEL_FROM_CHANNEL_STACK</a>(<a class="el" href="channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406">grpc_channel_stack_from_top_element</a>(top_elem))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a66dde7aaec84b22bf4ddfa999a2201ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CHANNEL_STACK_FROM_CHANNEL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">c</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *)((c) + 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac48c5c1b1a6288d82d88bad6aa306d56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define DEFAULT_MAX_MESSAGE_LENGTH&#160;&#160;&#160;(100 * 1024 * 1024)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a30ddfda40b473a077ff7c70a7687ddb1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define NUM_CACHED_STATUS_ELEMS&#160;&#160;&#160;3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Cache grpc-status: X mdelems for X = 0..NUM_CACHED_STATUS_ELEMS. </p>
+<p>Avoids needing to take a metadata context lock for sending status if the status code is &lt;= NUM_CACHED_STATUS_ELEMS. Sized to allow the most commonly used codes to fit in (OK, Cancelled, Unknown). </p>
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a52a88ba75481c926895932b8b05951c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structregistered__call.html">registered_call</a> <a class="el" href="structregistered__call.html">registered_call</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa6b80c5019007f758b1bf414e323db05"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_channel_create_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>completion_queue</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a call given a <a class="el" href="structgrpc__channel.html">grpc_channel</a>, in order to call 'method'. </p>
+<p>All completions are sent to 'completion_queue'. 'method' and 'host' need only live through the invocation of this function. </p>
+
+</div>
+</div>
+<a class="anchor" id="a32e56f0a0ab55d90624b92cbbf7bd384"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_channel_create_from_filters </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a38aa45cdbc3d9a9529bcb6ee8b2c68aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_channel_create_registered_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>completion_queue</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>registered_call_handle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a call given a handle returned from grpc_channel_register_call. </p>
+
+</div>
+</div>
+<a class="anchor" id="a16e4b95581ad12e8e0af2af8d41b71b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Close and destroy a grpc channel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a264b543c86559165c42b1c41cb4c9045"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a>* grpc_channel_get_channel_stack </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a (borrowed) pointer to this channels underlying channel stack. </p>
+
+</div>
+</div>
+<a class="anchor" id="aee69f0f30f9cdcdd3961b1d253fa29af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel_get_compression_algorithm_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f91159c2a0d259aa7f854ba4204cafd"></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_channel_get_max_message_length </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3008e3086b47f6170180c32ef88c83db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel_get_message_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b9ee58f86b3e3026767b37bbc3efa80"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_channel_get_metadata_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a (borrowed) pointer to the channel wide metadata context. </p>
+
+</div>
+</div>
+<a class="anchor" id="a49c14becac82008119b5e9fd9d554983"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_channel_get_reffed_status_elem </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>status_code</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> of grpc-status: X where X is the numeric value of status_code. </p>
+<p>The returned elem is owned by the caller. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2192de2d31a54523311ce241f933e048"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel_get_status_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a108ef86bc0e5ebcb05f744315e2a6499"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_channel_get_target </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return a newly allocated string representing the target a channel was created for. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7e9137c2c6f7cc3c1cdc27fbc5f23b41"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_internal_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fe6e3f3337487d8b584cb8d51bdfa6b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_internal_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af00855f27d8b7c6b232982446371c04d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_channel_register_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Pre-register a method/host pair on a channel. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel_8h.html b/doc/ref/core.internal/html/channel_8h.html
new file mode 100644
index 0000000000..79fb0d91bc
--- /dev/null
+++ b/doc/ref/core.internal/html/channel_8h.html
@@ -0,0 +1,405 @@
+<!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: src/core/surface/channel.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">channel.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="subchannel__factory_8h_source.html">src/core/client_config/subchannel_factory.h</a>&quot;</code><br/>
+</div>
+<p><a href="channel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa19087be931208174c3f30c983b0061c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#aa19087be931208174c3f30c983b0061c">GRPC_CHANNEL_INTERNAL_REF</a>(channel, reason)&#160;&#160;&#160;<a class="el" href="channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41">grpc_channel_internal_ref</a>(channel)</td></tr>
+<tr class="separator:aa19087be931208174c3f30c983b0061c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8391477c21b23ffe97f2e6327c74e77e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a8391477c21b23ffe97f2e6327c74e77e">GRPC_CHANNEL_INTERNAL_UNREF</a>(channel, reason)&#160;&#160;&#160;<a class="el" href="channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a>(channel)</td></tr>
+<tr class="separator:a8391477c21b23ffe97f2e6327c74e77e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a12b25d31348401c51adab93c4f461d58"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a12b25d31348401c51adab93c4f461d58">grpc_channel_create_from_filters</a> (const char *target, const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t count, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx, int is_client)</td></tr>
+<tr class="separator:a12b25d31348401c51adab93c4f461d58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a264b543c86559165c42b1c41cb4c9045"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a264b543c86559165c42b1c41cb4c9045">grpc_channel_get_channel_stack</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a264b543c86559165c42b1c41cb4c9045"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a (borrowed) pointer to this channels underlying channel stack. <a href="#a264b543c86559165c42b1c41cb4c9045">More...</a><br/></td></tr>
+<tr class="separator:a264b543c86559165c42b1c41cb4c9045"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b9ee58f86b3e3026767b37bbc3efa80"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80">grpc_channel_get_metadata_context</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a6b9ee58f86b3e3026767b37bbc3efa80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a (borrowed) pointer to the channel wide metadata context. <a href="#a6b9ee58f86b3e3026767b37bbc3efa80">More...</a><br/></td></tr>
+<tr class="separator:a6b9ee58f86b3e3026767b37bbc3efa80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c93bb726613652c5a22d9f4fb6c2101"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101">grpc_channel_get_reffed_status_elem</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, int status_code)</td></tr>
+<tr class="memdesc:a0c93bb726613652c5a22d9f4fb6c2101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> of grpc-status: X where X is the numeric value of status_code. <a href="#a0c93bb726613652c5a22d9f4fb6c2101">More...</a><br/></td></tr>
+<tr class="separator:a0c93bb726613652c5a22d9f4fb6c2101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2192de2d31a54523311ce241f933e048"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a2192de2d31a54523311ce241f933e048">grpc_channel_get_status_string</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a2192de2d31a54523311ce241f933e048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee69f0f30f9cdcdd3961b1d253fa29af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af">grpc_channel_get_compression_algorithm_string</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:aee69f0f30f9cdcdd3961b1d253fa29af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3008e3086b47f6170180c32ef88c83db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a3008e3086b47f6170180c32ef88c83db">grpc_channel_get_message_string</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a3008e3086b47f6170180c32ef88c83db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f91159c2a0d259aa7f854ba4204cafd"><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="channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd">grpc_channel_get_max_message_length</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a1f91159c2a0d259aa7f854ba4204cafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e6da9e3b86935fa1ddd6d55bf6b1634"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634">grpc_channel_internal_ref</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a2e6da9e3b86935fa1ddd6d55bf6b1634"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fe6e3f3337487d8b584cb8d51bdfa6b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="separator:a7fe6e3f3337487d8b584cb8d51bdfa6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aa19087be931208174c3f30c983b0061c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHANNEL_INTERNAL_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">channel, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41">grpc_channel_internal_ref</a>(channel)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8391477c21b23ffe97f2e6327c74e77e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHANNEL_INTERNAL_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">channel, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a>(channel)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a12b25d31348401c51adab93c4f461d58"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_channel_create_from_filters </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a264b543c86559165c42b1c41cb4c9045"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a>* grpc_channel_get_channel_stack </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a (borrowed) pointer to this channels underlying channel stack. </p>
+
+</div>
+</div>
+<a class="anchor" id="aee69f0f30f9cdcdd3961b1d253fa29af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel_get_compression_algorithm_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f91159c2a0d259aa7f854ba4204cafd"></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_channel_get_max_message_length </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3008e3086b47f6170180c32ef88c83db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel_get_message_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b9ee58f86b3e3026767b37bbc3efa80"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_channel_get_metadata_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a (borrowed) pointer to the channel wide metadata context. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0c93bb726613652c5a22d9f4fb6c2101"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_channel_get_reffed_status_elem </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>status_code</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> of grpc-status: X where X is the numeric value of status_code. </p>
+<p>The returned elem is owned by the caller. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2192de2d31a54523311ce241f933e048"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel_get_status_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e6da9e3b86935fa1ddd6d55bf6b1634"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_internal_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fe6e3f3337487d8b584cb8d51bdfa6b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_internal_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel_8h_source.html b/doc/ref/core.internal/html/channel_8h_source.html
new file mode 100644
index 0000000000..3a3725e978
--- /dev/null
+++ b/doc/ref/core.internal/html/channel_8h_source.html
@@ -0,0 +1,191 @@
+<!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: src/core/surface/channel.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">channel.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="channel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_CHANNEL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_CHANNEL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subchannel__factory_8h.html">src/core/client_config/subchannel_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<a class="code" href="structgrpc__channel.html">grpc_channel</a> *<a class="code" href="channel_8h.html#a12b25d31348401c51adab93c4f461d58">grpc_channel_create_from_filters</a>(</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *target, <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, <span class="keywordtype">size_t</span> count,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx, <span class="keywordtype">int</span> is_client);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *<a class="code" href="channel_8h.html#a264b543c86559165c42b1c41cb4c9045">grpc_channel_get_channel_stack</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80">grpc_channel_get_metadata_context</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101">grpc_channel_get_reffed_status_elem</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">int</span> status_code);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="channel_8h.html#a2192de2d31a54523311ce241f933e048">grpc_channel_get_status_string</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af">grpc_channel_get_compression_algorithm_string</a>(</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="channel_8h.html#a3008e3086b47f6170180c32ef88c83db">grpc_channel_get_message_string</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd">grpc_channel_get_max_message_length</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#ifdef GRPC_CHANNEL_REF_COUNT_DEBUG</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634">grpc_channel_internal_ref</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#define GRPC_CHANNEL_INTERNAL_REF(channel, reason) \</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"> grpc_channel_internal_ref(channel, reason)</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHANNEL_INTERNAL_UNREF(channel, reason) \</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"> grpc_channel_internal_unref(channel, reason)</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634">grpc_channel_internal_ref</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="channel_8h.html#aa19087be931208174c3f30c983b0061c"> 72</a></span>&#160;<span class="preprocessor">#define GRPC_CHANNEL_INTERNAL_REF(channel, reason) \</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"> grpc_channel_internal_ref(channel)</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="channel_8h.html#a8391477c21b23ffe97f2e6327c74e77e"> 74</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHANNEL_INTERNAL_UNREF(channel, reason) \</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"> grpc_channel_internal_unref(channel)</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_CHANNEL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="structgrpc__channel__stack_html"><div class="ttname"><a href="structgrpc__channel__stack.html">grpc_channel_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:132</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="structgrpc__channel_html"><div class="ttname"><a href="structgrpc__channel.html">grpc_channel</a></div><div class="ttdef"><b>Definition:</b> channel.c:61</div></div>
+<div class="ttc" id="channel_8h_html_a2e6da9e3b86935fa1ddd6d55bf6b1634"><div class="ttname"><a href="channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634">grpc_channel_internal_ref</a></div><div class="ttdeci">void grpc_channel_internal_ref(grpc_channel *channel)</div><div class="ttdef"><b>Definition:</b> channel.c:211</div></div>
+<div class="ttc" id="subchannel__factory_8h_html"><div class="ttname"><a href="subchannel__factory_8h.html">subchannel_factory.h</a></div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="structgrpc__mdstr_html"><div class="ttname"><a href="structgrpc__mdstr.html">grpc_mdstr</a></div><div class="ttdef"><b>Definition:</b> metadata.h:70</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="channel_8h_html_a0c93bb726613652c5a22d9f4fb6c2101"><div class="ttname"><a href="channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101">grpc_channel_get_reffed_status_elem</a></div><div class="ttdeci">grpc_mdelem * grpc_channel_get_reffed_status_elem(grpc_channel *channel, int status_code)</div><div class="ttdoc">Get a grpc_mdelem of grpc-status: X where X is the numeric value of status_code. </div><div class="ttdef"><b>Definition:</b> channel.c:285</div></div>
+<div class="ttc" id="channel_8h_html_a6b9ee58f86b3e3026767b37bbc3efa80"><div class="ttname"><a href="channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80">grpc_channel_get_metadata_context</a></div><div class="ttdeci">grpc_mdctx * grpc_channel_get_metadata_context(grpc_channel *channel)</div><div class="ttdoc">Get a (borrowed) pointer to the channel wide metadata context. </div><div class="ttdef"><b>Definition:</b> channel.c:272</div></div>
+<div class="ttc" id="channel_8h_html_a1f91159c2a0d259aa7f854ba4204cafd"><div class="ttname"><a href="channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd">grpc_channel_get_max_message_length</a></div><div class="ttdeci">gpr_uint32 grpc_channel_get_max_message_length(grpc_channel *channel)</div><div class="ttdef"><b>Definition:</b> channel.c:301</div></div>
+<div class="ttc" id="channel_8h_html_a12b25d31348401c51adab93c4f461d58"><div class="ttname"><a href="channel_8h.html#a12b25d31348401c51adab93c4f461d58">grpc_channel_create_from_filters</a></div><div class="ttdeci">grpc_channel * grpc_channel_create_from_filters(const char *target, const grpc_channel_filter **filters, size_t count, const grpc_channel_args *args, grpc_mdctx *mdctx, int is_client)</div><div class="ttdef"><b>Definition:</b> channel.c:90</div></div>
+<div class="ttc" id="channel_8h_html_a264b543c86559165c42b1c41cb4c9045"><div class="ttname"><a href="channel_8h.html#a264b543c86559165c42b1c41cb4c9045">grpc_channel_get_channel_stack</a></div><div class="ttdeci">grpc_channel_stack * grpc_channel_get_channel_stack(grpc_channel *channel)</div><div class="ttdoc">Get a (borrowed) pointer to this channels underlying channel stack. </div><div class="ttdef"><b>Definition:</b> channel.c:268</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="channel_8h_html_a2192de2d31a54523311ce241f933e048"><div class="ttname"><a href="channel_8h.html#a2192de2d31a54523311ce241f933e048">grpc_channel_get_status_string</a></div><div class="ttdeci">grpc_mdstr * grpc_channel_get_status_string(grpc_channel *channel)</div><div class="ttdef"><b>Definition:</b> channel.c:276</div></div>
+<div class="ttc" id="channel_8h_html_aee69f0f30f9cdcdd3961b1d253fa29af"><div class="ttname"><a href="channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af">grpc_channel_get_compression_algorithm_string</a></div><div class="ttdeci">grpc_mdstr * grpc_channel_get_compression_algorithm_string(grpc_channel *channel)</div><div class="ttdef"><b>Definition:</b> channel.c:280</div></div>
+<div class="ttc" id="channel_8h_html_a3008e3086b47f6170180c32ef88c83db"><div class="ttname"><a href="channel_8h.html#a3008e3086b47f6170180c32ef88c83db">grpc_channel_get_message_string</a></div><div class="ttdeci">grpc_mdstr * grpc_channel_get_message_string(grpc_channel *channel)</div><div class="ttdef"><b>Definition:</b> channel.c:297</div></div>
+<div class="ttc" id="channel_8h_html_a7fe6e3f3337487d8b584cb8d51bdfa6b"><div class="ttname"><a href="channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">grpc_channel_internal_unref</a></div><div class="ttdeci">void grpc_channel_internal_unref(grpc_channel *channel)</div><div class="ttdef"><b>Definition:</b> channel.c:248</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/channel__args_8c.html b/doc/ref/core.internal/html/channel__args_8c.html
new file mode 100644
index 0000000000..e68ae71dd5
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__args_8c.html
@@ -0,0 +1,294 @@
+<!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: src/core/channel/channel_args.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">channel_args.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ace4130d42d359c697a99d4ed7a7e54c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#ace4130d42d359c697a99d4ed7a7e54c3">grpc_channel_args_copy_and_add</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *src, const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *to_add, size_t num_to_add)</td></tr>
+<tr class="memdesc:ace4130d42d359c697a99d4ed7a7e54c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy some arguments and add the to_add parameter in the end. <a href="#ace4130d42d359c697a99d4ed7a7e54c3">More...</a><br/></td></tr>
+<tr class="separator:ace4130d42d359c697a99d4ed7a7e54c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea7141804d69de11c1470197ad87b45d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#aea7141804d69de11c1470197ad87b45d">grpc_channel_args_copy</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *src)</td></tr>
+<tr class="separator:aea7141804d69de11c1470197ad87b45d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa098be5f086aefff83a52e202d11a39a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#aa098be5f086aefff83a52e202d11a39a">grpc_channel_args_merge</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *b)</td></tr>
+<tr class="memdesc:aa098be5f086aefff83a52e202d11a39a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy args from a then args from b into a new channel args. <a href="#aa098be5f086aefff83a52e202d11a39a">More...</a><br/></td></tr>
+<tr class="separator:aa098be5f086aefff83a52e202d11a39a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7467ddcad8160325b79b8d3a627c42e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#ad7467ddcad8160325b79b8d3a627c42e">grpc_channel_args_destroy</a> (<a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a)</td></tr>
+<tr class="memdesc:ad7467ddcad8160325b79b8d3a627c42e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy arguments created by grpc_channel_args_copy. <a href="#ad7467ddcad8160325b79b8d3a627c42e">More...</a><br/></td></tr>
+<tr class="separator:ad7467ddcad8160325b79b8d3a627c42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a918e3c374d10937b1cf1a7bec45e96c0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#a918e3c374d10937b1cf1a7bec45e96c0">grpc_channel_args_is_census_enabled</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a)</td></tr>
+<tr class="memdesc:a918e3c374d10937b1cf1a7bec45e96c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads census_enabled settings from channel args. <a href="#a918e3c374d10937b1cf1a7bec45e96c0">More...</a><br/></td></tr>
+<tr class="separator:a918e3c374d10937b1cf1a7bec45e96c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6073e21bee62a87f891a10d5bb4a3bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#ab6073e21bee62a87f891a10d5bb4a3bb">grpc_channel_args_get_compression_algorithm</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a)</td></tr>
+<tr class="memdesc:ab6073e21bee62a87f891a10d5bb4a3bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the compression algorithm set in <em>a</em>. <a href="#ab6073e21bee62a87f891a10d5bb4a3bb">More...</a><br/></td></tr>
+<tr class="separator:ab6073e21bee62a87f891a10d5bb4a3bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1666cde2d23a797e95cf09e3c26e7f70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html#a1666cde2d23a797e95cf09e3c26e7f70">grpc_channel_args_set_compression_algorithm</a> (<a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a, <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm)</td></tr>
+<tr class="memdesc:a1666cde2d23a797e95cf09e3c26e7f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a channel arg instance with compression enabled. <a href="#a1666cde2d23a797e95cf09e3c26e7f70">More...</a><br/></td></tr>
+<tr class="separator:a1666cde2d23a797e95cf09e3c26e7f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aea7141804d69de11c1470197ad87b45d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_copy </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>src</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ace4130d42d359c697a99d4ed7a7e54c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_copy_and_add </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td>
+ <td class="paramname"><em>to_add</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_to_add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Copy some arguments and add the to_add parameter in the end. </p>
+<p>If to_add is NULL, it is equivalent to call grpc_channel_args_copy. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad7467ddcad8160325b79b8d3a627c42e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_args_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy arguments created by grpc_channel_args_copy. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab6073e21bee62a87f891a10d5bb4a3bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_channel_args_get_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the compression algorithm set in <em>a</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a918e3c374d10937b1cf1a7bec45e96c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_channel_args_is_census_enabled </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Reads census_enabled settings from channel args. </p>
+<p>Returns 1 if census_enabled is specified in channel args, otherwise returns 0. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa098be5f086aefff83a52e202d11a39a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_merge </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Copy args from a then args from b into a new channel args. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1666cde2d23a797e95cf09e3c26e7f70"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_set_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a channel arg instance with compression enabled. </p>
+<p>If <em>a</em> is non-NULL, its args are copied. N.B. GRPC_COMPRESS_NONE disables compression for the channel. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel__args_8h.html b/doc/ref/core.internal/html/channel__args_8h.html
new file mode 100644
index 0000000000..07cd2603f5
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__args_8h.html
@@ -0,0 +1,293 @@
+<!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: src/core/channel/channel_args.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">channel_args.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+</div>
+<p><a href="channel__args_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aea7141804d69de11c1470197ad87b45d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#aea7141804d69de11c1470197ad87b45d">grpc_channel_args_copy</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *src)</td></tr>
+<tr class="separator:aea7141804d69de11c1470197ad87b45d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace4130d42d359c697a99d4ed7a7e54c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3">grpc_channel_args_copy_and_add</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *src, const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *to_add, size_t num_to_add)</td></tr>
+<tr class="memdesc:ace4130d42d359c697a99d4ed7a7e54c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy some arguments and add the to_add parameter in the end. <a href="#ace4130d42d359c697a99d4ed7a7e54c3">More...</a><br/></td></tr>
+<tr class="separator:ace4130d42d359c697a99d4ed7a7e54c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa098be5f086aefff83a52e202d11a39a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a">grpc_channel_args_merge</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *b)</td></tr>
+<tr class="memdesc:aa098be5f086aefff83a52e202d11a39a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy args from a then args from b into a new channel args. <a href="#aa098be5f086aefff83a52e202d11a39a">More...</a><br/></td></tr>
+<tr class="separator:aa098be5f086aefff83a52e202d11a39a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7467ddcad8160325b79b8d3a627c42e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e">grpc_channel_args_destroy</a> (<a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a)</td></tr>
+<tr class="memdesc:ad7467ddcad8160325b79b8d3a627c42e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy arguments created by grpc_channel_args_copy. <a href="#ad7467ddcad8160325b79b8d3a627c42e">More...</a><br/></td></tr>
+<tr class="separator:ad7467ddcad8160325b79b8d3a627c42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a918e3c374d10937b1cf1a7bec45e96c0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0">grpc_channel_args_is_census_enabled</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a)</td></tr>
+<tr class="memdesc:a918e3c374d10937b1cf1a7bec45e96c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads census_enabled settings from channel args. <a href="#a918e3c374d10937b1cf1a7bec45e96c0">More...</a><br/></td></tr>
+<tr class="separator:a918e3c374d10937b1cf1a7bec45e96c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6073e21bee62a87f891a10d5bb4a3bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb">grpc_channel_args_get_compression_algorithm</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a)</td></tr>
+<tr class="memdesc:ab6073e21bee62a87f891a10d5bb4a3bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the compression algorithm set in <em>a</em>. <a href="#ab6073e21bee62a87f891a10d5bb4a3bb">More...</a><br/></td></tr>
+<tr class="separator:ab6073e21bee62a87f891a10d5bb4a3bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1666cde2d23a797e95cf09e3c26e7f70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70">grpc_channel_args_set_compression_algorithm</a> (<a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *a, <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm)</td></tr>
+<tr class="memdesc:a1666cde2d23a797e95cf09e3c26e7f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a channel arg instance with compression enabled. <a href="#a1666cde2d23a797e95cf09e3c26e7f70">More...</a><br/></td></tr>
+<tr class="separator:a1666cde2d23a797e95cf09e3c26e7f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aea7141804d69de11c1470197ad87b45d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_copy </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>src</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ace4130d42d359c697a99d4ed7a7e54c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_copy_and_add </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td>
+ <td class="paramname"><em>to_add</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_to_add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Copy some arguments and add the to_add parameter in the end. </p>
+<p>If to_add is NULL, it is equivalent to call grpc_channel_args_copy. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad7467ddcad8160325b79b8d3a627c42e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_args_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy arguments created by grpc_channel_args_copy. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab6073e21bee62a87f891a10d5bb4a3bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_channel_args_get_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the compression algorithm set in <em>a</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a918e3c374d10937b1cf1a7bec45e96c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_channel_args_is_census_enabled </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Reads census_enabled settings from channel args. </p>
+<p>Returns 1 if census_enabled is specified in channel args, otherwise returns 0. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa098be5f086aefff83a52e202d11a39a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_merge </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Copy args from a then args from b into a new channel args. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1666cde2d23a797e95cf09e3c26e7f70"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_channel_args_set_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a channel arg instance with compression enabled. </p>
+<p>If <em>a</em> is non-NULL, its args are copied. N.B. GRPC_COMPRESS_NONE disables compression for the channel. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel__args_8h_source.html b/doc/ref/core.internal/html/channel__args_8h_source.html
new file mode 100644
index 0000000000..da5141f519
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__args_8h_source.html
@@ -0,0 +1,171 @@
+<!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: src/core/channel/channel_args.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">channel_args.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="channel__args_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_ARGS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_ARGS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="compression_8h.html">grpc/compression.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* Copy some arguments */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="channel__args_8h.html#aea7141804d69de11c1470197ad87b45d">grpc_channel_args_copy</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *src);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3">grpc_channel_args_copy_and_add</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *src,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__arg.html">grpc_arg</a> *to_add,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">size_t</span> num_to_add);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a">grpc_channel_args_merge</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *a,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *b);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e">grpc_channel_args_destroy</a>(<a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *a);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">int</span> <a class="code" href="channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0">grpc_channel_args_is_census_enabled</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *a);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> <a class="code" href="channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb">grpc_channel_args_get_compression_algorithm</a>(</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *a);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70">grpc_channel_args_set_compression_algorithm</a>(</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *a, <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_ARGS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="channel__args_8h_html_ad7467ddcad8160325b79b8d3a627c42e"><div class="ttname"><a href="channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e">grpc_channel_args_destroy</a></div><div class="ttdeci">void grpc_channel_args_destroy(grpc_channel_args *a)</div><div class="ttdoc">Destroy arguments created by grpc_channel_args_copy. </div><div class="ttdef"><b>Definition:</b> channel_args.c:95</div></div>
+<div class="ttc" id="compression_8h_html"><div class="ttname"><a href="compression_8h.html">compression.h</a></div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm</div><div class="ttdef"><b>Definition:</b> compression.h:45</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="channel__args_8h_html_a1666cde2d23a797e95cf09e3c26e7f70"><div class="ttname"><a href="channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70">grpc_channel_args_set_compression_algorithm</a></div><div class="ttdeci">grpc_channel_args * grpc_channel_args_set_compression_algorithm(grpc_channel_args *a, grpc_compression_algorithm algorithm)</div><div class="ttdoc">Returns a channel arg instance with compression enabled. </div><div class="ttdef"><b>Definition:</b> channel_args.c:141</div></div>
+<div class="ttc" id="structgrpc__arg_html"><div class="ttname"><a href="structgrpc__arg.html">grpc_arg</a></div><div class="ttdoc">A single argument... </div><div class="ttdef"><b>Definition:</b> grpc.h:91</div></div>
+<div class="ttc" id="channel__args_8h_html_ace4130d42d359c697a99d4ed7a7e54c3"><div class="ttname"><a href="channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3">grpc_channel_args_copy_and_add</a></div><div class="ttdeci">grpc_channel_args * grpc_channel_args_copy_and_add(const grpc_channel_args *src, const grpc_arg *to_add, size_t num_to_add)</div><div class="ttdoc">Copy some arguments and add the to_add parameter in the end. </div><div class="ttdef"><b>Definition:</b> channel_args.c:64</div></div>
+<div class="ttc" id="channel__args_8h_html_aea7141804d69de11c1470197ad87b45d"><div class="ttname"><a href="channel__args_8h.html#aea7141804d69de11c1470197ad87b45d">grpc_channel_args_copy</a></div><div class="ttdeci">grpc_channel_args * grpc_channel_args_copy(const grpc_channel_args *src)</div><div class="ttdef"><b>Definition:</b> channel_args.c:86</div></div>
+<div class="ttc" id="channel__args_8h_html_aa098be5f086aefff83a52e202d11a39a"><div class="ttname"><a href="channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a">grpc_channel_args_merge</a></div><div class="ttdeci">grpc_channel_args * grpc_channel_args_merge(const grpc_channel_args *a, const grpc_channel_args *b)</div><div class="ttdoc">Copy args from a then args from b into a new channel args. </div><div class="ttdef"><b>Definition:</b> channel_args.c:90</div></div>
+<div class="ttc" id="channel__args_8h_html_a918e3c374d10937b1cf1a7bec45e96c0"><div class="ttname"><a href="channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0">grpc_channel_args_is_census_enabled</a></div><div class="ttdeci">int grpc_channel_args_is_census_enabled(const grpc_channel_args *a)</div><div class="ttdoc">Reads census_enabled settings from channel args. </div><div class="ttdef"><b>Definition:</b> channel_args.c:116</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="channel__args_8h_html_ab6073e21bee62a87f891a10d5bb4a3bb"><div class="ttname"><a href="channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb">grpc_channel_args_get_compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm grpc_channel_args_get_compression_algorithm(const grpc_channel_args *a)</div><div class="ttdoc">Returns the compression algorithm set in a. </div><div class="ttdef"><b>Definition:</b> channel_args.c:127</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/channel__connectivity_8c.html b/doc/ref/core.internal/html/channel__connectivity_8c.html
new file mode 100644
index 0000000000..d80b0b00eb
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__connectivity_8c.html
@@ -0,0 +1,232 @@
+<!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: src/core/surface/channel_connectivity.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">channel_connectivity.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="client__channel_8h_source.html">src/core/channel/client_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alarm_8h_source.html">src/core/iomgr/alarm.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="completion__queue_8h_source.html">src/core/surface/completion_queue.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html">state_watcher</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a71937a2ee2a4befe88e84d4966f8845c"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c">callback_phase</a> { <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca757971c0bc5a1972d5f1b1be2c0e2087">WAITING</a>,
+<a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845cab5a94c295540046002de0f889519c275">CALLING_BACK</a>,
+<a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca4ed55db80fc1cf98cb8fc633fd59d68d">CALLING_BACK_AND_FINISHED</a>,
+<a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca7cf5434be93040e9946cc788465d3b3a">CALLED_BACK</a>
+ }</td></tr>
+<tr class="separator:a71937a2ee2a4befe88e84d4966f8845c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9623d8e4df1d17eb26b67d905f1d7cb3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__connectivity_8c.html#a9623d8e4df1d17eb26b67d905f1d7cb3">grpc_channel_check_connectivity_state</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, int try_to_connect)</td></tr>
+<tr class="memdesc:a9623d8e4df1d17eb26b67d905f1d7cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check the connectivity state of a channel. <a href="#a9623d8e4df1d17eb26b67d905f1d7cb3">More...</a><br/></td></tr>
+<tr class="separator:a9623d8e4df1d17eb26b67d905f1d7cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29aa98ca6ce9f7e5116e43b0c414e96b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__connectivity_8c.html#a29aa98ca6ce9f7e5116e43b0c414e96b">grpc_channel_watch_connectivity_state</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> last_observed_state, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag)</td></tr>
+<tr class="memdesc:a29aa98ca6ce9f7e5116e43b0c414e96b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Watch for a change in connectivity state. <a href="#a29aa98ca6ce9f7e5116e43b0c414e96b">More...</a><br/></td></tr>
+<tr class="separator:a29aa98ca6ce9f7e5116e43b0c414e96b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a71937a2ee2a4befe88e84d4966f8845c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c">callback_phase</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a71937a2ee2a4befe88e84d4966f8845ca757971c0bc5a1972d5f1b1be2c0e2087"></a>WAITING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a71937a2ee2a4befe88e84d4966f8845cab5a94c295540046002de0f889519c275"></a>CALLING_BACK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a71937a2ee2a4befe88e84d4966f8845ca4ed55db80fc1cf98cb8fc633fd59d68d"></a>CALLING_BACK_AND_FINISHED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a71937a2ee2a4befe88e84d4966f8845ca7cf5434be93040e9946cc788465d3b3a"></a>CALLED_BACK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a9623d8e4df1d17eb26b67d905f1d7cb3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_channel_check_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>try_to_connect</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Check the connectivity state of a channel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a29aa98ca6ce9f7e5116e43b0c414e96b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_watch_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>last_observed_state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Watch for a change in connectivity state. </p>
+<p>Once the channel connectivity state is different from last_observed_state, tag will be enqueued on cq with success=1. If deadline expires BEFORE the state is changed, tag will be enqueued on cq with success=0. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel__create_8c.html b/doc/ref/core.internal/html/channel__create_8c.html
new file mode 100644
index 0000000000..6c0daaa4d7
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__create_8c.html
@@ -0,0 +1,177 @@
+<!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: src/core/surface/channel_create.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">channel_create.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="client__channel_8h_source.html">src/core/channel/client_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="compress__filter_8h_source.html">src/core/channel/compress_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="http__client__filter_8h_source.html">src/core/channel/http_client_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolver__registry_8h_source.html">src/core/client_config/resolver_registry.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="tcp__client_8h_source.html">src/core/iomgr/tcp_client.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html">connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html">subchannel_factory</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a9b1446343e6c9b066f546fcb7b33fba2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2">MAX_FILTERS</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:a9b1446343e6c9b066f546fcb7b33fba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa710e7e68b23098900f924cf69797496"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__create_8c.html#aa710e7e68b23098900f924cf69797496">grpc_insecure_channel_create</a> (const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="memdesc:aa710e7e68b23098900f924cf69797496"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a client channel to 'target'. <a href="#aa710e7e68b23098900f924cf69797496">More...</a><br/></td></tr>
+<tr class="separator:aa710e7e68b23098900f924cf69797496"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a9b1446343e6c9b066f546fcb7b33fba2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_FILTERS&#160;&#160;&#160;3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa710e7e68b23098900f924cf69797496"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_insecure_channel_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a client channel to 'target'. </p>
+<p>Additional channel level configuration MAY be provided by <a class="el" href="structgrpc__channel__args.html" title="An array of arguments that can be passed around. ">grpc_channel_args</a>, though the expectation is that most clients will want to simply pass NULL. See <a class="el" href="structgrpc__channel__args.html" title="An array of arguments that can be passed around. ">grpc_channel_args</a> definition for more on this. The data in 'args' need only live through the invocation of this function. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel__stack_8c.html b/doc/ref/core.internal/html/channel__stack_8c.html
new file mode 100644
index 0000000000..5bc66c5c07
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__stack_8c.html
@@ -0,0 +1,556 @@
+<!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: src/core/channel/channel_stack.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">channel_stack.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab55c837def86039053f144d9fd6151d1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">ROUND_UP_TO_ALIGNMENT_SIZE</a>(x)&#160;&#160;&#160;(((x) + <a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">GPR_MAX_ALIGNMENT</a> - 1) &amp; ~(<a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">GPR_MAX_ALIGNMENT</a> - 1))</td></tr>
+<tr class="separator:ab55c837def86039053f144d9fd6151d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada2431407a0c579217e6b33534dc4b68"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#ada2431407a0c579217e6b33534dc4b68">CHANNEL_ELEMS_FROM_STACK</a>(stk)</td></tr>
+<tr class="separator:ada2431407a0c579217e6b33534dc4b68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a604f63dd1fea052b4285b1437c100610"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a604f63dd1fea052b4285b1437c100610">CALL_ELEMS_FROM_STACK</a>(stk)</td></tr>
+<tr class="separator:a604f63dd1fea052b4285b1437c100610"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7593e5b07a422db70484cfb66264dd1b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a7593e5b07a422db70484cfb66264dd1b">grpc_channel_stack_size</a> (const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t filter_count)</td></tr>
+<tr class="separator:a7593e5b07a422db70484cfb66264dd1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fa445cf1f13f17095e14c0cc8801fb5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a6fa445cf1f13f17095e14c0cc8801fb5">grpc_channel_stack_element</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, size_t index)</td></tr>
+<tr class="separator:a6fa445cf1f13f17095e14c0cc8801fb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a663793c2627677279816d636bf310b50"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a663793c2627677279816d636bf310b50">grpc_channel_stack_last_element</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack)</td></tr>
+<tr class="separator:a663793c2627677279816d636bf310b50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32b8a3c21a1e805669af3569b6c4a333"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333">grpc_call_stack_element</a> (<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *call_stack, size_t index)</td></tr>
+<tr class="separator:a32b8a3c21a1e805669af3569b6c4a333"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dfbcf853676b70efa84cf8777a7b928"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a9dfbcf853676b70efa84cf8777a7b928">grpc_channel_stack_init</a> (const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t filter_count, <a class="el" href="structgrpc__channel.html">grpc_channel</a> *master, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, <a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack)</td></tr>
+<tr class="separator:a9dfbcf853676b70efa84cf8777a7b928"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad06f3ee4d872888e99778e5faa610764"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#ad06f3ee4d872888e99778e5faa610764">grpc_channel_stack_destroy</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack)</td></tr>
+<tr class="separator:ad06f3ee4d872888e99778e5faa610764"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7f3085338ed96593ca7c814cd6d705d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#ac7f3085338ed96593ca7c814cd6d705d">grpc_call_stack_init</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, const void *transport_server_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op, <a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *call_stack)</td></tr>
+<tr class="separator:ac7f3085338ed96593ca7c814cd6d705d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a441c43095f765c200e679230a11c6116"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a441c43095f765c200e679230a11c6116">grpc_call_stack_destroy</a> (<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *stack)</td></tr>
+<tr class="separator:a441c43095f765c200e679230a11c6116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af52cb36e243fc3bfb81ebca882346ce9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#af52cb36e243fc3bfb81ebca882346ce9">grpc_call_next_op</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:af52cb36e243fc3bfb81ebca882346ce9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40c122e470335bb7a6edf1e0a31fc801"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a40c122e470335bb7a6edf1e0a31fc801"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea7eceb60c0e94465c4baea314c0ebd9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:aea7eceb60c0e94465c4baea314c0ebd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fd8b3503ac2f8193509e2ce02ef9406"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406">grpc_channel_stack_from_top_element</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem)</td></tr>
+<tr class="separator:a5fd8b3503ac2f8193509e2ce02ef9406"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90d6131bc8142e1516618bd2e4daf58c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c">grpc_call_stack_from_top_element</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a90d6131bc8142e1516618bd2e4daf58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7127b6c0b4d14c70e23e65875c7b6bc5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a7127b6c0b4d14c70e23e65875c7b6bc5">grpc_call_element_send_cancel</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *cur_elem)</td></tr>
+<tr class="separator:a7127b6c0b4d14c70e23e65875c7b6bc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7ee4da676e51ccc09f1e53fbf4d7e0d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">grpc_trace_channel</a> = 0</td></tr>
+<tr class="separator:a7ee4da676e51ccc09f1e53fbf4d7e0d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a604f63dd1fea052b4285b1437c100610"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CALL_ELEMS_FROM_STACK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">stk</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *)((<span class="keywordtype">char</span> *)(stk) + \</div>
+<div class="line"> <a class="code" href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">ROUND_UP_TO_ALIGNMENT_SIZE</a>(<span class="keyword">sizeof</span>(<a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a>))))</div>
+<div class="ttc" id="channel__stack_8c_html_ab55c837def86039053f144d9fd6151d1"><div class="ttname"><a href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">ROUND_UP_TO_ALIGNMENT_SIZE</a></div><div class="ttdeci">#define ROUND_UP_TO_ALIGNMENT_SIZE(x)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:59</div></div>
+<div class="ttc" id="structgrpc__call__stack_html"><div class="ttname"><a href="structgrpc__call__stack.html">grpc_call_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:141</div></div>
+<div class="ttc" id="structgrpc__call__element_html"><div class="ttname"><a href="structgrpc__call__element.html">grpc_call_element</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:124</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ada2431407a0c579217e6b33534dc4b68"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CHANNEL_ELEMS_FROM_STACK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">stk</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *)((<span class="keywordtype">char</span> *)(stk) + <a class="code" href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">ROUND_UP_TO_ALIGNMENT_SIZE</a>( \</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a>))))</div>
+<div class="ttc" id="structgrpc__channel__stack_html"><div class="ttname"><a href="structgrpc__channel__stack.html">grpc_channel_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:132</div></div>
+<div class="ttc" id="channel__stack_8c_html_ab55c837def86039053f144d9fd6151d1"><div class="ttname"><a href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">ROUND_UP_TO_ALIGNMENT_SIZE</a></div><div class="ttdeci">#define ROUND_UP_TO_ALIGNMENT_SIZE(x)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:59</div></div>
+<div class="ttc" id="structgrpc__channel__element_html"><div class="ttname"><a href="structgrpc__channel__element.html">grpc_channel_element</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:116</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ab55c837def86039053f144d9fd6151d1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ROUND_UP_TO_ALIGNMENT_SIZE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;(((x) + <a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">GPR_MAX_ALIGNMENT</a> - 1) &amp; ~(<a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">GPR_MAX_ALIGNMENT</a> - 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7127b6c0b4d14c70e23e65875c7b6bc5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_element_send_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>cur_elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40c122e470335bb7a6edf1e0a31fc801"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_call_next_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af52cb36e243fc3bfb81ebca882346ce9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_next_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a441c43095f765c200e679230a11c6116"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_stack_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a32b8a3c21a1e805669af3569b6c4a333"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a>* grpc_call_stack_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td>
+ <td class="paramname"><em>call_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>index</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90d6131bc8142e1516618bd2e4daf58c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a>* grpc_call_stack_from_top_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac7f3085338ed96593ca7c814cd6d705d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_stack_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>transport_server_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>initial_op</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td>
+ <td class="paramname"><em>call_stack</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea7eceb60c0e94465c4baea314c0ebd9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_next_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad06f3ee4d872888e99778e5faa610764"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_stack_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6fa445cf1f13f17095e14c0cc8801fb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a>* grpc_channel_stack_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>index</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fd8b3503ac2f8193509e2ce02ef9406"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a>* grpc_channel_stack_from_top_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9dfbcf853676b70efa84cf8777a7b928"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_stack_init </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>filter_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>master</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>metadata_context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a663793c2627677279816d636bf310b50"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a>* grpc_channel_stack_last_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7593e5b07a422db70484cfb66264dd1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_stack_size </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>filter_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7ee4da676e51ccc09f1e53fbf4d7e0d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_trace_channel = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel__stack_8h.html b/doc/ref/core.internal/html/channel__stack_8h.html
new file mode 100644
index 0000000000..044110bb4f
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__stack_8h.html
@@ -0,0 +1,622 @@
+<!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: src/core/channel/channel_stack.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">channel_stack.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div>
+<p><a href="channel__stack_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a933b113b310801b8f916dade1569dbc3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a933b113b310801b8f916dade1569dbc3">GRPC_CALL_LOG_OP</a>(sev, elem, op)&#160;&#160;&#160;if (<a class="el" href="channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">grpc_trace_channel</a>) <a class="el" href="transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee">grpc_call_log_op</a>(sev, elem, op)</td></tr>
+<tr class="separator:a933b113b310801b8f916dade1569dbc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aea7892e6dfe1fbf098a7d6deea46d4ca"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#aea7892e6dfe1fbf098a7d6deea46d4ca">grpc_channel_element</a></td></tr>
+<tr class="separator:aea7892e6dfe1fbf098a7d6deea46d4ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4b0603b98c350dc4bfdcc2ba95d5401"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__call__element.html">grpc_call_element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#ad4b0603b98c350dc4bfdcc2ba95d5401">grpc_call_element</a></td></tr>
+<tr class="separator:ad4b0603b98c350dc4bfdcc2ba95d5401"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a85cb9b511c9a4f222ec27d8459cb7c40"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40">grpc_channel_stack_element</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack, size_t i)</td></tr>
+<tr class="separator:a85cb9b511c9a4f222ec27d8459cb7c40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1245cdffecb56b7eb11d189327dc29b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0">grpc_channel_stack_last_element</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack)</td></tr>
+<tr class="separator:a1245cdffecb56b7eb11d189327dc29b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbba36449dd62d534cadc0de6c25bb17"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17">grpc_call_stack_element</a> (<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *stack, size_t i)</td></tr>
+<tr class="separator:adbba36449dd62d534cadc0de6c25bb17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7593e5b07a422db70484cfb66264dd1b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b">grpc_channel_stack_size</a> (const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t filter_count)</td></tr>
+<tr class="separator:a7593e5b07a422db70484cfb66264dd1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dfbcf853676b70efa84cf8777a7b928"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928">grpc_channel_stack_init</a> (const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t filter_count, <a class="el" href="structgrpc__channel.html">grpc_channel</a> *master, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, <a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack)</td></tr>
+<tr class="separator:a9dfbcf853676b70efa84cf8777a7b928"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad06f3ee4d872888e99778e5faa610764"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764">grpc_channel_stack_destroy</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack)</td></tr>
+<tr class="separator:ad06f3ee4d872888e99778e5faa610764"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7f3085338ed96593ca7c814cd6d705d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d">grpc_call_stack_init</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, const void *transport_server_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op, <a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *call_stack)</td></tr>
+<tr class="separator:ac7f3085338ed96593ca7c814cd6d705d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a441c43095f765c200e679230a11c6116"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a441c43095f765c200e679230a11c6116">grpc_call_stack_destroy</a> (<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *stack)</td></tr>
+<tr class="separator:a441c43095f765c200e679230a11c6116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af52cb36e243fc3bfb81ebca882346ce9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9">grpc_call_next_op</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:af52cb36e243fc3bfb81ebca882346ce9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea7eceb60c0e94465c4baea314c0ebd9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:aea7eceb60c0e94465c4baea314c0ebd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40c122e470335bb7a6edf1e0a31fc801"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a40c122e470335bb7a6edf1e0a31fc801"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fd8b3503ac2f8193509e2ce02ef9406"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406">grpc_channel_stack_from_top_element</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem)</td></tr>
+<tr class="separator:a5fd8b3503ac2f8193509e2ce02ef9406"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90d6131bc8142e1516618bd2e4daf58c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c">grpc_call_stack_from_top_element</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a90d6131bc8142e1516618bd2e4daf58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa821d8d1e991cb36c971c6524d2ea5ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee">grpc_call_log_op</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:aa821d8d1e991cb36c971c6524d2ea5ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7127b6c0b4d14c70e23e65875c7b6bc5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5">grpc_call_element_send_cancel</a> (<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *cur_elem)</td></tr>
+<tr class="separator:a7127b6c0b4d14c70e23e65875c7b6bc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7ee4da676e51ccc09f1e53fbf4d7e0d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">grpc_trace_channel</a></td></tr>
+<tr class="separator:a7ee4da676e51ccc09f1e53fbf4d7e0d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a933b113b310801b8f916dade1569dbc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CALL_LOG_OP</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sev, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">elem, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">op&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;if (<a class="el" href="channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">grpc_trace_channel</a>) <a class="el" href="transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee">grpc_call_log_op</a>(sev, elem, op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ad4b0603b98c350dc4bfdcc2ba95d5401"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__call__element.html">grpc_call_element</a> <a class="el" href="structgrpc__call__element.html">grpc_call_element</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea7892e6dfe1fbf098a7d6deea46d4ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> <a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7127b6c0b4d14c70e23e65875c7b6bc5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_element_send_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>cur_elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa821d8d1e991cb36c971c6524d2ea5ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_log_op </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40c122e470335bb7a6edf1e0a31fc801"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_call_next_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af52cb36e243fc3bfb81ebca882346ce9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_next_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a441c43095f765c200e679230a11c6116"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_stack_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adbba36449dd62d534cadc0de6c25bb17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a>* grpc_call_stack_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90d6131bc8142e1516618bd2e4daf58c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a>* grpc_call_stack_from_top_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac7f3085338ed96593ca7c814cd6d705d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_stack_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>transport_server_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>initial_op</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *&#160;</td>
+ <td class="paramname"><em>call_stack</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea7eceb60c0e94465c4baea314c0ebd9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_next_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad06f3ee4d872888e99778e5faa610764"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_stack_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85cb9b511c9a4f222ec27d8459cb7c40"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a>* grpc_channel_stack_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>i</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fd8b3503ac2f8193509e2ce02ef9406"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a>* grpc_channel_stack_from_top_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9dfbcf853676b70efa84cf8777a7b928"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_stack_init </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>filter_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>master</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>metadata_context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1245cdffecb56b7eb11d189327dc29b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a>* grpc_channel_stack_last_element </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7593e5b07a422db70484cfb66264dd1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_stack_size </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>filter_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7ee4da676e51ccc09f1e53fbf4d7e0d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_trace_channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/channel__stack_8h_source.html b/doc/ref/core.internal/html/channel__stack_8h_source.html
new file mode 100644
index 0000000000..f7a27c52ba
--- /dev/null
+++ b/doc/ref/core.internal/html/channel__stack_8h_source.html
@@ -0,0 +1,339 @@
+<!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: src/core/channel/channel_stack.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">channel_stack.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="channel__stack_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_STACK_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_STACK_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* A channel filter defines how operations on a channel are implemented.</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> Channel filters are chained together to create full channels, and if those</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> chains are linear, then channel stacks provide a mechanism to minimize</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> allocations for that chain.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> Call stacks are created by channel stacks and represent the per-call data</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> for that stack. */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="log_8h.html">grpc/support/log.h</a>&gt;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="trace_8h.html">src/core/debug/trace.h</a>&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport_8h.html">src/core/transport/transport.h</a>&quot;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="channel__stack_8h.html#aea7892e6dfe1fbf098a7d6deea46d4ca"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> <a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="channel__stack_8h.html#ad4b0603b98c350dc4bfdcc2ba95d5401"> 52</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__call__element.html">grpc_call_element</a> <a class="code" href="structgrpc__call__element.html">grpc_call_element</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* Channel filters specify:</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> 1. the amount of memory needed in the channel &amp; call (via the sizeof_XXX</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> members)</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> 2. functions to initialize and destroy channel &amp; call data</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> (init_XXX, destroy_XXX)</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> 3. functions to implement call operations and channel operations (call_op,</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> channel_op)</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> 4. a name, which is useful when debugging</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> Members are laid out in approximate frequency of use order. */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html"> 64</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* Called to eg. send/receive data on a call.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> See grpc_call_next_op on how to call the next element in the stack */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#a089c1e5997b329703ccaaf633722a6c5"> 67</a></span>&#160; void (*start_transport_stream_op)(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">/* Called to handle channel level operations - e.g. new calls, or transport</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> closure.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> See grpc_channel_next_op on how to call the next element in the stack */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#aa3508daf2442c8bc11529d0295798819"> 72</a></span>&#160; void (*start_transport_op)(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">/* sizeof(per call data) */</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc"> 75</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc">sizeof_call_data</a>;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">/* Initialize per call data.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> elem is initialized at the start of the call, and elem-&gt;call_data is what</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> needs initializing.</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> The filter does not need to do any chaining.</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> server_transport_data is an opaque pointer. If it is NULL, this call is</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> on a client; if it is non-NULL, then it points to memory owned by the</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> transport and is on the server. Most filters want to ignore this</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> argument.*/</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#aea34a13bc660ba869d4c18ed6cd21c2b"> 84</a></span>&#160; void (*init_call_elem)(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *server_transport_data,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">/* Destroy per call data.</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> The filter does not need to do any chaining */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#a347e5451860788a084735e66b1684312"> 89</a></span>&#160; void (*destroy_call_elem)(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">/* sizeof(per channel data) */</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4"> 92</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4">sizeof_channel_data</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">/* Initialize per-channel data.</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> elem is initialized at the start of the call, and elem-&gt;channel_data is</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> what needs initializing.</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> is_first, is_last designate this elements position in the stack, and are</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> useful for asserting correct configuration by upper layer code.</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> The filter does not need to do any chaining */</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#a7171b1634e5a7d42880f68ae1a4f875a"> 99</a></span>&#160; void (*init_channel_elem)(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="code" href="structgrpc__channel.html">grpc_channel</a> *master,</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args,</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, <span class="keywordtype">int</span> is_first,</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="comment">/* Destroy per channel data.</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> The filter does not need to do any chaining */</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#a7ab39b0d83fd44c9e3be4b930e6b60e2"> 105</a></span>&#160; void (*destroy_channel_elem)(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">/* Implement grpc_call_get_peer() */</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#a6ddcbc355118eca15b48ee15476d2ace"> 108</a></span>&#160; <span class="keywordtype">char</span> *(*get_peer)(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* The name of this filter */</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6"> 111</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6">name</a>;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;} <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment">/* A channel_element tracks its filter and the filter requested memory within</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> a channel allocation */</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structgrpc__channel__element.html"> 116</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> {</div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3"> 117</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> *<a class="code" href="structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3">filter</a>;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d"> 118</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d">channel_data</a>;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;};</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment">/* A call_element tracks its filter, the filter requested memory within</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> a channel allocation, and the filter requested memory within a call</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> allocation */</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structgrpc__call__element.html"> 124</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__call__element.html">grpc_call_element</a> {</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8"> 125</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> *<a class="code" href="structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8">filter</a>;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b"> 126</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b">channel_data</a>;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04"> 127</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04">call_data</a>;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;};</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment">/* A channel stack tracks a set of related filters for one channel, and</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> guarantees they live within a single malloc() allocation */</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="structgrpc__channel__stack.html"> 132</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67"> 133</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67">count</a>;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="comment">/* Memory required for a call stack (computed at channel stack</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> initialization) */</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2"> 136</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2">call_stack_size</a>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;} <a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a>;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment">/* A call stack tracks a set of related filters for one call, and guarantees</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> they live within a single malloc() allocation */</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a"> 141</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{ <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a">count</a>; } <a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a>;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">/* Get a channel element given a channel stack and its index */</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *<a class="code" href="channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40">grpc_channel_stack_element</a>(<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack,</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordtype">size_t</span> i);</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment">/* Get the last channel element in a channel stack */</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *<a class="code" href="channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0">grpc_channel_stack_last_element</a>(</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack);</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment">/* Get a call stack element given a call stack and an index */</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *<a class="code" href="channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17">grpc_call_stack_element</a>(<a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a> *stack, <span class="keywordtype">size_t</span> i);</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment">/* Determine memory required for a channel stack containing a set of filters */</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b">grpc_channel_stack_size</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters,</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordtype">size_t</span> filter_count);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment">/* Initialize a channel stack given some filters */</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928">grpc_channel_stack_init</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters,</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">size_t</span> filter_count, <a class="code" href="structgrpc__channel.html">grpc_channel</a> *master,</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args,</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context,</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack);</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment">/* Destroy a channel stack */</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764">grpc_channel_stack_destroy</a>(<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *stack);</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment">/* Initialize a call stack given a channel stack. transport_server_data is</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> expected to be NULL on a client, or an opaque transport owned pointer on the</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> server. */</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d">grpc_call_stack_init</a>(<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack,</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *transport_server_data,</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op,</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a> *call_stack);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment">/* Destroy a call stack */</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#a441c43095f765c200e679230a11c6116">grpc_call_stack_destroy</a>(<a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a> *stack);</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment">/* Call the next operation in a call stack */</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9">grpc_call_next_op</a>(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment">/* Call the next operation (depending on call directionality) in a channel</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> stack */</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment">/* Pass through a request to get_peer to the next child element */</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem);</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment">/* Given the top element of a channel stack, get the channel stack itself */</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *<a class="code" href="channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406">grpc_channel_stack_from_top_element</a>(</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem);</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment">/* Given the top element of a call stack, get the call stack itself */</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<a class="code" href="structgrpc__call__stack.html">grpc_call_stack</a> *<a class="code" href="channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c">grpc_call_stack_from_top_element</a>(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem);</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee">grpc_call_log_op</a>(<span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line, <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity,</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="keywordtype">void</span> <a class="code" href="channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5">grpc_call_element_send_cancel</a>(<a class="code" href="structgrpc__call__element.html">grpc_call_element</a> *cur_elem);</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">grpc_trace_channel</a>;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="channel__stack_8h.html#a933b113b310801b8f916dade1569dbc3"> 195</a></span>&#160;<span class="preprocessor">#define GRPC_CALL_LOG_OP(sev, elem, op) \</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="preprocessor"> if (grpc_trace_channel) grpc_call_log_op(sev, elem, op)</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_CHANNEL_STACK_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="structgrpc__call__stack_html_a145db8509ca1a7e0da0d80e60ad0072a"><div class="ttname"><a href="structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a">grpc_call_stack::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> channel_stack.h:141</div></div>
+<div class="ttc" id="structgrpc__channel__stack_html"><div class="ttname"><a href="structgrpc__channel__stack.html">grpc_channel_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:132</div></div>
+<div class="ttc" id="trace_8h_html"><div class="ttname"><a href="trace_8h.html">trace.h</a></div></div>
+<div class="ttc" id="channel__stack_8h_html_ac7f3085338ed96593ca7c814cd6d705d"><div class="ttname"><a href="channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d">grpc_call_stack_init</a></div><div class="ttdeci">void grpc_call_stack_init(grpc_channel_stack *channel_stack, const void *transport_server_data, grpc_transport_stream_op *initial_op, grpc_call_stack *call_stack)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:151</div></div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="channel__stack_8h_html_a7ee4da676e51ccc09f1e53fbf4d7e0d4"><div class="ttname"><a href="channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">grpc_trace_channel</a></div><div class="ttdeci">int grpc_trace_channel</div><div class="ttdef"><b>Definition:</b> channel_stack.c:40</div></div>
+<div class="ttc" id="transport_8h_html"><div class="ttname"><a href="transport_8h.html">transport.h</a></div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="structgrpc__channel_html"><div class="ttname"><a href="structgrpc__channel.html">grpc_channel</a></div><div class="ttdef"><b>Definition:</b> channel.c:61</div></div>
+<div class="ttc" id="structgrpc__channel__filter_html_ac63b36f8c895f18f68ee1d8a862f18a4"><div class="ttname"><a href="structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4">grpc_channel_filter::sizeof_channel_data</a></div><div class="ttdeci">size_t sizeof_channel_data</div><div class="ttdef"><b>Definition:</b> channel_stack.h:92</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html"><div class="ttname"><a href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a></div><div class="ttdef"><b>Definition:</b> transport.h:66</div></div>
+<div class="ttc" id="channel__stack_8h_html_af52cb36e243fc3bfb81ebca882346ce9"><div class="ttname"><a href="channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9">grpc_call_next_op</a></div><div class="ttdeci">void grpc_call_next_op(grpc_call_element *elem, grpc_transport_stream_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:189</div></div>
+<div class="ttc" id="structgrpc__channel__stack_html_ad15f03f108b390c70244d9d862011f67"><div class="ttname"><a href="structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67">grpc_channel_stack::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> channel_stack.h:133</div></div>
+<div class="ttc" id="channel__stack_8h_html_a9dfbcf853676b70efa84cf8777a7b928"><div class="ttname"><a href="channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928">grpc_channel_stack_init</a></div><div class="ttdeci">void grpc_channel_stack_init(const grpc_channel_filter **filters, size_t filter_count, grpc_channel *master, const grpc_channel_args *args, grpc_mdctx *metadata_context, grpc_channel_stack *stack)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:104</div></div>
+<div class="ttc" id="channel__stack_8h_html_a5fd8b3503ac2f8193509e2ce02ef9406"><div class="ttname"><a href="channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406">grpc_channel_stack_from_top_element</a></div><div class="ttdeci">grpc_channel_stack * grpc_channel_stack_from_top_element(grpc_channel_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:204</div></div>
+<div class="ttc" id="structgrpc__channel__filter_html_afcdf09a04565aee37bf4ddf4b7ed69cc"><div class="ttname"><a href="structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc">grpc_channel_filter::sizeof_call_data</a></div><div class="ttdeci">size_t sizeof_call_data</div><div class="ttdef"><b>Definition:</b> channel_stack.h:75</div></div>
+<div class="ttc" id="channel__stack_8h_html_a7127b6c0b4d14c70e23e65875c7b6bc5"><div class="ttname"><a href="channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5">grpc_call_element_send_cancel</a></div><div class="ttdeci">void grpc_call_element_send_cancel(grpc_call_element *cur_elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:215</div></div>
+<div class="ttc" id="structgrpc__channel__element_html_af498fd50d8b3667b3e20395e341a858d"><div class="ttname"><a href="structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d">grpc_channel_element::channel_data</a></div><div class="ttdeci">void * channel_data</div><div class="ttdef"><b>Definition:</b> channel_stack.h:118</div></div>
+<div class="ttc" id="structgrpc__channel__element_html_a3f80663d58f2e206836e18fa7ce5aec3"><div class="ttname"><a href="structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3">grpc_channel_element::filter</a></div><div class="ttdeci">const grpc_channel_filter * filter</div><div class="ttdef"><b>Definition:</b> channel_stack.h:117</div></div>
+<div class="ttc" id="log_8h_html_af10334b4085ac6985a2af9c08478ad48"><div class="ttname"><a href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a></div><div class="ttdeci">gpr_log_severity</div><div class="ttdef"><b>Definition:</b> log.h:56</div></div>
+<div class="ttc" id="channel__stack_8h_html_ad06f3ee4d872888e99778e5faa610764"><div class="ttname"><a href="channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764">grpc_channel_stack_destroy</a></div><div class="ttdeci">void grpc_channel_stack_destroy(grpc_channel_stack *stack)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:140</div></div>
+<div class="ttc" id="channel__stack_8h_html_a90d6131bc8142e1516618bd2e4daf58c"><div class="ttname"><a href="channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c">grpc_call_stack_from_top_element</a></div><div class="ttdeci">grpc_call_stack * grpc_call_stack_from_top_element(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:210</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__call__element_html_aac551ff2d3e8df1b3d39495eb7f160a8"><div class="ttname"><a href="structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8">grpc_call_element::filter</a></div><div class="ttdeci">const grpc_channel_filter * filter</div><div class="ttdef"><b>Definition:</b> channel_stack.h:125</div></div>
+<div class="ttc" id="channel__stack_8h_html_a7593e5b07a422db70484cfb66264dd1b"><div class="ttname"><a href="channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b">grpc_channel_stack_size</a></div><div class="ttdeci">size_t grpc_channel_stack_size(const grpc_channel_filter **filters, size_t filter_count)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:62</div></div>
+<div class="ttc" id="channel__stack_8h_html_a441c43095f765c200e679230a11c6116"><div class="ttname"><a href="channel__stack_8h.html#a441c43095f765c200e679230a11c6116">grpc_call_stack_destroy</a></div><div class="ttdeci">void grpc_call_stack_destroy(grpc_call_stack *stack)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:178</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+<div class="ttc" id="channel__stack_8h_html_aa821d8d1e991cb36c971c6524d2ea5ee"><div class="ttname"><a href="channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee">grpc_call_log_op</a></div><div class="ttdeci">void grpc_call_log_op(char *file, int line, gpr_log_severity severity, grpc_call_element *elem, grpc_transport_stream_op *op)</div><div class="ttdef"><b>Definition:</b> transport_op_string.c:161</div></div>
+<div class="ttc" id="structgrpc__call__element_html_a30f78246a0caa0615e4b48d3091b8c04"><div class="ttname"><a href="structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04">grpc_call_element::call_data</a></div><div class="ttdeci">void * call_data</div><div class="ttdef"><b>Definition:</b> channel_stack.h:127</div></div>
+<div class="ttc" id="structgrpc__call__stack_html"><div class="ttname"><a href="structgrpc__call__stack.html">grpc_call_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:141</div></div>
+<div class="ttc" id="structgrpc__channel__element_html"><div class="ttname"><a href="structgrpc__channel__element.html">grpc_channel_element</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:116</div></div>
+<div class="ttc" id="channel__stack_8h_html_a1245cdffecb56b7eb11d189327dc29b0"><div class="ttname"><a href="channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0">grpc_channel_stack_last_element</a></div><div class="ttdeci">grpc_channel_element * grpc_channel_stack_last_element(grpc_channel_stack *stack)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:94</div></div>
+<div class="ttc" id="structgrpc__call__element_html"><div class="ttname"><a href="structgrpc__call__element.html">grpc_call_element</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:124</div></div>
+<div class="ttc" id="channel__stack_8h_html_adbba36449dd62d534cadc0de6c25bb17"><div class="ttname"><a href="channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17">grpc_call_stack_element</a></div><div class="ttdeci">grpc_call_element * grpc_call_stack_element(grpc_call_stack *stack, size_t i)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:99</div></div>
+<div class="ttc" id="structgrpc__channel__stack_html_a1fc6184d7523f318b00ed1d5dd2562c2"><div class="ttname"><a href="structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2">grpc_channel_stack::call_stack_size</a></div><div class="ttdeci">size_t call_stack_size</div><div class="ttdef"><b>Definition:</b> channel_stack.h:136</div></div>
+<div class="ttc" id="log_8h_html"><div class="ttname"><a href="log_8h.html">log.h</a></div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="structgrpc__channel__filter_html_afbf60f6f8b73c26026f266f4fc32fda6"><div class="ttname"><a href="structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6">grpc_channel_filter::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> channel_stack.h:111</div></div>
+<div class="ttc" id="structgrpc__call__element_html_ad74abaaf7860b7dd8f2fef1e2141a27b"><div class="ttname"><a href="structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b">grpc_call_element::channel_data</a></div><div class="ttdeci">void * channel_data</div><div class="ttdef"><b>Definition:</b> channel_stack.h:126</div></div>
+<div class="ttc" id="channel__stack_8h_html_a85cb9b511c9a4f222ec27d8459cb7c40"><div class="ttname"><a href="channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40">grpc_channel_stack_element</a></div><div class="ttdeci">grpc_channel_element * grpc_channel_stack_element(grpc_channel_stack *stack, size_t i)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:89</div></div>
+<div class="ttc" id="structgrpc__transport__op_html"><div class="ttname"><a href="structgrpc__transport__op.html">grpc_transport_op</a></div><div class="ttdoc">Transport op: a set of operations to perform on a transport as a whole. </div><div class="ttdef"><b>Definition:</b> transport.h:90</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/chttp2__transport_8c.html b/doc/ref/core.internal/html/chttp2__transport_8c.html
new file mode 100644
index 0000000000..28354705ad
--- /dev/null
+++ b/doc/ref/core.internal/html/chttp2__transport_8c.html
@@ -0,0 +1,651 @@
+<!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: src/core/transport/chttp2_transport.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">chttp2_transport.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+<code>#include &lt;math.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="timers_8h_source.html">src/core/profiling/timers.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="http2__errors_8h_source.html">src/core/transport/chttp2/http2_errors.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="status__conversion_8h_source.html">src/core/transport/chttp2/status_conversion.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="timeout__encoding_8h_source.html">src/core/transport/chttp2/timeout_encoding.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport__impl_8h_source.html">src/core/transport/transport_impl.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:af9edf0dca12d746c6cf6c6852f4398ae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#af9edf0dca12d746c6cf6c6852f4398ae">DEFAULT_WINDOW</a>&#160;&#160;&#160;65535</td></tr>
+<tr class="separator:af9edf0dca12d746c6cf6c6852f4398ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a609f239b676101bc4e1358eeac253916"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a609f239b676101bc4e1358eeac253916">DEFAULT_CONNECTION_WINDOW_TARGET</a>&#160;&#160;&#160;(1024 * 1024)</td></tr>
+<tr class="separator:a609f239b676101bc4e1358eeac253916"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33445af5cbee6560efd1a891e4c01067"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a33445af5cbee6560efd1a891e4c01067">MAX_WINDOW</a>&#160;&#160;&#160;0x7fffffffu</td></tr>
+<tr class="separator:a33445af5cbee6560efd1a891e4c01067"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afdde497df8d499ae838ff389ab262ab5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#afdde497df8d499ae838ff389ab262ab5">MAX_CLIENT_STREAM_ID</a>&#160;&#160;&#160;0x7fffffffu</td></tr>
+<tr class="separator:afdde497df8d499ae838ff389ab262ab5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cbfd8ced9e04ddc423b7b87abb271ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba">TRANSPORT_FROM_WRITING</a>(tw)</td></tr>
+<tr class="separator:a0cbfd8ced9e04ddc423b7b87abb271ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a720ba3d4f39bd3a50eef94f3af02df26"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a720ba3d4f39bd3a50eef94f3af02df26">TRANSPORT_FROM_PARSING</a>(tw)</td></tr>
+<tr class="separator:a720ba3d4f39bd3a50eef94f3af02df26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a029ef12f8edec2cce810fc244777f39e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a029ef12f8edec2cce810fc244777f39e">TRANSPORT_FROM_GLOBAL</a>(tg)</td></tr>
+<tr class="separator:a029ef12f8edec2cce810fc244777f39e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad226604f0f25167ab63b83fb504925ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#ad226604f0f25167ab63b83fb504925ed">STREAM_FROM_GLOBAL</a>(sg)&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sg)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, global)))</td></tr>
+<tr class="separator:ad226604f0f25167ab63b83fb504925ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14b095839f9792316e7aea2ab7a68bdc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a14b095839f9792316e7aea2ab7a68bdc">REF_TRANSPORT</a>(t, r)&#160;&#160;&#160;ref_transport(t)</td></tr>
+<tr class="separator:a14b095839f9792316e7aea2ab7a68bdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a872dae5a8d3799232cbae46e1ed133"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a2a872dae5a8d3799232cbae46e1ed133">UNREF_TRANSPORT</a>(t, r)&#160;&#160;&#160;unref_transport(t)</td></tr>
+<tr class="separator:a2a872dae5a8d3799232cbae46e1ed133"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae19b5968ebea2a077650652f1a3af46d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#ae19b5968ebea2a077650652f1a3af46d">grpc_chttp2_parsing_lookup_stream</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id)</td></tr>
+<tr class="separator:ae19b5968ebea2a077650652f1a3af46d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25a39d1d95e7140c1ae8f765ffd92847"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a25a39d1d95e7140c1ae8f765ffd92847">grpc_chttp2_parsing_accept_stream</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id)</td></tr>
+<tr class="separator:a25a39d1d95e7140c1ae8f765ffd92847"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83baade3ee315270b6d34fc6fbecb30c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a83baade3ee315270b6d34fc6fbecb30c">grpc_chttp2_terminate_writing</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, int success)</td></tr>
+<tr class="separator:a83baade3ee315270b6d34fc6fbecb30c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb6a160980622d4e5d1b8e9e608c6771"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#aeb6a160980622d4e5d1b8e9e608c6771">grpc_chttp2_add_incoming_goaway</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> goaway_error, <a class="el" href="structgpr__slice.html">gpr_slice</a> goaway_text)</td></tr>
+<tr class="separator:aeb6a160980622d4e5d1b8e9e608c6771"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f8b16bb6048f85107966a4be9ff4a4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a6f8b16bb6048f85107966a4be9ff4a4d">grpc_chttp2_schedule_closure</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure, int success)</td></tr>
+<tr class="memdesc:a6f8b16bb6048f85107966a4be9ff4a4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">schedule a closure to run without the transport lock taken <a href="#a6f8b16bb6048f85107966a4be9ff4a4d">More...</a><br/></td></tr>
+<tr class="separator:a6f8b16bb6048f85107966a4be9ff4a4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac054ecf6e743093e5527787063f3acaa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#ac054ecf6e743093e5527787063f3acaa">grpc_chttp2_flowctl_trace</a> (const char *file, int line, const char *reason, const char *context, const char *var, int is_client, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id, <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> current_value, <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> delta)</td></tr>
+<tr class="separator:ac054ecf6e743093e5527787063f3acaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03cebc42bd75ab90ce0f9d3c8bc526a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a03cebc42bd75ab90ce0f9d3c8bc526a8">grpc_create_chttp2_transport</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *channel_args, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx, int is_client)</td></tr>
+<tr class="separator:a03cebc42bd75ab90ce0f9d3c8bc526a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73a9f03068253da126388dd890f1ee7d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a73a9f03068253da126388dd890f1ee7d">grpc_chttp2_transport_start_reading</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices)</td></tr>
+<tr class="separator:a73a9f03068253da126388dd890f1ee7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6bb76c8188f883af2fb738233abdeea0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a> = 0</td></tr>
+<tr class="separator:a6bb76c8188f883af2fb738233abdeea0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd0f83d780e8ddeac885163c45aab0a8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a> = 0</td></tr>
+<tr class="separator:afd0f83d780e8ddeac885163c45aab0a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a609f239b676101bc4e1358eeac253916"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define DEFAULT_CONNECTION_WINDOW_TARGET&#160;&#160;&#160;(1024 * 1024)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af9edf0dca12d746c6cf6c6852f4398ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define DEFAULT_WINDOW&#160;&#160;&#160;65535</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afdde497df8d499ae838ff389ab262ab5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_CLIENT_STREAM_ID&#160;&#160;&#160;0x7fffffffu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a33445af5cbee6560efd1a891e4c01067"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_WINDOW&#160;&#160;&#160;0x7fffffffu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14b095839f9792316e7aea2ab7a68bdc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define REF_TRANSPORT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">t, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;ref_transport(t)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad226604f0f25167ab63b83fb504925ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STREAM_FROM_GLOBAL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sg</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sg)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, global)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a029ef12f8edec2cce810fc244777f39e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_FROM_GLOBAL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tg</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *)((<span class="keywordtype">char</span> *)(tg)-offsetof(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>, \</div>
+<div class="line"> global)))</div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a720ba3d4f39bd3a50eef94f3af02df26"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_FROM_PARSING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tw</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *)((<span class="keywordtype">char</span> *)(tw)-offsetof(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>, \</div>
+<div class="line"> parsing)))</div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a0cbfd8ced9e04ddc423b7b87abb271ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_FROM_WRITING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tw</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *)((<span class="keywordtype">char</span> *)(tw)-offsetof(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>, \</div>
+<div class="line"> writing)))</div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a2a872dae5a8d3799232cbae46e1ed133"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define UNREF_TRANSPORT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">t, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;unref_transport(t)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aeb6a160980622d4e5d1b8e9e608c6771"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_add_incoming_goaway </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>goaway_error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>goaway_text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac054ecf6e743093e5527787063f3acaa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_flowctl_trace </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>var</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>&#160;</td>
+ <td class="paramname"><em>current_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>&#160;</td>
+ <td class="paramname"><em>delta</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a25a39d1d95e7140c1ae8f765ffd92847"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>* grpc_chttp2_parsing_accept_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae19b5968ebea2a077650652f1a3af46d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>* grpc_chttp2_parsing_lookup_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f8b16bb6048f85107966a4be9ff4a4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_schedule_closure </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>schedule a closure to run without the transport lock taken </p>
+
+</div>
+</div>
+<a class="anchor" id="a83baade3ee315270b6d34fc6fbecb30c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_terminate_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a73a9f03068253da126388dd890f1ee7d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_transport_start_reading </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a03cebc42bd75ab90ce0f9d3c8bc526a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport.html">grpc_transport</a>* grpc_create_chttp2_transport </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>channel_args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="afd0f83d780e8ddeac885163c45aab0a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_flowctl_trace = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6bb76c8188f883af2fb738233abdeea0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_http_trace = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/chttp2__transport_8h.html b/doc/ref/core.internal/html/chttp2__transport_8h.html
new file mode 100644
index 0000000000..d59452e085
--- /dev/null
+++ b/doc/ref/core.internal/html/chttp2__transport_8h.html
@@ -0,0 +1,217 @@
+<!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: src/core/transport/chttp2_transport.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">chttp2_transport.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div>
+<p><a href="chttp2__transport_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a73982c96ccbaedc415c044d9d9b7bd01"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01">grpc_create_chttp2_transport</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *channel_args, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, int is_client)</td></tr>
+<tr class="separator:a73982c96ccbaedc415c044d9d9b7bd01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73a9f03068253da126388dd890f1ee7d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d">grpc_chttp2_transport_start_reading</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices)</td></tr>
+<tr class="separator:a73a9f03068253da126388dd890f1ee7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6bb76c8188f883af2fb738233abdeea0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a></td></tr>
+<tr class="separator:a6bb76c8188f883af2fb738233abdeea0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd0f83d780e8ddeac885163c45aab0a8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a></td></tr>
+<tr class="separator:afd0f83d780e8ddeac885163c45aab0a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a73a9f03068253da126388dd890f1ee7d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_transport_start_reading </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a73982c96ccbaedc415c044d9d9b7bd01"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport.html">grpc_transport</a>* grpc_create_chttp2_transport </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>channel_args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>metadata_context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="afd0f83d780e8ddeac885163c45aab0a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_flowctl_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6bb76c8188f883af2fb738233abdeea0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_http_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/chttp2__transport_8h_source.html b/doc/ref/core.internal/html/chttp2__transport_8h_source.html
new file mode 100644
index 0000000000..604c67eb94
--- /dev/null
+++ b/doc/ref/core.internal/html/chttp2__transport_8h_source.html
@@ -0,0 +1,160 @@
+<!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: src/core/transport/chttp2_transport.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">chttp2_transport.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="chttp2__transport_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_TRANSPORT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_TRANSPORT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport_8h.html">src/core/transport/transport.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<a class="code" href="chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01">grpc_create_chttp2_transport</a>(</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *channel_args, <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, <span class="keywordtype">int</span> is_client);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d">grpc_chttp2_transport_start_reading</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *slices, <span class="keywordtype">size_t</span> nslices);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_TRANSPORT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="transport_8h_html"><div class="ttname"><a href="transport_8h.html">transport.h</a></div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="chttp2__transport_8h_html_afd0f83d780e8ddeac885163c45aab0a8"><div class="ttname"><a href="chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a></div><div class="ttdeci">int grpc_flowctl_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:61</div></div>
+<div class="ttc" id="chttp2__transport_8h_html_a6bb76c8188f883af2fb738233abdeea0"><div class="ttname"><a href="chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a></div><div class="ttdeci">int grpc_http_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:60</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="chttp2__transport_8h_html_a73982c96ccbaedc415c044d9d9b7bd01"><div class="ttname"><a href="chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01">grpc_create_chttp2_transport</a></div><div class="ttdeci">grpc_transport * grpc_create_chttp2_transport(const grpc_channel_args *channel_args, grpc_endpoint *ep, grpc_mdctx *metadata_context, int is_client)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:1112</div></div>
+<div class="ttc" id="chttp2__transport_8h_html_a73a9f03068253da126388dd890f1ee7d"><div class="ttname"><a href="chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d">grpc_chttp2_transport_start_reading</a></div><div class="ttdeci">void grpc_chttp2_transport_start_reading(grpc_transport *transport, gpr_slice *slices, size_t nslices)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:1120</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/classes.html b/doc/ref/core.internal/html/classes.html
new file mode 100644
index 0000000000..b23822490f
--- /dev/null
+++ b/doc/ref/core.internal/html/classes.html
@@ -0,0 +1,177 @@
+<!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: Data Structure Index</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 class="current"><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>
+</div><!-- top -->
+<!-- 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 class="header">
+ <div class="headertitle">
+<div class="title">Data Structure Index</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_J">J</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
+<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td rowspan="2" valign="bottom"><a name="letter_a"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;a&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__connector.html">grpc_connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_m"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;m&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structarg.html">arg</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structmalloc__refcount.html">malloc_refcount</a>&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_b"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;b&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structmerge__args__factory.html">merge_args_factory</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__secure__transport__setup.html">grpc_secure_transport_setup</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_n"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;n&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structb64__huff__sym.html">b64_huff_sym</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__bbq__array.html">grpc_bbq_array</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__credentials__md.html">grpc_credentials_md</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_c"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;c&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structnew__slice__refcount.html">new_slice_refcount</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structnew__with__len__slice__refcount.html">new_with_len_slice_refcount</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structcall__data.html">call_data</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_p"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;p&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structcall__link.html">call_link</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__byte__buffer__reader.html">grpc_byte_buffer_reader</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structcensus__context.html">census_context</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__server__secure__state.html">grpc_server_secure_state</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structpending__pick.html">pending_pick</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structcensus__stat.html">census_stat</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__call__context__element.html">grpc_call_context_element</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__server__security__context.html">grpc_server_security_context</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structpick__first__lb__policy.html">pick_first_lb_policy</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structchannel__broadcaster.html">channel_broadcaster</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__event.html">grpc_event</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__service__account__credentials.html">grpc_service_account_credentials</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_r"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;r&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structchannel__data.html">channel_data</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__fake__channel__security__connector.html">grpc_fake_channel_security_connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html">grpc_service_account_jwt_access_credentials</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structchannel__registered__method.html">channel_registered_method</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__fake__oauth2__credentials.html">grpc_fake_oauth2_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__channel__security__connector.html">grpc_ssl_channel_security_connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structreceived__status.html">received_status</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structcompleted__request.html">completed_request</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__fd.html">grpc_fd</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structregistered__call.html">registered_call</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structcompute__engine__detector.html">compute_engine_detector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__credentials.html">grpc_ssl_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structregistered__method.html">registered_method</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structconnected__channel__call__data.html">connected_channel_call_data</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structregistered__resolver.html">registered_resolver</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structconnected__channel__channel__data.html">connected_channel_channel_data</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structreqinfo__master.html">reqinfo_master</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structconnection.html">connection</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__server__credentials.html">grpc_ssl_server_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrequest__killer.html">request_killer</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structconnector.html">connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ssl__server__security__connector.html">grpc_ssl_server_security_connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrequest__matcher.html">request_matcher</a>&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_d"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;d&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structrequested__call.html">requested_call</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html">grpc_httpcli_ssl_channel_security_connector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structdns__resolver.html">dns_resolver</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__iam__credentials.html">grpc_iam_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structdump__out.html">dump_out</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structsecure__endpoint.html">secure_endpoint</a>&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_e"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;e&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structshard__type.html">shard_type</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__ioreq.html">grpc_ioreq</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structshutdown__cleanup__args.html">shutdown_cleanup_args</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structemail__key__mapping.html">email_key_mapping</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structshutdown__tag.html">shutdown_tag</a>&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_f"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;f&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structsockaddr__resolver.html">sockaddr_resolver</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structstate__watcher.html">state_watcher</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structfinished__loose__op__allocated__args.html">finished_loose_op_allocated_args</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structsubchannel__factory.html">subchannel_factory</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structframer__state.html">framer_state</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_t"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;t&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_g"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;g&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__uri.html">grpc_uri</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtracer.html">tracer</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__fake__frame__protector.html">tsi_fake_frame_protector</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__event.html">gpr_event</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__fake__handshaker.html">tsi_fake_handshaker</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__gcc__thread__local.html">gpr_gcc_thread_local</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_h"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;h&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__histogram.html">gpr_histogram</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__log__func__args.html">gpr_log_func_args</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structhuff__out.html">huff_out</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__msvc__thread__local.html">gpr_msvc_thread_local</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_i"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;i&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__peer.html">tsi_peer</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structinternal__metadata.html">internal_metadata</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__metadata.html">grpc_metadata</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structinternal__request.html">internal_request</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__ssl__client__handshaker__factory.html">tsi_ssl_client_handshaker_factory</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structinternal__string.html">internal_string</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__ssl__frame__protector.html">tsi_ssl_frame_protector</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_j"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;j&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structtsi__ssl__handshaker.html">tsi_ssl_handshaker</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__op.html">grpc_op</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structjose__header.html">jose_header</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structtsi__ssl__server__handshaker__factory.html">tsi_ssl_server_handshaker_factory</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__client__security__context.html">grpc_client_security_context</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structjson__reader__userdata.html">json_reader_userdata</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_v"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;v&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__strvec.html">gpr_strvec</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structjson__writer__userdata.html">json_writer_userdata</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__composite__credentials.html">grpc_composite_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_l"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;l&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="structverifier__cb__ctx.html">verifier_cb_ctx</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__composite__credentials__metadata__context.html">grpc_composite_credentials_metadata_context</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_w"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;w&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__access__token__credentials.html">grpc_access_token_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__precise__clock.html">grpc_precise_clock</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structlb__policy__connectivity__watcher.html">lb_policy_connectivity_watcher</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__refresh__token__credentials.html">grpc_refresh_token_credentials</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structlistener.html">listener</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structwaiting__call.html">waiting_call</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__resolved__address.html">grpc_resolved_address</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="unionlockfree__node.html">lockfree_node</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a>&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="structgrpc__arg.html">grpc_arg</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structlockfree__node__contents.html">lockfree_node_contents</a>&#160;&#160;&#160;</td><td></td></tr>
+<tr><td></td><td></td><td></td><td></td><td></td></tr>
+</table>
+<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_J">J</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
+</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>
diff --git a/doc/ref/core.internal/html/client__auth__filter_8c.html b/doc/ref/core.internal/html/client__auth__filter_8c.html
new file mode 100644
index 0000000000..c429122b10
--- /dev/null
+++ b/doc/ref/core.internal/html/client__auth__filter_8c.html
@@ -0,0 +1,167 @@
+<!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: src/core/security/client_auth_filter.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">client_auth_filter.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="auth__filters_8h_source.html">src/core/security/auth_filters.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__context_8h_source.html">src/core/security/security_context.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a0e5b323dfbc6ab0f070bf6c5a2a9be55"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__auth__filter_8c.html#a0e5b323dfbc6ab0f070bf6c5a2a9be55">MAX_CREDENTIALS_METADATA_COUNT</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:a0e5b323dfbc6ab0f070bf6c5a2a9be55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:ab5f3c640585f742a46197f407218c194"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__auth__filter_8c.html#ab5f3c640585f742a46197f407218c194">grpc_client_auth_filter</a></td></tr>
+<tr class="separator:ab5f3c640585f742a46197f407218c194"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a0e5b323dfbc6ab0f070bf6c5a2a9be55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_CREDENTIALS_METADATA_COUNT&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="ab5f3c640585f742a46197f407218c194"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_client_auth_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> auth_start_transport_op, <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a>), init_call_elem,</div>
+<div class="line"> destroy_call_elem, <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem, destroy_channel_elem,</div>
+<div class="line"> <a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>, <span class="stringliteral">&quot;client-auth&quot;</span>}</div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="server__auth__filter_8c_html_a7237e4a998a071b454b0d6b1bdfb42e1"><div class="ttname"><a href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></div><div class="ttdeci">struct call_data call_data</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/client__channel_8c.html b/doc/ref/core.internal/html/client__channel_8c.html
new file mode 100644
index 0000000000..499bc9b262
--- /dev/null
+++ b/doc/ref/core.internal/html/client__channel_8c.html
@@ -0,0 +1,405 @@
+<!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: src/core/channel/client_channel.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">client_channel.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="client__channel_8h_source.html">src/core/channel/client_channel.h</a>&quot;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connected__channel_8h_source.html">src/core/channel/connected_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connectivity__state_8h_source.html">src/core/transport/connectivity_state.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlb__policy__connectivity__watcher.html">lb_policy_connectivity_watcher</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">We create one watcher for each new lb_policy that is returned from a resolver, to watch for state changes from the lb_policy. <a href="structlb__policy__connectivity__watcher.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__call.html">waiting_call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a9d8dd5943711393112c0fe83c02c0ca8"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">call_data</a></td></tr>
+<tr class="separator:a9d8dd5943711393112c0fe83c02c0ca8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a6ca2e6dbf0562417ab7c66e8907a56b1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">call_state</a> { <br/>
+&#160;&#160;<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8">CALL_CREATED</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c">CALL_WAITING_FOR_SEND</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2">CALL_WAITING_FOR_CONFIG</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad">CALL_WAITING_FOR_PICK</a>,
+<br/>
+&#160;&#160;<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2">CALL_WAITING_FOR_CALL</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9">CALL_ACTIVE</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d">CALL_CANCELLED</a>,
+<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5">NOT_STARTED</a>,
+<br/>
+&#160;&#160;<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73">PENDING</a>,
+<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d">ACTIVATED</a>,
+<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512">ZOMBIED</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a6ca2e6dbf0562417ab7c66e8907a56b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a86757e52c8e3f20d553f999c62589993"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a86757e52c8e3f20d553f999c62589993">grpc_client_channel_set_resolver</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, <a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:a86757e52c8e3f20d553f999c62589993"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae257a5817fa8e50df430d4a2132deed6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#ae257a5817fa8e50df430d4a2132deed6">grpc_client_channel_check_connectivity_state</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, int try_to_connect)</td></tr>
+<tr class="separator:ae257a5817fa8e50df430d4a2132deed6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a037d0d7720ae9a68669ad9552f7ee69c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a037d0d7720ae9a68669ad9552f7ee69c">grpc_client_channel_watch_connectivity_state</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="separator:a037d0d7720ae9a68669ad9552f7ee69c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6ddde66c53ca2fec899def7d72234ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#ab6ddde66c53ca2fec899def7d72234ad">grpc_client_channel_get_connecting_pollset_set</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem)</td></tr>
+<tr class="separator:ab6ddde66c53ca2fec899def7d72234ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b288cd209db3fac0c4cd5d4f8fbf3b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a7b288cd209db3fac0c4cd5d4f8fbf3b3">grpc_client_channel_add_interested_party</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a7b288cd209db3fac0c4cd5d4f8fbf3b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36a91904b5c5cce4a334a9e055b35f78"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a36a91904b5c5cce4a334a9e055b35f78">grpc_client_channel_del_interested_party</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a36a91904b5c5cce4a334a9e055b35f78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8c2292b3b1d26b9c4c296c106bfa96b1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html#a8c2292b3b1d26b9c4c296c106bfa96b1">grpc_client_channel_filter</a></td></tr>
+<tr class="separator:a8c2292b3b1d26b9c4c296c106bfa96b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a9d8dd5943711393112c0fe83c02c0ca8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">call_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8"></a>CALL_CREATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c"></a>CALL_WAITING_FOR_SEND</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2"></a>CALL_WAITING_FOR_CONFIG</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad"></a>CALL_WAITING_FOR_PICK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2"></a>CALL_WAITING_FOR_CALL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9"></a>CALL_ACTIVE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d"></a>CALL_CANCELLED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5"></a>NOT_STARTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73"></a>PENDING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d"></a>ACTIVATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512"></a>ZOMBIED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7b288cd209db3fac0c4cd5d4f8fbf3b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_add_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae257a5817fa8e50df430d4a2132deed6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_client_channel_check_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>try_to_connect</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a36a91904b5c5cce4a334a9e055b35f78"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_del_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab6ddde66c53ca2fec899def7d72234ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>* grpc_client_channel_get_connecting_pollset_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86757e52c8e3f20d553f999c62589993"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_set_resolver </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a037d0d7720ae9a68669ad9552f7ee69c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_watch_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a8c2292b3b1d26b9c4c296c106bfa96b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_client_channel_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> cc_start_transport_stream_op,</div>
+<div class="line"> cc_start_transport_op,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">call_data</a>),</div>
+<div class="line"> init_call_elem,</div>
+<div class="line"> destroy_call_elem,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem,</div>
+<div class="line"> destroy_channel_elem,</div>
+<div class="line"> cc_get_peer,</div>
+<div class="line"> <span class="stringliteral">&quot;client-channel&quot;</span>,</div>
+<div class="line">}</div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="client__channel_8c_html_a9d8dd5943711393112c0fe83c02c0ca8"><div class="ttname"><a href="client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">call_data</a></div><div class="ttdeci">struct call_data call_data</div><div class="ttdef"><b>Definition:</b> client_channel.c:52</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/client__channel_8h.html b/doc/ref/core.internal/html/client__channel_8h.html
new file mode 100644
index 0000000000..b3f0ca9bcc
--- /dev/null
+++ b/doc/ref/core.internal/html/client__channel_8h.html
@@ -0,0 +1,293 @@
+<!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: src/core/channel/client_channel.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">client_channel.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolver_8h_source.html">src/core/client_config/resolver.h</a>&quot;</code><br/>
+</div>
+<p><a href="client__channel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a86757e52c8e3f20d553f999c62589993"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#a86757e52c8e3f20d553f999c62589993">grpc_client_channel_set_resolver</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, <a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:a86757e52c8e3f20d553f999c62589993"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae257a5817fa8e50df430d4a2132deed6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6">grpc_client_channel_check_connectivity_state</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, int try_to_connect)</td></tr>
+<tr class="separator:ae257a5817fa8e50df430d4a2132deed6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a037d0d7720ae9a68669ad9552f7ee69c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c">grpc_client_channel_watch_connectivity_state</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="separator:a037d0d7720ae9a68669ad9552f7ee69c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6ddde66c53ca2fec899def7d72234ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad">grpc_client_channel_get_connecting_pollset_set</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem)</td></tr>
+<tr class="separator:ab6ddde66c53ca2fec899def7d72234ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac31482c5bf741292f7598367655fd5ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee">grpc_client_channel_add_interested_party</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *channel, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:ac31482c5bf741292f7598367655fd5ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a495327ded305a2211cc39f7c5ecf5c8d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d">grpc_client_channel_del_interested_party</a> (<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *channel, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a495327ded305a2211cc39f7c5ecf5c8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8c2292b3b1d26b9c4c296c106bfa96b1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1">grpc_client_channel_filter</a></td></tr>
+<tr class="separator:a8c2292b3b1d26b9c4c296c106bfa96b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ac31482c5bf741292f7598367655fd5ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_add_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae257a5817fa8e50df430d4a2132deed6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_client_channel_check_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>try_to_connect</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a495327ded305a2211cc39f7c5ecf5c8d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_del_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab6ddde66c53ca2fec899def7d72234ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>* grpc_client_channel_get_connecting_pollset_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86757e52c8e3f20d553f999c62589993"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_set_resolver </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a037d0d7720ae9a68669ad9552f7ee69c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_channel_watch_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a8c2292b3b1d26b9c4c296c106bfa96b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_client_channel_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/client__channel_8h_source.html b/doc/ref/core.internal/html/client__channel_8h_source.html
new file mode 100644
index 0000000000..692fbfc26c
--- /dev/null
+++ b/doc/ref/core.internal/html/client__channel_8h_source.html
@@ -0,0 +1,185 @@
+<!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: src/core/channel/client_channel.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">client_channel.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="client__channel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_CLIENT_CHANNEL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_CLIENT_CHANNEL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="resolver_8h.html">src/core/client_config/resolver.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* A client channel is a channel that begins disconnected, and can connect</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> to some endpoint on demand. If that endpoint disconnects, it will be</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> connected to again later.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> Calls on a disconnected client channel are queued until a connection is</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> established. */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1">grpc_client_channel_filter</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* post-construction initializer to let the client channel know which</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> transport setup it should cancel upon destruction, or initiate when it needs</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> a connection */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__channel_8h.html#a86757e52c8e3f20d553f999c62589993">grpc_client_channel_set_resolver</a>(<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6">grpc_client_channel_check_connectivity_state</a>(</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <span class="keywordtype">int</span> try_to_connect);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c">grpc_client_channel_watch_connectivity_state</a>(</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *<a class="code" href="client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad">grpc_client_channel_get_connecting_pollset_set</a>(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee">grpc_client_channel_add_interested_party</a>(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *channel,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d">grpc_client_channel_del_interested_party</a>(<a class="code" href="structgrpc__channel__element.html">grpc_channel_element</a> *channel,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_CLIENT_CHANNEL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> grpc.h:139</div></div>
+<div class="ttc" id="structgrpc__channel__stack_html"><div class="ttname"><a href="structgrpc__channel__stack.html">grpc_channel_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:132</div></div>
+<div class="ttc" id="client__channel_8h_html_a037d0d7720ae9a68669ad9552f7ee69c"><div class="ttname"><a href="client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c">grpc_client_channel_watch_connectivity_state</a></div><div class="ttdeci">void grpc_client_channel_watch_connectivity_state(grpc_channel_element *elem, grpc_connectivity_state *state, grpc_iomgr_closure *on_complete)</div><div class="ttdef"><b>Definition:</b> client_channel.c:718</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="client__channel_8h_html_a86757e52c8e3f20d553f999c62589993"><div class="ttname"><a href="client__channel_8h.html#a86757e52c8e3f20d553f999c62589993">grpc_client_channel_set_resolver</a></div><div class="ttdeci">void grpc_client_channel_set_resolver(grpc_channel_stack *channel_stack, grpc_resolver *resolver)</div><div class="ttdef"><b>Definition:</b> client_channel.c:688</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__resolver_html"><div class="ttname"><a href="structgrpc__resolver.html">grpc_resolver</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver.h:46</div></div>
+<div class="ttc" id="resolver_8h_html"><div class="ttname"><a href="resolver_8h.html">resolver.h</a></div></div>
+<div class="ttc" id="client__channel_8h_html_a8c2292b3b1d26b9c4c296c106bfa96b1"><div class="ttname"><a href="client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1">grpc_client_channel_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_client_channel_filter</div><div class="ttdef"><b>Definition:</b> client_channel.c:675</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="client__channel_8h_html_ae257a5817fa8e50df430d4a2132deed6"><div class="ttname"><a href="client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6">grpc_client_channel_check_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state grpc_client_channel_check_connectivity_state(grpc_channel_element *elem, int try_to_connect)</div><div class="ttdef"><b>Definition:</b> client_channel.c:701</div></div>
+<div class="ttc" id="structgrpc__channel__element_html"><div class="ttname"><a href="structgrpc__channel__element.html">grpc_channel_element</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:116</div></div>
+<div class="ttc" id="client__channel_8h_html_ab6ddde66c53ca2fec899def7d72234ad"><div class="ttname"><a href="client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad">grpc_client_channel_get_connecting_pollset_set</a></div><div class="ttdeci">grpc_pollset_set * grpc_client_channel_get_connecting_pollset_set(grpc_channel_element *elem)</div><div class="ttdef"><b>Definition:</b> client_channel.c:728</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="client__channel_8h_html_ac31482c5bf741292f7598367655fd5ee"><div class="ttname"><a href="client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee">grpc_client_channel_add_interested_party</a></div><div class="ttdeci">void grpc_client_channel_add_interested_party(grpc_channel_element *channel, grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> client_channel.c:733</div></div>
+<div class="ttc" id="client__channel_8h_html_a495327ded305a2211cc39f7c5ecf5c8d"><div class="ttname"><a href="client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d">grpc_client_channel_del_interested_party</a></div><div class="ttdeci">void grpc_client_channel_del_interested_party(grpc_channel_element *channel, grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> client_channel.c:739</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/client__config_8c.html b/doc/ref/core.internal/html/client__config_8c.html
new file mode 100644
index 0000000000..d721feeb17
--- /dev/null
+++ b/doc/ref/core.internal/html/client__config_8c.html
@@ -0,0 +1,214 @@
+<!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: src/core/client_config/client_config.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">client_config.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="client__config_8h_source.html">src/core/client_config/client_config.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a165901d77b066794c0822a683d167359"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8c.html#a165901d77b066794c0822a683d167359">grpc_client_config_create</a> ()</td></tr>
+<tr class="separator:a165901d77b066794c0822a683d167359"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0b099847f86ea9e0da873f49b92f554"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8c.html#aa0b099847f86ea9e0da873f49b92f554">grpc_client_config_ref</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *c)</td></tr>
+<tr class="separator:aa0b099847f86ea9e0da873f49b92f554"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8d9107bdf0a780e914dccd4fd57cb35"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8c.html#ad8d9107bdf0a780e914dccd4fd57cb35">grpc_client_config_unref</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *c)</td></tr>
+<tr class="separator:ad8d9107bdf0a780e914dccd4fd57cb35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a807baa44b3464dc0c5870184619d6c35"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8c.html#a807baa44b3464dc0c5870184619d6c35">grpc_client_config_set_lb_policy</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *c, <a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *lb_policy)</td></tr>
+<tr class="separator:a807baa44b3464dc0c5870184619d6c35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6642aab990240a61c9ecafa3dfb55e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8c.html#aa6642aab990240a61c9ecafa3dfb55e1">grpc_client_config_get_lb_policy</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *c)</td></tr>
+<tr class="separator:aa6642aab990240a61c9ecafa3dfb55e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a165901d77b066794c0822a683d167359"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>* grpc_client_config_create </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa6642aab990240a61c9ecafa3dfb55e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* grpc_client_config_get_lb_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa0b099847f86ea9e0da873f49b92f554"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_config_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a807baa44b3464dc0c5870184619d6c35"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_config_set_lb_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>lb_policy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad8d9107bdf0a780e914dccd4fd57cb35"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_config_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/client__config_8h.html b/doc/ref/core.internal/html/client__config_8h.html
new file mode 100644
index 0000000000..012ef81990
--- /dev/null
+++ b/doc/ref/core.internal/html/client__config_8h.html
@@ -0,0 +1,231 @@
+<!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: src/core/client_config/client_config.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">client_config.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="lb__policy_8h_source.html">src/core/client_config/lb_policy.h</a>&quot;</code><br/>
+</div>
+<p><a href="client__config_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5c92ac9b2893cfe73b5be84ddc10367c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__client__config.html">grpc_client_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html#a5c92ac9b2893cfe73b5be84ddc10367c">grpc_client_config</a></td></tr>
+<tr class="memdesc:a5c92ac9b2893cfe73b5be84ddc10367c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total configuration for a client. <a href="#a5c92ac9b2893cfe73b5be84ddc10367c">More...</a><br/></td></tr>
+<tr class="separator:a5c92ac9b2893cfe73b5be84ddc10367c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a165901d77b066794c0822a683d167359"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html#a165901d77b066794c0822a683d167359">grpc_client_config_create</a> ()</td></tr>
+<tr class="separator:a165901d77b066794c0822a683d167359"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af036e0a9e83189f7d2c72afdeb6c6d86"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86">grpc_client_config_ref</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *client_config)</td></tr>
+<tr class="separator:af036e0a9e83189f7d2c72afdeb6c6d86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a614ddbd34b8597f39bce9d8f4c6ca978"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978">grpc_client_config_unref</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *client_config)</td></tr>
+<tr class="separator:a614ddbd34b8597f39bce9d8f4c6ca978"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01f90473256a8c714ba043c03ef2acac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html#a01f90473256a8c714ba043c03ef2acac">grpc_client_config_set_lb_policy</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *client_config, <a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *lb_policy)</td></tr>
+<tr class="separator:a01f90473256a8c714ba043c03ef2acac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34de5fdfe171d82064a2c568dc5f109e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e">grpc_client_config_get_lb_policy</a> (<a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *client_config)</td></tr>
+<tr class="separator:a34de5fdfe171d82064a2c568dc5f109e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5c92ac9b2893cfe73b5be84ddc10367c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> <a class="el" href="structgrpc__client__config.html">grpc_client_config</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Total configuration for a client. </p>
+<p>Provided, and updated, by <a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a165901d77b066794c0822a683d167359"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>* grpc_client_config_create </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34de5fdfe171d82064a2c568dc5f109e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* grpc_client_config_get_lb_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>client_config</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af036e0a9e83189f7d2c72afdeb6c6d86"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_config_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>client_config</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a01f90473256a8c714ba043c03ef2acac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_config_set_lb_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>client_config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>lb_policy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a614ddbd34b8597f39bce9d8f4c6ca978"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_config_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td>
+ <td class="paramname"><em>client_config</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/client__config_8h_source.html b/doc/ref/core.internal/html/client__config_8h_source.html
new file mode 100644
index 0000000000..d3455ab3ca
--- /dev/null
+++ b/doc/ref/core.internal/html/client__config_8h_source.html
@@ -0,0 +1,158 @@
+<!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: src/core/client_config/client_config.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">client_config.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="client__config_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_CLIENT_CONFIG_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_CLIENT_CONFIG_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="lb__policy_8h.html">src/core/client_config/lb_policy.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="client__config_8h.html#a5c92ac9b2893cfe73b5be84ddc10367c"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__client__config.html">grpc_client_config</a> <a class="code" href="structgrpc__client__config.html">grpc_client_config</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<a class="code" href="structgrpc__client__config.html">grpc_client_config</a> *<a class="code" href="client__config_8h.html#a165901d77b066794c0822a683d167359">grpc_client_config_create</a>();</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86">grpc_client_config_ref</a>(<a class="code" href="structgrpc__client__config.html">grpc_client_config</a> *client_config);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978">grpc_client_config_unref</a>(<a class="code" href="structgrpc__client__config.html">grpc_client_config</a> *client_config);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="client__config_8h.html#a01f90473256a8c714ba043c03ef2acac">grpc_client_config_set_lb_policy</a>(<a class="code" href="structgrpc__client__config.html">grpc_client_config</a> *client_config,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *<a class="code" href="structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9">lb_policy</a>);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *<a class="code" href="client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e">grpc_client_config_get_lb_policy</a>(</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structgrpc__client__config.html">grpc_client_config</a> *client_config);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_CLIENT_CONFIG_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="client__config_8h_html_af036e0a9e83189f7d2c72afdeb6c6d86"><div class="ttname"><a href="client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86">grpc_client_config_ref</a></div><div class="ttdeci">void grpc_client_config_ref(grpc_client_config *client_config)</div><div class="ttdef"><b>Definition:</b> client_config.c:52</div></div>
+<div class="ttc" id="client__config_8h_html_a01f90473256a8c714ba043c03ef2acac"><div class="ttname"><a href="client__config_8h.html#a01f90473256a8c714ba043c03ef2acac">grpc_client_config_set_lb_policy</a></div><div class="ttdeci">void grpc_client_config_set_lb_policy(grpc_client_config *client_config, grpc_lb_policy *lb_policy)</div><div class="ttdef"><b>Definition:</b> client_config.c:61</div></div>
+<div class="ttc" id="lb__policy_8h_html"><div class="ttname"><a href="lb__policy_8h.html">lb_policy.h</a></div></div>
+<div class="ttc" id="structgrpc__client__config_html_a40e0301a0d5ac19d5c5c854703604cc9"><div class="ttname"><a href="structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9">grpc_client_config::lb_policy</a></div><div class="ttdeci">grpc_lb_policy * lb_policy</div><div class="ttdef"><b>Definition:</b> client_config.c:42</div></div>
+<div class="ttc" id="structgrpc__client__config_html"><div class="ttname"><a href="structgrpc__client__config.html">grpc_client_config</a></div><div class="ttdef"><b>Definition:</b> client_config.c:40</div></div>
+<div class="ttc" id="client__config_8h_html_a34de5fdfe171d82064a2c568dc5f109e"><div class="ttname"><a href="client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e">grpc_client_config_get_lb_policy</a></div><div class="ttdeci">grpc_lb_policy * grpc_client_config_get_lb_policy(grpc_client_config *client_config)</div><div class="ttdef"><b>Definition:</b> client_config.c:72</div></div>
+<div class="ttc" id="client__config_8h_html_a165901d77b066794c0822a683d167359"><div class="ttname"><a href="client__config_8h.html#a165901d77b066794c0822a683d167359">grpc_client_config_create</a></div><div class="ttdeci">grpc_client_config * grpc_client_config_create()</div><div class="ttdef"><b>Definition:</b> client_config.c:45</div></div>
+<div class="ttc" id="structgrpc__lb__policy_html"><div class="ttname"><a href="structgrpc__lb__policy.html">grpc_lb_policy</a></div><div class="ttdef"><b>Definition:</b> lb_policy.h:47</div></div>
+<div class="ttc" id="client__config_8h_html_a614ddbd34b8597f39bce9d8f4c6ca978"><div class="ttname"><a href="client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978">grpc_client_config_unref</a></div><div class="ttdeci">void grpc_client_config_unref(grpc_client_config *client_config)</div><div class="ttdef"><b>Definition:</b> client_config.c:54</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/closed.png b/doc/ref/core.internal/html/closed.png
new file mode 100644
index 0000000000..98cc2c909d
--- /dev/null
+++ b/doc/ref/core.internal/html/closed.png
Binary files differ
diff --git a/doc/ref/core.internal/html/cmdline_8c.html b/doc/ref/core.internal/html/cmdline_8c.html
new file mode 100644
index 0000000000..bee6a608fa
--- /dev/null
+++ b/doc/ref/core.internal/html/cmdline_8c.html
@@ -0,0 +1,434 @@
+<!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: src/core/support/cmdline.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">cmdline.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="cmdline_8h_source.html">grpc/support/cmdline.h</a>&gt;</code><br/>
+<code>#include &lt;limits.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarg.html">arg</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:af240efb36795b416de0779ad5d5159e4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structarg.html">arg</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a></td></tr>
+<tr class="separator:af240efb36795b416de0779ad5d5159e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a55073e9737969efda87471594edd95d4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4">argtype</a> { <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4a620547b20bcf630ba7f4d727fdb22521">ARGTYPE_INT</a>,
+<a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4ad141b51bee7ccb14e0c83871f0e3ee0d">ARGTYPE_BOOL</a>,
+<a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4a50a996a2423b2fd5397a14b362fa23ab">ARGTYPE_STRING</a>
+ }</td></tr>
+<tr class="separator:a55073e9737969efda87471594edd95d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a608f6fbc4edfb4d2c18e3c0660fd8773"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a608f6fbc4edfb4d2c18e3c0660fd8773">gpr_cmdline_create</a> (const char *description)</td></tr>
+<tr class="separator:a608f6fbc4edfb4d2c18e3c0660fd8773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a018f826ce313b02d2773ef97b8df5f98"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a018f826ce313b02d2773ef97b8df5f98">gpr_cmdline_destroy</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl)</td></tr>
+<tr class="separator:a018f826ce313b02d2773ef97b8df5f98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0fc8cd330751e9876e8635189a1bc10f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a0fc8cd330751e9876e8635189a1bc10f">gpr_cmdline_add_int</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, int *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a0fc8cd330751e9876e8635189a1bc10f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5ecfdfc605896c29df846b1e268045e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#ac5ecfdfc605896c29df846b1e268045e">gpr_cmdline_add_flag</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, int *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:ac5ecfdfc605896c29df846b1e268045e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34568676c089f3284dc8f7d8d706b1d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a34568676c089f3284dc8f7d8d706b1d3">gpr_cmdline_add_string</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, char **<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a34568676c089f3284dc8f7d8d706b1d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcf023a5eb082034a650a0f0177d1fe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#afcf023a5eb082034a650a0f0177d1fe9">gpr_cmdline_on_extra_arg</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *<a class="el" href="structarg.html">arg</a>), void *user_data)</td></tr>
+<tr class="separator:afcf023a5eb082034a650a0f0177d1fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eac81d047bdc6e679079309bf60f030"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a4eac81d047bdc6e679079309bf60f030">gpr_cmdline_usage_string</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *argv0)</td></tr>
+<tr class="separator:a4eac81d047bdc6e679079309bf60f030"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34b66021bbbb9f6a6e8a60c0ae34f8a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">gpr_cmdline_parse</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, int argc, char **argv)</td></tr>
+<tr class="separator:a34b66021bbbb9f6a6e8a60c0ae34f8a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="af240efb36795b416de0779ad5d5159e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structarg.html">arg</a> <a class="el" href="structarg.html">arg</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a55073e9737969efda87471594edd95d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4">argtype</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a55073e9737969efda87471594edd95d4a620547b20bcf630ba7f4d727fdb22521"></a>ARGTYPE_INT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a55073e9737969efda87471594edd95d4ad141b51bee7ccb14e0c83871f0e3ee0d"></a>ARGTYPE_BOOL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a55073e9737969efda87471594edd95d4a50a996a2423b2fd5397a14b362fa23ab"></a>ARGTYPE_STRING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ac5ecfdfc605896c29df846b1e268045e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_add_flag </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0fc8cd330751e9876e8635189a1bc10f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_add_int </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34568676c089f3284dc8f7d8d706b1d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_add_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a608f6fbc4edfb4d2c18e3c0660fd8773"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a>* gpr_cmdline_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>description</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a018f826ce313b02d2773ef97b8df5f98"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afcf023a5eb082034a650a0f0177d1fe9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_on_extra_arg </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *user_data, const char *<a class="el" href="structarg.html">arg</a>)&#160;</td>
+ <td class="paramname"><em>on_extra_arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34b66021bbbb9f6a6e8a60c0ae34f8a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>argc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>argv</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eac81d047bdc6e679079309bf60f030"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_cmdline_usage_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>argv0</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cmdline_8h.html b/doc/ref/core.internal/html/cmdline_8h.html
new file mode 100644
index 0000000000..14581cc54f
--- /dev/null
+++ b/doc/ref/core.internal/html/cmdline_8h.html
@@ -0,0 +1,391 @@
+<!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: include/grpc/support/cmdline.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">cmdline.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="cmdline_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aaad93cd9bfc32c54fc89f7c2f3b74eb6"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgpr__cmdline.html">gpr_cmdline</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#aaad93cd9bfc32c54fc89f7c2f3b74eb6">gpr_cmdline</a></td></tr>
+<tr class="separator:aaad93cd9bfc32c54fc89f7c2f3b74eb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a608f6fbc4edfb4d2c18e3c0660fd8773"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773">gpr_cmdline_create</a> (const char *description)</td></tr>
+<tr class="separator:a608f6fbc4edfb4d2c18e3c0660fd8773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0fc8cd330751e9876e8635189a1bc10f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f">gpr_cmdline_add_int</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, int *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a0fc8cd330751e9876e8635189a1bc10f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5ecfdfc605896c29df846b1e268045e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e">gpr_cmdline_add_flag</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, int *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:ac5ecfdfc605896c29df846b1e268045e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34568676c089f3284dc8f7d8d706b1d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3">gpr_cmdline_add_string</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, char **<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a34568676c089f3284dc8f7d8d706b1d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcf023a5eb082034a650a0f0177d1fe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9">gpr_cmdline_on_extra_arg</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *<a class="el" href="structarg.html">arg</a>), void *user_data)</td></tr>
+<tr class="separator:afcf023a5eb082034a650a0f0177d1fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34b66021bbbb9f6a6e8a60c0ae34f8a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">gpr_cmdline_parse</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, int argc, char **argv)</td></tr>
+<tr class="separator:a34b66021bbbb9f6a6e8a60c0ae34f8a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a018f826ce313b02d2773ef97b8df5f98"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98">gpr_cmdline_destroy</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl)</td></tr>
+<tr class="separator:a018f826ce313b02d2773ef97b8df5f98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eac81d047bdc6e679079309bf60f030"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030">gpr_cmdline_usage_string</a> (<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, const char *argv0)</td></tr>
+<tr class="separator:a4eac81d047bdc6e679079309bf60f030"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aaad93cd9bfc32c54fc89f7c2f3b74eb6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> <a class="el" href="structgpr__cmdline.html">gpr_cmdline</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ac5ecfdfc605896c29df846b1e268045e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_add_flag </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0fc8cd330751e9876e8635189a1bc10f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_add_int </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34568676c089f3284dc8f7d8d706b1d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_add_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a608f6fbc4edfb4d2c18e3c0660fd8773"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a>* gpr_cmdline_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>description</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a018f826ce313b02d2773ef97b8df5f98"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afcf023a5eb082034a650a0f0177d1fe9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_on_extra_arg </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>help</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *user_data, const char *<a class="el" href="structarg.html">arg</a>)&#160;</td>
+ <td class="paramname"><em>on_extra_arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34b66021bbbb9f6a6e8a60c0ae34f8a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cmdline_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>argc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>argv</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eac81d047bdc6e679079309bf60f030"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_cmdline_usage_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *&#160;</td>
+ <td class="paramname"><em>cl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>argv0</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cmdline_8h_source.html b/doc/ref/core.internal/html/cmdline_8h_source.html
new file mode 100644
index 0000000000..43a4422a25
--- /dev/null
+++ b/doc/ref/core.internal/html/cmdline_8h_source.html
@@ -0,0 +1,209 @@
+<!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: include/grpc/support/cmdline.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">cmdline.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="cmdline_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_CMDLINE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_CMDLINE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Simple command line parser.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> Supports flags that can be specified as -foo, --foo, --no-foo, -no-foo, etc</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> And integers, strings that can be specified as -foo=4, -foo blah, etc</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> No support for short command line options (but we may get that in the</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> future.)</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> Usage (for a program with a single flag argument &#39;foo&#39;):</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> int main(int argc, char **argv) {</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> gpr_cmdline *cl;</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> int verbose = 0;</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> cl = gpr_cmdline_create(&quot;My cool tool&quot;);</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> gpr_cmdline_add_int(cl, &quot;verbose&quot;, &quot;Produce verbose output?&quot;, &amp;verbose);</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> gpr_cmdline_parse(cl, argc, argv);</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> gpr_cmdline_destroy(cl);</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> if (verbose) {</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> gpr_log(GPR_INFO, &quot;Goodbye cruel world!&quot;);</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> }</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> return 0;</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> } */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="cmdline_8h.html#aaad93cd9bfc32c54fc89f7c2f3b74eb6"> 67</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> <a class="code" href="structgpr__cmdline.html">gpr_cmdline</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Construct a command line parser: takes a short description of the tool</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> doing the parsing */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *<a class="code" href="cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773">gpr_cmdline_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d">description</a>);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">/* Add an integer parameter, with a name (used on the command line) and some</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> helpful text (used in the command usage) */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f">gpr_cmdline_add_int</a>(<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *help,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">int</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* The same, for a boolean flag */</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e">gpr_cmdline_add_flag</a>(<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *help,</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">int</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">/* And for a string */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3">gpr_cmdline_add_string</a>(<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *help,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">char</span> **<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* Set a callback for non-named arguments */</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">void</span> <a class="code" href="cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9">gpr_cmdline_on_extra_arg</a>(</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *help,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">void</span> (*on_extra_arg)(<span class="keywordtype">void</span> *user_data, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structarg.html">arg</a>), <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* Parse the command line */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">gpr_cmdline_parse</a>(<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, <span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Destroy the parser */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98">gpr_cmdline_destroy</a>(<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Get a string describing usage */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030">gpr_cmdline_usage_string</a>(<a class="code" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e">argv0</a>);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_CMDLINE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="cmdline_8h_html_a018f826ce313b02d2773ef97b8df5f98"><div class="ttname"><a href="cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98">gpr_cmdline_destroy</a></div><div class="ttdeci">void gpr_cmdline_destroy(gpr_cmdline *cl)</div><div class="ttdef"><b>Definition:</b> cmdline.c:81</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="cmdline_8h_html_a34b66021bbbb9f6a6e8a60c0ae34f8a4"><div class="ttname"><a href="cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">gpr_cmdline_parse</a></div><div class="ttdeci">void gpr_cmdline_parse(gpr_cmdline *cl, int argc, char **argv)</div><div class="ttdef"><b>Definition:</b> cmdline.c:314</div></div>
+<div class="ttc" id="cmdline_8h_html_a0fc8cd330751e9876e8635189a1bc10f"><div class="ttname"><a href="cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f">gpr_cmdline_add_int</a></div><div class="ttdeci">void gpr_cmdline_add_int(gpr_cmdline *cl, const char *name, const char *help, int *value)</div><div class="ttdef"><b>Definition:</b> cmdline.c:108</div></div>
+<div class="ttc" id="cmdline_8h_html_afcf023a5eb082034a650a0f0177d1fe9"><div class="ttname"><a href="cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9">gpr_cmdline_on_extra_arg</a></div><div class="ttdeci">void gpr_cmdline_on_extra_arg(gpr_cmdline *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *arg), void *user_data)</div><div class="ttdef"><b>Definition:</b> cmdline.c:123</div></div>
+<div class="ttc" id="structgpr__cmdline_html_ad7ac4f9585e0c93920079bec3a258c5d"><div class="ttname"><a href="structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d">gpr_cmdline::description</a></div><div class="ttdeci">const char * description</div><div class="ttdef"><b>Definition:</b> cmdline.c:56</div></div>
+<div class="ttc" id="cmdline_8h_html_a608f6fbc4edfb4d2c18e3c0660fd8773"><div class="ttname"><a href="cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773">gpr_cmdline_create</a></div><div class="ttdeci">gpr_cmdline * gpr_cmdline_create(const char *description)</div><div class="ttdef"><b>Definition:</b> cmdline.c:71</div></div>
+<div class="ttc" id="structgpr__cmdline_html"><div class="ttname"><a href="structgpr__cmdline.html">gpr_cmdline</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:55</div></div>
+<div class="ttc" id="structgpr__cmdline_html_ad262ed090b9dca4ea6d4bd7be222a40e"><div class="ttname"><a href="structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e">gpr_cmdline::argv0</a></div><div class="ttdeci">const char * argv0</div><div class="ttdef"><b>Definition:</b> cmdline.c:58</div></div>
+<div class="ttc" id="cmdline_8h_html_a4eac81d047bdc6e679079309bf60f030"><div class="ttname"><a href="cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030">gpr_cmdline_usage_string</a></div><div class="ttdeci">char * gpr_cmdline_usage_string(gpr_cmdline *cl, const char *argv0)</div><div class="ttdef"><b>Definition:</b> cmdline.c:160</div></div>
+<div class="ttc" id="cmdline_8h_html_ac5ecfdfc605896c29df846b1e268045e"><div class="ttname"><a href="cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e">gpr_cmdline_add_flag</a></div><div class="ttdeci">void gpr_cmdline_add_flag(gpr_cmdline *cl, const char *name, const char *help, int *value)</div><div class="ttdef"><b>Definition:</b> cmdline.c:113</div></div>
+<div class="ttc" id="cmdline_8h_html_a34568676c089f3284dc8f7d8d706b1d3"><div class="ttname"><a href="cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3">gpr_cmdline_add_string</a></div><div class="ttdeci">void gpr_cmdline_add_string(gpr_cmdline *cl, const char *name, const char *help, char **value)</div><div class="ttdef"><b>Definition:</b> cmdline.c:118</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/completion__queue_8c.html b/doc/ref/core.internal/html/completion__queue_8c.html
new file mode 100644
index 0000000000..bc38faaa79
--- /dev/null
+++ b/doc/ref/core.internal/html/completion__queue_8c.html
@@ -0,0 +1,438 @@
+<!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: src/core/surface/completion_queue.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">completion_queue.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="completion__queue_8h_source.html">src/core/surface/completion_queue.h</a>&quot;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="event__string_8h_source.html">src/core/surface/event_string.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="surface__trace_8h_source.html">src/core/surface/surface_trace.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9f69c76c26125e6581491864a06ea44a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a9f69c76c26125e6581491864a06ea44a">grpc_completion_queue_create</a> (void)</td></tr>
+<tr class="memdesc:a9f69c76c26125e6581491864a06ea44a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a completion queue. <a href="#a9f69c76c26125e6581491864a06ea44a">More...</a><br/></td></tr>
+<tr class="separator:a9f69c76c26125e6581491864a06ea44a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acec06afc3d55de1701d5831e979dad02"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:acec06afc3d55de1701d5831e979dad02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0096a03d441f4b7cfbbe864eb122ed8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:a0096a03d441f4b7cfbbe864eb122ed8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0798635c22a4eaa66ed25c310b3a776"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#af0798635c22a4eaa66ed25c310b3a776">grpc_cq_begin_op</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:af0798635c22a4eaa66ed25c310b3a776"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2752dafd9e9e02bbd253578fc58b0a7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a2752dafd9e9e02bbd253578fc58b0a7e">grpc_cq_end_op</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, void *tag, int success, void(*done)(void *done_arg, <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage), void *done_arg, <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage)</td></tr>
+<tr class="separator:a2752dafd9e9e02bbd253578fc58b0a7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9b582acb0fc4994ccdbf39d40ee3766"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__event.html">grpc_event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#ac9b582acb0fc4994ccdbf39d40ee3766">grpc_completion_queue_next</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:ac9b582acb0fc4994ccdbf39d40ee3766"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blocks until an event is available, the completion queue is being shut down, or deadline is reached. <a href="#ac9b582acb0fc4994ccdbf39d40ee3766">More...</a><br/></td></tr>
+<tr class="separator:ac9b582acb0fc4994ccdbf39d40ee3766"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab63b4e63ae13faa3e6786f131a46b5dd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__event.html">grpc_event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#ab63b4e63ae13faa3e6786f131a46b5dd">grpc_completion_queue_pluck</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, void *tag, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:ab63b4e63ae13faa3e6786f131a46b5dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blocks until an event with tag 'tag' is available, the completion queue is being shutdown or deadline is reached. <a href="#ab63b4e63ae13faa3e6786f131a46b5dd">More...</a><br/></td></tr>
+<tr class="separator:ab63b4e63ae13faa3e6786f131a46b5dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a7c60f847e798025d83e2d8ff9b1778"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a7a7c60f847e798025d83e2d8ff9b1778">grpc_completion_queue_shutdown</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="memdesc:a7a7c60f847e798025d83e2d8ff9b1778"><td class="mdescLeft">&#160;</td><td class="mdescRight">Begin destruction of a completion queue. <a href="#a7a7c60f847e798025d83e2d8ff9b1778">More...</a><br/></td></tr>
+<tr class="separator:a7a7c60f847e798025d83e2d8ff9b1778"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d73d7983af3030ee119b768095e9627"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a1d73d7983af3030ee119b768095e9627">grpc_completion_queue_destroy</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="memdesc:a1d73d7983af3030ee119b768095e9627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a completion queue. <a href="#a1d73d7983af3030ee119b768095e9627">More...</a><br/></td></tr>
+<tr class="separator:a1d73d7983af3030ee119b768095e9627"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ebca6cf60ce9cc92b9bfa9200fab813"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a0ebca6cf60ce9cc92b9bfa9200fab813">grpc_cq_pollset</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:a0ebca6cf60ce9cc92b9bfa9200fab813"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af56ef17bad0397c6f1305be433aeeb64"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#af56ef17bad0397c6f1305be433aeeb64">grpc_cq_hack_spin_pollset</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:af56ef17bad0397c6f1305be433aeeb64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbe8f768af201e16309e240ae155ee3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#afbe8f768af201e16309e240ae155ee3d">grpc_cq_mark_server_cq</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:afbe8f768af201e16309e240ae155ee3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02173d1bf8e55f6903d24c20107d8dbf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html#a02173d1bf8e55f6903d24c20107d8dbf">grpc_cq_is_server_cq</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:a02173d1bf8e55f6903d24c20107d8dbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a9f69c76c26125e6581491864a06ea44a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* grpc_completion_queue_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1d73d7983af3030ee119b768095e9627"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_completion_queue_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a completion queue. </p>
+<p>The caller must ensure that the queue is drained and no threads are executing grpc_completion_queue_next </p>
+
+</div>
+</div>
+<a class="anchor" id="ac9b582acb0fc4994ccdbf39d40ee3766"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__event.html">grpc_event</a> grpc_completion_queue_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Blocks until an event is available, the completion queue is being shut down, or deadline is reached. </p>
+<p>Returns a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> with type GRPC_QUEUE_TIMEOUT on timeout, otherwise a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> describing the event that occurred.</p>
+<p>Callers must not call grpc_completion_queue_next and grpc_completion_queue_pluck simultaneously on the same completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab63b4e63ae13faa3e6786f131a46b5dd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__event.html">grpc_event</a> grpc_completion_queue_pluck </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Blocks until an event with tag 'tag' is available, the completion queue is being shutdown or deadline is reached. </p>
+<p>Returns a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> with type GRPC_QUEUE_TIMEOUT on timeout, otherwise a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> describing the event that occurred.</p>
+<p>Callers must not call grpc_completion_queue_next and grpc_completion_queue_pluck simultaneously on the same completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7a7c60f847e798025d83e2d8ff9b1778"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_completion_queue_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Begin destruction of a completion queue. </p>
+<p>Once all possible events are drained then grpc_completion_queue_next will start to produce GRPC_QUEUE_SHUTDOWN events only. At that point it's safe to call grpc_completion_queue_destroy.</p>
+<p>After calling this function applications should ensure that no NEW work is added to be published on this completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="af0798635c22a4eaa66ed25c310b3a776"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_begin_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2752dafd9e9e02bbd253578fc58b0a7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_end_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *done_arg, <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage)&#160;</td>
+ <td class="paramname"><em>done</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>done_arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af56ef17bad0397c6f1305be433aeeb64"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_hack_spin_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acec06afc3d55de1701d5831e979dad02"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_internal_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0096a03d441f4b7cfbbe864eb122ed8e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_internal_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02173d1bf8e55f6903d24c20107d8dbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_cq_is_server_cq </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afbe8f768af201e16309e240ae155ee3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_mark_server_cq </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ebca6cf60ce9cc92b9bfa9200fab813"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* grpc_cq_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/completion__queue_8h.html b/doc/ref/core.internal/html/completion__queue_8h.html
new file mode 100644
index 0000000000..7160d965a1
--- /dev/null
+++ b/doc/ref/core.internal/html/completion__queue_8h.html
@@ -0,0 +1,374 @@
+<!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: src/core/surface/completion_queue.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">completion_queue.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+</div>
+<p><a href="completion__queue_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:abb132fe2e37bc87bfcc83eb3cd8d3101"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#abb132fe2e37bc87bfcc83eb3cd8d3101">GRPC_CQ_INTERNAL_REF</a>(cc, reason)&#160;&#160;&#160;<a class="el" href="completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a>(cc)</td></tr>
+<tr class="separator:abb132fe2e37bc87bfcc83eb3cd8d3101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaceb3ef8959e5c43f6954c19a1975f63"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#aaceb3ef8959e5c43f6954c19a1975f63">GRPC_CQ_INTERNAL_UNREF</a>(cc, reason)&#160;&#160;&#160;<a class="el" href="completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a>(cc)</td></tr>
+<tr class="separator:aaceb3ef8959e5c43f6954c19a1975f63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3695e8858dba0cab40f3becbf822e014"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014">grpc_cq_completion</a></td></tr>
+<tr class="separator:a3695e8858dba0cab40f3becbf822e014"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acec06afc3d55de1701d5831e979dad02"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:acec06afc3d55de1701d5831e979dad02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0096a03d441f4b7cfbbe864eb122ed8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:a0096a03d441f4b7cfbbe864eb122ed8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0798635c22a4eaa66ed25c310b3a776"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776">grpc_cq_begin_op</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:af0798635c22a4eaa66ed25c310b3a776"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2752dafd9e9e02bbd253578fc58b0a7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e">grpc_cq_end_op</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, void *tag, int success, void(*done)(void *done_arg, <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage), void *done_arg, <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage)</td></tr>
+<tr class="separator:a2752dafd9e9e02bbd253578fc58b0a7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ebca6cf60ce9cc92b9bfa9200fab813"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813">grpc_cq_pollset</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:a0ebca6cf60ce9cc92b9bfa9200fab813"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af56ef17bad0397c6f1305be433aeeb64"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64">grpc_cq_hack_spin_pollset</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:af56ef17bad0397c6f1305be433aeeb64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbe8f768af201e16309e240ae155ee3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d">grpc_cq_mark_server_cq</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:afbe8f768af201e16309e240ae155ee3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02173d1bf8e55f6903d24c20107d8dbf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf">grpc_cq_is_server_cq</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc)</td></tr>
+<tr class="separator:a02173d1bf8e55f6903d24c20107d8dbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="abb132fe2e37bc87bfcc83eb3cd8d3101"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CQ_INTERNAL_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">cc, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a>(cc)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaceb3ef8959e5c43f6954c19a1975f63"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CQ_INTERNAL_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">cc, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a>(cc)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a3695e8858dba0cab40f3becbf822e014"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="af0798635c22a4eaa66ed25c310b3a776"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_begin_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2752dafd9e9e02bbd253578fc58b0a7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_end_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *done_arg, <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage)&#160;</td>
+ <td class="paramname"><em>done</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>done_arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af56ef17bad0397c6f1305be433aeeb64"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_hack_spin_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acec06afc3d55de1701d5831e979dad02"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_internal_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0096a03d441f4b7cfbbe864eb122ed8e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_internal_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02173d1bf8e55f6903d24c20107d8dbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_cq_is_server_cq </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afbe8f768af201e16309e240ae155ee3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_cq_mark_server_cq </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ebca6cf60ce9cc92b9bfa9200fab813"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* grpc_cq_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/completion__queue_8h_source.html b/doc/ref/core.internal/html/completion__queue_8h_source.html
new file mode 100644
index 0000000000..48d4936252
--- /dev/null
+++ b/doc/ref/core.internal/html/completion__queue_8h_source.html
@@ -0,0 +1,199 @@
+<!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: src/core/surface/completion_queue.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">completion_queue.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="completion__queue_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_COMPLETION_QUEUE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_COMPLETION_QUEUE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Internal API for completion channels */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset_8h.html">src/core/iomgr/pollset.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__cq__completion.html"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__cq__completion.html">grpc_cq_completion</a> {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e"> 44</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e">tag</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64"> 47</a></span>&#160; void (*<a class="code" href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64">done</a>)(<span class="keywordtype">void</span> *<a class="code" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">done_arg</a>, <span class="keyword">struct </span><a class="code" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *c);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a"> 48</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">done_arg</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948"> 50</a></span>&#160; <a class="code" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a> <a class="code" href="structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948">next</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014">grpc_cq_completion</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#ifdef GRPC_CQ_REF_COUNT_DEBUG</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#define GRPC_CQ_INTERNAL_REF(cc, reason) \</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"> grpc_cq_internal_ref(cc, reason, __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CQ_INTERNAL_UNREF(cc, reason) \</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"> grpc_cq_internal_unref(cc, reason, __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="completion__queue_8h.html#abb132fe2e37bc87bfcc83eb3cd8d3101"> 65</a></span>&#160;<span class="preprocessor">#define GRPC_CQ_INTERNAL_REF(cc, reason) grpc_cq_internal_ref(cc)</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="completion__queue_8h.html#aaceb3ef8959e5c43f6954c19a1975f63"> 66</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CQ_INTERNAL_UNREF(cc, reason) grpc_cq_internal_unref(cc)</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Flag that an operation is beginning: the completion channel will not finish</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> shutdown until a corrensponding grpc_cq_end_* call is made */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776">grpc_cq_begin_op</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/* Queue a GRPC_OP_COMPLETED operation */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e">grpc_cq_end_op</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc, <span class="keywordtype">void</span> *<a class="code" href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e">tag</a>, <span class="keywordtype">int</span> success,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">void</span> (*<a class="code" href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64">done</a>)(<span class="keywordtype">void</span> *<a class="code" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">done_arg</a>, <a class="code" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage),</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> *done_arg, <a class="code" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *storage);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *<a class="code" href="completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813">grpc_cq_pollset</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64">grpc_cq_hack_spin_pollset</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> <a class="code" href="completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d">grpc_cq_mark_server_cq</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">int</span> <a class="code" href="completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf">grpc_cq_is_server_cq</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cc);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_COMPLETION_QUEUE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="completion__queue_8h_html_a0ebca6cf60ce9cc92b9bfa9200fab813"><div class="ttname"><a href="completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813">grpc_cq_pollset</a></div><div class="ttdeci">grpc_pollset * grpc_cq_pollset(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:260</div></div>
+<div class="ttc" id="port__platform_8h_html_ab302f9bfe3be467072bd8c79847636d4"><div class="ttname"><a href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a></div><div class="ttdeci">uintptr_t gpr_uintptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:314</div></div>
+<div class="ttc" id="completion__queue_8h_html_a3695e8858dba0cab40f3becbf822e014"><div class="ttname"><a href="completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014">grpc_cq_completion</a></div><div class="ttdeci">struct grpc_cq_completion grpc_cq_completion</div></div>
+<div class="ttc" id="pollset_8h_html"><div class="ttname"><a href="pollset_8h.html">pollset.h</a></div></div>
+<div class="ttc" id="structgrpc__cq__completion_html"><div class="ttname"><a href="structgrpc__cq__completion.html">grpc_cq_completion</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:42</div></div>
+<div class="ttc" id="structgrpc__cq__completion_html_ae7107ba3521b7cabde35c3334547a948"><div class="ttname"><a href="structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948">grpc_cq_completion::next</a></div><div class="ttdeci">gpr_uintptr next</div><div class="ttdoc">next pointer; low bit is used to indicate success or not </div><div class="ttdef"><b>Definition:</b> completion_queue.h:50</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="completion__queue_8h_html_af56ef17bad0397c6f1305be433aeeb64"><div class="ttname"><a href="completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64">grpc_cq_hack_spin_pollset</a></div><div class="ttdeci">void grpc_cq_hack_spin_pollset(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:264</div></div>
+<div class="ttc" id="structgrpc__cq__completion_html_a533e98ae5b637059189ee4fb27ad484a"><div class="ttname"><a href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">grpc_cq_completion::done_arg</a></div><div class="ttdeci">void * done_arg</div><div class="ttdef"><b>Definition:</b> completion_queue.h:48</div></div>
+<div class="ttc" id="structgrpc__cq__completion_html_a2e3c70bc2aa092495b6367ef8d41ba64"><div class="ttname"><a href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64">grpc_cq_completion::done</a></div><div class="ttdeci">void(* done)(void *done_arg, struct grpc_cq_completion *c)</div><div class="ttdoc">done callback - called when this queue element is no longer needed by the completion queue ...</div><div class="ttdef"><b>Definition:</b> completion_queue.h:47</div></div>
+<div class="ttc" id="completion__queue_8h_html_a2752dafd9e9e02bbd253578fc58b0a7e"><div class="ttname"><a href="completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e">grpc_cq_end_op</a></div><div class="ttdeci">void grpc_cq_end_op(grpc_completion_queue *cc, void *tag, int success, void(*done)(void *done_arg, grpc_cq_completion *storage), void *done_arg, grpc_cq_completion *storage)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:116</div></div>
+<div class="ttc" id="structgrpc__completion__queue_html"><div class="ttname"><a href="structgrpc__completion__queue.html">grpc_completion_queue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.c:49</div></div>
+<div class="ttc" id="completion__queue_8h_html_a0096a03d441f4b7cfbbe864eb122ed8e"><div class="ttname"><a href="completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e">grpc_cq_internal_unref</a></div><div class="ttdeci">void grpc_cq_internal_unref(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:100</div></div>
+<div class="ttc" id="completion__queue_8h_html_af0798635c22a4eaa66ed25c310b3a776"><div class="ttname"><a href="completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776">grpc_cq_begin_op</a></div><div class="ttdeci">void grpc_cq_begin_op(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:109</div></div>
+<div class="ttc" id="completion__queue_8h_html_acec06afc3d55de1701d5831e979dad02"><div class="ttname"><a href="completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02">grpc_cq_internal_ref</a></div><div class="ttdeci">void grpc_cq_internal_ref(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:84</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="structgrpc__cq__completion_html_acf21f4e0ec0adcd801bd9f34d80a7b7e"><div class="ttname"><a href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e">grpc_cq_completion::tag</a></div><div class="ttdeci">void * tag</div><div class="ttdoc">user supplied tag </div><div class="ttdef"><b>Definition:</b> completion_queue.h:44</div></div>
+<div class="ttc" id="completion__queue_8h_html_afbe8f768af201e16309e240ae155ee3d"><div class="ttname"><a href="completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d">grpc_cq_mark_server_cq</a></div><div class="ttdeci">void grpc_cq_mark_server_cq(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:273</div></div>
+<div class="ttc" id="completion__queue_8h_html_a02173d1bf8e55f6903d24c20107d8dbf"><div class="ttname"><a href="completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf">grpc_cq_is_server_cq</a></div><div class="ttdeci">int grpc_cq_is_server_cq(grpc_completion_queue *cc)</div><div class="ttdef"><b>Definition:</b> completion_queue.c:275</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/compress__filter_8c.html b/doc/ref/core.internal/html/compress__filter_8c.html
new file mode 100644
index 0000000000..dd631c6fac
--- /dev/null
+++ b/doc/ref/core.internal/html/compress__filter_8c.html
@@ -0,0 +1,196 @@
+<!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: src/core/channel/compress_filter.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">compress_filter.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;assert.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="compress__filter_8h_source.html">src/core/channel/compress_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="message__compress_8h_source.html">src/core/compression/message_compress.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></td></tr>
+<tr class="separator:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e660c9a52a9795338faf0c2188cff84"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">channel_data</a></td></tr>
+<tr class="separator:a5e660c9a52a9795338faf0c2188cff84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6e0ba3e22587af99125faa43ee943c88"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8c.html#a6e0ba3e22587af99125faa43ee943c88">grpc_compress_filter</a></td></tr>
+<tr class="memdesc:a6e0ba3e22587af99125faa43ee943c88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compression filter for outgoing data. <a href="#a6e0ba3e22587af99125faa43ee943c88">More...</a><br/></td></tr>
+<tr class="separator:a6e0ba3e22587af99125faa43ee943c88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7237e4a998a071b454b0d6b1bdfb42e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e660c9a52a9795338faf0c2188cff84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__data.html">channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a6e0ba3e22587af99125faa43ee943c88"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_compress_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> compress_start_transport_stream_op,</div>
+<div class="line"> <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a>),</div>
+<div class="line"> init_call_elem,</div>
+<div class="line"> destroy_call_elem,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem,</div>
+<div class="line"> destroy_channel_elem,</div>
+<div class="line"> <a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>,</div>
+<div class="line"> <span class="stringliteral">&quot;compress&quot;</span>}</div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+<div class="ttc" id="compress__filter_8c_html_a7237e4a998a071b454b0d6b1bdfb42e1"><div class="ttname"><a href="compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></div><div class="ttdeci">struct call_data call_data</div></div>
+</div><!-- fragment -->
+<p>Compression filter for outgoing data. </p>
+<p>See &lt;<a class="el" href="compression_8h.html">grpc/compression.h</a>&gt; for the available compression settings.</p>
+<p>Compression settings may come from:</p>
+<ul>
+<li>Channel configuration, as established at channel creation time.</li>
+<li>The metadata accompanying the outgoing data to be compressed. This is taken as a request only. We may choose not to honor it. The metadata key is given by <em>GRPC_COMPRESS_REQUEST_ALGORITHM_KEY</em>.</li>
+</ul>
+<p>Compression can be disabled for concrete messages (for instance in order to prevent CRIME/BEAST type attacks) by having the GRPC_WRITE_NO_COMPRESS set in the BEGIN_MESSAGE flags.</p>
+<p>The attempted compression mechanism is added to the resulting initial metadata under the'grpc-encoding' key.</p>
+<p>If compression is actually performed, BEGIN_MESSAGE's flag is modified to incorporate GRPC_WRITE_INTERNAL_COMPRESS. Otherwise, and regardless of the aforementioned 'grpc-encoding' metadata value, data will pass through uncompressed. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/compress__filter_8h.html b/doc/ref/core.internal/html/compress__filter_8h.html
new file mode 100644
index 0000000000..2e332a498f
--- /dev/null
+++ b/doc/ref/core.internal/html/compress__filter_8h.html
@@ -0,0 +1,154 @@
+<!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: src/core/channel/compress_filter.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">compress_filter.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="compress__filter_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a501a03bf06f05a5d19c3e2c3b8143124"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8h.html#a501a03bf06f05a5d19c3e2c3b8143124">GRPC_COMPRESS_REQUEST_ALGORITHM_KEY</a>&#160;&#160;&#160;&quot;internal:grpc-encoding-request&quot;</td></tr>
+<tr class="separator:a501a03bf06f05a5d19c3e2c3b8143124"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6e0ba3e22587af99125faa43ee943c88"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88">grpc_compress_filter</a></td></tr>
+<tr class="memdesc:a6e0ba3e22587af99125faa43ee943c88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compression filter for outgoing data. <a href="#a6e0ba3e22587af99125faa43ee943c88">More...</a><br/></td></tr>
+<tr class="separator:a6e0ba3e22587af99125faa43ee943c88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a501a03bf06f05a5d19c3e2c3b8143124"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_COMPRESS_REQUEST_ALGORITHM_KEY&#160;&#160;&#160;&quot;internal:grpc-encoding-request&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a6e0ba3e22587af99125faa43ee943c88"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_compress_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Compression filter for outgoing data. </p>
+<p>See &lt;<a class="el" href="compression_8h.html">grpc/compression.h</a>&gt; for the available compression settings.</p>
+<p>Compression settings may come from:</p>
+<ul>
+<li>Channel configuration, as established at channel creation time.</li>
+<li>The metadata accompanying the outgoing data to be compressed. This is taken as a request only. We may choose not to honor it. The metadata key is given by <em>GRPC_COMPRESS_REQUEST_ALGORITHM_KEY</em>.</li>
+</ul>
+<p>Compression can be disabled for concrete messages (for instance in order to prevent CRIME/BEAST type attacks) by having the GRPC_WRITE_NO_COMPRESS set in the BEGIN_MESSAGE flags.</p>
+<p>The attempted compression mechanism is added to the resulting initial metadata under the'grpc-encoding' key.</p>
+<p>If compression is actually performed, BEGIN_MESSAGE's flag is modified to incorporate GRPC_WRITE_INTERNAL_COMPRESS. Otherwise, and regardless of the aforementioned 'grpc-encoding' metadata value, data will pass through uncompressed. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/compress__filter_8h_source.html b/doc/ref/core.internal/html/compress__filter_8h_source.html
new file mode 100644
index 0000000000..a2d03bc1e3
--- /dev/null
+++ b/doc/ref/core.internal/html/compress__filter_8h_source.html
@@ -0,0 +1,145 @@
+<!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: src/core/channel/compress_filter.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">compress_filter.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="compress__filter_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_COMPRESS_FILTER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_COMPRESS_FILTER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="compress__filter_8h.html#a501a03bf06f05a5d19c3e2c3b8143124"> 39</a></span>&#160;<span class="preprocessor">#define GRPC_COMPRESS_REQUEST_ALGORITHM_KEY &quot;internal:grpc-encoding-request&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88">grpc_compress_filter</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_COMPRESS_FILTER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="compress__filter_8h_html_a6e0ba3e22587af99125faa43ee943c88"><div class="ttname"><a href="compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88">grpc_compress_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_compress_filter</div><div class="ttdoc">Compression filter for outgoing data. </div><div class="ttdef"><b>Definition:</b> compress_filter.c:318</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/compression_8h.html b/doc/ref/core.internal/html/compression_8h.html
new file mode 100644
index 0000000000..9a955297bd
--- /dev/null
+++ b/doc/ref/core.internal/html/compression_8h.html
@@ -0,0 +1,305 @@
+<!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: include/grpc/compression.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">compression.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="compression_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a9340488e193921e62bb1f240f9016a9b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#a9340488e193921e62bb1f240f9016a9b">GRPC_COMPRESSION_ALGORITHM_ARG</a>&#160;&#160;&#160;&quot;grpc.compression_algorithm&quot;</td></tr>
+<tr class="memdesc:a9340488e193921e62bb1f240f9016a9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">To be used in channel arguments. <a href="#a9340488e193921e62bb1f240f9016a9b">More...</a><br/></td></tr>
+<tr class="separator:a9340488e193921e62bb1f240f9016a9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ab9de0f68bfb1ef8ed09bd00643db14c9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> { <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8">GRPC_COMPRESS_NONE</a> = 0,
+<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913">GRPC_COMPRESS_DEFLATE</a>,
+<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e">GRPC_COMPRESS_GZIP</a>,
+<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">GRPC_COMPRESS_ALGORITHMS_COUNT</a>
+ }</td></tr>
+<tr class="separator:ab9de0f68bfb1ef8ed09bd00643db14c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14a79ed6b5ebd7e1dda7c2684f499cc7"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> { <br/>
+&#160;&#160;<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c">GRPC_COMPRESS_LEVEL_NONE</a> = 0,
+<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673">GRPC_COMPRESS_LEVEL_LOW</a>,
+<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce">GRPC_COMPRESS_LEVEL_MED</a>,
+<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22">GRPC_COMPRESS_LEVEL_HIGH</a>,
+<br/>
+&#160;&#160;<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43">GRPC_COMPRESS_LEVEL_COUNT</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a14a79ed6b5ebd7e1dda7c2684f499cc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a996f65ae42d05dd7ef9da9c6d6586397"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397">grpc_compression_algorithm_parse</a> (const char *name, <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> *algorithm)</td></tr>
+<tr class="memdesc:a996f65ae42d05dd7ef9da9c6d6586397"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses <em>name</em> as a grpc_compression_algorithm instance, updating <em>algorithm</em>. <a href="#a996f65ae42d05dd7ef9da9c6d6586397">More...</a><br/></td></tr>
+<tr class="separator:a996f65ae42d05dd7ef9da9c6d6586397"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adce0341ab8fd560dc39e9e96daf7cb14"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14">grpc_compression_algorithm_name</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, char **name)</td></tr>
+<tr class="memdesc:adce0341ab8fd560dc39e9e96daf7cb14"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates <em>name</em> with the encoding name corresponding to a valid <em>algorithm</em>. <a href="#adce0341ab8fd560dc39e9e96daf7cb14">More...</a><br/></td></tr>
+<tr class="separator:adce0341ab8fd560dc39e9e96daf7cb14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace80040d9c2a916ddd4d2f2d2ec44dba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba">grpc_compression_level_for_algorithm</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm)</td></tr>
+<tr class="memdesc:ace80040d9c2a916ddd4d2f2d2ec44dba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the compression level corresponding to <em>algorithm</em>. <a href="#ace80040d9c2a916ddd4d2f2d2ec44dba">More...</a><br/></td></tr>
+<tr class="separator:ace80040d9c2a916ddd4d2f2d2ec44dba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a382cce802b53a6f85deb706caf1dccd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html#a382cce802b53a6f85deb706caf1dccd6">grpc_compression_algorithm_for_level</a> (<a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> level)</td></tr>
+<tr class="memdesc:a382cce802b53a6f85deb706caf1dccd6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the compression algorithm corresponding to <em>level</em>. <a href="#a382cce802b53a6f85deb706caf1dccd6">More...</a><br/></td></tr>
+<tr class="separator:a382cce802b53a6f85deb706caf1dccd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a9340488e193921e62bb1f240f9016a9b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_COMPRESSION_ALGORITHM_ARG&#160;&#160;&#160;&quot;grpc.compression_algorithm&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>To be used in channel arguments. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="ab9de0f68bfb1ef8ed09bd00643db14c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8"></a>GRPC_COMPRESS_NONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913"></a>GRPC_COMPRESS_DEFLATE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e"></a>GRPC_COMPRESS_GZIP</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d"></a>GRPC_COMPRESS_ALGORITHMS_COUNT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a14a79ed6b5ebd7e1dda7c2684f499cc7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c"></a>GRPC_COMPRESS_LEVEL_NONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673"></a>GRPC_COMPRESS_LEVEL_LOW</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce"></a>GRPC_COMPRESS_LEVEL_MED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22"></a>GRPC_COMPRESS_LEVEL_HIGH</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43"></a>GRPC_COMPRESS_LEVEL_COUNT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a382cce802b53a6f85deb706caf1dccd6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_compression_algorithm_for_level </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a>&#160;</td>
+ <td class="paramname"><em>level</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the compression algorithm corresponding to <em>level</em>. </p>
+<p>It abort()s for unknown levels . </p>
+
+</div>
+</div>
+<a class="anchor" id="adce0341ab8fd560dc39e9e96daf7cb14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_compression_algorithm_name </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Updates <em>name</em> with the encoding name corresponding to a valid <em>algorithm</em>. </p>
+<p>Returns 1 upon success, 0 otherwise. </p>
+
+</div>
+</div>
+<a class="anchor" id="a996f65ae42d05dd7ef9da9c6d6586397"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_compression_algorithm_parse </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> *&#160;</td>
+ <td class="paramname"><em>algorithm</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Parses <em>name</em> as a grpc_compression_algorithm instance, updating <em>algorithm</em>. </p>
+<p>Returns 1 upon success, 0 otherwise. </p>
+
+</div>
+</div>
+<a class="anchor" id="ace80040d9c2a916ddd4d2f2d2ec44dba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> grpc_compression_level_for_algorithm </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns the compression level corresponding to <em>algorithm</em>. </p>
+<p>It abort()s for unknown algorithms. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/compression_8h_source.html b/doc/ref/core.internal/html/compression_8h_source.html
new file mode 100644
index 0000000000..6502396750
--- /dev/null
+++ b/doc/ref/core.internal/html/compression_8h_source.html
@@ -0,0 +1,190 @@
+<!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: include/grpc/compression.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">compression.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="compression_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_COMPRESSION_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_COMPRESSION_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="compression_8h.html#a9340488e193921e62bb1f240f9016a9b"> 42</a></span>&#160;<span class="preprocessor">#define GRPC_COMPRESSION_ALGORITHM_ARG &quot;grpc.compression_algorithm&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* The various compression algorithms supported by GRPC */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8"> 46</a></span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8">GRPC_COMPRESS_NONE</a> = 0,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913"> 47</a></span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913">GRPC_COMPRESS_DEFLATE</a>,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e"> 48</a></span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e">GRPC_COMPRESS_GZIP</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* TODO(ctiller): snappy */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d"> 50</a></span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">GRPC_COMPRESS_ALGORITHMS_COUNT</a></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c"> 54</a></span>&#160; <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c">GRPC_COMPRESS_LEVEL_NONE</a> = 0,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673"> 55</a></span>&#160; <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673">GRPC_COMPRESS_LEVEL_LOW</a>,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce"> 56</a></span>&#160; <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce">GRPC_COMPRESS_LEVEL_MED</a>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22"> 57</a></span>&#160; <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22">GRPC_COMPRESS_LEVEL_HIGH</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43"> 58</a></span>&#160; <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43">GRPC_COMPRESS_LEVEL_COUNT</a></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keywordtype">int</span> <a class="code" href="compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397">grpc_compression_algorithm_parse</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> *algorithm);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">int</span> <a class="code" href="compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14">grpc_compression_algorithm_name</a>(<a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">char</span> **name);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> <a class="code" href="compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba">grpc_compression_level_for_algorithm</a>(</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> <a class="code" href="compression_8h.html#a382cce802b53a6f85deb706caf1dccd6">grpc_compression_algorithm_for_level</a>(</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a> level);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_COMPRESSION_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">GRPC_COMPRESS_ALGORITHMS_COUNT</a></div><div class="ttdef"><b>Definition:</b> compression.h:50</div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm</div><div class="ttdef"><b>Definition:</b> compression.h:45</div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e">GRPC_COMPRESS_GZIP</a></div><div class="ttdef"><b>Definition:</b> compression.h:48</div></div>
+<div class="ttc" id="compression_8h_html_a996f65ae42d05dd7ef9da9c6d6586397"><div class="ttname"><a href="compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397">grpc_compression_algorithm_parse</a></div><div class="ttdeci">int grpc_compression_algorithm_parse(const char *name, grpc_compression_algorithm *algorithm)</div><div class="ttdoc">Parses name as a grpc_compression_algorithm instance, updating algorithm. </div><div class="ttdef"><b>Definition:</b> algorithm.c:38</div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913">GRPC_COMPRESS_DEFLATE</a></div><div class="ttdef"><b>Definition:</b> compression.h:47</div></div>
+<div class="ttc" id="compression_8h_html_a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c"><div class="ttname"><a href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c">GRPC_COMPRESS_LEVEL_NONE</a></div><div class="ttdef"><b>Definition:</b> compression.h:54</div></div>
+<div class="ttc" id="compression_8h_html_a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673"><div class="ttname"><a href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673">GRPC_COMPRESS_LEVEL_LOW</a></div><div class="ttdef"><b>Definition:</b> compression.h:55</div></div>
+<div class="ttc" id="compression_8h_html_ace80040d9c2a916ddd4d2f2d2ec44dba"><div class="ttname"><a href="compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba">grpc_compression_level_for_algorithm</a></div><div class="ttdeci">grpc_compression_level grpc_compression_level_for_algorithm(grpc_compression_algorithm algorithm)</div><div class="ttdoc">Returns the compression level corresponding to algorithm. </div><div class="ttdef"><b>Definition:</b> algorithm.c:87</div></div>
+<div class="ttc" id="compression_8h_html_a14a79ed6b5ebd7e1dda7c2684f499cc7"><div class="ttname"><a href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">grpc_compression_level</a></div><div class="ttdeci">grpc_compression_level</div><div class="ttdef"><b>Definition:</b> compression.h:53</div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8">GRPC_COMPRESS_NONE</a></div><div class="ttdef"><b>Definition:</b> compression.h:46</div></div>
+<div class="ttc" id="compression_8h_html_a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce"><div class="ttname"><a href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce">GRPC_COMPRESS_LEVEL_MED</a></div><div class="ttdef"><b>Definition:</b> compression.h:56</div></div>
+<div class="ttc" id="compression_8h_html_adce0341ab8fd560dc39e9e96daf7cb14"><div class="ttname"><a href="compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14">grpc_compression_algorithm_name</a></div><div class="ttdeci">int grpc_compression_algorithm_name(grpc_compression_algorithm algorithm, char **name)</div><div class="ttdoc">Updates name with the encoding name corresponding to a valid algorithm. </div><div class="ttdef"><b>Definition:</b> algorithm.c:52</div></div>
+<div class="ttc" id="compression_8h_html_a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43"><div class="ttname"><a href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43">GRPC_COMPRESS_LEVEL_COUNT</a></div><div class="ttdef"><b>Definition:</b> compression.h:58</div></div>
+<div class="ttc" id="compression_8h_html_a382cce802b53a6f85deb706caf1dccd6"><div class="ttname"><a href="compression_8h.html#a382cce802b53a6f85deb706caf1dccd6">grpc_compression_algorithm_for_level</a></div><div class="ttdeci">grpc_compression_algorithm grpc_compression_algorithm_for_level(grpc_compression_level level)</div><div class="ttdoc">Returns the compression algorithm corresponding to level. </div><div class="ttdef"><b>Definition:</b> algorithm.c:72</div></div>
+<div class="ttc" id="compression_8h_html_a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22"><div class="ttname"><a href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22">GRPC_COMPRESS_LEVEL_HIGH</a></div><div class="ttdef"><b>Definition:</b> compression.h:57</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/connected__channel_8c.html b/doc/ref/core.internal/html/connected__channel_8c.html
new file mode 100644
index 0000000000..6384b7841f
--- /dev/null
+++ b/doc/ref/core.internal/html/connected__channel_8c.html
@@ -0,0 +1,274 @@
+<!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: src/core/channel/connected_channel.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">connected_channel.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="connected__channel_8h_source.html">src/core/channel/connected_channel.h</a>&quot;</code><br/>
+<code>#include &lt;stdarg.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnected__channel__channel__data.html">connected_channel_channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnected__channel__call__data.html">connected_channel_call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa8a8ed5c9e057542ff818fde39a94f07"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#aa8a8ed5c9e057542ff818fde39a94f07">MAX_BUFFER_LENGTH</a>&#160;&#160;&#160;8192</td></tr>
+<tr class="separator:aa8a8ed5c9e057542ff818fde39a94f07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20fccb78f707f86985ab8dccc8f9ff68"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#a20fccb78f707f86985ab8dccc8f9ff68">TRANSPORT_STREAM_FROM_CALL_DATA</a>(calld)&#160;&#160;&#160;((<a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *)((calld) + 1))</td></tr>
+<tr class="separator:a20fccb78f707f86985ab8dccc8f9ff68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc89e1ee71e626f5adc6ceb2de12935a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#adc89e1ee71e626f5adc6ceb2de12935a">CALL_DATA_FROM_TRANSPORT_STREAM</a>(transport_stream)&#160;&#160;&#160;(((<a class="el" href="structcall__data.html">call_data</a> *)(transport_stream)) - 1)</td></tr>
+<tr class="separator:adc89e1ee71e626f5adc6ceb2de12935a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a43362118345c9bbd8b75103f9854a69d"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structconnected__channel__channel__data.html">connected_channel_channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#a43362118345c9bbd8b75103f9854a69d">channel_data</a></td></tr>
+<tr class="separator:a43362118345c9bbd8b75103f9854a69d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf019c14ca61b45a660c2b86b0a0b889"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structconnected__channel__call__data.html">connected_channel_call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889">call_data</a></td></tr>
+<tr class="separator:abf019c14ca61b45a660c2b86b0a0b889"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5be096b4cce2c5c6b51727866723e5b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#a5be096b4cce2c5c6b51727866723e5b9">grpc_connected_channel_bind_transport</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:a5be096b4cce2c5c6b51727866723e5b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a30c8116a24cf1e555af53c1296d10b39"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html#a30c8116a24cf1e555af53c1296d10b39">grpc_connected_channel_filter</a></td></tr>
+<tr class="separator:a30c8116a24cf1e555af53c1296d10b39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="adc89e1ee71e626f5adc6ceb2de12935a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CALL_DATA_FROM_TRANSPORT_STREAM</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">transport_stream</td><td>)</td>
+ <td>&#160;&#160;&#160;(((<a class="el" href="structcall__data.html">call_data</a> *)(transport_stream)) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8a8ed5c9e057542ff818fde39a94f07"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_BUFFER_LENGTH&#160;&#160;&#160;8192</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a20fccb78f707f86985ab8dccc8f9ff68"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_STREAM_FROM_CALL_DATA</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">calld</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *)((calld) + 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="abf019c14ca61b45a660c2b86b0a0b889"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structconnected__channel__call__data.html">connected_channel_call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43362118345c9bbd8b75103f9854a69d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structconnected__channel__channel__data.html">connected_channel_channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5be096b4cce2c5c6b51727866723e5b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connected_channel_bind_transport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a30c8116a24cf1e555af53c1296d10b39"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_connected_channel_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> con_start_transport_stream_op,</div>
+<div class="line"> con_start_transport_op,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889">call_data</a>),</div>
+<div class="line"> init_call_elem,</div>
+<div class="line"> destroy_call_elem,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem,</div>
+<div class="line"> destroy_channel_elem,</div>
+<div class="line"> con_get_peer,</div>
+<div class="line"> <span class="stringliteral">&quot;connected&quot;</span>,</div>
+<div class="line">}</div>
+<div class="ttc" id="connected__channel_8c_html_abf019c14ca61b45a660c2b86b0a0b889"><div class="ttname"><a href="connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889">call_data</a></div><div class="ttdeci">struct connected_channel_call_data call_data</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/connected__channel_8h.html b/doc/ref/core.internal/html/connected__channel_8h.html
new file mode 100644
index 0000000000..238359b0ed
--- /dev/null
+++ b/doc/ref/core.internal/html/connected__channel_8h.html
@@ -0,0 +1,156 @@
+<!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: src/core/channel/connected_channel.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">connected_channel.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="connected__channel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5be096b4cce2c5c6b51727866723e5b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9">grpc_connected_channel_bind_transport</a> (<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:a5be096b4cce2c5c6b51727866723e5b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a30c8116a24cf1e555af53c1296d10b39"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39">grpc_connected_channel_filter</a></td></tr>
+<tr class="separator:a30c8116a24cf1e555af53c1296d10b39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5be096b4cce2c5c6b51727866723e5b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connected_channel_bind_transport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *&#160;</td>
+ <td class="paramname"><em>channel_stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a30c8116a24cf1e555af53c1296d10b39"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_connected_channel_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/connected__channel_8h_source.html b/doc/ref/core.internal/html/connected__channel_8h_source.html
new file mode 100644
index 0000000000..63fb691072
--- /dev/null
+++ b/doc/ref/core.internal/html/connected__channel_8h_source.html
@@ -0,0 +1,154 @@
+<!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: src/core/channel/connected_channel.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">connected_channel.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="connected__channel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_CONNECTED_CHANNEL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_CONNECTED_CHANNEL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* A channel filter representing a channel that is on a connected transport.</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> This filter performs actual sending and receiving of messages. */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39">grpc_connected_channel_filter</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* Post construction fixup: set the transport in the connected channel.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> Must be called before any call stack using this filter is used. */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9">grpc_connected_channel_bind_transport</a>(<a class="code" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *channel_stack,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_CONNECTED_CHANNEL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="structgrpc__channel__stack_html"><div class="ttname"><a href="structgrpc__channel__stack.html">grpc_channel_stack</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:132</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="connected__channel_8h_html_a5be096b4cce2c5c6b51727866723e5b9"><div class="ttname"><a href="connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9">grpc_connected_channel_bind_transport</a></div><div class="ttdeci">void grpc_connected_channel_bind_transport(grpc_channel_stack *channel_stack, grpc_transport *transport)</div><div class="ttdef"><b>Definition:</b> connected_channel.c:140</div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="connected__channel_8h_html_a30c8116a24cf1e555af53c1296d10b39"><div class="ttname"><a href="connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39">grpc_connected_channel_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_connected_channel_filter</div><div class="ttdef"><b>Definition:</b> connected_channel.c:127</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/connectivity__state_8c.html b/doc/ref/core.internal/html/connectivity__state_8c.html
new file mode 100644
index 0000000000..81a6bc2a38
--- /dev/null
+++ b/doc/ref/core.internal/html/connectivity__state_8c.html
@@ -0,0 +1,334 @@
+<!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: src/core/transport/connectivity_state.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">connectivity_state.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="connectivity__state_8h_source.html">src/core/transport/connectivity_state.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a90cae61aab329c583da43141f8057b36"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#a90cae61aab329c583da43141f8057b36">grpc_connectivity_state_name</a> (<a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state)</td></tr>
+<tr class="separator:a90cae61aab329c583da43141f8057b36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6dd4577019442e4d2bfab318d0a66a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#ab6dd4577019442e4d2bfab318d0a66a8">grpc_connectivity_state_init</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> init_state, const char *name)</td></tr>
+<tr class="separator:ab6dd4577019442e4d2bfab318d0a66a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8e03f103b290be8de8041a63e469591"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#aa8e03f103b290be8de8041a63e469591">grpc_connectivity_state_destroy</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker)</td></tr>
+<tr class="separator:aa8e03f103b290be8de8041a63e469591"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7de513064c1e6d041b5c03611a21784c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#a7de513064c1e6d041b5c03611a21784c">grpc_connectivity_state_check</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker)</td></tr>
+<tr class="separator:a7de513064c1e6d041b5c03611a21784c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef05f23287d0e2ab2e469e7113d01827"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#aef05f23287d0e2ab2e469e7113d01827">grpc_connectivity_state_notify_on_state_change</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *current, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="memdesc:aef05f23287d0e2ab2e469e7113d01827"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return 1 if the channel should start connecting, 0 otherwise. <a href="#aef05f23287d0e2ab2e469e7113d01827">More...</a><br/></td></tr>
+<tr class="separator:aef05f23287d0e2ab2e469e7113d01827"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae542578d2026b84ff6d0403809e67ad7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#ae542578d2026b84ff6d0403809e67ad7">grpc_connectivity_state_set_with_scheduler</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state, void(*scheduler)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure), void *<a class="el" href="structarg.html">arg</a>, const char *reason)</td></tr>
+<tr class="separator:ae542578d2026b84ff6d0403809e67ad7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe2517530b344f8e062bbef25b8895c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#aafe2517530b344f8e062bbef25b8895c">grpc_connectivity_state_set</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state, const char *reason)</td></tr>
+<tr class="separator:aafe2517530b344f8e062bbef25b8895c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:aae556e492df3eb9d23c5bc5728b6662c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html#aae556e492df3eb9d23c5bc5728b6662c">grpc_connectivity_state_trace</a> = 0</td></tr>
+<tr class="separator:aae556e492df3eb9d23c5bc5728b6662c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7de513064c1e6d041b5c03611a21784c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_connectivity_state_check </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8e03f103b290be8de8041a63e469591"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab6dd4577019442e4d2bfab318d0a66a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>init_state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90cae61aab329c583da43141f8057b36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_connectivity_state_name </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>state</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef05f23287d0e2ab2e469e7113d01827"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_connectivity_state_notify_on_state_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>current</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return 1 if the channel should start connecting, 0 otherwise. </p>
+
+</div>
+</div>
+<a class="anchor" id="aafe2517530b344f8e062bbef25b8895c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae542578d2026b84ff6d0403809e67ad7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_set_with_scheduler </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)&#160;</td>
+ <td class="paramname"><em>scheduler</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="aae556e492df3eb9d23c5bc5728b6662c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_connectivity_state_trace = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/connectivity__state_8h.html b/doc/ref/core.internal/html/connectivity__state_8h.html
new file mode 100644
index 0000000000..9f5b713bb7
--- /dev/null
+++ b/doc/ref/core.internal/html/connectivity__state_8h.html
@@ -0,0 +1,344 @@
+<!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: src/core/transport/connectivity_state.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">connectivity_state.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+</div>
+<p><a href="connectivity__state_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aeda9add40d75e8ee7249a208e38a065a"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a">grpc_connectivity_state_watcher</a></td></tr>
+<tr class="separator:aeda9add40d75e8ee7249a208e38a065a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab6dd4577019442e4d2bfab318d0a66a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8">grpc_connectivity_state_init</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> init_state, const char *name)</td></tr>
+<tr class="separator:ab6dd4577019442e4d2bfab318d0a66a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8e03f103b290be8de8041a63e469591"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591">grpc_connectivity_state_destroy</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker)</td></tr>
+<tr class="separator:aa8e03f103b290be8de8041a63e469591"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe2517530b344f8e062bbef25b8895c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c">grpc_connectivity_state_set</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state, const char *reason)</td></tr>
+<tr class="separator:aafe2517530b344f8e062bbef25b8895c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae542578d2026b84ff6d0403809e67ad7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7">grpc_connectivity_state_set_with_scheduler</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state, void(*scheduler)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure), void *<a class="el" href="structarg.html">arg</a>, const char *reason)</td></tr>
+<tr class="separator:ae542578d2026b84ff6d0403809e67ad7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7de513064c1e6d041b5c03611a21784c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c">grpc_connectivity_state_check</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker)</td></tr>
+<tr class="separator:a7de513064c1e6d041b5c03611a21784c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef05f23287d0e2ab2e469e7113d01827"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827">grpc_connectivity_state_notify_on_state_change</a> (<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *current, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="memdesc:aef05f23287d0e2ab2e469e7113d01827"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return 1 if the channel should start connecting, 0 otherwise. <a href="#aef05f23287d0e2ab2e469e7113d01827">More...</a><br/></td></tr>
+<tr class="separator:aef05f23287d0e2ab2e469e7113d01827"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:aae556e492df3eb9d23c5bc5728b6662c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c">grpc_connectivity_state_trace</a></td></tr>
+<tr class="separator:aae556e492df3eb9d23c5bc5728b6662c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aeda9add40d75e8ee7249a208e38a065a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a> <a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7de513064c1e6d041b5c03611a21784c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_connectivity_state_check </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8e03f103b290be8de8041a63e469591"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab6dd4577019442e4d2bfab318d0a66a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>init_state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef05f23287d0e2ab2e469e7113d01827"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_connectivity_state_notify_on_state_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>current</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return 1 if the channel should start connecting, 0 otherwise. </p>
+
+</div>
+</div>
+<a class="anchor" id="aafe2517530b344f8e062bbef25b8895c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae542578d2026b84ff6d0403809e67ad7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connectivity_state_set_with_scheduler </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *&#160;</td>
+ <td class="paramname"><em>tracker</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)&#160;</td>
+ <td class="paramname"><em>scheduler</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="aae556e492df3eb9d23c5bc5728b6662c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_connectivity_state_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/connectivity__state_8h_source.html b/doc/ref/core.internal/html/connectivity__state_8h_source.html
new file mode 100644
index 0000000000..db822e9ad9
--- /dev/null
+++ b/doc/ref/core.internal/html/connectivity__state_8h_source.html
@@ -0,0 +1,194 @@
+<!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: src/core/transport/connectivity_state.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">connectivity_state.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="connectivity__state_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CONNECTIVITY_STATE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CONNECTIVITY_STATE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr_8h.html">src/core/iomgr/iomgr.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__watcher.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388"> 42</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a> *<a class="code" href="structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388">next</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f"> 44</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f">notify</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f"> 46</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *<a class="code" href="structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f">current</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <a class="code" href="connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a">grpc_connectivity_state_watcher</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__tracker.html"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e"> 51</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e">current_state</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd"> 53</a></span>&#160; <a class="code" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a> *<a class="code" href="structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd">watchers</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8"> 55</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8">name</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;} <a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c">grpc_connectivity_state_trace</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8">grpc_connectivity_state_init</a>(<a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> init_state,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591">grpc_connectivity_state_destroy</a>(<a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c">grpc_connectivity_state_set</a>(<a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7">grpc_connectivity_state_set_with_scheduler</a>(</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordtype">void</span> (*scheduler)(<span class="keywordtype">void</span> *<a class="code" href="structarg.html">arg</a>, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure), <span class="keywordtype">void</span> *arg,</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c">grpc_connectivity_state_check</a>(</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">int</span> <a class="code" href="connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827">grpc_connectivity_state_notify_on_state_change</a>(</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> *tracker, <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *current,</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CONNECTIVITY_STATE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> grpc.h:139</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__tracker_html_ae7f1a07e62d4fb307459586528f73cb8"><div class="ttname"><a href="structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8">grpc_connectivity_state_tracker::name</a></div><div class="ttdeci">char * name</div><div class="ttdoc">a name to help debugging </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:55</div></div>
+<div class="ttc" id="connectivity__state_8h_html_aef05f23287d0e2ab2e469e7113d01827"><div class="ttname"><a href="connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827">grpc_connectivity_state_notify_on_state_change</a></div><div class="ttdeci">int grpc_connectivity_state_notify_on_state_change(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state *current, grpc_iomgr_closure *notify)</div><div class="ttdoc">Return 1 if the channel should start connecting, 0 otherwise. </div><div class="ttdef"><b>Definition:</b> connectivity_state.c:87</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__watcher_html_af56652db73ffb05884d92d16713dc388"><div class="ttname"><a href="structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388">grpc_connectivity_state_watcher::next</a></div><div class="ttdeci">struct grpc_connectivity_state_watcher * next</div><div class="ttdoc">we keep watchers in a linked list </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:42</div></div>
+<div class="ttc" id="connectivity__state_8h_html_ae542578d2026b84ff6d0403809e67ad7"><div class="ttname"><a href="connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7">grpc_connectivity_state_set_with_scheduler</a></div><div class="ttdeci">void grpc_connectivity_state_set_with_scheduler(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, void(*scheduler)(void *arg, grpc_iomgr_closure *closure), void *arg, const char *reason)</div><div class="ttdef"><b>Definition:</b> connectivity_state.c:108</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="connectivity__state_8h_html_aeda9add40d75e8ee7249a208e38a065a"><div class="ttname"><a href="connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a">grpc_connectivity_state_watcher</a></div><div class="ttdeci">struct grpc_connectivity_state_watcher grpc_connectivity_state_watcher</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__tracker_html_a0729ebf58543059330612f61c6519fdd"><div class="ttname"><a href="structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd">grpc_connectivity_state_tracker::watchers</a></div><div class="ttdeci">grpc_connectivity_state_watcher * watchers</div><div class="ttdoc">all our watchers </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:53</div></div>
+<div class="ttc" id="connectivity__state_8h_html_aafe2517530b344f8e062bbef25b8895c"><div class="ttname"><a href="connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c">grpc_connectivity_state_set</a></div><div class="ttdeci">void grpc_connectivity_state_set(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, const char *reason)</div><div class="ttdef"><b>Definition:</b> connectivity_state.c:143</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__watcher_html_a87d9e862c853d0880382af9104ee2e9f"><div class="ttname"><a href="structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f">grpc_connectivity_state_watcher::notify</a></div><div class="ttdeci">grpc_iomgr_closure * notify</div><div class="ttdoc">closure to notify on change </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:44</div></div>
+<div class="ttc" id="connectivity__state_8h_html_a7de513064c1e6d041b5c03611a21784c"><div class="ttname"><a href="connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c">grpc_connectivity_state_check</a></div><div class="ttdeci">grpc_connectivity_state grpc_connectivity_state_check(grpc_connectivity_state_tracker *tracker)</div><div class="ttdef"><b>Definition:</b> connectivity_state.c:82</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__watcher_html_a3989271095271ebcaea6616e6afeff4f"><div class="ttname"><a href="structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f">grpc_connectivity_state_watcher::current</a></div><div class="ttdeci">grpc_connectivity_state * current</div><div class="ttdoc">the current state as believed by the watcher </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:46</div></div>
+<div class="ttc" id="connectivity__state_8h_html_aa8e03f103b290be8de8041a63e469591"><div class="ttname"><a href="connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591">grpc_connectivity_state_destroy</a></div><div class="ttdeci">void grpc_connectivity_state_destroy(grpc_connectivity_state_tracker *tracker)</div><div class="ttdef"><b>Definition:</b> connectivity_state.c:66</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__tracker_html_ab0095b36574489645353e10d707e629e"><div class="ttname"><a href="structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e">grpc_connectivity_state_tracker::current_state</a></div><div class="ttdeci">grpc_connectivity_state current_state</div><div class="ttdoc">current connectivity state </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:51</div></div>
+<div class="ttc" id="connectivity__state_8h_html_ab6dd4577019442e4d2bfab318d0a66a8"><div class="ttname"><a href="connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8">grpc_connectivity_state_init</a></div><div class="ttdeci">void grpc_connectivity_state_init(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state init_state, const char *name)</div><div class="ttdef"><b>Definition:</b> connectivity_state.c:58</div></div>
+<div class="ttc" id="iomgr_8h_html"><div class="ttname"><a href="iomgr_8h.html">iomgr.h</a></div></div>
+<div class="ttc" id="connectivity__state_8h_html_aae556e492df3eb9d23c5bc5728b6662c"><div class="ttname"><a href="connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c">grpc_connectivity_state_trace</a></div><div class="ttdeci">int grpc_connectivity_state_trace</div><div class="ttdef"><b>Definition:</b> connectivity_state.c:39</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="structgrpc__connectivity__state__watcher_html"><div class="ttname"><a href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a></div><div class="ttdef"><b>Definition:</b> connectivity_state.h:40</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__tracker_html"><div class="ttname"><a href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a></div><div class="ttdef"><b>Definition:</b> connectivity_state.h:49</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/connector_8c.html b/doc/ref/core.internal/html/connector_8c.html
new file mode 100644
index 0000000000..eb1aa4ef60
--- /dev/null
+++ b/doc/ref/core.internal/html/connector_8c.html
@@ -0,0 +1,183 @@
+<!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: src/core/client_config/connector.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">connector.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="connector_8h_source.html">src/core/client_config/connector.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a32f21c6a46c13ba6cc697cf94c45ca46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8c.html#a32f21c6a46c13ba6cc697cf94c45ca46">grpc_connector_ref</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td></tr>
+<tr class="separator:a32f21c6a46c13ba6cc697cf94c45ca46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab65e217852a93e4a8281e7003d72bcf6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8c.html#ab65e217852a93e4a8281e7003d72bcf6">grpc_connector_unref</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td></tr>
+<tr class="separator:ab65e217852a93e4a8281e7003d72bcf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae43acb2d650fdc8023d69a4a39781d4e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8c.html#ae43acb2d650fdc8023d69a4a39781d4e">grpc_connector_connect</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>, const <a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *in_args, <a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *out_args, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="separator:ae43acb2d650fdc8023d69a4a39781d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae43acb2d650fdc8023d69a4a39781d4e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connector_connect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *&#160;</td>
+ <td class="paramname"><em>in_args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *&#160;</td>
+ <td class="paramname"><em>out_args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a32f21c6a46c13ba6cc697cf94c45ca46"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connector_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab65e217852a93e4a8281e7003d72bcf6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connector_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/connector_8h.html b/doc/ref/core.internal/html/connector_8h.html
new file mode 100644
index 0000000000..65a23109ed
--- /dev/null
+++ b/doc/ref/core.internal/html/connector_8h.html
@@ -0,0 +1,233 @@
+<!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: src/core/client_config/connector.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">connector.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="sockaddr_8h_source.html">src/core/iomgr/sockaddr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div>
+<p><a href="connector_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connector.html">grpc_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aae174ab59659a89b5e73c565023961bb"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__connector.html">grpc_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8h.html#aae174ab59659a89b5e73c565023961bb">grpc_connector</a></td></tr>
+<tr class="separator:aae174ab59659a89b5e73c565023961bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add8d7e9bf9a65c5580489f9af7951bec"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8h.html#add8d7e9bf9a65c5580489f9af7951bec">grpc_connector_vtable</a></td></tr>
+<tr class="separator:add8d7e9bf9a65c5580489f9af7951bec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a32f21c6a46c13ba6cc697cf94c45ca46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46">grpc_connector_ref</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td></tr>
+<tr class="separator:a32f21c6a46c13ba6cc697cf94c45ca46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab65e217852a93e4a8281e7003d72bcf6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6">grpc_connector_unref</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td></tr>
+<tr class="separator:ab65e217852a93e4a8281e7003d72bcf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae43acb2d650fdc8023d69a4a39781d4e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e">grpc_connector_connect</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>, const <a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *in_args, <a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *out_args, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="separator:ae43acb2d650fdc8023d69a4a39781d4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aae174ab59659a89b5e73c565023961bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__connector.html">grpc_connector</a> <a class="el" href="structgrpc__connector.html">grpc_connector</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add8d7e9bf9a65c5580489f9af7951bec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a> <a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae43acb2d650fdc8023d69a4a39781d4e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connector_connect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *&#160;</td>
+ <td class="paramname"><em>in_args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *&#160;</td>
+ <td class="paramname"><em>out_args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a32f21c6a46c13ba6cc697cf94c45ca46"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connector_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab65e217852a93e4a8281e7003d72bcf6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_connector_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/connector_8h_source.html b/doc/ref/core.internal/html/connector_8h_source.html
new file mode 100644
index 0000000000..c557daebe4
--- /dev/null
+++ b/doc/ref/core.internal/html/connector_8h_source.html
@@ -0,0 +1,208 @@
+<!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: src/core/client_config/connector.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">connector.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="connector_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_CONNECTOR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_CONNECTOR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="sockaddr_8h.html">src/core/iomgr/sockaddr.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport_8h.html">src/core/transport/transport.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="connector_8h.html#aae174ab59659a89b5e73c565023961bb"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__connector.html">grpc_connector</a> <a class="code" href="structgrpc__connector.html">grpc_connector</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="connector_8h.html#add8d7e9bf9a65c5580489f9af7951bec"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a> <a class="code" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__connector.html"> 44</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__connector.html">grpc_connector</a> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec"> 45</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a> *<a class="code" href="structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec">vtable</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;};</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac"> 50</a></span>&#160; <a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *<a class="code" href="structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac">interested_parties</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834"> 52</a></span>&#160; <span class="keyword">const</span> <span class="keyword">struct </span>sockaddr *<a class="code" href="structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834">addr</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b"> 53</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b">addr_len</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c"> 55</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c">deadline</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab"> 57</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab">channel_args</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e"> 59</a></span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e">metadata_context</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;} <a class="code" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgrpc__connect__out__args.html"> 62</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9"> 64</a></span>&#160; <a class="code" href="structgrpc__transport.html">grpc_transport</a> *<a class="code" href="structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9">transport</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2"> 66</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **<a class="code" href="structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2">filters</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3"> 67</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3">num_filters</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;} <a class="code" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__connector__vtable.html"> 70</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a> {</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15"> 71</a></span>&#160; void (*<a class="code" href="structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15">ref</a>)(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9"> 72</a></span>&#160; void (*<a class="code" href="structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9">unref</a>)(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078"> 73</a></span>&#160; void (*<a class="code" href="structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078">connect</a>)(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>,</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *in_args,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *out_args, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;};</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46">grpc_connector_ref</a>(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6">grpc_connector_unref</a>(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e">grpc_connector_connect</a>(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *in_args,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *out_args,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="structgrpc__connector__vtable_html_ad68d5f41a883e3bd7934771e59f26b15"><div class="ttname"><a href="structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15">grpc_connector_vtable::ref</a></div><div class="ttdeci">void(* ref)(grpc_connector *connector)</div><div class="ttdef"><b>Definition:</b> connector.h:71</div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html_a6055926502e3764bc0d49c10b945f47e"><div class="ttname"><a href="structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e">grpc_connect_in_args::metadata_context</a></div><div class="ttdeci">grpc_mdctx * metadata_context</div><div class="ttdoc">metadata context </div><div class="ttdef"><b>Definition:</b> connector.h:59</div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html_aded5d906335c1ccdb58b4e97581bdc6c"><div class="ttname"><a href="structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c">grpc_connect_in_args::deadline</a></div><div class="ttdeci">gpr_timespec deadline</div><div class="ttdoc">deadline for connection </div><div class="ttdef"><b>Definition:</b> connector.h:55</div></div>
+<div class="ttc" id="transport_8h_html"><div class="ttname"><a href="transport_8h.html">transport.h</a></div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html_a258a95ae88f73e33680be007cf68521b"><div class="ttname"><a href="structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b">grpc_connect_in_args::addr_len</a></div><div class="ttdeci">int addr_len</div><div class="ttdef"><b>Definition:</b> connector.h:53</div></div>
+<div class="ttc" id="sockaddr_8h_html"><div class="ttname"><a href="sockaddr_8h.html">sockaddr.h</a></div></div>
+<div class="ttc" id="structconnector_html"><div class="ttname"><a href="structconnector.html">connector</a></div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:54</div></div>
+<div class="ttc" id="connector_8h_html_ab65e217852a93e4a8281e7003d72bcf6"><div class="ttname"><a href="connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6">grpc_connector_unref</a></div><div class="ttdeci">void grpc_connector_unref(grpc_connector *connector)</div><div class="ttdef"><b>Definition:</b> connector.c:40</div></div>
+<div class="ttc" id="structgrpc__connect__out__args_html_a96fdf8ea43f6e4a2ac73d2f6e21401a3"><div class="ttname"><a href="structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3">grpc_connect_out_args::num_filters</a></div><div class="ttdeci">size_t num_filters</div><div class="ttdef"><b>Definition:</b> connector.h:67</div></div>
+<div class="ttc" id="structgrpc__connector_html_ac4136d5397211527185fad5282ae01ec"><div class="ttname"><a href="structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec">grpc_connector::vtable</a></div><div class="ttdeci">const grpc_connector_vtable * vtable</div><div class="ttdef"><b>Definition:</b> connector.h:45</div></div>
+<div class="ttc" id="connector_8h_html_a32f21c6a46c13ba6cc697cf94c45ca46"><div class="ttname"><a href="connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46">grpc_connector_ref</a></div><div class="ttdeci">void grpc_connector_ref(grpc_connector *connector)</div><div class="ttdef"><b>Definition:</b> connector.c:36</div></div>
+<div class="ttc" id="structgrpc__connector__vtable_html"><div class="ttname"><a href="structgrpc__connector__vtable.html">grpc_connector_vtable</a></div><div class="ttdef"><b>Definition:</b> connector.h:70</div></div>
+<div class="ttc" id="connector_8h_html_ae43acb2d650fdc8023d69a4a39781d4e"><div class="ttname"><a href="connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e">grpc_connector_connect</a></div><div class="ttdeci">void grpc_connector_connect(grpc_connector *connector, const grpc_connect_in_args *in_args, grpc_connect_out_args *out_args, grpc_iomgr_closure *notify)</div><div class="ttdef"><b>Definition:</b> connector.c:44</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__connector_html"><div class="ttname"><a href="structgrpc__connector.html">grpc_connector</a></div><div class="ttdef"><b>Definition:</b> connector.h:44</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html_aa7c2d0108c593d04eab1f02abdb835ac"><div class="ttname"><a href="structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac">grpc_connect_in_args::interested_parties</a></div><div class="ttdeci">grpc_pollset_set * interested_parties</div><div class="ttdoc">set of pollsets interested in this connection </div><div class="ttdef"><b>Definition:</b> connector.h:50</div></div>
+<div class="ttc" id="structgrpc__connect__out__args_html_abc6070bbb1030b29072cc242faf7f5b9"><div class="ttname"><a href="structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9">grpc_connect_out_args::transport</a></div><div class="ttdeci">grpc_transport * transport</div><div class="ttdoc">the connected transport </div><div class="ttdef"><b>Definition:</b> connector.h:64</div></div>
+<div class="ttc" id="structgrpc__connector__vtable_html_ae51b646aa858eeeb84a7a1abbebbf078"><div class="ttname"><a href="structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078">grpc_connector_vtable::connect</a></div><div class="ttdeci">void(* connect)(grpc_connector *connector, const grpc_connect_in_args *in_args, grpc_connect_out_args *out_args, grpc_iomgr_closure *notify)</div><div class="ttdef"><b>Definition:</b> connector.h:73</div></div>
+<div class="ttc" id="structgrpc__connect__out__args_html"><div class="ttname"><a href="structgrpc__connect__out__args.html">grpc_connect_out_args</a></div><div class="ttdef"><b>Definition:</b> connector.h:62</div></div>
+<div class="ttc" id="structgrpc__connector__vtable_html_a0b03677e3ce015e7dc092cd33475c1f9"><div class="ttname"><a href="structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9">grpc_connector_vtable::unref</a></div><div class="ttdeci">void(* unref)(grpc_connector *connector)</div><div class="ttdef"><b>Definition:</b> connector.h:72</div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html"><div class="ttname"><a href="structgrpc__connect__in__args.html">grpc_connect_in_args</a></div><div class="ttdef"><b>Definition:</b> connector.h:48</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="structgrpc__connect__out__args_html_a265b258502606ef7943a43591bbdc4b2"><div class="ttname"><a href="structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2">grpc_connect_out_args::filters</a></div><div class="ttdeci">const grpc_channel_filter ** filters</div><div class="ttdoc">any additional filters (owned by the caller of connect) </div><div class="ttdef"><b>Definition:</b> connector.h:66</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html_a01c5d04f3df0288acdd6e68e84ac1834"><div class="ttname"><a href="structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834">grpc_connect_in_args::addr</a></div><div class="ttdeci">const struct sockaddr * addr</div><div class="ttdoc">address to connect to </div><div class="ttdef"><b>Definition:</b> connector.h:52</div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="structgrpc__connect__in__args_html_a47bff8f21e77a47f1a3584e874006eab"><div class="ttname"><a href="structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab">grpc_connect_in_args::channel_args</a></div><div class="ttdeci">const grpc_channel_args * channel_args</div><div class="ttdoc">channel arguments (to be passed to transport) </div><div class="ttdef"><b>Definition:</b> connector.h:57</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/context_8c.html b/doc/ref/core.internal/html/context_8c.html
new file mode 100644
index 0000000000..17fa573c47
--- /dev/null
+++ b/doc/ref/core.internal/html/context_8c.html
@@ -0,0 +1,190 @@
+<!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: src/core/census/context.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">context.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="census_2context_8h_source.html">src/core/census/context.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="census_8h_source.html">grpc/census.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad9a7d3170ecf720e1b22a4f255605748"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="context_8c.html#ad9a7d3170ecf720e1b22a4f255605748">census_context_serialize</a> (const <a class="el" href="structcensus__context.html">census_context</a> *context, char *buffer, size_t buf_size)</td></tr>
+<tr class="separator:ad9a7d3170ecf720e1b22a4f255605748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9daab242b41571299ac5b3bca71fc0d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="context_8c.html#ad9daab242b41571299ac5b3bca71fc0d">census_context_deserialize</a> (const char *buffer, <a class="el" href="structcensus__context.html">census_context</a> **context)</td></tr>
+<tr class="separator:ad9daab242b41571299ac5b3bca71fc0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bfcd1edc546eeacf111c3316ae7785d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="context_8c.html#a5bfcd1edc546eeacf111c3316ae7785d">census_context_destroy</a> (<a class="el" href="structcensus__context.html">census_context</a> *context)</td></tr>
+<tr class="separator:a5bfcd1edc546eeacf111c3316ae7785d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad9daab242b41571299ac5b3bca71fc0d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_context_deserialize </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> **&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5bfcd1edc546eeacf111c3316ae7785d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void census_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad9a7d3170ecf720e1b22a4f255605748"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t census_context_serialize </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>buf_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cpu_8h.html b/doc/ref/core.internal/html/cpu_8h.html
new file mode 100644
index 0000000000..cbe54a8f5b
--- /dev/null
+++ b/doc/ref/core.internal/html/cpu_8h.html
@@ -0,0 +1,144 @@
+<!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: include/grpc/support/cpu.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">cpu.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="cpu_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abfe660c6872b008de80de5b39ac2538d"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu_8h.html#abfe660c6872b008de80de5b39ac2538d">gpr_cpu_num_cores</a> (void)</td></tr>
+<tr class="separator:abfe660c6872b008de80de5b39ac2538d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad713326192eea685047b742f1da87c1d"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu_8h.html#ad713326192eea685047b742f1da87c1d">gpr_cpu_current_cpu</a> (void)</td></tr>
+<tr class="separator:ad713326192eea685047b742f1da87c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad713326192eea685047b742f1da87c1d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned gpr_cpu_current_cpu </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abfe660c6872b008de80de5b39ac2538d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned gpr_cpu_num_cores </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cpu_8h_source.html b/doc/ref/core.internal/html/cpu_8h_source.html
new file mode 100644
index 0000000000..9619cb2a9a
--- /dev/null
+++ b/doc/ref/core.internal/html/cpu_8h_source.html
@@ -0,0 +1,158 @@
+<!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: include/grpc/support/cpu.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">cpu.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="cpu_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_CPU_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_CPU_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Interface providing CPU information for currently running system */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* Return the number of CPU cores on the current system. Will return 0 if</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> the information is not available. */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="cpu_8h.html#abfe660c6872b008de80de5b39ac2538d">gpr_cpu_num_cores</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Return the CPU on which the current thread is executing; N.B. This should</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> be considered advisory only - it is possible that the thread is switched</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> to a different CPU at any time. Returns a value in range</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> [0, gpr_cpu_num_cores() - 1] */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">unsigned</span> <a class="code" href="cpu_8h.html#ad713326192eea685047b742f1da87c1d">gpr_cpu_current_cpu</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span>} <span class="comment">// extern &quot;C&quot;</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_CPU_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="cpu_8h_html_abfe660c6872b008de80de5b39ac2538d"><div class="ttname"><a href="cpu_8h.html#abfe660c6872b008de80de5b39ac2538d">gpr_cpu_num_cores</a></div><div class="ttdeci">unsigned gpr_cpu_num_cores(void)</div></div>
+<div class="ttc" id="cpu_8h_html_ad713326192eea685047b742f1da87c1d"><div class="ttname"><a href="cpu_8h.html#ad713326192eea685047b742f1da87c1d">gpr_cpu_current_cpu</a></div><div class="ttdeci">unsigned gpr_cpu_current_cpu(void)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/cpu__iphone_8c.html b/doc/ref/core.internal/html/cpu__iphone_8c.html
new file mode 100644
index 0000000000..fda1bf053e
--- /dev/null
+++ b/doc/ref/core.internal/html/cpu__iphone_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/cpu_iphone.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">cpu_iphone.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/cpu__linux_8c.html b/doc/ref/core.internal/html/cpu__linux_8c.html
new file mode 100644
index 0000000000..321898a586
--- /dev/null
+++ b/doc/ref/core.internal/html/cpu__linux_8c.html
@@ -0,0 +1,121 @@
+<!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: src/core/support/cpu_linux.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">cpu_linux.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a369266c24eacffb87046522897a570d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu__linux_8c.html#a369266c24eacffb87046522897a570d5">_GNU_SOURCE</a></td></tr>
+<tr class="separator:a369266c24eacffb87046522897a570d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a369266c24eacffb87046522897a570d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define _GNU_SOURCE</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/cpu__posix_8c.html b/doc/ref/core.internal/html/cpu__posix_8c.html
new file mode 100644
index 0000000000..9b7ac95297
--- /dev/null
+++ b/doc/ref/core.internal/html/cpu__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/cpu_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">cpu_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/cpu__windows_8c.html b/doc/ref/core.internal/html/cpu__windows_8c.html
new file mode 100644
index 0000000000..a34a4abcd7
--- /dev/null
+++ b/doc/ref/core.internal/html/cpu__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/cpu_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">cpu_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/credentials_8c.html b/doc/ref/core.internal/html/credentials_8c.html
new file mode 100644
index 0000000000..1d716338d8
--- /dev/null
+++ b/doc/ref/core.internal/html/credentials_8c.html
@@ -0,0 +1,825 @@
+<!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: src/core/security/credentials.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">credentials.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="http__client__filter_8h_source.html">src/core/channel/http_client_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="json_8h_source.html">src/core/json/json.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html">grpc_composite_credentials_metadata_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a62061acac11e854a58c5faca6956e609"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a62061acac11e854a58c5faca6956e609">grpc_credentials_ref</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a62061acac11e854a58c5faca6956e609"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63d4aa3f072736ba5eb168e12c306e56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a63d4aa3f072736ba5eb168e12c306e56">grpc_credentials_unref</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a63d4aa3f072736ba5eb168e12c306e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c01e107d41e964458fdf701b8b81440"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a6c01e107d41e964458fdf701b8b81440">grpc_credentials_release</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a6c01e107d41e964458fdf701b8b81440"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad44c9cce8c086f8c083e5d5006e3310a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#ad44c9cce8c086f8c083e5d5006e3310a">grpc_credentials_has_request_metadata</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:ad44c9cce8c086f8c083e5d5006e3310a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a726f818ebdd9e781b090cf7d27347b7a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a726f818ebdd9e781b090cf7d27347b7a">grpc_credentials_has_request_metadata_only</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a726f818ebdd9e781b090cf7d27347b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe8d4191ee0f0f67684fd2575173cabc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#afe8d4191ee0f0f67684fd2575173cabc">grpc_credentials_get_request_metadata</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *service_url, <a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:afe8d4191ee0f0f67684fd2575173cabc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af26c4ee0ed97f2e88958c54ba22d5759"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#af26c4ee0ed97f2e88958c54ba22d5759">grpc_credentials_create_security_connector</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc, <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> **new_args)</td></tr>
+<tr class="separator:af26c4ee0ed97f2e88958c54ba22d5759"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e9f9320f4f8d2d534d04ed642f032ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a6e9f9320f4f8d2d534d04ed642f032ea">grpc_server_credentials_release</a> (<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds)</td></tr>
+<tr class="separator:a6e9f9320f4f8d2d534d04ed642f032ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc8fc30e87ddec6ff87dd6676215755a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#acc8fc30e87ddec6ff87dd6676215755a">grpc_server_credentials_create_security_connector</a> (<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds, <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc)</td></tr>
+<tr class="separator:acc8fc30e87ddec6ff87dd6676215755a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d627ca897718091e4ceca5dce3ef10e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a0d627ca897718091e4ceca5dce3ef10e">grpc_ssl_credentials_create</a> (const char *pem_root_certs, <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *pem_key_cert_pair)</td></tr>
+<tr class="separator:a0d627ca897718091e4ceca5dce3ef10e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3382907a4689c034a6f55bab4d5135b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a3382907a4689c034a6f55bab4d5135b9">grpc_ssl_server_credentials_create</a> (const char *pem_root_certs, <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth)</td></tr>
+<tr class="separator:a3382907a4689c034a6f55bab4d5135b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26715660e319377bdfc4f2476ff35505"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a26715660e319377bdfc4f2476ff35505">grpc_service_account_jwt_access_credentials_create_from_auth_json_key</a> (<a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime)</td></tr>
+<tr class="separator:a26715660e319377bdfc4f2476ff35505"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af26993774cc991debd61e4a84ed49187"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#af26993774cc991debd61e4a84ed49187">grpc_service_account_jwt_access_credentials_create</a> (const char *json_key, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime)</td></tr>
+<tr class="separator:af26993774cc991debd61e4a84ed49187"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a642f68664ea54ce67c7f752c33e01877"><td class="memItemLeft" align="right" valign="top"><a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a642f68664ea54ce67c7f752c33e01877">grpc_oauth2_token_fetcher_credentials_parse_server_response</a> (const <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *response, <a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> **token_md, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *token_lifetime)</td></tr>
+<tr class="separator:a642f68664ea54ce67c7f752c33e01877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3beb3fe683139856e1a13c27d760eb95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a3beb3fe683139856e1a13c27d760eb95">grpc_compute_engine_credentials_create</a> (void)</td></tr>
+<tr class="separator:a3beb3fe683139856e1a13c27d760eb95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15aa83608fad085b6244de659d322b27"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a15aa83608fad085b6244de659d322b27">grpc_service_account_credentials_create</a> (const char *json_key, const char *scope, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime)</td></tr>
+<tr class="separator:a15aa83608fad085b6244de659d322b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0effe35d7112502e48014662eb7015cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a0effe35d7112502e48014662eb7015cf">grpc_refresh_token_credentials_create_from_auth_refresh_token</a> (<a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> refresh_token)</td></tr>
+<tr class="separator:a0effe35d7112502e48014662eb7015cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a2440ad02b6a96adbd2c6e5d66fd7d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">grpc_refresh_token_credentials_create</a> (const char *json_refresh_token)</td></tr>
+<tr class="separator:a7a2440ad02b6a96adbd2c6e5d66fd7d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8aefd37c9b6f7639d730ea60960a9e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#ac8aefd37c9b6f7639d730ea60960a9e7">on_simulated_token_fetch_done</a> (void *user_data, int success)</td></tr>
+<tr class="separator:ac8aefd37c9b6f7639d730ea60960a9e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac749a71cdf28ebdc69d25cde612b22cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#ac749a71cdf28ebdc69d25cde612b22cc">grpc_fake_oauth2_credentials_create</a> (const char *token_md_value, int is_async)</td></tr>
+<tr class="separator:ac749a71cdf28ebdc69d25cde612b22cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ef8e179bb5d15c81dfd363924db0041"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a7ef8e179bb5d15c81dfd363924db0041">grpc_access_token_credentials_create</a> (const char *access_token)</td></tr>
+<tr class="separator:a7ef8e179bb5d15c81dfd363924db0041"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab970b1925f494cb159a29a404f23d157"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#ab970b1925f494cb159a29a404f23d157">grpc_fake_transport_security_credentials_create</a> (void)</td></tr>
+<tr class="separator:ab970b1925f494cb159a29a404f23d157"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60f9433cc38460bb83da148eff9475ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a60f9433cc38460bb83da148eff9475ae">grpc_fake_transport_security_server_credentials_create</a> (void)</td></tr>
+<tr class="separator:a60f9433cc38460bb83da148eff9475ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f65f01fb23e963cc88bcdfbede70da7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a4f65f01fb23e963cc88bcdfbede70da7">grpc_composite_credentials_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds1, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds2)</td></tr>
+<tr class="separator:a4f65f01fb23e963cc88bcdfbede70da7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3ea491e3e847e603c0da420375b6e60"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#ac3ea491e3e847e603c0da420375b6e60">grpc_composite_credentials_get_credentials</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:ac3ea491e3e847e603c0da420375b6e60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a6be957afa38741405a5a41cdd752e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#a4a6be957afa38741405a5a41cdd752e1">grpc_credentials_contains_type</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, const char *type, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> **composite_creds)</td></tr>
+<tr class="separator:a4a6be957afa38741405a5a41cdd752e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad16075798f906b98e0fb3e3018f22ae0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html#ad16075798f906b98e0fb3e3018f22ae0">grpc_iam_credentials_create</a> (const char *token, const char *authority_selector)</td></tr>
+<tr class="separator:ad16075798f906b98e0fb3e3018f22ae0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7ef8e179bb5d15c81dfd363924db0041"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_access_token_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>access_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f65f01fb23e963cc88bcdfbede70da7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_composite_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac3ea491e3e847e603c0da420375b6e60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a>* grpc_composite_credentials_get_credentials </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3beb3fe683139856e1a13c27d760eb95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_compute_engine_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4a6be957afa38741405a5a41cdd752e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_credentials_contains_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> **&#160;</td>
+ <td class="paramname"><em>composite_creds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af26c4ee0ed97f2e88958c54ba22d5759"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_credentials_create_security_connector </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata_creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> **&#160;</td>
+ <td class="paramname"><em>new_args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe8d4191ee0f0f67684fd2575173cabc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_get_request_metadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>service_url</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad44c9cce8c086f8c083e5d5006e3310a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_credentials_has_request_metadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a726f818ebdd9e781b090cf7d27347b7a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_credentials_has_request_metadata_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a62061acac11e854a58c5faca6956e609"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_credentials_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c01e107d41e964458fdf701b8b81440"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_release </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63d4aa3f072736ba5eb168e12c306e56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac749a71cdf28ebdc69d25cde612b22cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_fake_oauth2_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>token_md_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_async</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab970b1925f494cb159a29a404f23d157"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_fake_transport_security_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a60f9433cc38460bb83da148eff9475ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>* grpc_fake_transport_security_server_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad16075798f906b98e0fb3e3018f22ae0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_iam_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>token</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>authority_selector</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a642f68664ea54ce67c7f752c33e01877"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a> grpc_oauth2_token_fetcher_credentials_parse_server_response </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *&#160;</td>
+ <td class="paramname"><em>response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> **&#160;</td>
+ <td class="paramname"><em>token_md</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a2440ad02b6a96adbd2c6e5d66fd7d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_refresh_token_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0effe35d7112502e48014662eb7015cf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_refresh_token_credentials_create_from_auth_refresh_token </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td>
+ <td class="paramname"><em>refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acc8fc30e87ddec6ff87dd6676215755a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_server_credentials_create_security_connector </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e9f9320f4f8d2d534d04ed642f032ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_credentials_release </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15aa83608fad085b6244de659d322b27"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_service_account_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>scope</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af26993774cc991debd61e4a84ed49187"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_service_account_jwt_access_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a26715660e319377bdfc4f2476ff35505"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_service_account_jwt_access_credentials_create_from_auth_json_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d627ca897718091e4ceca5dce3ef10e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_ssl_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *&#160;</td>
+ <td class="paramname"><em>pem_key_cert_pair</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3382907a4689c034a6f55bab4d5135b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>* grpc_ssl_server_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *&#160;</td>
+ <td class="paramname"><em>pem_key_cert_pairs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_key_cert_pairs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>force_client_auth</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac8aefd37c9b6f7639d730ea60960a9e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void on_simulated_token_fetch_done </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/credentials_8h.html b/doc/ref/core.internal/html/credentials_8h.html
new file mode 100644
index 0000000000..2efcbad006
--- /dev/null
+++ b/doc/ref/core.internal/html/credentials_8h.html
@@ -0,0 +1,1053 @@
+<!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: src/core/security/credentials.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">credentials.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="stream__op_8h_source.html">src/core/transport/stream_op.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc__security_8h_source.html">grpc/grpc_security.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="json__token_8h_source.html">src/core/security/json_token.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+</div>
+<p><a href="credentials_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md.html">grpc_credentials_md</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__credentials.html">grpc_ssl_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__credentials.html">grpc_ssl_server_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html">grpc_service_account_jwt_access_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__credentials.html">grpc_service_account_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__refresh__token__credentials.html">grpc_refresh_token_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__access__token__credentials.html">grpc_access_token_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__oauth2__credentials.html">grpc_fake_oauth2_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iam__credentials.html">grpc_iam_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials.html">grpc_composite_credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a2f398e72138c69b2928abb30e54ce4ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a2f398e72138c69b2928abb30e54ce4ce">GRPC_FAKE_TRANSPORT_SECURITY_TYPE</a>&#160;&#160;&#160;&quot;fake&quot;</td></tr>
+<tr class="separator:a2f398e72138c69b2928abb30e54ce4ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae74910f24a7fe0d54c326a1ed9e5e127"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ae74910f24a7fe0d54c326a1ed9e5e127">GRPC_CREDENTIALS_TYPE_SSL</a>&#160;&#160;&#160;&quot;Ssl&quot;</td></tr>
+<tr class="separator:ae74910f24a7fe0d54c326a1ed9e5e127"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1d383b3414af259ebc165ac21febd04"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ad1d383b3414af259ebc165ac21febd04">GRPC_CREDENTIALS_TYPE_OAUTH2</a>&#160;&#160;&#160;&quot;Oauth2&quot;</td></tr>
+<tr class="separator:ad1d383b3414af259ebc165ac21febd04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94b9c6715bdb2a6469fe0db959358d2c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a94b9c6715bdb2a6469fe0db959358d2c">GRPC_CREDENTIALS_TYPE_JWT</a>&#160;&#160;&#160;&quot;Jwt&quot;</td></tr>
+<tr class="separator:a94b9c6715bdb2a6469fe0db959358d2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2921973fe6094cad4b3aa94b20d8e254"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a2921973fe6094cad4b3aa94b20d8e254">GRPC_CREDENTIALS_TYPE_IAM</a>&#160;&#160;&#160;&quot;Iam&quot;</td></tr>
+<tr class="separator:a2921973fe6094cad4b3aa94b20d8e254"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0712aea16b41a6d8c65dafcd9d12f599"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a0712aea16b41a6d8c65dafcd9d12f599">GRPC_CREDENTIALS_TYPE_COMPOSITE</a>&#160;&#160;&#160;&quot;Composite&quot;</td></tr>
+<tr class="separator:a0712aea16b41a6d8c65dafcd9d12f599"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30ae5fa2e94aeeca90b31d0fd7c416d4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a30ae5fa2e94aeeca90b31d0fd7c416d4">GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY</a>&#160;&#160;&#160;&quot;FakeTransportSecurity&quot;</td></tr>
+<tr class="separator:a30ae5fa2e94aeeca90b31d0fd7c416d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5d55c31d952d739f5be7de47ad425a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ae5d55c31d952d739f5be7de47ad425a3">GRPC_AUTHORIZATION_METADATA_KEY</a>&#160;&#160;&#160;&quot;Authorization&quot;</td></tr>
+<tr class="separator:ae5d55c31d952d739f5be7de47ad425a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac952f285c5ca94edcff909e37ae68402"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ac952f285c5ca94edcff909e37ae68402">GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY</a>&#160;&#160;&#160;&quot;x-goog-iam-authorization-token&quot;</td></tr>
+<tr class="separator:ac952f285c5ca94edcff909e37ae68402"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada8ea1fc7b28fb63283af76ad27761dd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ada8ea1fc7b28fb63283af76ad27761dd">GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY</a>&#160;&#160;&#160;&quot;x-goog-iam-authority-selector&quot;</td></tr>
+<tr class="separator:ada8ea1fc7b28fb63283af76ad27761dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6142eafe5116c797b860449a2fbb7bf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ac6142eafe5116c797b860449a2fbb7bf">GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY</a>&#160;&#160;&#160;&quot;gcloud&quot;</td></tr>
+<tr class="separator:ac6142eafe5116c797b860449a2fbb7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95d64473b3915a6a65e99ac283326e78"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a95d64473b3915a6a65e99ac283326e78">GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE</a>&#160;&#160;&#160;&quot;application_default_credentials.json&quot;</td></tr>
+<tr class="separator:a95d64473b3915a6a65e99ac283326e78"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63b03c9e9e071d5b7f2276c0ae196aeb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a63b03c9e9e071d5b7f2276c0ae196aeb">GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS</a>&#160;&#160;&#160;60</td></tr>
+<tr class="separator:a63b03c9e9e071d5b7f2276c0ae196aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2ca22068add36d00ce70643802ff647"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#af2ca22068add36d00ce70643802ff647">GRPC_COMPUTE_ENGINE_METADATA_HOST</a>&#160;&#160;&#160;&quot;metadata&quot;</td></tr>
+<tr class="separator:af2ca22068add36d00ce70643802ff647"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca8e8738c2c829c3cf48f49454f7188f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#aca8e8738c2c829c3cf48f49454f7188f">GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH</a>&#160;&#160;&#160;&quot;/computeMetadata/v1/instance/service-accounts/default/token&quot;</td></tr>
+<tr class="separator:aca8e8738c2c829c3cf48f49454f7188f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61dc5d4843d2e4b26aa48694efd08cd3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a61dc5d4843d2e4b26aa48694efd08cd3">GRPC_GOOGLE_OAUTH2_SERVICE_HOST</a>&#160;&#160;&#160;&quot;www.googleapis.com&quot;</td></tr>
+<tr class="separator:a61dc5d4843d2e4b26aa48694efd08cd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9cf32ba20b7ce3e171c87ab1c08b20c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#aa9cf32ba20b7ce3e171c87ab1c08b20c">GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH</a>&#160;&#160;&#160;&quot;/oauth2/v3/token&quot;</td></tr>
+<tr class="separator:aa9cf32ba20b7ce3e171c87ab1c08b20c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c5761f3829eca7ec24d5aa68272cad2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a5c5761f3829eca7ec24d5aa68272cad2">GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX</a></td></tr>
+<tr class="separator:a5c5761f3829eca7ec24d5aa68272cad2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adeaf95d65b517e001c71d1fb5e47c97a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#adeaf95d65b517e001c71d1fb5e47c97a">GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING</a>&#160;&#160;&#160;&quot;client_id=%s&amp;client_secret=%s&amp;refresh_token=%s&amp;grant_type=refresh_token&quot;</td></tr>
+<tr class="separator:adeaf95d65b517e001c71d1fb5e47c97a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3d93eb22b0fedde1b3f7b6b9ded3aaf2"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> )(void *user_data, <a class="el" href="structgrpc__credentials__md.html">grpc_credentials_md</a> *md_elems, size_t num_md, <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a> status)</td></tr>
+<tr class="separator:a3d93eb22b0fedde1b3f7b6b9ded3aaf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad254566b74763fc0ae17e07b230c862b"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ad254566b74763fc0ae17e07b230c862b">grpc_credentials_metadata_request</a></td></tr>
+<tr class="separator:ad254566b74763fc0ae17e07b230c862b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c5b440dff7801066f4afb03a60c249d"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">grpc_fetch_oauth2_func</a> )(<a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a> *req, <a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *http_context, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> response_cb, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="separator:a6c5b440dff7801066f4afb03a60c249d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a2f0ff51afd60f456086f0db9b67a13e4"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a> { <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15">GRPC_CREDENTIALS_OK</a> = 0,
+<a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a">GRPC_CREDENTIALS_ERROR</a>
+ }</td></tr>
+<tr class="separator:a2f0ff51afd60f456086f0db9b67a13e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aee28492ddb70e47b0778fc928be9159b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#aee28492ddb70e47b0778fc928be9159b">grpc_credentials_md_store_create</a> (size_t initial_capacity)</td></tr>
+<tr class="separator:aee28492ddb70e47b0778fc928be9159b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3676b161f50d5b36989af2624565596b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a3676b161f50d5b36989af2624565596b">grpc_credentials_md_store_add</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a3676b161f50d5b36989af2624565596b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51ccf8c724a8477d5efcf0e3f73ef3a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">grpc_credentials_md_store_add_cstrings</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store, const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a51ccf8c724a8477d5efcf0e3f73ef3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5535f991ceb2b2160aee414cf013ed73"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73">grpc_credentials_md_store_ref</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store)</td></tr>
+<tr class="separator:a5535f991ceb2b2160aee414cf013ed73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc507497ef8b5dda7074b63babaac366"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#afc507497ef8b5dda7074b63babaac366">grpc_credentials_md_store_unref</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store)</td></tr>
+<tr class="separator:afc507497ef8b5dda7074b63babaac366"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab970b1925f494cb159a29a404f23d157"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ab970b1925f494cb159a29a404f23d157">grpc_fake_transport_security_credentials_create</a> (void)</td></tr>
+<tr class="separator:ab970b1925f494cb159a29a404f23d157"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60f9433cc38460bb83da148eff9475ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a60f9433cc38460bb83da148eff9475ae">grpc_fake_transport_security_server_credentials_create</a> (void)</td></tr>
+<tr class="separator:a60f9433cc38460bb83da148eff9475ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c03f6a39aec4530a4a3024a8f9c2716"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716">grpc_get_well_known_google_credentials_file_path</a> (void)</td></tr>
+<tr class="separator:a3c03f6a39aec4530a4a3024a8f9c2716"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62061acac11e854a58c5faca6956e609"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a62061acac11e854a58c5faca6956e609">grpc_credentials_ref</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a62061acac11e854a58c5faca6956e609"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63d4aa3f072736ba5eb168e12c306e56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56">grpc_credentials_unref</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a63d4aa3f072736ba5eb168e12c306e56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad44c9cce8c086f8c083e5d5006e3310a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a">grpc_credentials_has_request_metadata</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:ad44c9cce8c086f8c083e5d5006e3310a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a726f818ebdd9e781b090cf7d27347b7a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a">grpc_credentials_has_request_metadata_only</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a726f818ebdd9e781b090cf7d27347b7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe8d4191ee0f0f67684fd2575173cabc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc">grpc_credentials_get_request_metadata</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *service_url, <a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:afe8d4191ee0f0f67684fd2575173cabc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af26c4ee0ed97f2e88958c54ba22d5759"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759">grpc_credentials_create_security_connector</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc, <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> **new_args)</td></tr>
+<tr class="separator:af26c4ee0ed97f2e88958c54ba22d5759"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0ed8f1e7494e839a3992c0a19fe0c67"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67">grpc_composite_credentials_get_credentials</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *composite_creds)</td></tr>
+<tr class="separator:ae0ed8f1e7494e839a3992c0a19fe0c67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a6be957afa38741405a5a41cdd752e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1">grpc_credentials_contains_type</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, const char *type, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> **composite_creds)</td></tr>
+<tr class="separator:a4a6be957afa38741405a5a41cdd752e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0dac46697efd780811863ee13c73fbd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#af0dac46697efd780811863ee13c73fbd">grpc_oauth2_token_fetcher_credentials_parse_server_response</a> (const struct <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *response, <a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> **token_md, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *token_lifetime)</td></tr>
+<tr class="separator:af0dac46697efd780811863ee13c73fbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e3aec152312d2b66ccd3b232317b10a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a">grpc_flush_cached_google_default_credentials</a> (void)</td></tr>
+<tr class="separator:a7e3aec152312d2b66ccd3b232317b10a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac749a71cdf28ebdc69d25cde612b22cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc">grpc_fake_oauth2_credentials_create</a> (const char *token_md_value, int is_async)</td></tr>
+<tr class="separator:ac749a71cdf28ebdc69d25cde612b22cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26715660e319377bdfc4f2476ff35505"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#a26715660e319377bdfc4f2476ff35505">grpc_service_account_jwt_access_credentials_create_from_auth_json_key</a> (<a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime)</td></tr>
+<tr class="separator:a26715660e319377bdfc4f2476ff35505"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af364310c463f2ddc7d714f2dbbd57e0d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d">grpc_refresh_token_credentials_create_from_auth_refresh_token</a> (<a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> token)</td></tr>
+<tr class="separator:af364310c463f2ddc7d714f2dbbd57e0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc8fc30e87ddec6ff87dd6676215755a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a">grpc_server_credentials_create_security_connector</a> (<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds, <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc)</td></tr>
+<tr class="separator:acc8fc30e87ddec6ff87dd6676215755a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ae5d55c31d952d739f5be7de47ad425a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_AUTHORIZATION_METADATA_KEY&#160;&#160;&#160;&quot;Authorization&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2ca22068add36d00ce70643802ff647"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_COMPUTE_ENGINE_METADATA_HOST&#160;&#160;&#160;&quot;metadata&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aca8e8738c2c829c3cf48f49454f7188f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH&#160;&#160;&#160;&quot;/computeMetadata/v1/instance/service-accounts/default/token&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0712aea16b41a6d8c65dafcd9d12f599"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CREDENTIALS_TYPE_COMPOSITE&#160;&#160;&#160;&quot;Composite&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a30ae5fa2e94aeeca90b31d0fd7c416d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY&#160;&#160;&#160;&quot;FakeTransportSecurity&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2921973fe6094cad4b3aa94b20d8e254"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CREDENTIALS_TYPE_IAM&#160;&#160;&#160;&quot;Iam&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a94b9c6715bdb2a6469fe0db959358d2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CREDENTIALS_TYPE_JWT&#160;&#160;&#160;&quot;Jwt&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1d383b3414af259ebc165ac21febd04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CREDENTIALS_TYPE_OAUTH2&#160;&#160;&#160;&quot;Oauth2&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae74910f24a7fe0d54c326a1ed9e5e127"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CREDENTIALS_TYPE_SSL&#160;&#160;&#160;&quot;Ssl&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2f398e72138c69b2928abb30e54ce4ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_FAKE_TRANSPORT_SECURITY_TYPE&#160;&#160;&#160;&quot;fake&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac6142eafe5116c797b860449a2fbb7bf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY&#160;&#160;&#160;&quot;gcloud&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a61dc5d4843d2e4b26aa48694efd08cd3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_OAUTH2_SERVICE_HOST&#160;&#160;&#160;&quot;www.googleapis.com&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa9cf32ba20b7ce3e171c87ab1c08b20c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH&#160;&#160;&#160;&quot;/oauth2/v3/token&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95d64473b3915a6a65e99ac283326e78"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE&#160;&#160;&#160;&quot;application_default_credentials.json&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ada8ea1fc7b28fb63283af76ad27761dd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY&#160;&#160;&#160;&quot;x-goog-iam-authority-selector&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac952f285c5ca94edcff909e37ae68402"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY&#160;&#160;&#160;&quot;x-goog-iam-authorization-token&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adeaf95d65b517e001c71d1fb5e47c97a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING&#160;&#160;&#160;&quot;client_id=%s&amp;client_secret=%s&amp;refresh_token=%s&amp;grant_type=refresh_token&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63b03c9e9e071d5b7f2276c0ae196aeb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS&#160;&#160;&#160;60</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c5761f3829eca7ec24d5aa68272cad2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="stringliteral">&quot;grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Ajwt-bearer&amp;&quot;</span> \</div>
+<div class="line"> <span class="stringliteral">&quot;assertion=&quot;</span></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a3d93eb22b0fedde1b3f7b6b9ded3aaf2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_credentials_metadata_cb)(void *user_data, <a class="el" href="structgrpc__credentials__md.html">grpc_credentials_md</a> *md_elems, size_t num_md, <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a> status)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad254566b74763fc0ae17e07b230c862b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a> <a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c5b440dff7801066f4afb03a60c249d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_fetch_oauth2_func)(<a class="el" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a> *req, <a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *http_context, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> response_cb, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a2f0ff51afd60f456086f0db9b67a13e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15"></a>GRPC_CREDENTIALS_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a"></a>GRPC_CREDENTIALS_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae0ed8f1e7494e839a3992c0a19fe0c67"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a>* grpc_composite_credentials_get_credentials </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>composite_creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4a6be957afa38741405a5a41cdd752e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_credentials_contains_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> **&#160;</td>
+ <td class="paramname"><em>composite_creds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af26c4ee0ed97f2e88958c54ba22d5759"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_credentials_create_security_connector </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata_creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> **&#160;</td>
+ <td class="paramname"><em>new_args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe8d4191ee0f0f67684fd2575173cabc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_get_request_metadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>service_url</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad44c9cce8c086f8c083e5d5006e3310a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_credentials_has_request_metadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a726f818ebdd9e781b090cf7d27347b7a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_credentials_has_request_metadata_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3676b161f50d5b36989af2624565596b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_md_store_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a51ccf8c724a8477d5efcf0e3f73ef3a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_md_store_add_cstrings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee28492ddb70e47b0778fc928be9159b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_credentials_md_store_create </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>initial_capacity</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5535f991ceb2b2160aee414cf013ed73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_credentials_md_store_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc507497ef8b5dda7074b63babaac366"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_md_store_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a62061acac11e854a58c5faca6956e609"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_credentials_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63d4aa3f072736ba5eb168e12c306e56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac749a71cdf28ebdc69d25cde612b22cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_fake_oauth2_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>token_md_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_async</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab970b1925f494cb159a29a404f23d157"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_fake_transport_security_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a60f9433cc38460bb83da148eff9475ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>* grpc_fake_transport_security_server_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7e3aec152312d2b66ccd3b232317b10a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_flush_cached_google_default_credentials </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3c03f6a39aec4530a4a3024a8f9c2716"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_get_well_known_google_credentials_file_path </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0dac46697efd780811863ee13c73fbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a> grpc_oauth2_token_fetcher_credentials_parse_server_response </td>
+ <td>(</td>
+ <td class="paramtype">const struct <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *&#160;</td>
+ <td class="paramname"><em>response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> **&#160;</td>
+ <td class="paramname"><em>token_md</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af364310c463f2ddc7d714f2dbbd57e0d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_refresh_token_credentials_create_from_auth_refresh_token </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td>
+ <td class="paramname"><em>token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acc8fc30e87ddec6ff87dd6676215755a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_server_credentials_create_security_connector </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a26715660e319377bdfc4f2476ff35505"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_service_account_jwt_access_credentials_create_from_auth_json_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/credentials_8h_source.html b/doc/ref/core.internal/html/credentials_8h_source.html
new file mode 100644
index 0000000000..4bfcdc070b
--- /dev/null
+++ b/doc/ref/core.internal/html/credentials_8h_source.html
@@ -0,0 +1,538 @@
+<!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: src/core/security/credentials.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">credentials.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="credentials_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_CREDENTIALS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_CREDENTIALS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="stream__op_8h.html">src/core/transport/stream_op.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc__security_8h.html">grpc/grpc_security.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="httpcli_8h.html">src/core/httpcli/httpcli.h</a>&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="json__token_8h.html">src/core/security/json_token.h</a>&quot;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="security__connector_8h.html">src/core/security/security_connector.h</a>&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* --- Constants. --- */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15"> 51</a></span>&#160; <a class="code" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15">GRPC_CREDENTIALS_OK</a> = 0,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a"> 52</a></span>&#160; <a class="code" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a">GRPC_CREDENTIALS_ERROR</a></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="credentials_8h.html#a2f398e72138c69b2928abb30e54ce4ce"> 55</a></span>&#160;<span class="preprocessor">#define GRPC_FAKE_TRANSPORT_SECURITY_TYPE &quot;fake&quot;</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="credentials_8h.html#ae74910f24a7fe0d54c326a1ed9e5e127"> 57</a></span>&#160;<span class="preprocessor">#define GRPC_CREDENTIALS_TYPE_SSL &quot;Ssl&quot;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="credentials_8h.html#ad1d383b3414af259ebc165ac21febd04"> 58</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CREDENTIALS_TYPE_OAUTH2 &quot;Oauth2&quot;</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="credentials_8h.html#a94b9c6715bdb2a6469fe0db959358d2c"> 59</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CREDENTIALS_TYPE_JWT &quot;Jwt&quot;</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="credentials_8h.html#a2921973fe6094cad4b3aa94b20d8e254"> 60</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CREDENTIALS_TYPE_IAM &quot;Iam&quot;</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="credentials_8h.html#a0712aea16b41a6d8c65dafcd9d12f599"> 61</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CREDENTIALS_TYPE_COMPOSITE &quot;Composite&quot;</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="credentials_8h.html#a30ae5fa2e94aeeca90b31d0fd7c416d4"> 62</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY &quot;FakeTransportSecurity&quot;</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="credentials_8h.html#ae5d55c31d952d739f5be7de47ad425a3"> 64</a></span>&#160;<span class="preprocessor">#define GRPC_AUTHORIZATION_METADATA_KEY &quot;Authorization&quot;</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="credentials_8h.html#ac952f285c5ca94edcff909e37ae68402"> 65</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY \</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"> &quot;x-goog-iam-authorization-token&quot;</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="credentials_8h.html#ada8ea1fc7b28fb63283af76ad27761dd"> 67</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY &quot;x-goog-iam-authority-selector&quot;</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="credentials_8h.html#ac6142eafe5116c797b860449a2fbb7bf"> 69</a></span>&#160;<span class="preprocessor">#define GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY &quot;gcloud&quot;</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="credentials_8h.html#a95d64473b3915a6a65e99ac283326e78"> 70</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE \</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor"> &quot;application_default_credentials.json&quot;</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="credentials_8h.html#a63b03c9e9e071d5b7f2276c0ae196aeb"> 73</a></span>&#160;<span class="preprocessor">#define GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS 60</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="credentials_8h.html#af2ca22068add36d00ce70643802ff647"> 75</a></span>&#160;<span class="preprocessor">#define GRPC_COMPUTE_ENGINE_METADATA_HOST &quot;metadata&quot;</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="credentials_8h.html#aca8e8738c2c829c3cf48f49454f7188f"> 76</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH \</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"> &quot;/computeMetadata/v1/instance/service-accounts/default/token&quot;</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="credentials_8h.html#a61dc5d4843d2e4b26aa48694efd08cd3"> 79</a></span>&#160;<span class="preprocessor">#define GRPC_GOOGLE_OAUTH2_SERVICE_HOST &quot;www.googleapis.com&quot;</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="credentials_8h.html#aa9cf32ba20b7ce3e171c87ab1c08b20c"> 80</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH &quot;/oauth2/v3/token&quot;</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="credentials_8h.html#a5c5761f3829eca7ec24d5aa68272cad2"> 82</a></span>&#160;<span class="preprocessor">#define GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX \</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor"> &quot;grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Ajwt-bearer&amp;&quot; \</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor"> &quot;assertion=&quot;</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="credentials_8h.html#adeaf95d65b517e001c71d1fb5e47c97a"> 86</a></span>&#160;<span class="preprocessor">#define GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING \</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"> &quot;client_id=%s&amp;client_secret=%s&amp;refresh_token=%s&amp;grant_type=refresh_token&quot;</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment">/* --- grpc_credentials_md. --- */</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md.html"> 91</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53"> 92</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53">key</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841"> 93</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841">value</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;} <a class="code" href="structgrpc__credentials__md.html">grpc_credentials_md</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md__store.html"> 96</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5"> 97</a></span>&#160; <a class="code" href="structgrpc__credentials__md.html">grpc_credentials_md</a> *<a class="code" href="structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5">entries</a>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259"> 98</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259">num_entries</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e"> 99</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e">allocated</a>;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694"> 100</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694">refcount</a>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;} <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="credentials_8h.html#aee28492ddb70e47b0778fc928be9159b">grpc_credentials_md_store_create</a>(</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordtype">size_t</span> initial_capacity);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/* Will ref key and value. */</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keywordtype">void</span> <a class="code" href="credentials_8h.html#a3676b161f50d5b36989af2624565596b">grpc_credentials_md_store_add</a>(<a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keywordtype">void</span> <a class="code" href="credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">grpc_credentials_md_store_add_cstrings</a>(<a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store,</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73">grpc_credentials_md_store_ref</a>(</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store);</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">void</span> <a class="code" href="credentials_8h.html#afc507497ef8b5dda7074b63babaac366">grpc_credentials_md_store_unref</a>(<a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store);</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment">/* --- grpc_credentials. --- */</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">/* Creates a fake transport security credentials object for testing. */</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="credentials_8h.html#ab970b1925f494cb159a29a404f23d157">grpc_fake_transport_security_credentials_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment">/* Creates a fake server transport security credentials object for testing. */</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *<a class="code" href="credentials_8h.html#a60f9433cc38460bb83da148eff9475ae">grpc_fake_transport_security_server_credentials_create</a>(</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment">/* It is the caller&#39;s responsibility to gpr_free the result if not NULL. */</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716">grpc_get_well_known_google_credentials_file_path</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2"> 126</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a>)(<span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="structgrpc__credentials__md.html">grpc_credentials_md</a> *md_elems,</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordtype">size_t</span> num_md,</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a> status);</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="structgrpc__credentials__vtable.html"> 131</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="structgrpc__credentials__vtable.html#a95766dfd1880536b6b891b18514b5720"> 132</a></span>&#160; void (*destroy)(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *c);</div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="structgrpc__credentials__vtable.html#acd487d7cf9dab42866c366a212ef4b15"> 133</a></span>&#160; int (*has_request_metadata)(<span class="keyword">const</span> <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *c);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="structgrpc__credentials__vtable.html#a2028660c297e6e08be99e09f068921e7"> 134</a></span>&#160; int (*has_request_metadata_only)(<span class="keyword">const</span> <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *c);</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="structgrpc__credentials__vtable.html#a14795750df563c75436add4e7c05603d"> 135</a></span>&#160; void (*get_request_metadata)(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *c, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *service_url,</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> cb,</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="structgrpc__credentials__vtable.html#a7bbb5a8658e7f2295ed816f7f60e6f00"> 139</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> (*create_security_connector)(</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *c, <span class="keyword">const</span> <span class="keywordtype">char</span> *target, <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds,</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc, <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> **new_args);</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;} <a class="code" href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a>;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="structgrpc__credentials.html"> 145</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__credentials.html">grpc_credentials</a> {</div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e"> 146</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a> *<a class="code" href="structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e">vtable</a>;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b"> 147</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b">type</a>;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6"> 148</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6">refcount</a>;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;};</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="credentials_8h.html#a62061acac11e854a58c5faca6956e609">grpc_credentials_ref</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="keywordtype">void</span> <a class="code" href="credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56">grpc_credentials_unref</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds);</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keywordtype">int</span> <a class="code" href="credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a">grpc_credentials_has_request_metadata</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds);</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keywordtype">int</span> <a class="code" href="credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a">grpc_credentials_has_request_metadata_only</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="keywordtype">void</span> <a class="code" href="credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc">grpc_credentials_get_request_metadata</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds,</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *service_url,</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> cb,</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment">/* Creates a security connector for the channel. May also create new channel</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> args for the channel to be used in place of the passed in const args if</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> returned non NULL. In that case the caller is responsible for destroying</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> new_args after channel creation. */</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759">grpc_credentials_create_security_connector</a>(</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds, <span class="keyword">const</span> <span class="keywordtype">char</span> *target, <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args,</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds,</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc, <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> **new_args);</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="structgrpc__credentials__array.html"> 170</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231"> 171</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> **<a class="code" href="structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231">creds_array</a>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96"> 172</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96">num_creds</a>;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;} <a class="code" href="structgrpc__credentials__array.html">grpc_credentials_array</a>;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keyword">const</span> <a class="code" href="structgrpc__credentials__array.html">grpc_credentials_array</a> *<a class="code" href="credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67">grpc_composite_credentials_get_credentials</a>(</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *composite_creds);</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment">/* Returns creds if creds is of the specified type or the inner creds of the</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"> specified type (if found), if the creds is of type COMPOSITE.</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> If composite_creds is not NULL, *composite_creds will point to creds if of</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> type COMPOSITE in case of success. */</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1">grpc_credentials_contains_type</a>(</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds, <span class="keyword">const</span> <span class="keywordtype">char</span> *type,</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> **composite_creds);</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment">/* Exposed for testing only. */</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<a class="code" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a></div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<a class="code" href="credentials_8h.html#af0dac46697efd780811863ee13c73fbd">grpc_oauth2_token_fetcher_credentials_parse_server_response</a>(</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">const</span> <span class="keyword">struct</span> <a class="code" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *response,</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> **token_md, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> *token_lifetime);</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="keywordtype">void</span> <a class="code" href="credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a">grpc_flush_cached_google_default_credentials</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment">/* Simulates an oauth2 token fetch with the specified value for testing. */</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc">grpc_fake_oauth2_credentials_create</a>(</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *token_md_value, <span class="keywordtype">int</span> is_async);</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment">/* Private constructor for jwt credentials from an already parsed json key.</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> Takes ownership of the key. */</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<a class="code" href="credentials_8h.html#a26715660e319377bdfc4f2476ff35505">grpc_service_account_jwt_access_credentials_create_from_auth_json_key</a>(</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime);</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment">/* Private constructor for refresh token credentials from an already parsed</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> refresh token. Takes ownership of the refresh token. */</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d">grpc_refresh_token_credentials_create_from_auth_refresh_token</a>(</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> token);</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment">/* --- grpc_server_credentials. --- */</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div>
+<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="structgrpc__server__credentials__vtable.html"> 210</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="structgrpc__server__credentials__vtable.html#a78347ce536f6c1885d49a6cd5106eade"> 211</a></span>&#160; void (*destroy)(<a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *c);</div>
+<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="structgrpc__server__credentials__vtable.html#af56836a7d92bb4475b92d5991eb9c30d"> 212</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> (*create_security_connector)(</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *c, <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc);</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;} <a class="code" href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a>;</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="structgrpc__server__credentials.html"> 216</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> {</div>
+<div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63"> 217</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a> *<a class="code" href="structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63">vtable</a>;</div>
+<div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c"> 218</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c">type</a>;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;};</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a">grpc_server_credentials_create_security_connector</a>(</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds, <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc);</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment">/* -- Ssl credentials. -- */</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div>
+<div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="structgrpc__ssl__credentials.html"> 226</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4"> 227</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4">base</a>;</div>
+<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06"> 228</a></span>&#160; <a class="code" href="structgrpc__ssl__config.html">grpc_ssl_config</a> <a class="code" href="structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06">config</a>;</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;} <a class="code" href="structgrpc__ssl__credentials.html">grpc_ssl_credentials</a>;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__credentials.html"> 231</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71"> 232</a></span>&#160; <a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> <a class="code" href="structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71">base</a>;</div>
+<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3"> 233</a></span>&#160; <a class="code" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> <a class="code" href="structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3">config</a>;</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;} <a class="code" href="structgrpc__ssl__server__credentials.html">grpc_ssl_server_credentials</a>;</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="comment">/* -- Jwt credentials -- */</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html"> 238</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4"> 239</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4">base</a>;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="comment">/* Have a simple cache for now with just 1 entry. We could have a map based on</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"> the service_url for a more sophisticated one. */</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94"> 243</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94">cache_mu</a>;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533"> 245</a></span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533">jwt_md</a>;</div>
+<div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb"> 246</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb">service_url</a>;</div>
+<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a"> 247</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a">jwt_expiration</a>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; } cached;</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div>
+<div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32"> 250</a></span>&#160; <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="code" href="structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32">key</a>;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126"> 251</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126">jwt_lifetime</a>;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;} <a class="code" href="structgrpc__service__account__jwt__access__credentials.html">grpc_service_account_jwt_access_credentials</a>;</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment">/* -- Oauth2TokenFetcher credentials --</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> This object is a base for credentials that need to acquire an oauth2 token</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment"> from an http service. */</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;</div>
+<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="credentials_8h.html#ad254566b74763fc0ae17e07b230c862b"> 259</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a></div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <a class="code" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a>;</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;</div>
+<div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d"> 262</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">grpc_fetch_oauth2_func</a>)(<a class="code" href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a> *req,</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *http_context,</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; <a class="code" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> response_cb,</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;</div>
+<div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html"> 268</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5"> 269</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5">base</a>;</div>
+<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45"> 270</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45">mu</a>;</div>
+<div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be"> 271</a></span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be">access_token_md</a>;</div>
+<div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13"> 272</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13">token_expiration</a>;</div>
+<div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8"> 273</a></span>&#160; <a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8">httpcli_context</a>;</div>
+<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54"> 274</a></span>&#160; <a class="code" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">grpc_fetch_oauth2_func</a> <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54">fetch_func</a>;</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;} <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a>;</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="comment">/* -- ServiceAccount credentials. -- */</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;</div>
+<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="structgrpc__service__account__credentials.html"> 279</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0"> 280</a></span>&#160; <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a> <a class="code" href="structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0">base</a>;</div>
+<div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd"> 281</a></span>&#160; <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="code" href="structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd">key</a>;</div>
+<div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f"> 282</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f">scope</a>;</div>
+<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae"> 283</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae">token_lifetime</a>;</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;} <a class="code" href="structgrpc__service__account__credentials.html">grpc_service_account_credentials</a>;</div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="comment">/* -- RefreshToken credentials. -- */</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div>
+<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="structgrpc__refresh__token__credentials.html"> 288</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e"> 289</a></span>&#160; <a class="code" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a> <a class="code" href="structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e">base</a>;</div>
+<div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb"> 290</a></span>&#160; <a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> <a class="code" href="structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb">refresh_token</a>;</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;} <a class="code" href="structgrpc__refresh__token__credentials.html">grpc_refresh_token_credentials</a>;</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="comment">/* -- Oauth2 Access Token credentials. -- */</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="structgrpc__access__token__credentials.html"> 295</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00296"></a><span class="lineno"><a class="line" href="structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b"> 296</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b">base</a>;</div>
+<div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09"> 297</a></span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09">access_token_md</a>;</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;} <a class="code" href="structgrpc__access__token__credentials.html">grpc_access_token_credentials</a>;</div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;</div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="comment">/* -- Fake Oauth2 credentials. -- */</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div>
+<div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="structgrpc__fake__oauth2__credentials.html"> 302</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901"> 303</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901">base</a>;</div>
+<div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693"> 304</a></span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693">access_token_md</a>;</div>
+<div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806"> 305</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806">is_async</a>;</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;} <a class="code" href="structgrpc__fake__oauth2__credentials.html">grpc_fake_oauth2_credentials</a>;</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment">/* -- IAM credentials. -- */</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div>
+<div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="structgrpc__iam__credentials.html"> 310</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d"> 311</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d">base</a>;</div>
+<div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8"> 312</a></span>&#160; <a class="code" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *<a class="code" href="structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8">iam_md</a>;</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;} <a class="code" href="structgrpc__iam__credentials.html">grpc_iam_credentials</a>;</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="comment">/* -- Composite credentials. -- */</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;</div>
+<div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="structgrpc__composite__credentials.html"> 317</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2"> 318</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2">base</a>;</div>
+<div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805"> 319</a></span>&#160; <a class="code" href="structgrpc__credentials__array.html">grpc_credentials_array</a> <a class="code" href="structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805">inner</a>;</div>
+<div class="line"><a name="l00320"></a><span class="lineno"><a class="line" href="structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637"> 320</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637">connector_creds</a>;</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;} <a class="code" href="structgrpc__composite__credentials.html">grpc_composite_credentials</a>;</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_CREDENTIALS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="credentials_8h_html_a2f0ff51afd60f456086f0db9b67a13e4"><div class="ttname"><a href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">grpc_credentials_status</a></div><div class="ttdeci">grpc_credentials_status</div><div class="ttdef"><b>Definition:</b> credentials.h:50</div></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_a1bdefcea33f490d5a40414fa10938533"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533">grpc_service_account_jwt_access_credentials::jwt_md</a></div><div class="ttdeci">grpc_credentials_md_store * jwt_md</div><div class="ttdef"><b>Definition:</b> credentials.h:245</div></div>
+<div class="ttc" id="structgrpc__credentials__vtable_html"><div class="ttname"><a href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a></div><div class="ttdef"><b>Definition:</b> credentials.h:131</div></div>
+<div class="ttc" id="structgrpc__credentials__md__store_html_ab5f2f62b101f1d05a11340bc45eb71c5"><div class="ttname"><a href="structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5">grpc_credentials_md_store::entries</a></div><div class="ttdeci">grpc_credentials_md * entries</div><div class="ttdef"><b>Definition:</b> credentials.h:97</div></div>
+<div class="ttc" id="structgrpc__server__credentials__vtable_html"><div class="ttname"><a href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a></div><div class="ttdef"><b>Definition:</b> credentials.h:210</div></div>
+<div class="ttc" id="credentials_8h_html_a726f818ebdd9e781b090cf7d27347b7a"><div class="ttname"><a href="credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a">grpc_credentials_has_request_metadata_only</a></div><div class="ttdeci">int grpc_credentials_has_request_metadata_only(grpc_credentials *creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:102</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_a17f125b4f728143947f9917390316126"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126">grpc_service_account_jwt_access_credentials::jwt_lifetime</a></div><div class="ttdeci">gpr_timespec jwt_lifetime</div><div class="ttdef"><b>Definition:</b> credentials.h:251</div></div>
+<div class="ttc" id="structgrpc__credentials__md__store_html_adf0f64c7bbf264de9434ea9d656bf694"><div class="ttname"><a href="structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694">grpc_credentials_md_store::refcount</a></div><div class="ttdeci">gpr_refcount refcount</div><div class="ttdef"><b>Definition:</b> credentials.h:100</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="credentials_8h_html_a3d93eb22b0fedde1b3f7b6b9ded3aaf2"><div class="ttname"><a href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a></div><div class="ttdeci">void(* grpc_credentials_metadata_cb)(void *user_data, grpc_credentials_md *md_elems, size_t num_md, grpc_credentials_status status)</div><div class="ttdef"><b>Definition:</b> credentials.h:126</div></div>
+<div class="ttc" id="structgrpc__credentials__md_html"><div class="ttname"><a href="structgrpc__credentials__md.html">grpc_credentials_md</a></div><div class="ttdef"><b>Definition:</b> credentials.h:91</div></div>
+<div class="ttc" id="credentials_8h_html_aee28492ddb70e47b0778fc928be9159b"><div class="ttname"><a href="credentials_8h.html#aee28492ddb70e47b0778fc928be9159b">grpc_credentials_md_store_create</a></div><div class="ttdeci">grpc_credentials_md_store * grpc_credentials_md_store_create(size_t initial_capacity)</div><div class="ttdef"><b>Definition:</b> credentials_metadata.c:48</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:268</div></div>
+<div class="ttc" id="structgrpc__service__account__credentials_html"><div class="ttname"><a href="structgrpc__service__account__credentials.html">grpc_service_account_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:279</div></div>
+<div class="ttc" id="httpcli_8h_html"><div class="ttname"><a href="httpcli_8h.html">httpcli.h</a></div></div>
+<div class="ttc" id="structgrpc__fake__oauth2__credentials_html_a497212470e93de0f855f946c4e38b693"><div class="ttname"><a href="structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693">grpc_fake_oauth2_credentials::access_token_md</a></div><div class="ttdeci">grpc_credentials_md_store * access_token_md</div><div class="ttdef"><b>Definition:</b> credentials.h:304</div></div>
+<div class="ttc" id="structgrpc__server__credentials_html_a96c8274aa0811620829537eb27bfcc1c"><div class="ttname"><a href="structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c">grpc_server_credentials::type</a></div><div class="ttdeci">const char * type</div><div class="ttdef"><b>Definition:</b> credentials.h:218</div></div>
+<div class="ttc" id="structgrpc__ssl__credentials_html_a501050df420385527ac006a59e82dc06"><div class="ttname"><a href="structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06">grpc_ssl_credentials::config</a></div><div class="ttdeci">grpc_ssl_config config</div><div class="ttdef"><b>Definition:</b> credentials.h:228</div></div>
+<div class="ttc" id="credentials_8h_html_af0dac46697efd780811863ee13c73fbd"><div class="ttname"><a href="credentials_8h.html#af0dac46697efd780811863ee13c73fbd">grpc_oauth2_token_fetcher_credentials_parse_server_response</a></div><div class="ttdeci">grpc_credentials_status grpc_oauth2_token_fetcher_credentials_parse_server_response(const struct grpc_httpcli_response *response, grpc_credentials_md_store **token_md, gpr_timespec *token_lifetime)</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_abc57d00b1bfd2b26f3b50feebccc84fb"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb">grpc_service_account_jwt_access_credentials::service_url</a></div><div class="ttdeci">char * service_url</div><div class="ttdef"><b>Definition:</b> credentials.h:246</div></div>
+<div class="ttc" id="structgrpc__fake__oauth2__credentials_html_a929e924c4a75244f8e36e09ac1de6806"><div class="ttname"><a href="structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806">grpc_fake_oauth2_credentials::is_async</a></div><div class="ttdeci">int is_async</div><div class="ttdef"><b>Definition:</b> credentials.h:305</div></div>
+<div class="ttc" id="credentials_8h_html_a5535f991ceb2b2160aee414cf013ed73"><div class="ttname"><a href="credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73">grpc_credentials_md_store_ref</a></div><div class="ttdeci">grpc_credentials_md_store * grpc_credentials_md_store_ref(grpc_credentials_md_store *store)</div><div class="ttdef"><b>Definition:</b> credentials_metadata.c:80</div></div>
+<div class="ttc" id="structgrpc__composite__credentials_html"><div class="ttname"><a href="structgrpc__composite__credentials.html">grpc_composite_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:317</div></div>
+<div class="ttc" id="structgrpc__service__account__credentials_html_a7bf8e279b0c67ed0f8d3a127dab0b0cd"><div class="ttname"><a href="structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd">grpc_service_account_credentials::key</a></div><div class="ttdeci">grpc_auth_json_key key</div><div class="ttdef"><b>Definition:</b> credentials.h:281</div></div>
+<div class="ttc" id="structgrpc__credentials_html_a4842bd6607dba5b1045e4ad4e167d20e"><div class="ttname"><a href="structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e">grpc_credentials::vtable</a></div><div class="ttdeci">const grpc_credentials_vtable * vtable</div><div class="ttdef"><b>Definition:</b> credentials.h:146</div></div>
+<div class="ttc" id="json__token_8h_html"><div class="ttname"><a href="json__token_8h.html">json_token.h</a></div></div>
+<div class="ttc" id="credentials_8h_html_a26715660e319377bdfc4f2476ff35505"><div class="ttname"><a href="credentials_8h.html#a26715660e319377bdfc4f2476ff35505">grpc_service_account_jwt_access_credentials_create_from_auth_json_key</a></div><div class="ttdeci">grpc_credentials * grpc_service_account_jwt_access_credentials_create_from_auth_json_key(grpc_auth_json_key key, gpr_timespec token_lifetime)</div><div class="ttdef"><b>Definition:</b> credentials.c:407</div></div>
+<div class="ttc" id="structgrpc__refresh__token__credentials_html_a2be1d1da67694fe3a5c496f832908b9e"><div class="ttname"><a href="structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e">grpc_refresh_token_credentials::base</a></div><div class="ttdeci">grpc_oauth2_token_fetcher_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:289</div></div>
+<div class="ttc" id="credentials_8h_html_af26c4ee0ed97f2e88958c54ba22d5759"><div class="ttname"><a href="credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759">grpc_credentials_create_security_connector</a></div><div class="ttdeci">grpc_security_status grpc_credentials_create_security_connector(grpc_credentials *creds, const char *target, const grpc_channel_args *args, grpc_credentials *request_metadata_creds, grpc_channel_security_connector **sc, grpc_channel_args **new_args)</div><div class="ttdef"><b>Definition:</b> credentials.c:123</div></div>
+<div class="ttc" id="structgrpc__service__account__credentials_html_acb97b3d4e8dd7783520e82d6416f25d0"><div class="ttname"><a href="structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0">grpc_service_account_credentials::base</a></div><div class="ttdeci">grpc_oauth2_token_fetcher_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:280</div></div>
+<div class="ttc" id="structgrpc__refresh__token__credentials_html_a5aafa55d9b706f325ba7801bc90f9cdb"><div class="ttname"><a href="structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb">grpc_refresh_token_credentials::refresh_token</a></div><div class="ttdeci">grpc_auth_refresh_token refresh_token</div><div class="ttdef"><b>Definition:</b> credentials.h:290</div></div>
+<div class="ttc" id="structgrpc__iam__credentials_html_a4925aa708ad3e63dd99e3881d2f735b8"><div class="ttname"><a href="structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8">grpc_iam_credentials::iam_md</a></div><div class="ttdeci">grpc_credentials_md_store * iam_md</div><div class="ttdef"><b>Definition:</b> credentials.h:312</div></div>
+<div class="ttc" id="credentials_8h_html_af364310c463f2ddc7d714f2dbbd57e0d"><div class="ttname"><a href="credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d">grpc_refresh_token_credentials_create_from_auth_refresh_token</a></div><div class="ttdeci">grpc_credentials * grpc_refresh_token_credentials_create_from_auth_refresh_token(grpc_auth_refresh_token token)</div><div class="ttdef"><b>Definition:</b> credentials.c:747</div></div>
+<div class="ttc" id="credentials_8h_html_a4a6be957afa38741405a5a41cdd752e1"><div class="ttname"><a href="credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1">grpc_credentials_contains_type</a></div><div class="ttdeci">grpc_credentials * grpc_credentials_contains_type(grpc_credentials *creds, const char *type, grpc_credentials **composite_creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:1157</div></div>
+<div class="ttc" id="credentials_8h_html_a6c5b440dff7801066f4afb03a60c249d"><div class="ttname"><a href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">grpc_fetch_oauth2_func</a></div><div class="ttdeci">void(* grpc_fetch_oauth2_func)(grpc_credentials_metadata_request *req, grpc_httpcli_context *http_context, grpc_pollset *pollset, grpc_httpcli_response_cb response_cb, gpr_timespec deadline)</div><div class="ttdef"><b>Definition:</b> credentials.h:262</div></div>
+<div class="ttc" id="credentials_8h_html_ad44c9cce8c086f8c083e5d5006e3310a"><div class="ttname"><a href="credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a">grpc_credentials_has_request_metadata</a></div><div class="ttdeci">int grpc_credentials_has_request_metadata(grpc_credentials *creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:97</div></div>
+<div class="ttc" id="structgrpc__ssl__server__credentials_html"><div class="ttname"><a href="structgrpc__ssl__server__credentials.html">grpc_ssl_server_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:231</div></div>
+<div class="ttc" id="credentials_8h_html_a3676b161f50d5b36989af2624565596b"><div class="ttname"><a href="credentials_8h.html#a3676b161f50d5b36989af2624565596b">grpc_credentials_md_store_add</a></div><div class="ttdeci">void grpc_credentials_md_store_add(grpc_credentials_md_store *store, gpr_slice key, gpr_slice value)</div><div class="ttdef"><b>Definition:</b> credentials_metadata.c:60</div></div>
+<div class="ttc" id="grpc__security_8h_html"><div class="ttname"><a href="grpc__security_8h.html">grpc_security.h</a></div></div>
+<div class="ttc" id="credentials_8h_html_a3c03f6a39aec4530a4a3024a8f9c2716"><div class="ttname"><a href="credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716">grpc_get_well_known_google_credentials_file_path</a></div><div class="ttdeci">char * grpc_get_well_known_google_credentials_file_path(void)</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html_a1dec60523d8f3844032e213ea8766c45"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45">grpc_oauth2_token_fetcher_credentials::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> credentials.h:270</div></div>
+<div class="ttc" id="structgrpc__credentials__array_html_a1a4ba8ed410c26eaee6aa5a7d5b36d96"><div class="ttname"><a href="structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96">grpc_credentials_array::num_creds</a></div><div class="ttdeci">size_t num_creds</div><div class="ttdef"><b>Definition:</b> credentials.h:172</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_abedd1fe434bdb017b566f5aa096d8f32"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32">grpc_service_account_jwt_access_credentials::key</a></div><div class="ttdeci">grpc_auth_json_key key</div><div class="ttdef"><b>Definition:</b> credentials.h:250</div></div>
+<div class="ttc" id="structgrpc__server__credentials_html"><div class="ttname"><a href="structgrpc__server__credentials.html">grpc_server_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:216</div></div>
+<div class="ttc" id="structgrpc__credentials_html"><div class="ttname"><a href="structgrpc__credentials.html">grpc_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:145</div></div>
+<div class="ttc" id="structgrpc__credentials__array_html"><div class="ttname"><a href="structgrpc__credentials__array.html">grpc_credentials_array</a></div><div class="ttdef"><b>Definition:</b> credentials.h:170</div></div>
+<div class="ttc" id="structgrpc__access__token__credentials_html"><div class="ttname"><a href="structgrpc__access__token__credentials.html">grpc_access_token_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:295</div></div>
+<div class="ttc" id="structgrpc__credentials__md__store_html"><div class="ttname"><a href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a></div><div class="ttdef"><b>Definition:</b> credentials.h:96</div></div>
+<div class="ttc" id="structgrpc__credentials__md_html_ae893ec4c5c65ffa395a5e12259089841"><div class="ttname"><a href="structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841">grpc_credentials_md::value</a></div><div class="ttdeci">gpr_slice value</div><div class="ttdef"><b>Definition:</b> credentials.h:93</div></div>
+<div class="ttc" id="credentials_8h_html_a63d4aa3f072736ba5eb168e12c306e56"><div class="ttname"><a href="credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56">grpc_credentials_unref</a></div><div class="ttdeci">void grpc_credentials_unref(grpc_credentials *creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:88</div></div>
+<div class="ttc" id="structgrpc__server__credentials_html_aa1514867a5ea460ca43d0afebea72b63"><div class="ttname"><a href="structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63">grpc_server_credentials::vtable</a></div><div class="ttdeci">const grpc_server_credentials_vtable * vtable</div><div class="ttdef"><b>Definition:</b> credentials.h:217</div></div>
+<div class="ttc" id="structgrpc__fake__oauth2__credentials_html_a706b02614122deadad3f0fa9713c9901"><div class="ttname"><a href="structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901">grpc_fake_oauth2_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:303</div></div>
+<div class="ttc" id="credentials_8h_html_a7e3aec152312d2b66ccd3b232317b10a"><div class="ttname"><a href="credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a">grpc_flush_cached_google_default_credentials</a></div><div class="ttdeci">void grpc_flush_cached_google_default_credentials(void)</div><div class="ttdef"><b>Definition:</b> google_default_credentials.c:213</div></div>
+<div class="ttc" id="structgrpc__composite__credentials_html_a96e8d7c765b0b1e37d025d8726fe57d2"><div class="ttname"><a href="structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2">grpc_composite_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:318</div></div>
+<div class="ttc" id="structgrpc__composite__credentials_html_a02f10b8620b768e3402da78e83fef637"><div class="ttname"><a href="structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637">grpc_composite_credentials::connector_creds</a></div><div class="ttdeci">grpc_credentials * connector_creds</div><div class="ttdef"><b>Definition:</b> credentials.h:320</div></div>
+<div class="ttc" id="structgrpc__auth__refresh__token_html"><div class="ttname"><a href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a></div><div class="ttdef"><b>Definition:</b> json_token.h:94</div></div>
+<div class="ttc" id="credentials_8h_html_a60f9433cc38460bb83da148eff9475ae"><div class="ttname"><a href="credentials_8h.html#a60f9433cc38460bb83da148eff9475ae">grpc_fake_transport_security_server_credentials_create</a></div><div class="ttdeci">grpc_server_credentials * grpc_fake_transport_security_server_credentials_create(void)</div><div class="ttdef"><b>Definition:</b> credentials.c:938</div></div>
+<div class="ttc" id="structgrpc__credentials__md__store_html_a6b9a6a36be981b53ce96afe727e8b95e"><div class="ttname"><a href="structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e">grpc_credentials_md_store::allocated</a></div><div class="ttdeci">size_t allocated</div><div class="ttdef"><b>Definition:</b> credentials.h:99</div></div>
+<div class="ttc" id="credentials_8h_html_a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a"><div class="ttname"><a href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a">GRPC_CREDENTIALS_ERROR</a></div><div class="ttdef"><b>Definition:</b> credentials.h:52</div></div>
+<div class="ttc" id="credentials_8h_html_afe8d4191ee0f0f67684fd2575173cabc"><div class="ttname"><a href="credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc">grpc_credentials_get_request_metadata</a></div><div class="ttdeci">void grpc_credentials_get_request_metadata(grpc_credentials *creds, grpc_pollset *pollset, const char *service_url, grpc_credentials_metadata_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> credentials.c:107</div></div>
+<div class="ttc" id="structgrpc__iam__credentials_html"><div class="ttname"><a href="structgrpc__iam__credentials.html">grpc_iam_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:310</div></div>
+<div class="ttc" id="structgrpc__service__account__credentials_html_aab9b416748da95fdfc5483b5bb7933ae"><div class="ttname"><a href="structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae">grpc_service_account_credentials::token_lifetime</a></div><div class="ttdeci">gpr_timespec token_lifetime</div><div class="ttdef"><b>Definition:</b> credentials.h:283</div></div>
+<div class="ttc" id="structgrpc__credentials__md__store_html_adfddab340d1b7d7d51087b015f14b259"><div class="ttname"><a href="structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259">grpc_credentials_md_store::num_entries</a></div><div class="ttdeci">size_t num_entries</div><div class="ttdef"><b>Definition:</b> credentials.h:98</div></div>
+<div class="ttc" id="structgrpc__credentials_html_a823ba4bf9cc44b1173f6b4889a3446d6"><div class="ttname"><a href="structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6">grpc_credentials::refcount</a></div><div class="ttdeci">gpr_refcount refcount</div><div class="ttdef"><b>Definition:</b> credentials.h:148</div></div>
+<div class="ttc" id="structgrpc__access__token__credentials_html_a194d95853f9a3b3c8a4d9e421628ab09"><div class="ttname"><a href="structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09">grpc_access_token_credentials::access_token_md</a></div><div class="ttdeci">grpc_credentials_md_store * access_token_md</div><div class="ttdef"><b>Definition:</b> credentials.h:297</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="credentials_8h_html_afc507497ef8b5dda7074b63babaac366"><div class="ttname"><a href="credentials_8h.html#afc507497ef8b5dda7074b63babaac366">grpc_credentials_md_store_unref</a></div><div class="ttdeci">void grpc_credentials_md_store_unref(grpc_credentials_md_store *store)</div><div class="ttdef"><b>Definition:</b> credentials_metadata.c:87</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html"><div class="ttname"><a href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:196</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_a3adac3e5a237a509291047037a5a892a"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a">grpc_service_account_jwt_access_credentials::jwt_expiration</a></div><div class="ttdeci">gpr_timespec jwt_expiration</div><div class="ttdef"><b>Definition:</b> credentials.h:247</div></div>
+<div class="ttc" id="security__connector_8h_html"><div class="ttname"><a href="security__connector_8h.html">security_connector.h</a></div></div>
+<div class="ttc" id="structgrpc__security__connector_html"><div class="ttname"><a href="structgrpc__security__connector.html">grpc_security_connector</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:75</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html">grpc_service_account_jwt_access_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:238</div></div>
+<div class="ttc" id="structgrpc__channel__security__connector_html"><div class="ttname"><a href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:135</div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html"><div class="ttname"><a href="structgrpc__auth__json__key.html">grpc_auth_json_key</a></div><div class="ttdef"><b>Definition:</b> json_token.h:52</div></div>
+<div class="ttc" id="structgrpc__ssl__credentials_html"><div class="ttname"><a href="structgrpc__ssl__credentials.html">grpc_ssl_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:226</div></div>
+<div class="ttc" id="structgrpc__access__token__credentials_html_a594ae3c4f36d690eb29a8c0a1ec48d0b"><div class="ttname"><a href="structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b">grpc_access_token_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:296</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html_a6c54ee9f6021c950777c42a4e34b71c8"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8">grpc_oauth2_token_fetcher_credentials::httpcli_context</a></div><div class="ttdeci">grpc_httpcli_context httpcli_context</div><div class="ttdef"><b>Definition:</b> credentials.h:273</div></div>
+<div class="ttc" id="structgrpc__composite__credentials_html_a94a828068bb8844a20c6677b239ae805"><div class="ttname"><a href="structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805">grpc_composite_credentials::inner</a></div><div class="ttdeci">grpc_credentials_array inner</div><div class="ttdef"><b>Definition:</b> credentials.h:319</div></div>
+<div class="ttc" id="structgrpc__credentials_html_a40d9db6d1125238d7e1ceeeab886788b"><div class="ttname"><a href="structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b">grpc_credentials::type</a></div><div class="ttdeci">const char * type</div><div class="ttdef"><b>Definition:</b> credentials.h:147</div></div>
+<div class="ttc" id="structgrpc__refresh__token__credentials_html"><div class="ttname"><a href="structgrpc__refresh__token__credentials.html">grpc_refresh_token_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:288</div></div>
+<div class="ttc" id="credentials_8h_html_ab970b1925f494cb159a29a404f23d157"><div class="ttname"><a href="credentials_8h.html#ab970b1925f494cb159a29a404f23d157">grpc_fake_transport_security_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_fake_transport_security_credentials_create(void)</div><div class="ttdef"><b>Definition:</b> credentials.c:929</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_a641b64d26a1c7bdc348e960ed5400b94"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94">grpc_service_account_jwt_access_credentials::cache_mu</a></div><div class="ttdeci">gpr_mu cache_mu</div><div class="ttdef"><b>Definition:</b> credentials.h:243</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html_a293a6ed6c4f54ef2de4de3e071ae6e13"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13">grpc_oauth2_token_fetcher_credentials::token_expiration</a></div><div class="ttdeci">gpr_timespec token_expiration</div><div class="ttdef"><b>Definition:</b> credentials.h:272</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html"><div class="ttname"><a href="structgrpc__ssl__config.html">grpc_ssl_config</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:165</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="credentials_8h_html_a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15"><div class="ttname"><a href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15">GRPC_CREDENTIALS_OK</a></div><div class="ttdef"><b>Definition:</b> credentials.h:51</div></div>
+<div class="ttc" id="structgrpc__credentials__md_html_a8484aa32f640b1b127c1903e868a4a53"><div class="ttname"><a href="structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53">grpc_credentials_md::key</a></div><div class="ttdeci">gpr_slice key</div><div class="ttdef"><b>Definition:</b> credentials.h:92</div></div>
+<div class="ttc" id="stream__op_8h_html"><div class="ttname"><a href="stream__op_8h.html">stream_op.h</a></div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="credentials_8h_html_ae0ed8f1e7494e839a3992c0a19fe0c67"><div class="ttname"><a href="credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67">grpc_composite_credentials_get_credentials</a></div><div class="ttdeci">const grpc_credentials_array * grpc_composite_credentials_get_credentials(grpc_credentials *composite_creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:1149</div></div>
+<div class="ttc" id="credentials_8h_html_a51ccf8c724a8477d5efcf0e3f73ef3a4"><div class="ttname"><a href="credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">grpc_credentials_md_store_add_cstrings</a></div><div class="ttdeci">void grpc_credentials_md_store_add_cstrings(grpc_credentials_md_store *store, const char *key, const char *value)</div><div class="ttdef"><b>Definition:</b> credentials_metadata.c:69</div></div>
+<div class="ttc" id="httpcli_8h_html_a00129a2e0bb8e9d9a6632e88f7a8c887"><div class="ttname"><a href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a></div><div class="ttdeci">void(* grpc_httpcli_response_cb)(void *user_data, const grpc_httpcli_response *response)</div><div class="ttdef"><b>Definition:</b> httpcli.h:89</div></div>
+<div class="ttc" id="credentials_8h_html_a62061acac11e854a58c5faca6956e609"><div class="ttname"><a href="credentials_8h.html#a62061acac11e854a58c5faca6956e609">grpc_credentials_ref</a></div><div class="ttdeci">grpc_credentials * grpc_credentials_ref(grpc_credentials *creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:82</div></div>
+<div class="ttc" id="structgrpc__httpcli__context_html"><div class="ttname"><a href="structgrpc__httpcli__context.html">grpc_httpcli_context</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:57</div></div>
+<div class="ttc" id="structgrpc__ssl__credentials_html_a2745d407b41a3278d6701b10dd94c6e4"><div class="ttname"><a href="structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4">grpc_ssl_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:227</div></div>
+<div class="ttc" id="structgrpc__ssl__server__credentials_html_af476f00d0272add3ba170388460abc71"><div class="ttname"><a href="structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71">grpc_ssl_server_credentials::base</a></div><div class="ttdeci">grpc_server_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:232</div></div>
+<div class="ttc" id="structgrpc__credentials__metadata__request_html"><div class="ttname"><a href="structgrpc__credentials__metadata__request.html">grpc_credentials_metadata_request</a></div><div class="ttdef"><b>Definition:</b> credentials.c:54</div></div>
+<div class="ttc" id="credentials_8h_html_ac749a71cdf28ebdc69d25cde612b22cc"><div class="ttname"><a href="credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc">grpc_fake_oauth2_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_fake_oauth2_credentials_create(const char *token_md_value, int is_async)</div><div class="ttdef"><b>Definition:</b> credentials.c:818</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html"><div class="ttname"><a href="structgrpc__httpcli__response.html">grpc_httpcli_response</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:77</div></div>
+<div class="ttc" id="structgrpc__iam__credentials_html_a0470518ebd35b41e23f35fb85080750d"><div class="ttname"><a href="structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d">grpc_iam_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:311</div></div>
+<div class="ttc" id="structgrpc__fake__oauth2__credentials_html"><div class="ttname"><a href="structgrpc__fake__oauth2__credentials.html">grpc_fake_oauth2_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:302</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html_abf3f319f98882bf7ae8fc81bd95076be"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be">grpc_oauth2_token_fetcher_credentials::access_token_md</a></div><div class="ttdeci">grpc_credentials_md_store * access_token_md</div><div class="ttdef"><b>Definition:</b> credentials.h:271</div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a></div><div class="ttdeci">grpc_security_status</div><div class="ttdef"><b>Definition:</b> security_connector.h:43</div></div>
+<div class="ttc" id="hpack__table_8c_html_acd3d88da3c0e0313c3645ff34f62f542"><div class="ttname"><a href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> hpack_table.c:43</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html_af761ff685ab5e0c5884770d5bb52db54"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54">grpc_oauth2_token_fetcher_credentials::fetch_func</a></div><div class="ttdeci">grpc_fetch_oauth2_func fetch_func</div><div class="ttdef"><b>Definition:</b> credentials.h:274</div></div>
+<div class="ttc" id="credentials_8h_html_acc8fc30e87ddec6ff87dd6676215755a"><div class="ttname"><a href="credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a">grpc_server_credentials_create_security_connector</a></div><div class="ttdeci">grpc_security_status grpc_server_credentials_create_security_connector(grpc_server_credentials *creds, grpc_security_connector **sc)</div><div class="ttdef"><b>Definition:</b> credentials.c:143</div></div>
+<div class="ttc" id="structgrpc__service__account__jwt__access__credentials_html_a9da87dad6986e218d5246fc125db04f4"><div class="ttname"><a href="structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4">grpc_service_account_jwt_access_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:239</div></div>
+<div class="ttc" id="structgrpc__credentials__array_html_a72172f932751c5d9fc7670af1a1cd231"><div class="ttname"><a href="structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231">grpc_credentials_array::creds_array</a></div><div class="ttdeci">grpc_credentials ** creds_array</div><div class="ttdef"><b>Definition:</b> credentials.h:171</div></div>
+<div class="ttc" id="structgrpc__ssl__server__credentials_html_a00e6754957e007f8cc2926911c752fc3"><div class="ttname"><a href="structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3">grpc_ssl_server_credentials::config</a></div><div class="ttdeci">grpc_ssl_server_config config</div><div class="ttdef"><b>Definition:</b> credentials.h:233</div></div>
+<div class="ttc" id="structgrpc__service__account__credentials_html_a12e5661a8313375683678cde3fbe765f"><div class="ttname"><a href="structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f">grpc_service_account_credentials::scope</a></div><div class="ttdeci">char * scope</div><div class="ttdef"><b>Definition:</b> credentials.h:282</div></div>
+<div class="ttc" id="structgrpc__oauth2__token__fetcher__credentials_html_acf21ce59c27d145279e5a26d561ea2d5"><div class="ttname"><a href="structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5">grpc_oauth2_token_fetcher_credentials::base</a></div><div class="ttdeci">grpc_credentials base</div><div class="ttdef"><b>Definition:</b> credentials.h:269</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/credentials__metadata_8c.html b/doc/ref/core.internal/html/credentials__metadata_8c.html
new file mode 100644
index 0000000000..05c7cba141
--- /dev/null
+++ b/doc/ref/core.internal/html/credentials__metadata_8c.html
@@ -0,0 +1,231 @@
+<!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: src/core/security/credentials_metadata.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">credentials_metadata.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aee28492ddb70e47b0778fc928be9159b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__metadata_8c.html#aee28492ddb70e47b0778fc928be9159b">grpc_credentials_md_store_create</a> (size_t initial_capacity)</td></tr>
+<tr class="separator:aee28492ddb70e47b0778fc928be9159b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3676b161f50d5b36989af2624565596b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__metadata_8c.html#a3676b161f50d5b36989af2624565596b">grpc_credentials_md_store_add</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a3676b161f50d5b36989af2624565596b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51ccf8c724a8477d5efcf0e3f73ef3a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__metadata_8c.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">grpc_credentials_md_store_add_cstrings</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store, const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a51ccf8c724a8477d5efcf0e3f73ef3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5535f991ceb2b2160aee414cf013ed73"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__metadata_8c.html#a5535f991ceb2b2160aee414cf013ed73">grpc_credentials_md_store_ref</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store)</td></tr>
+<tr class="separator:a5535f991ceb2b2160aee414cf013ed73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc507497ef8b5dda7074b63babaac366"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__metadata_8c.html#afc507497ef8b5dda7074b63babaac366">grpc_credentials_md_store_unref</a> (<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *store)</td></tr>
+<tr class="separator:afc507497ef8b5dda7074b63babaac366"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a3676b161f50d5b36989af2624565596b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_md_store_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a51ccf8c724a8477d5efcf0e3f73ef3a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_md_store_add_cstrings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee28492ddb70e47b0778fc928be9159b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_credentials_md_store_create </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>initial_capacity</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5535f991ceb2b2160aee414cf013ed73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_credentials_md_store_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc507497ef8b5dda7074b63babaac366"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_md_store_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td>
+ <td class="paramname"><em>store</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/credentials__posix_8c.html b/doc/ref/core.internal/html/credentials__posix_8c.html
new file mode 100644
index 0000000000..4a209b2319
--- /dev/null
+++ b/doc/ref/core.internal/html/credentials__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/security/credentials_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">credentials_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/credentials__win32_8c.html b/doc/ref/core.internal/html/credentials__win32_8c.html
new file mode 100644
index 0000000000..f550f8b0c5
--- /dev/null
+++ b/doc/ref/core.internal/html/credentials__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/security/credentials_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">credentials_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/dir_03e3f2561cf9e09e514d23ee8902839b.html b/doc/ref/core.internal/html/dir_03e3f2561cf9e09e514d23ee8902839b.html
new file mode 100644
index 0000000000..eb172178b3
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_03e3f2561cf9e09e514d23ee8902839b.html
@@ -0,0 +1,113 @@
+<!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: src/core/httpcli Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">httpcli Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:format__request_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="format__request_8c.html">format_request.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:format__request_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="format__request_8h.html">format_request.h</a> <a href="format__request_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:httpcli_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8c.html">httpcli.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:httpcli_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html">httpcli.h</a> <a href="httpcli_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:httpcli__security__connector_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli__security__connector_8c.html">httpcli_security_connector.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:httpcli__security__connector_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli__security__connector_8h.html">httpcli_security_connector.h</a> <a href="httpcli__security__connector_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:parser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8c.html">parser.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:parser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html">parser.h</a> <a href="parser_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_35c0979e6ab890cbca79261dc9fc2958.html b/doc/ref/core.internal/html/dir_35c0979e6ab890cbca79261dc9fc2958.html
new file mode 100644
index 0000000000..ec45156e17
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_35c0979e6ab890cbca79261dc9fc2958.html
@@ -0,0 +1,103 @@
+<!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: src/core/compression Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html">compression</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">compression Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:algorithm_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="algorithm_8c.html">algorithm.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:message__compress_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8c.html">message_compress.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:message__compress_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8h.html">message_compress.h</a> <a href="message__compress_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_3f1a464cbd6442b4d6b6ee306c9b0460.html b/doc/ref/core.internal/html/dir_3f1a464cbd6442b4d6b6ee306c9b0460.html
new file mode 100644
index 0000000000..4c29d228f7
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_3f1a464cbd6442b4d6b6ee306c9b0460.html
@@ -0,0 +1,229 @@
+<!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: src/core/iomgr Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iomgr Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:alarm_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8c.html">alarm.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:alarm_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm_8h.html">alarm.h</a> <a href="alarm_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:alarm__heap_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8c.html">alarm_heap.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:alarm__heap_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__heap_8h.html">alarm_heap.h</a> <a href="alarm__heap_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:alarm__internal_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alarm__internal_8h.html">alarm_internal.h</a> <a href="alarm__internal_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:endpoint_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html">endpoint.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:endpoint_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html">endpoint.h</a> <a href="endpoint_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:endpoint__pair_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint__pair_8h.html">endpoint_pair.h</a> <a href="endpoint__pair_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:endpoint__pair__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint__pair__posix_8c.html">endpoint_pair_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:endpoint__pair__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint__pair__windows_8c.html">endpoint_pair_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:fd__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8c.html">fd_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:fd__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html">fd_posix.h</a> <a href="fd__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iocp__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8c.html">iocp_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iocp__windows_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html">iocp_windows.h</a> <a href="iocp__windows_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iomgr_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html">iomgr.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iomgr_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html">iomgr.h</a> <a href="iomgr_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iomgr__internal_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html">iomgr_internal.h</a> <a href="iomgr__internal_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iomgr__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__posix_8c.html">iomgr_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iomgr__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__posix_8h.html">iomgr_posix.h</a> <a href="iomgr__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:iomgr__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__windows_8c.html">iomgr_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset_8h.html">pollset.h</a> <a href="pollset_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__kick__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8c.html">pollset_kick_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__kick__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html">pollset_kick_posix.h</a> <a href="pollset__kick__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__multipoller__with__epoll_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__multipoller__with__epoll_8c.html">pollset_multipoller_with_epoll.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__multipoller__with__poll__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__multipoller__with__poll__posix_8c.html">pollset_multipoller_with_poll_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8c.html">pollset_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html">pollset_posix.h</a> <a href="pollset__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__set_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set_8h.html">pollset_set.h</a> <a href="pollset__set_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__set__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__posix_8c.html">pollset_set_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__set__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__posix_8h.html">pollset_set_posix.h</a> <a href="pollset__set__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__set__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__windows_8c.html">pollset_set_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__set__windows_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__windows_8h.html">pollset_set_windows.h</a> <a href="pollset__set__windows_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__windows_8c.html">pollset_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pollset__windows_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__windows_8h.html">pollset_windows.h</a> <a href="pollset__windows_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolve__address_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address_8h.html">resolve_address.h</a> <a href="resolve__address_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolve__address__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address__posix_8c.html">resolve_address_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolve__address__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address__windows_8c.html">resolve_address_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr_8h.html">sockaddr.h</a> <a href="sockaddr_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__posix_8h.html">sockaddr_posix.h</a> <a href="sockaddr__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr__utils_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html">sockaddr_utils.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr__utils_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html">sockaddr_utils.h</a> <a href="sockaddr__utils_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr__win32_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__win32_8h.html">sockaddr_win32.h</a> <a href="sockaddr__win32_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:socket__utils__common__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__common__posix_8c.html">socket_utils_common_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:socket__utils__linux_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__linux_8c.html">socket_utils_linux.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:socket__utils__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8c.html">socket_utils_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:socket__utils__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html">socket_utils_posix.h</a> <a href="socket__utils__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:socket__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8c.html">socket_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:socket__windows_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html">socket_windows.h</a> <a href="socket__windows_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__client_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__client_8h.html">tcp_client.h</a> <a href="tcp__client_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__client__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__client__posix_8c.html">tcp_client_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__client__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__client__windows_8c.html">tcp_client_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__posix_8c.html">tcp_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__posix_8h.html">tcp_posix.h</a> <a href="tcp__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__server_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html">tcp_server.h</a> <a href="tcp__server_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__server__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server__posix_8c.html">tcp_server_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__server__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server__windows_8c.html">tcp_server_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__windows_8c.html">tcp_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tcp__windows_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__windows_8h.html">tcp_windows.h</a> <a href="tcp__windows_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time__averaged__stats_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8c.html">time_averaged_stats.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time__averaged__stats_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8h.html">time_averaged_stats.h</a> <a href="time__averaged__stats_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wakeup__fd__eventfd_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__eventfd_8c.html">wakeup_fd_eventfd.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wakeup__fd__nospecial_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__nospecial_8c.html">wakeup_fd_nospecial.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wakeup__fd__pipe_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__pipe_8c.html">wakeup_fd_pipe.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wakeup__fd__pipe_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__pipe_8h.html">wakeup_fd_pipe.h</a> <a href="wakeup__fd__pipe_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wakeup__fd__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8c.html">wakeup_fd_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:wakeup__fd__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html">wakeup_fd_posix.h</a> <a href="wakeup__fd__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_3f4beedb24b0e92d29e048ed944a7adc.html b/doc/ref/core.internal/html/dir_3f4beedb24b0e92d29e048ed944a7adc.html
new file mode 100644
index 0000000000..af4d7f0ef7
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_3f4beedb24b0e92d29e048ed944a7adc.html
@@ -0,0 +1,105 @@
+<!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: src/core/client_config/subchannel_factory_decorators Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">subchannel_factory_decorators Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:add__channel__arg_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="add__channel__arg_8c.html">add_channel_arg.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add__channel__arg_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="add__channel__arg_8h.html">add_channel_arg.h</a> <a href="add__channel__arg_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:merge__channel__args_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="merge__channel__args_8c.html">merge_channel_args.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:merge__channel__args_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="merge__channel__args_8h.html">merge_channel_args.h</a> <a href="merge__channel__args_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_5349cec9f9058ade8b7779c683443df9.html b/doc/ref/core.internal/html/dir_5349cec9f9058ade8b7779c683443df9.html
new file mode 100644
index 0000000000..0d5e289014
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_5349cec9f9058ade8b7779c683443df9.html
@@ -0,0 +1,101 @@
+<!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: src/core/debug Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_5349cec9f9058ade8b7779c683443df9.html">debug</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">debug Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:trace_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8c.html">trace.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:trace_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8h.html">trace.h</a> <a href="trace_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_63ea090b1bf0393f23b745b651ae7f2b.html b/doc/ref/core.internal/html/dir_63ea090b1bf0393f23b745b651ae7f2b.html
new file mode 100644
index 0000000000..1f7ecca93a
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_63ea090b1bf0393f23b745b651ae7f2b.html
@@ -0,0 +1,109 @@
+<!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: src/core/census Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">census Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:context_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="context_8c.html">context.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:census_2context_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_2context_8h.html">context.h</a> <a href="census_2context_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:grpc__context_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__context_8c.html">grpc_context.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:initialize_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="initialize_8c.html">initialize.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:record__stat_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="record__stat_8c.html">record_stat.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rpc__stat__id_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html">rpc_stat_id.h</a> <a href="rpc__stat__id_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/doc/ref/core.internal/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
new file mode 100644
index 0000000000..fb900bdf5c
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html
@@ -0,0 +1,99 @@
+<!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: src Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">src Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_aebb8dcc11953d78e620bbef0b9e2183"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html b/doc/ref/core.internal/html/dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html
new file mode 100644
index 0000000000..ee6826b43a
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html
@@ -0,0 +1,113 @@
+<!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: src/core/json Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">json Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:json_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8c.html">json.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html">json.h</a> <a href="json_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__common_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__common_8h.html">json_common.h</a> <a href="json__common_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__reader_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8c.html">json_reader.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html">json_reader.h</a> <a href="json__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__string_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__string_8c.html">json_string.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__writer_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html">json_writer.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__writer_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html">json_writer.h</a> <a href="json__writer_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_73fa28a1e06161e89b964f34cd202aba.html b/doc/ref/core.internal/html/dir_73fa28a1e06161e89b964f34cd202aba.html
new file mode 100644
index 0000000000..e4e722893b
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_73fa28a1e06161e89b964f34cd202aba.html
@@ -0,0 +1,105 @@
+<!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: src/core/profiling Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">profiling Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:basic__timers_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="basic__timers_8c.html">basic_timers.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stap__timers_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stap__timers_8c.html">stap_timers.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:timers_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html">timers.h</a> <a href="timers_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:timers__preciseclock_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers__preciseclock_8h.html">timers_preciseclock.h</a> <a href="timers__preciseclock_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_79268b13b30141157b35932967b4e740.html b/doc/ref/core.internal/html/dir_79268b13b30141157b35932967b4e740.html
new file mode 100644
index 0000000000..e62b486034
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_79268b13b30141157b35932967b4e740.html
@@ -0,0 +1,126 @@
+<!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: src/core/transport Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">transport Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_bf8522d75c0d0c872d1b1e399b1737b8"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:chttp2__transport_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:chttp2__transport_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="chttp2__transport_8h.html">chttp2_transport.h</a> <a href="chttp2__transport_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:connectivity__state_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8c.html">connectivity_state.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:connectivity__state_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connectivity__state_8h.html">connectivity_state.h</a> <a href="connectivity__state_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:metadata_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html">metadata.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:metadata_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html">metadata.h</a> <a href="metadata_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__op_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html">stream_op.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__op_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html">stream_op.h</a> <a href="stream__op_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html">transport.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html">transport.h</a> <a href="transport_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport__impl_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__impl_8h.html">transport_impl.h</a> <a href="transport__impl_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport__op__string_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__op__string_8c.html">transport_op_string.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_8aa15e76222df75340b2e23e43efb3e2.html b/doc/ref/core.internal/html/dir_8aa15e76222df75340b2e23e43efb3e2.html
new file mode 100644
index 0000000000..1fb594f96e
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_8aa15e76222df75340b2e23e43efb3e2.html
@@ -0,0 +1,133 @@
+<!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: src/core/channel Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">channel Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:census__filter_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census__filter_8h.html">census_filter.h</a> <a href="census__filter_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__args_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8c.html">channel_args.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__args_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__args_8h.html">channel_args.h</a> <a href="channel__args_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__stack_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8c.html">channel_stack.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__stack_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__stack_8h.html">channel_stack.h</a> <a href="channel__stack_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:client__channel_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8c.html">client_channel.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:client__channel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__channel_8h.html">client_channel.h</a> <a href="client__channel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:compress__filter_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8c.html">compress_filter.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:compress__filter_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compress__filter_8h.html">compress_filter.h</a> <a href="compress__filter_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:connected__channel_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8c.html">connected_channel.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:connected__channel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connected__channel_8h.html">connected_channel.h</a> <a href="connected__channel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel_2context_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_2context_8h.html">context.h</a> <a href="channel_2context_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:http__client__filter_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8c.html">http_client_filter.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:http__client__filter_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8h.html">http_client_filter.h</a> <a href="http__client__filter_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:http__server__filter_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__server__filter_8c.html">http_server_filter.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:http__server__filter_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__server__filter_8h.html">http_server_filter.h</a> <a href="http__server__filter_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:noop__filter_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="noop__filter_8c.html">noop_filter.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:noop__filter_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="noop__filter_8h.html">noop_filter.h</a> <a href="noop__filter_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_9410f15740cc8f8ab312fa27ab494b45.html b/doc/ref/core.internal/html/dir_9410f15740cc8f8ab312fa27ab494b45.html
new file mode 100644
index 0000000000..615e08b2f3
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_9410f15740cc8f8ab312fa27ab494b45.html
@@ -0,0 +1,187 @@
+<!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: src/core/support Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">support Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:alloc_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8c.html">alloc.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cancellable_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable_8c.html">cancellable.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cmdline_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8c.html">cmdline.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cpu__iphone_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu__iphone_8c.html">cpu_iphone.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cpu__linux_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu__linux_8c.html">cpu_linux.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cpu__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu__posix_8c.html">cpu_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cpu__windows_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu__windows_8c.html">cpu_windows.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:env_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env_8h.html">env.h</a> <a href="env_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:env__linux_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env__linux_8c.html">env_linux.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:env__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env__posix_8c.html">env_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:env__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env__win32_8c.html">env_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:file_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file_8c.html">file.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:file_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file_8h.html">file.h</a> <a href="file_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:file__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file__posix_8c.html">file_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:file__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file__win32_8c.html">file_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:histogram_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html">histogram.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:host__port_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="host__port_8c.html">host_port.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8c.html">log.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__android_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__android_8c.html">log_android.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__linux_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__linux_8c.html">log_linux.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__posix_8c.html">log_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__win32_8c.html">log_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:murmur__hash_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="murmur__hash_8c.html">murmur_hash.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:murmur__hash_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="murmur__hash_8h.html">murmur_hash.h</a> <a href="murmur__hash_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:slice_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html">slice.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:slice__buffer_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html">slice_buffer.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stack__lockfree_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html">stack_lockfree.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stack__lockfree_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8h.html">stack_lockfree.h</a> <a href="stack__lockfree_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:string_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html">string.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:string_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html">string.h</a> <a href="string_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:string__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string__posix_8c.html">string_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:string__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string__win32_8c.html">string_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:string__win32_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string__win32_8h.html">string_win32.h</a> <a href="string__win32_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:subprocess__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess__posix_8c.html">subprocess_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html">sync.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__posix_8c.html">sync_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__win32_8c.html">sync_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8c.html">thd.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd__internal_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd__internal_8h.html">thd_internal.h</a> <a href="thd__internal_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd__posix_8c.html">thd_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd__win32_8c.html">thd_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html">time.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__posix_8c.html">time_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__win32_8c.html">time_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tls__pthread_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8c.html">tls_pthread.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_99f60d2bb6231896bcd2887028065f74.html b/doc/ref/core.internal/html/dir_99f60d2bb6231896bcd2887028065f74.html
new file mode 100644
index 0000000000..44b0959361
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_99f60d2bb6231896bcd2887028065f74.html
@@ -0,0 +1,111 @@
+<!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: src/core/tsi Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tsi Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:fake__transport__security_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html">fake_transport_security.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:fake__transport__security_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8h.html">fake_transport_security.h</a> <a href="fake__transport__security_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ssl__transport__security_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html">ssl_transport_security.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ssl__transport__security_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html">ssl_transport_security.h</a> <a href="ssl__transport__security_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport__security_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html">transport_security.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport__security_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html">transport_security.h</a> <a href="transport__security_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:transport__security__interface_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html">transport_security_interface.h</a> <a href="transport__security__interface_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html b/doc/ref/core.internal/html/dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html
new file mode 100644
index 0000000000..3ca5db4da5
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html
@@ -0,0 +1,116 @@
+<!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: include/grpc Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_cad3142e04109052413f2d2a2d1813b0"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:byte__buffer_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html">byte_buffer.h</a> <a href="byte__buffer_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:byte__buffer__reader_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__reader_8h.html">byte_buffer_reader.h</a> <a href="byte__buffer__reader_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:census_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="census_8h.html">census.h</a> <a href="census_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:compression_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="compression_8h.html">compression.h</a> <a href="compression_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:grpc_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html">grpc.h</a> <a href="grpc_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:grpc__security_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html">grpc_security.h</a> <a href="grpc__security_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:status_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html">status.h</a> <a href="status_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html b/doc/ref/core.internal/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html
new file mode 100644
index 0000000000..a4145b5c9a
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_aebb8dcc11953d78e620bbef0b9e2183.html
@@ -0,0 +1,125 @@
+<!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: src/core Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">core Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_63ea090b1bf0393f23b745b651ae7f2b"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_8aa15e76222df75340b2e23e43efb3e2"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_d6c86f4345f838817939dd561d8a016c"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_35c0979e6ab890cbca79261dc9fc2958"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html">compression</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_5349cec9f9058ade8b7779c683443df9"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_5349cec9f9058ade8b7779c683443df9.html">debug</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_03e3f2561cf9e09e514d23ee8902839b"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_3f1a464cbd6442b4d6b6ee306c9b0460"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_7283b8f5e6e3c4b0819c2b491a18d7d4"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_73fa28a1e06161e89b964f34cd202aba"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_b758f7a0b27044dfb0efa69af3c473f5"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_9410f15740cc8f8ab312fa27ab494b45"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_ea54cbef5e3ffa125df07262bbfc9627"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_79268b13b30141157b35932967b4e740"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_99f60d2bb6231896bcd2887028065f74"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_b758f7a0b27044dfb0efa69af3c473f5.html b/doc/ref/core.internal/html/dir_b758f7a0b27044dfb0efa69af3c473f5.html
new file mode 100644
index 0000000000..421c3f8222
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_b758f7a0b27044dfb0efa69af3c473f5.html
@@ -0,0 +1,145 @@
+<!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: src/core/security Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">security Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:auth__filters_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="auth__filters_8h.html">auth_filters.h</a> <a href="auth__filters_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:base64_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8c.html">base64.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:base64_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="base64_8h.html">base64.h</a> <a href="base64_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:client__auth__filter_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__auth__filter_8c.html">client_auth_filter.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:credentials_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8c.html">credentials.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:credentials_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html">credentials.h</a> <a href="credentials_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:credentials__metadata_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__metadata_8c.html">credentials_metadata.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:credentials__posix_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__posix_8c.html">credentials_posix.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:credentials__win32_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials__win32_8c.html">credentials_win32.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:google__default__credentials_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="google__default__credentials_8c.html">google_default_credentials.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__token_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html">json_token.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:json__token_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html">json_token.h</a> <a href="json__token_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:jwt__verifier_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html">jwt_verifier.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:jwt__verifier_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html">jwt_verifier.h</a> <a href="jwt__verifier_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:secure__endpoint_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8c.html">secure_endpoint.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:secure__endpoint_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8h.html">secure_endpoint.h</a> <a href="secure__endpoint_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:secure__transport__setup_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__transport__setup_8c.html">secure_transport_setup.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:secure__transport__setup_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__transport__setup_8h.html">secure_transport_setup.h</a> <a href="secure__transport__setup_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:security__connector_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html">security_connector.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:security__connector_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html">security_connector.h</a> <a href="security__connector_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:security__context_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html">security_context.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:security__context_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html">security_context.h</a> <a href="security__context_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__auth__filter_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__auth__filter_8c.html">server_auth_filter.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__secure__chttp2_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__secure__chttp2_8c.html">server_secure_chttp2.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_bbc3f91aaf5c0e78deeca586ef449264.html b/doc/ref/core.internal/html/dir_bbc3f91aaf5c0e78deeca586ef449264.html
new file mode 100644
index 0000000000..a7249ca946
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_bbc3f91aaf5c0e78deeca586ef449264.html
@@ -0,0 +1,101 @@
+<!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: src/core/client_config/lb_policies Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_bbc3f91aaf5c0e78deeca586ef449264.html">lb_policies</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">lb_policies Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:pick__first_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html">pick_first.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:pick__first_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8h.html">pick_first.h</a> <a href="pick__first_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_bf8522d75c0d0c872d1b1e399b1737b8.html b/doc/ref/core.internal/html/dir_bf8522d75c0d0c872d1b1e399b1737b8.html
new file mode 100644
index 0000000000..40ebbbb507
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_bf8522d75c0d0c872d1b1e399b1737b8.html
@@ -0,0 +1,177 @@
+<!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: src/core/transport/chttp2 Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">chttp2 Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:alpn_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8c.html">alpn.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:alpn_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alpn_8h.html">alpn.h</a> <a href="alpn_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:bin__encoder_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8c.html">bin_encoder.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:bin__encoder_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="bin__encoder_8h.html">bin_encoder.h</a> <a href="bin__encoder_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html">frame.h</a> <a href="frame_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__data_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8c.html">frame_data.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__data_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html">frame_data.h</a> <a href="frame__data_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__goaway_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8c.html">frame_goaway.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__goaway_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html">frame_goaway.h</a> <a href="frame__goaway_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__ping_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8c.html">frame_ping.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__ping_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8h.html">frame_ping.h</a> <a href="frame__ping_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__rst__stream_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8c.html">frame_rst_stream.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__rst__stream_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8h.html">frame_rst_stream.h</a> <a href="frame__rst__stream_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__settings_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8c.html">frame_settings.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__settings_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html">frame_settings.h</a> <a href="frame__settings_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__window__update_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8c.html">frame_window_update.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:frame__window__update_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8h.html">frame_window_update.h</a> <a href="frame__window__update_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:hpack__parser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html">hpack_parser.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:hpack__parser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html">hpack_parser.h</a> <a href="hpack__parser_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:hpack__table_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8c.html">hpack_table.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:hpack__table_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html">hpack_table.h</a> <a href="hpack__table_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:http2__errors_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http2__errors_8h.html">http2_errors.h</a> <a href="http2__errors_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:huffsyms_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="huffsyms_8c.html">huffsyms.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:huffsyms_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="huffsyms_8h.html">huffsyms.h</a> <a href="huffsyms_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:incoming__metadata_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html">incoming_metadata.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:incoming__metadata_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html">incoming_metadata.h</a> <a href="incoming__metadata_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:internal_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html">internal.h</a> <a href="internal_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:parsing_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parsing_8c.html">parsing.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:status__conversion_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8c.html">status_conversion.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:status__conversion_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8h.html">status_conversion.h</a> <a href="status__conversion_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__encoder_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html">stream_encoder.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__encoder_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html">stream_encoder.h</a> <a href="stream__encoder_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__lists_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html">stream_lists.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__map_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html">stream_map.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream__map_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html">stream_map.h</a> <a href="stream__map_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:timeout__encoding_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8c.html">timeout_encoding.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:timeout__encoding_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8h.html">timeout_encoding.h</a> <a href="timeout__encoding_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:varint_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8c.html">varint.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:varint_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html">varint.h</a> <a href="varint_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:writing_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="writing_8c.html">writing.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_c11753f61f8d651d8cfd411cfadfafab.html b/doc/ref/core.internal/html/dir_c11753f61f8d651d8cfd411cfadfafab.html
new file mode 100644
index 0000000000..28f9a74498
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_c11753f61f8d651d8cfd411cfadfafab.html
@@ -0,0 +1,105 @@
+<!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: src/core/client_config/resolvers Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolvers Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:dns__resolver_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dns__resolver_8c.html">dns_resolver.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dns__resolver_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dns__resolver_8h.html">dns_resolver.h</a> <a href="dns__resolver_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr__resolver_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8c.html">sockaddr_resolver.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sockaddr__resolver_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8h.html">sockaddr_resolver.h</a> <a href="sockaddr__resolver_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_cad3142e04109052413f2d2a2d1813b0.html b/doc/ref/core.internal/html/dir_cad3142e04109052413f2d2a2d1813b0.html
new file mode 100644
index 0000000000..03fda648e8
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_cad3142e04109052413f2d2a2d1813b0.html
@@ -0,0 +1,153 @@
+<!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: include/grpc/support Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">support Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:alloc_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="alloc_8h.html">alloc.h</a> <a href="alloc_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:atm_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm_8h.html">atm.h</a> <a href="atm_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:atm__gcc__atomic_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__atomic_8h.html">atm_gcc_atomic.h</a> <a href="atm__gcc__atomic_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:atm__gcc__sync_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__gcc__sync_8h.html">atm_gcc_sync.h</a> <a href="atm__gcc__sync_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:atm__win32_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="atm__win32_8h.html">atm_win32.h</a> <a href="atm__win32_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cancellable__platform_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cancellable__platform_8h.html">cancellable_platform.h</a> <a href="cancellable__platform_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cmdline_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cmdline_8h.html">cmdline.h</a> <a href="cmdline_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:cpu_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="cpu_8h.html">cpu.h</a> <a href="cpu_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:histogram_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html">histogram.h</a> <a href="histogram_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:host__port_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="host__port_8h.html">host_port.h</a> <a href="host__port_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html">log.h</a> <a href="log_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:log__win32_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__win32_8h.html">log_win32.h</a> <a href="log__win32_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:port__platform_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html">port_platform.h</a> <a href="port__platform_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:slice_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html">slice.h</a> <a href="slice_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:slice__buffer_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html">slice_buffer.h</a> <a href="slice__buffer_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:string__util_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string__util_8h.html">string_util.h</a> <a href="string__util_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:subprocess_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html">subprocess.h</a> <a href="subprocess_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html">sync.h</a> <a href="sync_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__generic_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__generic_8h.html">sync_generic.h</a> <a href="sync__generic_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__posix_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__posix_8h.html">sync_posix.h</a> <a href="sync__posix_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__win32_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__win32_8h.html">sync_win32.h</a> <a href="sync__win32_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html">thd.h</a> <a href="thd_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html">time.h</a> <a href="time_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tls_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls_8h.html">tls.h</a> <a href="tls_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tls__gcc_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__gcc_8h.html">tls_gcc.h</a> <a href="tls__gcc_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tls__msvc_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__msvc_8h.html">tls_msvc.h</a> <a href="tls__msvc_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:tls__pthread_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8h.html">tls_pthread.h</a> <a href="tls__pthread_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:useful_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html">useful.h</a> <a href="useful_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_d44c64559bbebec7f509842c48db8b23.html b/doc/ref/core.internal/html/dir_d44c64559bbebec7f509842c48db8b23.html
new file mode 100644
index 0000000000..6763f19e61
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_d44c64559bbebec7f509842c48db8b23.html
@@ -0,0 +1,99 @@
+<!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: include Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">include Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_9d7a14d6d9adcbe4c35dbdb88d867e2e"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_d6c86f4345f838817939dd561d8a016c.html b/doc/ref/core.internal/html/dir_d6c86f4345f838817939dd561d8a016c.html
new file mode 100644
index 0000000000..0f0b95ea8b
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_d6c86f4345f838817939dd561d8a016c.html
@@ -0,0 +1,142 @@
+<!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: src/core/client_config Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">client_config Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_bbc3f91aaf5c0e78deeca586ef449264"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_bbc3f91aaf5c0e78deeca586ef449264.html">lb_policies</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_c11753f61f8d651d8cfd411cfadfafab"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dir_3f4beedb24b0e92d29e048ed944a7adc"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:client__config_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8c.html">client_config.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:client__config_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__config_8h.html">client_config.h</a> <a href="client__config_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:connector_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8c.html">connector.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:connector_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="connector_8h.html">connector.h</a> <a href="connector_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:lb__policy_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html">lb_policy.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:lb__policy_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html">lb_policy.h</a> <a href="lb__policy_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolver_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html">resolver.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolver_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html">resolver.h</a> <a href="resolver_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolver__factory_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8c.html">resolver_factory.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolver__factory_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8h.html">resolver_factory.h</a> <a href="resolver__factory_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolver__registry_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8c.html">resolver_registry.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:resolver__registry_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8h.html">resolver_registry.h</a> <a href="resolver__registry_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:subchannel_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html">subchannel.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:subchannel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html">subchannel.h</a> <a href="subchannel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:subchannel__factory_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8c.html">subchannel_factory.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:subchannel__factory_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8h.html">subchannel_factory.h</a> <a href="subchannel__factory_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:uri__parser_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uri__parser_8c.html">uri_parser.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:uri__parser_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uri__parser_8h.html">uri_parser.h</a> <a href="uri__parser_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dir_ea54cbef5e3ffa125df07262bbfc9627.html b/doc/ref/core.internal/html/dir_ea54cbef5e3ffa125df07262bbfc9627.html
new file mode 100644
index 0000000000..c8fb274d25
--- /dev/null
+++ b/doc/ref/core.internal/html/dir_ea54cbef5e3ffa125df07262bbfc9627.html
@@ -0,0 +1,155 @@
+<!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: src/core/surface Directory 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><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>
+<!-- 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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">surface Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:byte__buffer_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8c.html">byte_buffer.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:byte__buffer__queue_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8c.html">byte_buffer_queue.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:byte__buffer__queue_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__queue_8h.html">byte_buffer_queue.h</a> <a href="byte__buffer__queue_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:byte__buffer__reader_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer__reader_8c.html">byte_buffer_reader.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:call_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8c.html">call.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:call_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html">call.h</a> <a href="call_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:call__details_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__details_8c.html">call_details.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:call__log__batch_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call__log__batch_8c.html">call_log_batch.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8c.html">channel.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel_8h.html">channel.h</a> <a href="channel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__connectivity_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__connectivity_8c.html">channel_connectivity.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__create_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__create_8c.html">channel_create.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:completion__queue_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8c.html">completion_queue.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:completion__queue_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html">completion_queue.h</a> <a href="completion__queue_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:event__string_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__string_8c.html">event_string.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:event__string_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__string_8h.html">event_string.h</a> <a href="event__string_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:init_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8c.html">init.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:init_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8h.html">init.h</a> <a href="init_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:init__secure_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init__secure_8c.html">init_secure.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:lame__client_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lame__client_8c.html">lame_client.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:metadata__array_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata__array_8c.html">metadata_array.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:secure__channel__create_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__channel__create_8c.html">secure_channel_create.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html">server.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html">server.h</a> <a href="server_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__chttp2_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__chttp2_8c.html">server_chttp2.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__create_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__create_8c.html">server_create.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:surface__trace_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="surface__trace_8c.html">surface_trace.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:surface__trace_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="surface__trace_8h.html">surface_trace.h</a> <a href="surface__trace_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:version_8c"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="version_8c.html">version.c</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</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>
diff --git a/doc/ref/core.internal/html/dns__resolver_8c.html b/doc/ref/core.internal/html/dns__resolver_8c.html
new file mode 100644
index 0000000000..14db34447c
--- /dev/null
+++ b/doc/ref/core.internal/html/dns__resolver_8c.html
@@ -0,0 +1,141 @@
+<!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: src/core/client_config/resolvers/dns_resolver.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">dns_resolver.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="dns__resolver_8h_source.html">src/core/client_config/resolvers/dns_resolver.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="host__port_8h_source.html">grpc/support/host_port.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="pick__first_8h_source.html">src/core/client_config/lb_policies/pick_first.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="add__channel__arg_8h_source.html">src/core/client_config/subchannel_factory_decorators/add_channel_arg.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolve__address_8h_source.html">src/core/iomgr/resolve_address.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html">dns_resolver</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a932c66ec39e987fb2cd076869334f871"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dns__resolver_8c.html#a932c66ec39e987fb2cd076869334f871">grpc_dns_resolver_factory_create</a> ()</td></tr>
+<tr class="memdesc:a932c66ec39e987fb2cd076869334f871"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a dns resolver factory. <a href="#a932c66ec39e987fb2cd076869334f871">More...</a><br/></td></tr>
+<tr class="separator:a932c66ec39e987fb2cd076869334f871"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a932c66ec39e987fb2cd076869334f871"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* grpc_dns_resolver_factory_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a dns resolver factory. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/dns__resolver_8h.html b/doc/ref/core.internal/html/dns__resolver_8h.html
new file mode 100644
index 0000000000..66cd3d461d
--- /dev/null
+++ b/doc/ref/core.internal/html/dns__resolver_8h.html
@@ -0,0 +1,130 @@
+<!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: src/core/client_config/resolvers/dns_resolver.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">dns_resolver.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="resolver__factory_8h_source.html">src/core/client_config/resolver_factory.h</a>&quot;</code><br/>
+</div>
+<p><a href="dns__resolver_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af1a22a50d3130b565e8a00b95a805b8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a">grpc_dns_resolver_factory_create</a> (void)</td></tr>
+<tr class="memdesc:af1a22a50d3130b565e8a00b95a805b8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a dns resolver factory. <a href="#af1a22a50d3130b565e8a00b95a805b8a">More...</a><br/></td></tr>
+<tr class="separator:af1a22a50d3130b565e8a00b95a805b8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="af1a22a50d3130b565e8a00b95a805b8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* grpc_dns_resolver_factory_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a dns resolver factory. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/dns__resolver_8h_source.html b/doc/ref/core.internal/html/dns__resolver_8h_source.html
new file mode 100644
index 0000000000..31dd4cb090
--- /dev/null
+++ b/doc/ref/core.internal/html/dns__resolver_8h_source.html
@@ -0,0 +1,143 @@
+<!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: src/core/client_config/resolvers/dns_resolver.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">dns_resolver.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="dns__resolver_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVERS_DNS_RESOLVER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVERS_DNS_RESOLVER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="resolver__factory_8h.html">src/core/client_config/resolver_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *<a class="code" href="dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a">grpc_dns_resolver_factory_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVERS_DNS_RESOLVER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="dns__resolver_8h_html_af1a22a50d3130b565e8a00b95a805b8a"><div class="ttname"><a href="dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a">grpc_dns_resolver_factory_create</a></div><div class="ttdeci">grpc_resolver_factory * grpc_dns_resolver_factory_create(void)</div><div class="ttdoc">Create a dns resolver factory. </div><div class="ttdef"><b>Definition:</b> dns_resolver.c:258</div></div>
+<div class="ttc" id="resolver__factory_8h_html"><div class="ttname"><a href="resolver__factory_8h.html">resolver_factory.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver__factory_html"><div class="ttname"><a href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver_factory.h:46</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/doxygen.css b/doc/ref/core.internal/html/doxygen.css
new file mode 100644
index 0000000000..f0f36f89f5
--- /dev/null
+++ b/doc/ref/core.internal/html/doxygen.css
@@ -0,0 +1,1366 @@
+/* The standard CSS for doxygen 1.8.6 */
+
+body, table, div, p, dl {
+ font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+ font-size: 150%;
+}
+
+.title {
+ font: 400 14px/28px Roboto,sans-serif;
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
+}
+
+h2.groupheader {
+ border-bottom: 1px solid #879ECB;
+ color: #354C7B;
+ font-size: 150%;
+ font-weight: normal;
+ margin-top: 1.75em;
+ padding-top: 8px;
+ padding-bottom: 4px;
+ width: 100%;
+}
+
+h3.groupheader {
+ font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+ margin-top: 2px;
+}
+
+p.starttd {
+ margin-top: 0px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+p.endtd {
+ margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+h3.version {
+ font-size: 90%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+}
+
+div.qindex, div.navpath {
+ width: 100%;
+ line-height: 140%;
+}
+
+div.navtab {
+ margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+ color: #3D578C;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.contents a:visited {
+ color: #4665A2;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a.qindex {
+ font-weight: bold;
+}
+
+a.qindexHL {
+ font-weight: bold;
+ background-color: #9CAFD4;
+ color: #ffffff;
+ border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
+}
+
+a.el {
+ font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+ color: #4665A2;
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+ color: #4665A2;
+}
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
+}
+
+pre.fragment {
+ border: 1px solid #C4CFE5;
+ background-color: #FBFCFD;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+}
+
+div.fragment {
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ background-color: #FBFCFD;
+ border: 1px solid #C4CFE5;
+}
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ min-height: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+div.line.glow {
+ background-color: cyan;
+ box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+ padding-right: 4px;
+ text-align: right;
+ border-right: 2px solid #0F0;
+ background-color: #E8E8E8;
+ white-space: pre;
+}
+span.lineno a {
+ background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+ background-color: #C8C8C8;
+}
+
+div.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0.2em;
+ border: solid thin #333;
+ border-radius: 0.5em;
+ -webkit-border-radius: .5em;
+ -moz-border-radius: .5em;
+ box-shadow: 2px 2px 3px #999;
+ -webkit-box-shadow: 2px 2px 3px #999;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+ background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ font-weight: bold;
+}
+
+div.groupText {
+ margin-left: 16px;
+ font-style: italic;
+}
+
+body {
+ background-color: white;
+ color: black;
+ margin: 0;
+}
+
+div.contents {
+ margin-top: 10px;
+ margin-left: 12px;
+ margin-right: 8px;
+}
+
+td.indexkey {
+ background-color: #EBEFF6;
+ font-weight: bold;
+ border: 1px solid #C4CFE5;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+ white-space: nowrap;
+ vertical-align: top;
+}
+
+td.indexvalue {
+ background-color: #EBEFF6;
+ border: 1px solid #C4CFE5;
+ padding: 2px 10px;
+ margin: 2px 0px;
+}
+
+tr.memlist {
+ background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+address.footer {
+ text-align: right;
+ padding-right: 12px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+blockquote {
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+ color: #003399;
+ font-weight: bold;
+}
+
+form.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+input.search {
+ font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+ font-size: 75%;
+}
+
+.dirtab {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+ background: #EBEFF6;
+ font-weight: bold;
+}
+
+hr {
+ height: 0px;
+ border: none;
+ border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+ height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+ border-spacing: 0px;
+ padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+ background-color: cyan;
+ box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #F9FAFC;
+ border: none;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memSeparator {
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memItemRight {
+ width: 100%;
+}
+
+.memTemplParams {
+ color: #4665A2;
+ white-space: nowrap;
+ font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+ font-size: 80%;
+ color: #4665A2;
+ font-weight: normal;
+ margin-left: 9px;
+}
+
+.memnav {
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+
+.mempage {
+ width: 100%;
+}
+
+.memitem {
+ padding: 0;
+ margin-bottom: 10px;
+ margin-right: 5px;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
+}
+
+.memitem.glow {
+ box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+ font-weight: bold;
+ margin-left: 6px;
+}
+
+.memname td {
+ vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #253555;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ -moz-border-radius-topleft: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+
+}
+
+.memdoc, dl.reflist dd {
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ background-color: #FBFCFD;
+ border-top-width: 0;
+ background-image:url('nav_g.png');
+ background-repeat:repeat-x;
+ background-color: #FFFFFF;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+ padding: 5px;
+}
+
+dl.reflist dd {
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
+}
+
+.paramkey {
+ text-align: right;
+}
+
+.paramtype {
+ white-space: nowrap;
+}
+
+.paramname {
+ color: #602020;
+ white-space: nowrap;
+}
+.paramname em {
+ font-style: normal;
+}
+.paramname code {
+ line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname {
+ font-weight: bold;
+ vertical-align: top;
+}
+
+.params .paramtype {
+ font-style: italic;
+ vertical-align: top;
+}
+
+.params .paramdir {
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
+}
+
+table.mlabels {
+ border-spacing: 0px;
+}
+
+td.mlabels-left {
+ width: 100%;
+ padding: 0px;
+}
+
+td.mlabels-right {
+ vertical-align: bottom;
+ padding: 0px;
+ white-space: nowrap;
+}
+
+span.mlabels {
+ margin-left: 8px;
+}
+
+span.mlabel {
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
+ text-shadow: none;
+ color: white;
+ margin-right: 4px;
+ padding: 2px 3px;
+ border-radius: 3px;
+ font-size: 7pt;
+ white-space: nowrap;
+ vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view when not used as main index */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+ padding-top: 3px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.entry a img {
+ border: none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 3px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3D578C;
+}
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #2A3D61;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+ padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+ margin-top: 0px;
+}
+
+.fieldtable td.fielddoc p:last-child {
+ margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+ top: 0px;
+ left: 10px;
+ height: 36px;
+ background-image: url('tab_b.png');
+ z-index: 101;
+ overflow: hidden;
+ font-size: 13px;
+}
+
+.navpath ul
+{
+ font-size: 11px;
+ background-image:url('tab_b.png');
+ background-repeat:repeat-x;
+ background-position: 0 -5px;
+ height:30px;
+ line-height:30px;
+ color:#8AA0CC;
+ border:solid 1px #C2CDE4;
+ overflow:hidden;
+ margin:0px;
+ padding:0px;
+}
+
+.navpath li
+{
+ list-style-type:none;
+ float:left;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:url('bc_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+ height:32px;
+ display:block;
+ text-decoration: none;
+ outline: none;
+ color: #283A5D;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+}
+
+.navpath li.navelem a:hover
+{
+ color:#6884BD;
+}
+
+.navpath li.footer
+{
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
+}
+
+
+div.summary
+{
+ float: right;
+ font-size: 8pt;
+ padding-right: 5px;
+ width: 50%;
+ text-align: right;
+}
+
+div.summary a
+{
+ white-space: nowrap;
+}
+
+div.ingroups
+{
+ font-size: 8pt;
+ width: 50%;
+ text-align: left;
+}
+
+div.ingroups a
+{
+ white-space: nowrap;
+}
+
+div.header
+{
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ margin: 0px;
+ border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+ padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+ padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+dl.note
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
+}
+
+dl.deprecated
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
+}
+
+dl.todo
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
+}
+
+dl.test
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
+}
+
+dl.bug
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
+}
+
+dl.section dd {
+ margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+ text-align: center;
+ vertical-align: bottom;
+ border-collapse: separate;
+}
+
+#projectlogo img
+{
+ border: 0px none;
+}
+
+#projectname
+{
+ font: 300% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 2px 0px;
+}
+
+#projectbrief
+{
+ font: 120% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#projectnumber
+{
+ font: 50% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#titlearea
+{
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+ text-align: center;
+}
+
+.dotgraph
+{
+ text-align: center;
+}
+
+.mscgraph
+{
+ text-align: center;
+}
+
+.diagraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+dl.citelist dd {
+ margin:2px 0;
+ padding:5px 0;
+}
+
+div.toc {
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 20px 10px 10px;
+ width: 200px;
+}
+
+div.toc li {
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
+}
+
+div.toc h3 {
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ color: #4665A2;
+ border-bottom: 0 none;
+ margin: 0;
+}
+
+div.toc ul {
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
+}
+
+div.toc li.level1 {
+ margin-left: 0px;
+}
+
+div.toc li.level2 {
+ margin-left: 15px;
+}
+
+div.toc li.level3 {
+ margin-left: 30px;
+}
+
+div.toc li.level4 {
+ margin-left: 45px;
+}
+
+.inherit_header {
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+.inherit_header td {
+ padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+ display: none;
+}
+
+tr.heading h2 {
+ margin-top: 12px;
+ margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+ position: absolute;
+ display: none;
+}
+
+#powerTip {
+ cursor: default;
+ white-space: nowrap;
+ background-color: white;
+ border: 1px solid gray;
+ border-radius: 4px 4px 4px 4px;
+ box-shadow: 1px 1px 7px gray;
+ display: none;
+ font-size: smaller;
+ max-width: 80%;
+ opacity: 0.9;
+ padding: 1ex 1em 1em;
+ position: absolute;
+ z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+ color: grey;
+ font-style: italic;
+}
+
+#powerTip div.ttname a {
+ font-weight: bold;
+}
+
+#powerTip div.ttname {
+ font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+ color: #006318;
+}
+
+#powerTip div {
+ margin: 0px;
+ padding: 0px;
+ font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+ content: "";
+ position: absolute;
+ margin: 0px;
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.w:after, #powerTip.w:before,
+#powerTip.e:after, #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ border: solid transparent;
+ content: " ";
+ height: 0;
+ width: 0;
+ position: absolute;
+}
+
+#powerTip.n:after, #powerTip.s:after,
+#powerTip.w:after, #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+ border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before, #powerTip.s:before,
+#powerTip.w:before, #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+ border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+ top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+ border-top-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+#powerTip.n:before {
+ border-top-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+ left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+ right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+ left: 14px;
+}
+
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+ border-bottom-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+ border-bottom-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+ left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+ right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+ left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+ left: 100%;
+}
+#powerTip.e:after {
+ border-left-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.e:before {
+ border-left-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+ right: 100%;
+}
+#powerTip.w:after {
+ border-right-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.w:before {
+ border-right-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+}
+
diff --git a/doc/ref/core.internal/html/doxygen.png b/doc/ref/core.internal/html/doxygen.png
new file mode 100644
index 0000000000..3ff17d807f
--- /dev/null
+++ b/doc/ref/core.internal/html/doxygen.png
Binary files differ
diff --git a/doc/ref/core.internal/html/dynsections.js b/doc/ref/core.internal/html/dynsections.js
new file mode 100644
index 0000000000..ed092c7f63
--- /dev/null
+++ b/doc/ref/core.internal/html/dynsections.js
@@ -0,0 +1,97 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+ content.hide();
+ summary.show();
+ $(linkObj).addClass('closed').removeClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ content.show();
+ summary.hide();
+ $(linkObj).removeClass('closed').addClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+ $('table.directory tr').
+ removeClass('even').filter(':visible:even').addClass('even');
+}
+function toggleLevel(level)
+{
+ $('table.directory tr').each(function(){
+ var l = this.id.split('_').length-1;
+ var i = $('#img'+this.id.substring(3));
+ var a = $('#arr'+this.id.substring(3));
+ if (l<level+1) {
+ i.attr('src','ftv2folderopen.png');
+ a.attr('src','ftv2mnode.png');
+ $(this).show();
+ } else if (l==level+1) {
+ i.attr('src','ftv2folderclosed.png');
+ a.attr('src','ftv2pnode.png');
+ $(this).show();
+ } else {
+ $(this).hide();
+ }
+ });
+ updateStripes();
+}
+
+function toggleFolder(id)
+{
+ //The clicked row
+ var currentRow = $('#row_'+id);
+ var currentRowImages = currentRow.find("img");
+
+ //All rows after the clicked row
+ var rows = currentRow.nextAll("tr");
+
+ //Only match elements AFTER this one (can't hide elements before)
+ var childRows = rows.filter(function() {
+ var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+ return this.id.match(re);
+ });
+
+ //First row is visible we are HIDING
+ if (childRows.filter(':first').is(':visible')===true) {
+ currentRowImages.filter("[id^=arr]").attr('src', 'ftv2pnode.png');
+ currentRowImages.filter("[id^=img]").attr('src', 'ftv2folderclosed.png');
+ rows.filter("[id^=row_"+id+"]").hide();
+ } else { //We are SHOWING
+ //All sub images
+ var childImages = childRows.find("img");
+ var childImg = childImages.filter("[id^=img]");
+ var childArr = childImages.filter("[id^=arr]");
+
+ currentRow.find("[id^=arr]").attr('src', 'ftv2mnode.png'); //open row
+ currentRow.find("[id^=img]").attr('src', 'ftv2folderopen.png'); //open row
+ childImg.attr('src','ftv2folderclosed.png'); //children closed
+ childArr.attr('src','ftv2pnode.png'); //children closed
+ childRows.show(); //show all children
+ }
+ updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+ var rows = $('tr.inherit.'+id);
+ var img = $('tr.inherit_header.'+id+' img');
+ var src = $(img).attr('src');
+ if (rows.filter(':first').is(':visible')===true) {
+ rows.css('display','none');
+ $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ rows.css('display','table-row'); // using show() causes jump in firefox
+ $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+}
+
diff --git a/doc/ref/core.internal/html/endpoint_8c.html b/doc/ref/core.internal/html/endpoint_8c.html
new file mode 100644
index 0000000000..96e3802ef4
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint_8c.html
@@ -0,0 +1,297 @@
+<!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: src/core/iomgr/endpoint.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">endpoint.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abead7bb222b6e3f5a7004c8fb12821be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#abead7bb222b6e3f5a7004c8fb12821be">grpc_endpoint_notify_on_read</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:abead7bb222b6e3f5a7004c8fb12821be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cc5c4afb853d7204ad7b6bcbe8c95b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">grpc_endpoint_write</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a6cc5c4afb853d7204ad7b6bcbe8c95b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe30ad16c4df2a5c80b9e73d2bce80e6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#afe30ad16c4df2a5c80b9e73d2bce80e6">grpc_endpoint_add_to_pollset</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:afe30ad16c4df2a5c80b9e73d2bce80e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7da8b1657895a121a59458dbdeb0e900"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#a7da8b1657895a121a59458dbdeb0e900">grpc_endpoint_add_to_pollset_set</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set)</td></tr>
+<tr class="separator:a7da8b1657895a121a59458dbdeb0e900"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fca699259b75cf0f685227a363765fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#a7fca699259b75cf0f685227a363765fa">grpc_endpoint_shutdown</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a7fca699259b75cf0f685227a363765fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b4b5f0b352955ec4f060c6b443408bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#a5b4b5f0b352955ec4f060c6b443408bd">grpc_endpoint_destroy</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a5b4b5f0b352955ec4f060c6b443408bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21e5c205829aaf48ae7d26b32fa00338"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8c.html#a21e5c205829aaf48ae7d26b32fa00338">grpc_endpoint_get_peer</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a21e5c205829aaf48ae7d26b32fa00338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="afe30ad16c4df2a5c80b9e73d2bce80e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_add_to_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7da8b1657895a121a59458dbdeb0e900"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_add_to_pollset_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b4b5f0b352955ec4f060c6b443408bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a21e5c205829aaf48ae7d26b32fa00338"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_endpoint_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abead7bb222b6e3f5a7004c8fb12821be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_notify_on_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fca699259b75cf0f685227a363765fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6cc5c4afb853d7204ad7b6bcbe8c95b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> grpc_endpoint_write </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/endpoint_8h.html b/doc/ref/core.internal/html/endpoint_8h.html
new file mode 100644
index 0000000000..e15915dcf1
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint_8h.html
@@ -0,0 +1,459 @@
+<!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: src/core/iomgr/endpoint.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">endpoint.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="pollset__set_8h_source.html">src/core/iomgr/pollset_set.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="endpoint_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab0f168d17277b4b5a4d7842eec6ea3ea"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#ab0f168d17277b4b5a4d7842eec6ea3ea">grpc_endpoint</a></td></tr>
+<tr class="separator:ab0f168d17277b4b5a4d7842eec6ea3ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accd077025fc138a98e048238d2efe1b9"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#accd077025fc138a98e048238d2efe1b9">grpc_endpoint_vtable</a></td></tr>
+<tr class="separator:accd077025fc138a98e048238d2efe1b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae601d949fd51e619ee5312bc2d733236"><td class="memItemLeft" align="right" valign="top">typedef enum <br class="typebreak"/>
+<a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#ae601d949fd51e619ee5312bc2d733236">grpc_endpoint_cb_status</a></td></tr>
+<tr class="separator:ae601d949fd51e619ee5312bc2d733236"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5e35fd14127beb3af459a22d81ac1fd"><td class="memItemLeft" align="right" valign="top">typedef enum <br class="typebreak"/>
+<a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#ae5e35fd14127beb3af459a22d81ac1fd">grpc_endpoint_write_status</a></td></tr>
+<tr class="separator:ae5e35fd14127beb3af459a22d81ac1fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb689cc1f448569b81f46c8810b5a24c"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> )(void *user_data, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> error)</td></tr>
+<tr class="separator:adb689cc1f448569b81f46c8810b5a24c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2ca6ea84b9d91d443ba9a8a53e55f2a"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> )(void *user_data, <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> error)</td></tr>
+<tr class="separator:af2ca6ea84b9d91d443ba9a8a53e55f2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:abb88e72ffe7908c2def55fea24d321ae"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> { <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f">GRPC_ENDPOINT_CB_OK</a> = 0,
+<a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a">GRPC_ENDPOINT_CB_EOF</a>,
+<a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37">GRPC_ENDPOINT_CB_SHUTDOWN</a>,
+<a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e">GRPC_ENDPOINT_CB_ERROR</a>
+ }</td></tr>
+<tr class="separator:abb88e72ffe7908c2def55fea24d321ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfb8e299371be52c109912cda9dbe902"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> { <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254">GRPC_ENDPOINT_WRITE_DONE</a>,
+<a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09">GRPC_ENDPOINT_WRITE_PENDING</a>,
+<a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f">GRPC_ENDPOINT_WRITE_ERROR</a>
+ }</td></tr>
+<tr class="separator:abfb8e299371be52c109912cda9dbe902"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abead7bb222b6e3f5a7004c8fb12821be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be">grpc_endpoint_notify_on_read</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:abead7bb222b6e3f5a7004c8fb12821be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21e5c205829aaf48ae7d26b32fa00338"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338">grpc_endpoint_get_peer</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a21e5c205829aaf48ae7d26b32fa00338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cc5c4afb853d7204ad7b6bcbe8c95b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">grpc_endpoint_write</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a6cc5c4afb853d7204ad7b6bcbe8c95b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fca699259b75cf0f685227a363765fa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#a7fca699259b75cf0f685227a363765fa">grpc_endpoint_shutdown</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a7fca699259b75cf0f685227a363765fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b4b5f0b352955ec4f060c6b443408bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd">grpc_endpoint_destroy</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a5b4b5f0b352955ec4f060c6b443408bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe30ad16c4df2a5c80b9e73d2bce80e6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6">grpc_endpoint_add_to_pollset</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:afe30ad16c4df2a5c80b9e73d2bce80e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7da8b1657895a121a59458dbdeb0e900"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900">grpc_endpoint_add_to_pollset_set</a> (<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set)</td></tr>
+<tr class="separator:a7da8b1657895a121a59458dbdeb0e900"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ab0f168d17277b4b5a4d7842eec6ea3ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae601d949fd51e619ee5312bc2d733236"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adb689cc1f448569b81f46c8810b5a24c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_endpoint_read_cb)(void *user_data, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> error)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accd077025fc138a98e048238d2efe1b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a> <a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2ca6ea84b9d91d443ba9a8a53e55f2a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_endpoint_write_cb)(void *user_data, <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> error)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae5e35fd14127beb3af459a22d81ac1fd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="abb88e72ffe7908c2def55fea24d321ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f"></a>GRPC_ENDPOINT_CB_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a"></a>GRPC_ENDPOINT_CB_EOF</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37"></a>GRPC_ENDPOINT_CB_SHUTDOWN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e"></a>GRPC_ENDPOINT_CB_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="abfb8e299371be52c109912cda9dbe902"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254"></a>GRPC_ENDPOINT_WRITE_DONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09"></a>GRPC_ENDPOINT_WRITE_PENDING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f"></a>GRPC_ENDPOINT_WRITE_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="afe30ad16c4df2a5c80b9e73d2bce80e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_add_to_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7da8b1657895a121a59458dbdeb0e900"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_add_to_pollset_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b4b5f0b352955ec4f060c6b443408bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a21e5c205829aaf48ae7d26b32fa00338"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_endpoint_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abead7bb222b6e3f5a7004c8fb12821be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_notify_on_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fca699259b75cf0f685227a363765fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_endpoint_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6cc5c4afb853d7204ad7b6bcbe8c95b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> grpc_endpoint_write </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>ep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/endpoint_8h_source.html b/doc/ref/core.internal/html/endpoint_8h_source.html
new file mode 100644
index 0000000000..9c430efc79
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint_8h_source.html
@@ -0,0 +1,245 @@
+<!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: src/core/iomgr/endpoint.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">endpoint.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="endpoint_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_ENDPOINT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_ENDPOINT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset_8h.html">src/core/iomgr/pollset.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset__set_8h.html">src/core/iomgr/pollset_set.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* An endpoint caps a streaming channel between two communicating processes.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> Examples may be: a tcp socket, &lt;stdin+stdout&gt;, or some shared memory. */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="endpoint_8h.html#ab0f168d17277b4b5a4d7842eec6ea3ea"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="endpoint_8h.html#accd077025fc138a98e048238d2efe1b9"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a> <a class="code" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f"> 49</a></span>&#160; <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f">GRPC_ENDPOINT_CB_OK</a> = 0, <span class="comment">/* Call completed successfully */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a"> 50</a></span>&#160; <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a">GRPC_ENDPOINT_CB_EOF</a>, <span class="comment">/* Call completed successfully, end of file reached */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37"> 51</a></span>&#160; <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37">GRPC_ENDPOINT_CB_SHUTDOWN</a>, <span class="comment">/* Call interrupted by shutdown */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e"> 52</a></span>&#160; <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e">GRPC_ENDPOINT_CB_ERROR</a> <span class="comment">/* Call interrupted by socket error */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902"> 55</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> {</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254"> 56</a></span>&#160; <a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254">GRPC_ENDPOINT_WRITE_DONE</a>, <span class="comment">/* completed immediately, cb won&#39;t be called */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09"> 57</a></span>&#160; <a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09">GRPC_ENDPOINT_WRITE_PENDING</a>, <span class="comment">/* cb will be called when completed */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f"> 58</a></span>&#160; <a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f">GRPC_ENDPOINT_WRITE_ERROR</a> <span class="comment">/* write errored out, cb won&#39;t be called */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c"> 61</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a>)(<span class="keywordtype">void</span> *user_data, <a class="code" href="structgpr__slice.html">gpr_slice</a> *slices,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">size_t</span> nslices,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> error);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a"> 64</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a>)(<span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a> error);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html"> 67</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a> {</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2"> 68</a></span>&#160; void (*<a class="code" href="structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2">notify_on_read</a>)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> cb,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739"> 70</a></span>&#160; <a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> (*<a class="code" href="structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739">write</a>)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="structgpr__slice.html">gpr_slice</a> *slices,</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">size_t</span> nslices, <a class="code" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> cb,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556"> 73</a></span>&#160; void (*<a class="code" href="structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556">add_to_pollset</a>)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c"> 74</a></span>&#160; void (*<a class="code" href="structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c">add_to_pollset_set</a>)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6"> 75</a></span>&#160; void (*<a class="code" href="structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6">shutdown</a>)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c"> 76</a></span>&#160; void (*<a class="code" href="structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c">destroy</a>)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__vtable.html#a01e48582c45e2e7033e344d253316911"> 77</a></span>&#160; <span class="keywordtype">char</span> *(*get_peer)(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;};</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/* When data is available on the connection, calls the callback with slices. */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">void</span> <a class="code" href="endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be">grpc_endpoint_notify_on_read</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> cb,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338">grpc_endpoint_get_peer</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* Write slices out to the socket.</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> If the connection is ready for more data after the end of the call, it</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> returns GRPC_ENDPOINT_WRITE_DONE.</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> Otherwise it returns GRPC_ENDPOINT_WRITE_PENDING and calls cb when the</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> connection is ready for more data. */</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<a class="code" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a> <a class="code" href="endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">grpc_endpoint_write</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *slices,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">size_t</span> nslices,</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> cb,</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment">/* Causes any pending read/write callbacks to run immediately with</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> GRPC_ENDPOINT_CB_SHUTDOWN status */</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">void</span> <a class="code" href="endpoint_8h.html#a7fca699259b75cf0f685227a363765fa">grpc_endpoint_shutdown</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keywordtype">void</span> <a class="code" href="endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd">grpc_endpoint_destroy</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* Add an endpoint to a pollset, so that when the pollset is polled, events from</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> this endpoint are considered */</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keywordtype">void</span> <a class="code" href="endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6">grpc_endpoint_add_to_pollset</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="keywordtype">void</span> <a class="code" href="endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900">grpc_endpoint_add_to_pollset_set</a>(<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="structgrpc__endpoint.html"> 108</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> {</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7"> 109</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a> *<a class="code" href="structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7">vtable</a>;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;};</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_ENDPOINT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html_ae2d638d92a090e190a73ba01f2b29556"><div class="ttname"><a href="structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556">grpc_endpoint_vtable::add_to_pollset</a></div><div class="ttdeci">void(* add_to_pollset)(grpc_endpoint *ep, grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> endpoint.h:73</div></div>
+<div class="ttc" id="endpoint_8h_html_abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254"><div class="ttname"><a href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254">GRPC_ENDPOINT_WRITE_DONE</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:56</div></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html_a1c3b42c8a439d6e741a84627815982d6"><div class="ttname"><a href="structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6">grpc_endpoint_vtable::shutdown</a></div><div class="ttdeci">void(* shutdown)(grpc_endpoint *ep)</div><div class="ttdef"><b>Definition:</b> endpoint.h:75</div></div>
+<div class="ttc" id="endpoint_8h_html_abb88e72ffe7908c2def55fea24d321ae"><div class="ttname"><a href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">grpc_endpoint_cb_status</a></div><div class="ttdeci">grpc_endpoint_cb_status</div><div class="ttdef"><b>Definition:</b> endpoint.h:48</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html_ac276ecfd62bad184e1bed7eaa2674b3c"><div class="ttname"><a href="structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c">grpc_endpoint_vtable::add_to_pollset_set</a></div><div class="ttdeci">void(* add_to_pollset_set)(grpc_endpoint *ep, grpc_pollset_set *pollset)</div><div class="ttdef"><b>Definition:</b> endpoint.h:74</div></div>
+<div class="ttc" id="endpoint_8h_html_abfb8e299371be52c109912cda9dbe902"><div class="ttname"><a href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a></div><div class="ttdeci">grpc_endpoint_write_status</div><div class="ttdef"><b>Definition:</b> endpoint.h:55</div></div>
+<div class="ttc" id="endpoint_8h_html_a6cc5c4afb853d7204ad7b6bcbe8c95b0"><div class="ttname"><a href="endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">grpc_endpoint_write</a></div><div class="ttdeci">grpc_endpoint_write_status grpc_endpoint_write(grpc_endpoint *ep, gpr_slice *slices, size_t nslices, grpc_endpoint_write_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> endpoint.c:41</div></div>
+<div class="ttc" id="endpoint_8h_html_a5b4b5f0b352955ec4f060c6b443408bd"><div class="ttname"><a href="endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd">grpc_endpoint_destroy</a></div><div class="ttdeci">void grpc_endpoint_destroy(grpc_endpoint *ep)</div><div class="ttdef"><b>Definition:</b> endpoint.c:59</div></div>
+<div class="ttc" id="pollset_8h_html"><div class="ttname"><a href="pollset_8h.html">pollset.h</a></div></div>
+<div class="ttc" id="endpoint_8h_html_a21e5c205829aaf48ae7d26b32fa00338"><div class="ttname"><a href="endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338">grpc_endpoint_get_peer</a></div><div class="ttdeci">char * grpc_endpoint_get_peer(grpc_endpoint *ep)</div><div class="ttdef"><b>Definition:</b> endpoint.c:61</div></div>
+<div class="ttc" id="endpoint_8h_html_abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a"><div class="ttname"><a href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a">GRPC_ENDPOINT_CB_EOF</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:50</div></div>
+<div class="ttc" id="endpoint_8h_html_abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09"><div class="ttname"><a href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09">GRPC_ENDPOINT_WRITE_PENDING</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:57</div></div>
+<div class="ttc" id="endpoint_8h_html_abead7bb222b6e3f5a7004c8fb12821be"><div class="ttname"><a href="endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be">grpc_endpoint_notify_on_read</a></div><div class="ttdeci">void grpc_endpoint_notify_on_read(grpc_endpoint *ep, grpc_endpoint_read_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> endpoint.c:36</div></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html_a5fca837fe96a08bfc514eb7579e23739"><div class="ttname"><a href="structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739">grpc_endpoint_vtable::write</a></div><div class="ttdeci">grpc_endpoint_write_status(* write)(grpc_endpoint *ep, gpr_slice *slices, size_t nslices, grpc_endpoint_write_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> endpoint.h:70</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__endpoint_html_a3510963bb9fe2afd610189fa3a1f44c7"><div class="ttname"><a href="structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7">grpc_endpoint::vtable</a></div><div class="ttdeci">const grpc_endpoint_vtable * vtable</div><div class="ttdef"><b>Definition:</b> endpoint.h:109</div></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html"><div class="ttname"><a href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:67</div></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html_a86466f2980bcc966d2aebdd5659570d2"><div class="ttname"><a href="structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2">grpc_endpoint_vtable::notify_on_read</a></div><div class="ttdeci">void(* notify_on_read)(grpc_endpoint *ep, grpc_endpoint_read_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> endpoint.h:68</div></div>
+<div class="ttc" id="endpoint_8h_html_abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37"><div class="ttname"><a href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37">GRPC_ENDPOINT_CB_SHUTDOWN</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:51</div></div>
+<div class="ttc" id="endpoint_8h_html_a7da8b1657895a121a59458dbdeb0e900"><div class="ttname"><a href="endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900">grpc_endpoint_add_to_pollset_set</a></div><div class="ttdeci">void grpc_endpoint_add_to_pollset_set(grpc_endpoint *ep, grpc_pollset_set *pollset_set)</div><div class="ttdef"><b>Definition:</b> endpoint.c:53</div></div>
+<div class="ttc" id="structgrpc__endpoint__vtable_html_af1c2694fdabae292bfef69c3adfd910c"><div class="ttname"><a href="structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c">grpc_endpoint_vtable::destroy</a></div><div class="ttdeci">void(* destroy)(grpc_endpoint *ep)</div><div class="ttdef"><b>Definition:</b> endpoint.h:76</div></div>
+<div class="ttc" id="endpoint_8h_html_adb689cc1f448569b81f46c8810b5a24c"><div class="ttname"><a href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a></div><div class="ttdeci">void(* grpc_endpoint_read_cb)(void *user_data, gpr_slice *slices, size_t nslices, grpc_endpoint_cb_status error)</div><div class="ttdef"><b>Definition:</b> endpoint.h:61</div></div>
+<div class="ttc" id="endpoint_8h_html_afe30ad16c4df2a5c80b9e73d2bce80e6"><div class="ttname"><a href="endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6">grpc_endpoint_add_to_pollset</a></div><div class="ttdeci">void grpc_endpoint_add_to_pollset(grpc_endpoint *ep, grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> endpoint.c:49</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="endpoint_8h_html_abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f"><div class="ttname"><a href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f">GRPC_ENDPOINT_WRITE_ERROR</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:58</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="pollset__set_8h_html"><div class="ttname"><a href="pollset__set_8h.html">pollset_set.h</a></div></div>
+<div class="ttc" id="endpoint_8h_html_abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e"><div class="ttname"><a href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e">GRPC_ENDPOINT_CB_ERROR</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:52</div></div>
+<div class="ttc" id="endpoint_8h_html_abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f"><div class="ttname"><a href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f">GRPC_ENDPOINT_CB_OK</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:49</div></div>
+<div class="ttc" id="endpoint_8h_html_af2ca6ea84b9d91d443ba9a8a53e55f2a"><div class="ttname"><a href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a></div><div class="ttdeci">void(* grpc_endpoint_write_cb)(void *user_data, grpc_endpoint_cb_status error)</div><div class="ttdef"><b>Definition:</b> endpoint.h:64</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="endpoint_8h_html_a7fca699259b75cf0f685227a363765fa"><div class="ttname"><a href="endpoint_8h.html#a7fca699259b75cf0f685227a363765fa">grpc_endpoint_shutdown</a></div><div class="ttdeci">void grpc_endpoint_shutdown(grpc_endpoint *ep)</div><div class="ttdef"><b>Definition:</b> endpoint.c:57</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/endpoint__pair_8h.html b/doc/ref/core.internal/html/endpoint__pair_8h.html
new file mode 100644
index 0000000000..e24b8da94c
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint__pair_8h.html
@@ -0,0 +1,143 @@
+<!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: src/core/iomgr/endpoint_pair.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">endpoint_pair.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+</div>
+<p><a href="endpoint__pair_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a024d70a614077120d1a5ab8c612a469a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a">grpc_iomgr_create_endpoint_pair</a> (const char *name, size_t read_slice_size)</td></tr>
+<tr class="separator:a024d70a614077120d1a5ab8c612a469a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a024d70a614077120d1a5ab8c612a469a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a> grpc_iomgr_create_endpoint_pair </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>read_slice_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/endpoint__pair_8h_source.html b/doc/ref/core.internal/html/endpoint__pair_8h_source.html
new file mode 100644
index 0000000000..eea862c380
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint__pair_8h_source.html
@@ -0,0 +1,152 @@
+<!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: src/core/iomgr/endpoint_pair.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">endpoint_pair.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="endpoint__pair_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_ENDPOINT_PAIR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_ENDPOINT_PAIR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__pair.html"> 39</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c"> 40</a></span>&#160; <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c">client</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2"> 41</a></span>&#160; <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2">server</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;} <a class="code" href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<a class="code" href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a> <a class="code" href="endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a">grpc_iomgr_create_endpoint_pair</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordtype">size_t</span> read_slice_size);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_ENDPOINT_PAIR_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__endpoint__pair_html"><div class="ttname"><a href="structgrpc__endpoint__pair.html">grpc_endpoint_pair</a></div><div class="ttdef"><b>Definition:</b> endpoint_pair.h:39</div></div>
+<div class="ttc" id="structgrpc__endpoint__pair_html_ac7016dfd6d23e04fe169ba3f8fd9238c"><div class="ttname"><a href="structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c">grpc_endpoint_pair::client</a></div><div class="ttdeci">grpc_endpoint * client</div><div class="ttdef"><b>Definition:</b> endpoint_pair.h:40</div></div>
+<div class="ttc" id="endpoint__pair_8h_html_a024d70a614077120d1a5ab8c612a469a"><div class="ttname"><a href="endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a">grpc_iomgr_create_endpoint_pair</a></div><div class="ttdeci">grpc_endpoint_pair grpc_iomgr_create_endpoint_pair(const char *name, size_t read_slice_size)</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="structgrpc__endpoint__pair_html_a64db1589d0b3b754b33deb4ed2bdabc2"><div class="ttname"><a href="structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2">grpc_endpoint_pair::server</a></div><div class="ttdeci">grpc_endpoint * server</div><div class="ttdef"><b>Definition:</b> endpoint_pair.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/endpoint__pair__posix_8c.html b/doc/ref/core.internal/html/endpoint__pair__posix_8c.html
new file mode 100644
index 0000000000..3d5da3a510
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint__pair__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/endpoint_pair_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">endpoint_pair_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/endpoint__pair__windows_8c.html b/doc/ref/core.internal/html/endpoint__pair__windows_8c.html
new file mode 100644
index 0000000000..d993f999dc
--- /dev/null
+++ b/doc/ref/core.internal/html/endpoint__pair__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/endpoint_pair_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">endpoint_pair_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/env_8h.html b/doc/ref/core.internal/html/env_8h.html
new file mode 100644
index 0000000000..e049044fc9
--- /dev/null
+++ b/doc/ref/core.internal/html/env_8h.html
@@ -0,0 +1,156 @@
+<!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: src/core/support/env.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">env.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="env_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a56b20a68a421e585a14b92cb9999eafb"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env_8h.html#a56b20a68a421e585a14b92cb9999eafb">gpr_getenv</a> (const char *name)</td></tr>
+<tr class="separator:a56b20a68a421e585a14b92cb9999eafb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab20b9f1c8dc1f142a17eaa4e18f37fa3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3">gpr_setenv</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:ab20b9f1c8dc1f142a17eaa4e18f37fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a56b20a68a421e585a14b92cb9999eafb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_getenv </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab20b9f1c8dc1f142a17eaa4e18f37fa3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_setenv </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/env_8h_source.html b/doc/ref/core.internal/html/env_8h_source.html
new file mode 100644
index 0000000000..c65f11de2f
--- /dev/null
+++ b/doc/ref/core.internal/html/env_8h_source.html
@@ -0,0 +1,163 @@
+<!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: src/core/support/env.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">env.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="env_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_ENV_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_ENV_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Env utility functions */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Gets the environment variable value with the specified name.</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> Returns a newly allocated string. It is the responsability of the caller to</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> gpr_free the return value if not NULL (which means that the environment</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> variable exists). */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="env_8h.html#a56b20a68a421e585a14b92cb9999eafb">gpr_getenv</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Sets the the environment with the specified name to the specified value. */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3">gpr_setenv</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_ENV_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="env_8h_html_a56b20a68a421e585a14b92cb9999eafb"><div class="ttname"><a href="env_8h.html#a56b20a68a421e585a14b92cb9999eafb">gpr_getenv</a></div><div class="ttdeci">char * gpr_getenv(const char *name)</div></div>
+<div class="ttc" id="env_8h_html_ab20b9f1c8dc1f142a17eaa4e18f37fa3"><div class="ttname"><a href="env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3">gpr_setenv</a></div><div class="ttdeci">void gpr_setenv(const char *name, const char *value)</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/env__linux_8c.html b/doc/ref/core.internal/html/env__linux_8c.html
new file mode 100644
index 0000000000..dff64194df
--- /dev/null
+++ b/doc/ref/core.internal/html/env__linux_8c.html
@@ -0,0 +1,121 @@
+<!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: src/core/support/env_linux.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">env_linux.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a369266c24eacffb87046522897a570d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="env__linux_8c.html#a369266c24eacffb87046522897a570d5">_GNU_SOURCE</a></td></tr>
+<tr class="separator:a369266c24eacffb87046522897a570d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a369266c24eacffb87046522897a570d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define _GNU_SOURCE</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/env__posix_8c.html b/doc/ref/core.internal/html/env__posix_8c.html
new file mode 100644
index 0000000000..5f2af1e3ba
--- /dev/null
+++ b/doc/ref/core.internal/html/env__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/env_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">env_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/env__win32_8c.html b/doc/ref/core.internal/html/env__win32_8c.html
new file mode 100644
index 0000000000..7965b641af
--- /dev/null
+++ b/doc/ref/core.internal/html/env__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/env_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">env_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/event__string_8c.html b/doc/ref/core.internal/html/event__string_8c.html
new file mode 100644
index 0000000000..1f89db14a5
--- /dev/null
+++ b/doc/ref/core.internal/html/event__string_8c.html
@@ -0,0 +1,129 @@
+<!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: src/core/surface/event_string.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">event_string.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="event__string_8h_source.html">src/core/surface/event_string.h</a>&quot;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8dc67a225f744d4d0ee592faf2bd4313"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__string_8c.html#a8dc67a225f744d4d0ee592faf2bd4313">grpc_event_string</a> (<a class="el" href="structgrpc__event.html">grpc_event</a> *ev)</td></tr>
+<tr class="separator:a8dc67a225f744d4d0ee592faf2bd4313"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8dc67a225f744d4d0ee592faf2bd4313"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_event_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__event.html">grpc_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/event__string_8h.html b/doc/ref/core.internal/html/event__string_8h.html
new file mode 100644
index 0000000000..4148898ded
--- /dev/null
+++ b/doc/ref/core.internal/html/event__string_8h.html
@@ -0,0 +1,127 @@
+<!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: src/core/surface/event_string.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">event_string.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+</div>
+<p><a href="event__string_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8dc67a225f744d4d0ee592faf2bd4313"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">grpc_event_string</a> (<a class="el" href="structgrpc__event.html">grpc_event</a> *ev)</td></tr>
+<tr class="separator:a8dc67a225f744d4d0ee592faf2bd4313"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8dc67a225f744d4d0ee592faf2bd4313"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_event_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__event.html">grpc_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/event__string_8h_source.html b/doc/ref/core.internal/html/event__string_8h_source.html
new file mode 100644
index 0000000000..6e4707985f
--- /dev/null
+++ b/doc/ref/core.internal/html/event__string_8h_source.html
@@ -0,0 +1,144 @@
+<!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: src/core/surface/event_string.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">event_string.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="event__string_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_EVENT_STRING_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_EVENT_STRING_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Returns a string describing an event. Must be later freed with gpr_free() */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">grpc_event_string</a>(<a class="code" href="structgrpc__event.html">grpc_event</a> *ev);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_EVENT_STRING_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__event_html"><div class="ttname"><a href="structgrpc__event.html">grpc_event</a></div><div class="ttdoc">The result of an operation. </div><div class="ttdef"><b>Definition:</b> grpc.h:224</div></div>
+<div class="ttc" id="event__string_8h_html_a8dc67a225f744d4d0ee592faf2bd4313"><div class="ttname"><a href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">grpc_event_string</a></div><div class="ttdeci">char * grpc_event_string(grpc_event *ev)</div><div class="ttdef"><b>Definition:</b> event_string.c:56</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/fake__transport__security_8c.html b/doc/ref/core.internal/html/fake__transport__security_8c.html
new file mode 100644
index 0000000000..c81db00a47
--- /dev/null
+++ b/doc/ref/core.internal/html/fake__transport__security_8c.html
@@ -0,0 +1,245 @@
+<!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: src/core/tsi/fake_transport_security.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">fake_transport_security.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="fake__transport__security_8h_source.html">src/core/tsi/fake_transport_security.h</a>&quot;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="transport__security_8h_source.html">src/core/tsi/transport_security.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html">tsi_fake_handshaker</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame__protector.html">tsi_fake_frame_protector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ad4e1e451d3d99c6805c489641d4934df"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html#ad4e1e451d3d99c6805c489641d4934df">TSI_FAKE_FRAME_HEADER_SIZE</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:ad4e1e451d3d99c6805c489641d4934df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4faca44775d659e16993c11482a4a80e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html#a4faca44775d659e16993c11482a4a80e">TSI_FAKE_FRAME_INITIAL_ALLOCATED_SIZE</a>&#160;&#160;&#160;64</td></tr>
+<tr class="separator:a4faca44775d659e16993c11482a4a80e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e80c442eaaca03f86cd1b2a1beea9f3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html#a5e80c442eaaca03f86cd1b2a1beea9f3">TSI_FAKE_DEFAULT_FRAME_SIZE</a>&#160;&#160;&#160;16384</td></tr>
+<tr class="separator:a5e80c442eaaca03f86cd1b2a1beea9f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a0a27e83e048843db20bec3fbf4513d52"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52">tsi_fake_handshake_message</a> { <br/>
+&#160;&#160;<a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a3eef9f8827f4892e807c2b0e1a9187f3">TSI_FAKE_CLIENT_INIT</a> = 0,
+<a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a062ff4e0c7cb1b8894dbd5d633f4e5bb">TSI_FAKE_SERVER_INIT</a> = 1,
+<a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a8449ebdb0b21fe666efe134d8eb5af74">TSI_FAKE_CLIENT_FINISHED</a> = 2,
+<a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52abf558a770548cdab6e4716e7f30ac641">TSI_FAKE_SERVER_FINISHED</a> = 3,
+<br/>
+&#160;&#160;<a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52adf08f2bf334a78ccee66b203a08b6e7b">TSI_FAKE_HANDSHAKE_MESSAGE_MAX</a> = 4
+<br/>
+ }</td></tr>
+<tr class="separator:a0a27e83e048843db20bec3fbf4513d52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7ce2a5356ae53a2f4686faa9f32910d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html#a7ce2a5356ae53a2f4686faa9f32910d3">tsi_create_fake_handshaker</a> (int is_client)</td></tr>
+<tr class="separator:a7ce2a5356ae53a2f4686faa9f32910d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6af0733aaa845a070d6d92e5d79e8932"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8c.html#a6af0733aaa845a070d6d92e5d79e8932">tsi_create_fake_protector</a> (size_t *max_protected_frame_size)</td></tr>
+<tr class="separator:a6af0733aaa845a070d6d92e5d79e8932"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a5e80c442eaaca03f86cd1b2a1beea9f3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_FAKE_DEFAULT_FRAME_SIZE&#160;&#160;&#160;16384</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4e1e451d3d99c6805c489641d4934df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_FAKE_FRAME_HEADER_SIZE&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4faca44775d659e16993c11482a4a80e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_FAKE_FRAME_INITIAL_ALLOCATED_SIZE&#160;&#160;&#160;64</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a0a27e83e048843db20bec3fbf4513d52"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52">tsi_fake_handshake_message</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a0a27e83e048843db20bec3fbf4513d52a3eef9f8827f4892e807c2b0e1a9187f3"></a>TSI_FAKE_CLIENT_INIT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0a27e83e048843db20bec3fbf4513d52a062ff4e0c7cb1b8894dbd5d633f4e5bb"></a>TSI_FAKE_SERVER_INIT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0a27e83e048843db20bec3fbf4513d52a8449ebdb0b21fe666efe134d8eb5af74"></a>TSI_FAKE_CLIENT_FINISHED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0a27e83e048843db20bec3fbf4513d52abf558a770548cdab6e4716e7f30ac641"></a>TSI_FAKE_SERVER_FINISHED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0a27e83e048843db20bec3fbf4513d52adf08f2bf334a78ccee66b203a08b6e7b"></a>TSI_FAKE_HANDSHAKE_MESSAGE_MAX</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7ce2a5356ae53a2f4686faa9f32910d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>* tsi_create_fake_handshaker </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6af0733aaa845a070d6d92e5d79e8932"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>* tsi_create_fake_protector </td>
+ <td>(</td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>max_protected_frame_size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/fake__transport__security_8h.html b/doc/ref/core.internal/html/fake__transport__security_8h.html
new file mode 100644
index 0000000000..0d6cbbf6b6
--- /dev/null
+++ b/doc/ref/core.internal/html/fake__transport__security_8h.html
@@ -0,0 +1,164 @@
+<!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: src/core/tsi/fake_transport_security.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">fake_transport_security.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+</div>
+<p><a href="fake__transport__security_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ae0392587ca3b2c370e2d0b23bd3567dc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8h.html#ae0392587ca3b2c370e2d0b23bd3567dc">TSI_FAKE_CERTIFICATE_TYPE</a>&#160;&#160;&#160;&quot;FAKE&quot;</td></tr>
+<tr class="separator:ae0392587ca3b2c370e2d0b23bd3567dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7ce2a5356ae53a2f4686faa9f32910d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3">tsi_create_fake_handshaker</a> (int is_client)</td></tr>
+<tr class="separator:a7ce2a5356ae53a2f4686faa9f32910d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6af0733aaa845a070d6d92e5d79e8932"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932">tsi_create_fake_protector</a> (size_t *max_protected_frame_size)</td></tr>
+<tr class="separator:a6af0733aaa845a070d6d92e5d79e8932"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ae0392587ca3b2c370e2d0b23bd3567dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_FAKE_CERTIFICATE_TYPE&#160;&#160;&#160;&quot;FAKE&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7ce2a5356ae53a2f4686faa9f32910d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>* tsi_create_fake_handshaker </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6af0733aaa845a070d6d92e5d79e8932"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>* tsi_create_fake_protector </td>
+ <td>(</td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>max_protected_frame_size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/fake__transport__security_8h_source.html b/doc/ref/core.internal/html/fake__transport__security_8h_source.html
new file mode 100644
index 0000000000..d517483fea
--- /dev/null
+++ b/doc/ref/core.internal/html/fake__transport__security_8h_source.html
@@ -0,0 +1,165 @@
+<!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: src/core/tsi/fake_transport_security.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">fake_transport_security.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="fake__transport__security_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TSI_FAKE_TRANSPORT_SECURITY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TSI_FAKE_TRANSPORT_SECURITY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport__security__interface_8h.html">src/core/tsi/transport_security_interface.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* Value for the TSI_CERTIFICATE_TYPE_PEER_PROPERTY property for FAKE certs. */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="fake__transport__security_8h.html#ae0392587ca3b2c370e2d0b23bd3567dc"> 44</a></span>&#160;<span class="preprocessor">#define TSI_FAKE_CERTIFICATE_TYPE &quot;FAKE&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* Creates a fake handshaker that will create a fake frame protector.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> No cryptography is performed in these objects. They just simulate handshake</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> messages going back and forth for the handshaker and do some framing on</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> cleartext data for the protector. */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <a class="code" href="fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3">tsi_create_fake_handshaker</a>(<span class="keywordtype">int</span> is_client);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Creates a protector directly without going through the handshake phase. */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <a class="code" href="fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932">tsi_create_fake_protector</a>(</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">size_t</span>* max_protected_frame_size);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TSI_FAKE_TRANSPORT_SECURITY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structtsi__frame__protector_html"><div class="ttname"><a href="structtsi__frame__protector.html">tsi_frame_protector</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:65</div></div>
+<div class="ttc" id="transport__security__interface_8h_html"><div class="ttname"><a href="transport__security__interface_8h.html">transport_security_interface.h</a></div></div>
+<div class="ttc" id="fake__transport__security_8h_html_a7ce2a5356ae53a2f4686faa9f32910d3"><div class="ttname"><a href="fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3">tsi_create_fake_handshaker</a></div><div class="ttdeci">tsi_handshaker * tsi_create_fake_handshaker(int is_client)</div><div class="ttdef"><b>Definition:</b> fake_transport_security.c:498</div></div>
+<div class="ttc" id="structtsi__handshaker_html"><div class="ttname"><a href="structtsi__handshaker.html">tsi_handshaker</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:86</div></div>
+<div class="ttc" id="fake__transport__security_8h_html_a6af0733aaa845a070d6d92e5d79e8932"><div class="ttname"><a href="fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932">tsi_create_fake_protector</a></div><div class="ttdeci">tsi_frame_protector * tsi_create_fake_protector(size_t *max_protected_frame_size)</div><div class="ttdef"><b>Definition:</b> fake_transport_security.c:513</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/fd__posix_8c.html b/doc/ref/core.internal/html/fd__posix_8c.html
new file mode 100644
index 0000000000..0672f60f38
--- /dev/null
+++ b/doc/ref/core.internal/html/fd__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/fd_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">fd_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/fd__posix_8h.html b/doc/ref/core.internal/html/fd__posix_8h.html
new file mode 100644
index 0000000000..4a84e1dea1
--- /dev/null
+++ b/doc/ref/core.internal/html/fd__posix_8h.html
@@ -0,0 +1,577 @@
+<!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: src/core/iomgr/fd_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">fd_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="iomgr__internal_8h_source.html">src/core/iomgr/iomgr_internal.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="fd__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html">grpc_fd</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a4ad3cc6c9405aa0f94d03257238fe297"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a4ad3cc6c9405aa0f94d03257238fe297">GRPC_FD_REF</a>(fd, reason)&#160;&#160;&#160;<a class="el" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">grpc_fd_ref</a>(fd)</td></tr>
+<tr class="separator:a4ad3cc6c9405aa0f94d03257238fe297"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3672f89aa33819921430074f7eb96267"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a3672f89aa33819921430074f7eb96267">GRPC_FD_UNREF</a>(fd, reason)&#160;&#160;&#160;<a class="el" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">grpc_fd_unref</a>(fd)</td></tr>
+<tr class="separator:a3672f89aa33819921430074f7eb96267"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a9f8a2791dbd9811a996395c3b466509d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__fd.html">grpc_fd</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a9f8a2791dbd9811a996395c3b466509d">grpc_fd</a></td></tr>
+<tr class="separator:a9f8a2791dbd9811a996395c3b466509d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfc4bcf6d9e283872acf08eab90f8233"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233">grpc_fd_watcher</a></td></tr>
+<tr class="separator:abfc4bcf6d9e283872acf08eab90f8233"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6752527e24586c370a8305916cb35dde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a6752527e24586c370a8305916cb35dde">grpc_fd_create</a> (int fd, const char *name)</td></tr>
+<tr class="separator:a6752527e24586c370a8305916cb35dde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af78f10c0cb866d1981db0e4515dbfbb1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1">grpc_fd_orphan</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_done, const char *reason)</td></tr>
+<tr class="separator:af78f10c0cb866d1981db0e4515dbfbb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabfaf5c3fc1b7d4306d8489cda8f09c5"><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="fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5">grpc_fd_begin_poll</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> read_mask, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> write_mask, <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *rec)</td></tr>
+<tr class="separator:aabfaf5c3fc1b7d4306d8489cda8f09c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecd30af2ff851bee3264bc6548fb7ae5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5">grpc_fd_end_poll</a> (<a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *rec, int got_read, int got_write)</td></tr>
+<tr class="separator:aecd30af2ff851bee3264bc6548fb7ae5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcd1fd3c640a72be6429fb60c3ddc258"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258">grpc_fd_is_orphaned</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:adcd1fd3c640a72be6429fb60c3ddc258"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18ed4db2cb1970f0933f9f5a7a5ddbad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad">grpc_fd_shutdown</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:a18ed4db2cb1970f0933f9f5a7a5ddbad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc65edd83bbaab2044bb80e8f526aff0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0">grpc_fd_notify_on_read</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="separator:adc65edd83bbaab2044bb80e8f526aff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa2b28cae8176ef883c4dba5373152ac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac">grpc_fd_notify_on_write</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="separator:aaa2b28cae8176ef883c4dba5373152ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c2c13dc1a1eb20f9ce43d7625b59002"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002">grpc_fd_become_readable</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, int allow_synchronous_callback)</td></tr>
+<tr class="separator:a5c2c13dc1a1eb20f9ce43d7625b59002"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a699c0434cce29ae12f9ca59fc73dff98"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98">grpc_fd_become_writable</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, int allow_synchronous_callback)</td></tr>
+<tr class="separator:a699c0434cce29ae12f9ca59fc73dff98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84623f0ef331d38c1b19d89f991dc0c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">grpc_fd_ref</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:a84623f0ef331d38c1b19d89f991dc0c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af874d803d96b6cd126e53e64707c69e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">grpc_fd_unref</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:af874d803d96b6cd126e53e64707c69e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0fcf378b86c04bff95bffca0bfaf891a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a">grpc_fd_global_init</a> (void)</td></tr>
+<tr class="separator:a0fcf378b86c04bff95bffca0bfaf891a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39d3a0f4eed1d4033b2e0db7145749c2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2">grpc_fd_global_shutdown</a> (void)</td></tr>
+<tr class="separator:a39d3a0f4eed1d4033b2e0db7145749c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a4ad3cc6c9405aa0f94d03257238fe297"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_FD_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">fd, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">grpc_fd_ref</a>(fd)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3672f89aa33819921430074f7eb96267"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_FD_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">fd, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">grpc_fd_unref</a>(fd)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a9f8a2791dbd9811a996395c3b466509d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> <a class="el" href="structgrpc__fd.html">grpc_fd</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abfc4bcf6d9e283872acf08eab90f8233"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5c2c13dc1a1eb20f9ce43d7625b59002"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_become_readable </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>allow_synchronous_callback</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a699c0434cce29ae12f9ca59fc73dff98"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_become_writable </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>allow_synchronous_callback</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aabfaf5c3fc1b7d4306d8489cda8f09c5"></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_fd_begin_poll </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>read_mask</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>write_mask</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *&#160;</td>
+ <td class="paramname"><em>rec</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6752527e24586c370a8305916cb35dde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__fd.html">grpc_fd</a>* grpc_fd_create </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aecd30af2ff851bee3264bc6548fb7ae5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_end_poll </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *&#160;</td>
+ <td class="paramname"><em>rec</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>got_read</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>got_write</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0fcf378b86c04bff95bffca0bfaf891a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_global_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a39d3a0f4eed1d4033b2e0db7145749c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_global_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adcd1fd3c640a72be6429fb60c3ddc258"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_fd_is_orphaned </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adc65edd83bbaab2044bb80e8f526aff0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_notify_on_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa2b28cae8176ef883c4dba5373152ac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_notify_on_write </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af78f10c0cb866d1981db0e4515dbfbb1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_orphan </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_done</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a84623f0ef331d38c1b19d89f991dc0c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a18ed4db2cb1970f0933f9f5a7a5ddbad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af874d803d96b6cd126e53e64707c69e0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_fd_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/fd__posix_8h_source.html b/doc/ref/core.internal/html/fd__posix_8h_source.html
new file mode 100644
index 0000000000..27d5be84f5
--- /dev/null
+++ b/doc/ref/core.internal/html/fd__posix_8h_source.html
@@ -0,0 +1,325 @@
+<!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: src/core/iomgr/fd_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">fd_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="fd__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_FD_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_FD_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr__internal_8h.html">src/core/iomgr/iomgr_internal.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset_8h.html">src/core/iomgr/pollset.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="atm_8h.html">grpc/support/atm.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="fd__posix_8h.html#a9f8a2791dbd9811a996395c3b466509d"> 43</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a> <a class="code" href="structgrpc__fd.html">grpc_fd</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__fd__watcher.html"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae"> 46</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *<a class="code" href="structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae">next</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465"> 47</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *<a class="code" href="structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465">prev</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6"> 48</a></span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *<a class="code" href="structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6">pollset</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc"> 49</a></span>&#160; <a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc">fd</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;} <a class="code" href="fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233">grpc_fd_watcher</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__fd.html"> 52</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a> {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32"> 53</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">/* refst format:</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> bit0: 1=active/0=orphaned</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> bit1-n: refcount</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> meaning that mostly we ref by two to avoid altering the orphaned bit,</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> and just unref by 1 when we&#39;re ready to flag the object as orphaned */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1"> 59</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1">refst</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30"> 61</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30">set_state_mu</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a"> 62</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a">shutdown</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e"> 63</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e">closed</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* The watcher list.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> The following watcher related fields are protected by watcher_mu.</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> An fd_watcher is an ephemeral object created when an fd wants to</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> begin polling, and destroyed after the poll.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> It denotes the fd&#39;s interest in whether to read poll or write poll</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> or both or neither on this fd.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> If a watcher is asked to poll for reads or writes, the read_watcher</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> or write_watcher fields are set respectively. A watcher may be asked</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> to poll for both, in which case both fields will be set.</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> read_watcher and write_watcher may be NULL if no watcher has been</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> asked to poll for reads or writes.</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> If an fd_watcher is not asked to poll for reads or writes, it&#39;s added</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> to a linked list of inactive watchers, rooted at inactive_watcher_root.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> If at a later time there becomes need of a poller to poll, one of</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> the inactive pollers may be kicked out of their poll loops to take</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> that responsibility. */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b"> 87</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b">watcher_mu</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8"> 88</a></span>&#160; <a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> <a class="code" href="structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8">inactive_watcher_root</a>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27"> 89</a></span>&#160; <a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *<a class="code" href="structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27">read_watcher</a>;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#ae2395965de88538f112be69c21307d01"> 90</a></span>&#160; <a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *<a class="code" href="structgrpc__fd.html#ae2395965de88538f112be69c21307d01">write_watcher</a>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0"> 92</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0">readst</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676"> 93</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676">writest</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d"> 95</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d">freelist_next</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f"> 97</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f">on_done_closure</a>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa"> 98</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa">shutdown_closures</a>[2];</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc"> 100</a></span>&#160; <a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> <a class="code" href="structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc">iomgr_object</a>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;};</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* Create a wrapped file descriptor.</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> Requires fd is a non-blocking file descriptor.</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> This takes ownership of closing fd. */</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="fd__posix_8h.html#a6752527e24586c370a8305916cb35dde">grpc_fd_create</a>(<span class="keywordtype">int</span> <a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">/* Releases fd to be asynchronously destroyed.</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> on_done is called when the underlying file descriptor is definitely close()d.</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> If on_done is NULL, no callback will be made.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> Requires: *fd initialized; no outstanding notify_on_read or</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> notify_on_write. */</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1">grpc_fd_orphan</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_done,</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment">/* Begin polling on an fd.</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> Registers that the given pollset is interested in this fd - so that if read</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> or writability interest changes, the pollset can be kicked to pick up that</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> new interest.</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> Return value is:</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> (fd_needs_read? read_mask : 0) | (fd_needs_write? write_mask : 0)</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> i.e. a combination of read_mask and write_mask determined by the fd&#39;s current</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> interest in said events.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> Polling strategies that do not need to alter their behavior depending on the</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> fd&#39;s current interest (such as epoll) do not need to call this function. */</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5">grpc_fd_begin_poll</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> read_mask, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> write_mask,</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *rec);</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">/* Complete polling previously started with grpc_fd_begin_poll */</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5">grpc_fd_end_poll</a>(<a class="code" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *rec, <span class="keywordtype">int</span> got_read, <span class="keywordtype">int</span> got_write);</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment">/* Return 1 if this fd is orphaned, 0 otherwise */</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keywordtype">int</span> <a class="code" href="fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258">grpc_fd_is_orphaned</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment">/* Cause any current callbacks to error out with GRPC_CALLBACK_CANCELLED. */</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad">grpc_fd_shutdown</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment">/* Register read interest, causing read_cb to be called once when fd becomes</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> readable, on deadline specified by deadline, or on shutdown triggered by</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> grpc_fd_shutdown.</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> read_cb will be called with read_cb_arg when *fd becomes readable.</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> read_cb is Called with status of GRPC_CALLBACK_SUCCESS if readable,</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> GRPC_CALLBACK_TIMED_OUT if the call timed out,</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> and CANCELLED if the call was cancelled.</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> Requires:This method must not be called before the read_cb for any previous</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> call runs. Edge triggered events are used whenever they are supported by the</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> underlying platform. This means that users must drain fd in read_cb before</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> calling notify_on_read again. Users are also expected to handle spurious</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> events, i.e read_cb is called while nothing can be readable from fd */</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0">grpc_fd_notify_on_read</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment">/* Exactly the same semantics as above, except based on writable events. */</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac">grpc_fd_notify_on_write</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment">/* Notification from the poller to an fd that it has become readable or</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> writable.</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> If allow_synchronous_callback is 1, allow running the fd callback inline</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> in this callstack, otherwise register an asynchronous callback and return */</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002">grpc_fd_become_readable</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <span class="keywordtype">int</span> allow_synchronous_callback);</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98">grpc_fd_become_writable</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <span class="keywordtype">int</span> allow_synchronous_callback);</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment">/* Reference counting for fds */</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="preprocessor">#ifdef GRPC_FD_REF_COUNT_DEBUG</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">grpc_fd_ref</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">grpc_fd_unref</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="preprocessor">#define GRPC_FD_REF(fd, reason) grpc_fd_ref(fd, reason, __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_FD_UNREF(fd, reason) grpc_fd_unref(fd, reason, __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">grpc_fd_ref</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">grpc_fd_unref</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>);</div>
+<div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="fd__posix_8h.html#a4ad3cc6c9405aa0f94d03257238fe297"> 172</a></span>&#160;<span class="preprocessor">#define GRPC_FD_REF(fd, reason) grpc_fd_ref(fd)</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="fd__posix_8h.html#a3672f89aa33819921430074f7eb96267"> 173</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_FD_UNREF(fd, reason) grpc_fd_unref(fd)</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a">grpc_fd_global_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="keywordtype">void</span> <a class="code" href="fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2">grpc_fd_global_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_FD_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__fd_html_af9735826c4a974623dad5e2ca9c2548a"><div class="ttname"><a href="structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a">grpc_fd::shutdown</a></div><div class="ttdeci">gpr_atm shutdown</div><div class="ttdef"><b>Definition:</b> fd_posix.h:62</div></div>
+<div class="ttc" id="fd__posix_8h_html_a18ed4db2cb1970f0933f9f5a7a5ddbad"><div class="ttname"><a href="fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad">grpc_fd_shutdown</a></div><div class="ttdeci">void grpc_fd_shutdown(grpc_fd *fd)</div></div>
+<div class="ttc" id="fd__posix_8h_html_a5c2c13dc1a1eb20f9ce43d7625b59002"><div class="ttname"><a href="fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002">grpc_fd_become_readable</a></div><div class="ttdeci">void grpc_fd_become_readable(grpc_fd *fd, int allow_synchronous_callback)</div></div>
+<div class="ttc" id="structgrpc__fd_html_a640195e98f3a3fcec45f2db5bff6dac8"><div class="ttname"><a href="structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8">grpc_fd::inactive_watcher_root</a></div><div class="ttdeci">grpc_fd_watcher inactive_watcher_root</div><div class="ttdef"><b>Definition:</b> fd_posix.h:88</div></div>
+<div class="ttc" id="fd__posix_8h_html_af874d803d96b6cd126e53e64707c69e0"><div class="ttname"><a href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">grpc_fd_unref</a></div><div class="ttdeci">void grpc_fd_unref(grpc_fd *fd)</div></div>
+<div class="ttc" id="structgrpc__fd__watcher_html_a0c4eac683d7d83c76e36cc3ffc4e91ae"><div class="ttname"><a href="structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae">grpc_fd_watcher::next</a></div><div class="ttdeci">struct grpc_fd_watcher * next</div><div class="ttdef"><b>Definition:</b> fd_posix.h:46</div></div>
+<div class="ttc" id="atm_8h_html"><div class="ttname"><a href="atm_8h.html">atm.h</a></div></div>
+<div class="ttc" id="structgrpc__fd_html_a876ab7207d777a4f8b436a3b5c80fd32"><div class="ttname"><a href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">grpc_fd::fd</a></div><div class="ttdeci">int fd</div><div class="ttdef"><b>Definition:</b> fd_posix.h:53</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="fd__posix_8h_html_a84623f0ef331d38c1b19d89f991dc0c3"><div class="ttname"><a href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">grpc_fd_ref</a></div><div class="ttdeci">void grpc_fd_ref(grpc_fd *fd)</div></div>
+<div class="ttc" id="structgrpc__fd__watcher_html_a9ce341a9fea46aa4ab62de1e232691bc"><div class="ttname"><a href="structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc">grpc_fd_watcher::fd</a></div><div class="ttdeci">grpc_fd * fd</div><div class="ttdef"><b>Definition:</b> fd_posix.h:49</div></div>
+<div class="ttc" id="structgrpc__fd_html_a85cc2f9f7c86e447f62485f0c053e61f"><div class="ttname"><a href="structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f">grpc_fd::on_done_closure</a></div><div class="ttdeci">grpc_iomgr_closure * on_done_closure</div><div class="ttdef"><b>Definition:</b> fd_posix.h:97</div></div>
+<div class="ttc" id="fd__posix_8h_html_aecd30af2ff851bee3264bc6548fb7ae5"><div class="ttname"><a href="fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5">grpc_fd_end_poll</a></div><div class="ttdeci">void grpc_fd_end_poll(grpc_fd_watcher *rec, int got_read, int got_write)</div></div>
+<div class="ttc" id="structgrpc__fd__watcher_html_a92942dd676216e46d8852baa5ad572b6"><div class="ttname"><a href="structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6">grpc_fd_watcher::pollset</a></div><div class="ttdeci">grpc_pollset * pollset</div><div class="ttdef"><b>Definition:</b> fd_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__fd__watcher_html_a1e78f9e51eb0fdb0972c87f5427bb465"><div class="ttname"><a href="structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465">grpc_fd_watcher::prev</a></div><div class="ttdeci">struct grpc_fd_watcher * prev</div><div class="ttdef"><b>Definition:</b> fd_posix.h:47</div></div>
+<div class="ttc" id="pollset_8h_html"><div class="ttname"><a href="pollset_8h.html">pollset.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="fd__posix_8h_html_aaa2b28cae8176ef883c4dba5373152ac"><div class="ttname"><a href="fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac">grpc_fd_notify_on_write</a></div><div class="ttdeci">void grpc_fd_notify_on_write(grpc_fd *fd, grpc_iomgr_closure *closure)</div></div>
+<div class="ttc" id="fd__posix_8h_html_a0fcf378b86c04bff95bffca0bfaf891a"><div class="ttname"><a href="fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a">grpc_fd_global_init</a></div><div class="ttdeci">void grpc_fd_global_init(void)</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__fd_html_aaf6e293dd6b804a9783ef4ccf06710cc"><div class="ttname"><a href="structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc">grpc_fd::iomgr_object</a></div><div class="ttdeci">grpc_iomgr_object iomgr_object</div><div class="ttdef"><b>Definition:</b> fd_posix.h:100</div></div>
+<div class="ttc" id="fd__posix_8h_html_abfc4bcf6d9e283872acf08eab90f8233"><div class="ttname"><a href="fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233">grpc_fd_watcher</a></div><div class="ttdeci">struct grpc_fd_watcher grpc_fd_watcher</div></div>
+<div class="ttc" id="structgrpc__fd_html_a339e2dfc459ee7dbc066dc6f606a7cf0"><div class="ttname"><a href="structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0">grpc_fd::readst</a></div><div class="ttdeci">gpr_atm readst</div><div class="ttdef"><b>Definition:</b> fd_posix.h:92</div></div>
+<div class="ttc" id="structgrpc__iomgr__object_html"><div class="ttname"><a href="structgrpc__iomgr__object.html">grpc_iomgr_object</a></div><div class="ttdef"><b>Definition:</b> iomgr_internal.h:40</div></div>
+<div class="ttc" id="structgrpc__fd_html_a30b76a034146e5d62190b133b008af6e"><div class="ttname"><a href="structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e">grpc_fd::closed</a></div><div class="ttdeci">int closed</div><div class="ttdef"><b>Definition:</b> fd_posix.h:63</div></div>
+<div class="ttc" id="fd__posix_8h_html_aabfaf5c3fc1b7d4306d8489cda8f09c5"><div class="ttname"><a href="fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5">grpc_fd_begin_poll</a></div><div class="ttdeci">gpr_uint32 grpc_fd_begin_poll(grpc_fd *fd, grpc_pollset *pollset, gpr_uint32 read_mask, gpr_uint32 write_mask, grpc_fd_watcher *rec)</div></div>
+<div class="ttc" id="fd__posix_8h_html_a39d3a0f4eed1d4033b2e0db7145749c2"><div class="ttname"><a href="fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2">grpc_fd_global_shutdown</a></div><div class="ttdeci">void grpc_fd_global_shutdown(void)</div></div>
+<div class="ttc" id="structgrpc__fd_html_a6ade81ff0aec08731167a2a992ce6b27"><div class="ttname"><a href="structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27">grpc_fd::read_watcher</a></div><div class="ttdeci">grpc_fd_watcher * read_watcher</div><div class="ttdef"><b>Definition:</b> fd_posix.h:89</div></div>
+<div class="ttc" id="structgrpc__fd_html_a7c93a423654bb4d3466593ef73b9f06b"><div class="ttname"><a href="structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b">grpc_fd::watcher_mu</a></div><div class="ttdeci">gpr_mu watcher_mu</div><div class="ttdef"><b>Definition:</b> fd_posix.h:87</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="fd__posix_8h_html_a6752527e24586c370a8305916cb35dde"><div class="ttname"><a href="fd__posix_8h.html#a6752527e24586c370a8305916cb35dde">grpc_fd_create</a></div><div class="ttdeci">grpc_fd * grpc_fd_create(int fd, const char *name)</div></div>
+<div class="ttc" id="structgrpc__fd_html_ae2395965de88538f112be69c21307d01"><div class="ttname"><a href="structgrpc__fd.html#ae2395965de88538f112be69c21307d01">grpc_fd::write_watcher</a></div><div class="ttdeci">grpc_fd_watcher * write_watcher</div><div class="ttdef"><b>Definition:</b> fd_posix.h:90</div></div>
+<div class="ttc" id="structgrpc__fd_html_ac4769567bc6b9a0129269bc02dcce6f1"><div class="ttname"><a href="structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1">grpc_fd::refst</a></div><div class="ttdeci">gpr_atm refst</div><div class="ttdef"><b>Definition:</b> fd_posix.h:59</div></div>
+<div class="ttc" id="fd__posix_8h_html_adc65edd83bbaab2044bb80e8f526aff0"><div class="ttname"><a href="fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0">grpc_fd_notify_on_read</a></div><div class="ttdeci">void grpc_fd_notify_on_read(grpc_fd *fd, grpc_iomgr_closure *closure)</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="fd__posix_8h_html_a699c0434cce29ae12f9ca59fc73dff98"><div class="ttname"><a href="fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98">grpc_fd_become_writable</a></div><div class="ttdeci">void grpc_fd_become_writable(grpc_fd *fd, int allow_synchronous_callback)</div></div>
+<div class="ttc" id="fd__posix_8h_html_adcd1fd3c640a72be6429fb60c3ddc258"><div class="ttname"><a href="fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258">grpc_fd_is_orphaned</a></div><div class="ttdeci">int grpc_fd_is_orphaned(grpc_fd *fd)</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="structgrpc__fd_html_a48d85d973fb9284e51cad0695e91379d"><div class="ttname"><a href="structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d">grpc_fd::freelist_next</a></div><div class="ttdeci">struct grpc_fd * freelist_next</div><div class="ttdef"><b>Definition:</b> fd_posix.h:95</div></div>
+<div class="ttc" id="structgrpc__fd__watcher_html"><div class="ttname"><a href="structgrpc__fd__watcher.html">grpc_fd_watcher</a></div><div class="ttdef"><b>Definition:</b> fd_posix.h:45</div></div>
+<div class="ttc" id="structgrpc__fd_html_ad0158c3714462bacbfa90c57fcf476aa"><div class="ttname"><a href="structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa">grpc_fd::shutdown_closures</a></div><div class="ttdeci">grpc_iomgr_closure * shutdown_closures[2]</div><div class="ttdef"><b>Definition:</b> fd_posix.h:98</div></div>
+<div class="ttc" id="structgrpc__fd_html_aedae81fadd133cc54ae92837ea7a2676"><div class="ttname"><a href="structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676">grpc_fd::writest</a></div><div class="ttdeci">gpr_atm writest</div><div class="ttdef"><b>Definition:</b> fd_posix.h:93</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:41</div></div>
+<div class="ttc" id="structgrpc__fd_html_a050fd8e53f18c024f04c60f27c274d30"><div class="ttname"><a href="structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30">grpc_fd::set_state_mu</a></div><div class="ttdeci">gpr_mu set_state_mu</div><div class="ttdef"><b>Definition:</b> fd_posix.h:61</div></div>
+<div class="ttc" id="fd__posix_8h_html_af78f10c0cb866d1981db0e4515dbfbb1"><div class="ttname"><a href="fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1">grpc_fd_orphan</a></div><div class="ttdeci">void grpc_fd_orphan(grpc_fd *fd, grpc_iomgr_closure *on_done, const char *reason)</div></div>
+<div class="ttc" id="iomgr__internal_8h_html"><div class="ttname"><a href="iomgr__internal_8h.html">iomgr_internal.h</a></div></div>
+<div class="ttc" id="structgrpc__fd_html"><div class="ttname"><a href="structgrpc__fd.html">grpc_fd</a></div><div class="ttdef"><b>Definition:</b> fd_posix.h:52</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/file_8c.html b/doc/ref/core.internal/html/file_8c.html
new file mode 100644
index 0000000000..34ac22e214
--- /dev/null
+++ b/doc/ref/core.internal/html/file_8c.html
@@ -0,0 +1,146 @@
+<!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: src/core/support/file.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">file.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="file_8h_source.html">src/core/support/file.h</a>&quot;</code><br/>
+<code>#include &lt;errno.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aaad6ffe6949461096a99c7d2e8890c59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file_8c.html#aaad6ffe6949461096a99c7d2e8890c59">gpr_load_file</a> (const char *filename, int add_null_terminator, int *success)</td></tr>
+<tr class="separator:aaad6ffe6949461096a99c7d2e8890c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aaad6ffe6949461096a99c7d2e8890c59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_load_file </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>filename</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>add_null_terminator</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/file_8h.html b/doc/ref/core.internal/html/file_8h.html
new file mode 100644
index 0000000000..f00c9444cc
--- /dev/null
+++ b/doc/ref/core.internal/html/file_8h.html
@@ -0,0 +1,172 @@
+<!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: src/core/support/file.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">file.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="file_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aaad6ffe6949461096a99c7d2e8890c59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file_8h.html#aaad6ffe6949461096a99c7d2e8890c59">gpr_load_file</a> (const char *filename, int add_null_terminator, int *success)</td></tr>
+<tr class="separator:aaad6ffe6949461096a99c7d2e8890c59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdc37810133df55be624548f00fd177f"><td class="memItemLeft" align="right" valign="top">FILE *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="file_8h.html#abdc37810133df55be624548f00fd177f">gpr_tmpfile</a> (const char *prefix, char **tmp_filename)</td></tr>
+<tr class="separator:abdc37810133df55be624548f00fd177f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aaad6ffe6949461096a99c7d2e8890c59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_load_file </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>filename</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>add_null_terminator</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abdc37810133df55be624548f00fd177f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">FILE* gpr_tmpfile </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>prefix</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>tmp_filename</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/file_8h_source.html b/doc/ref/core.internal/html/file_8h_source.html
new file mode 100644
index 0000000000..959c200f1e
--- /dev/null
+++ b/doc/ref/core.internal/html/file_8h_source.html
@@ -0,0 +1,166 @@
+<!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: src/core/support/file.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">file.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="file_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_FILE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_FILE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* File utility functions */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Loads the content of a file into a slice. add_null_terminator will add</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> a NULL terminator if non-zero. The success parameter, if not NULL,</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> will be set to 1 in case of success and 0 in case of failure. */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="file_8h.html#aaad6ffe6949461096a99c7d2e8890c59">gpr_load_file</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *filename, <span class="keywordtype">int</span> add_null_terminator,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">int</span> *success);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Creates a temporary file from a prefix.</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> If tmp_filename is not NULL, *tmp_filename is assigned the name of the</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> created file and it is the responsibility of the caller to gpr_free it</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> unless an error occurs in which case it will be set to NULL. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;FILE *<a class="code" href="file_8h.html#abdc37810133df55be624548f00fd177f">gpr_tmpfile</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *prefix, <span class="keywordtype">char</span> **tmp_filename);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_FILE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="file_8h_html_abdc37810133df55be624548f00fd177f"><div class="ttname"><a href="file_8h.html#abdc37810133df55be624548f00fd177f">gpr_tmpfile</a></div><div class="ttdeci">FILE * gpr_tmpfile(const char *prefix, char **tmp_filename)</div></div>
+<div class="ttc" id="file_8h_html_aaad6ffe6949461096a99c7d2e8890c59"><div class="ttname"><a href="file_8h.html#aaad6ffe6949461096a99c7d2e8890c59">gpr_load_file</a></div><div class="ttdeci">gpr_slice gpr_load_file(const char *filename, int add_null_terminator, int *success)</div><div class="ttdef"><b>Definition:</b> file.c:45</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/file__posix_8c.html b/doc/ref/core.internal/html/file__posix_8c.html
new file mode 100644
index 0000000000..6771c9205c
--- /dev/null
+++ b/doc/ref/core.internal/html/file__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/file_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">file_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/file__win32_8c.html b/doc/ref/core.internal/html/file__win32_8c.html
new file mode 100644
index 0000000000..fce890b1be
--- /dev/null
+++ b/doc/ref/core.internal/html/file__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/file_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">file_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/files.html b/doc/ref/core.internal/html/files.html
new file mode 100644
index 0000000000..c2c65ffedd
--- /dev/null
+++ b/doc/ref/core.internal/html/files.html
@@ -0,0 +1,457 @@
+<!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: File List</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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 class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="header">
+ <div class="headertitle">
+<div class="title">File List</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span><span onclick="javascript:toggleLevel(5);">5</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img id="arr_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_')"/><img id="img_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_')"/><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html" target="_self">include</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_0_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('0_0_')"/><img id="img_0_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_0_')"/><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html" target="_self">grpc</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_0_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_0_')"/><img id="img_0_0_0_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('0_0_0_')"/><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html" target="_self">support</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="alloc_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="alloc_8h.html" target="_self">alloc.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="atm_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="atm_8h.html" target="_self">atm.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="atm__gcc__atomic_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="atm__gcc__atomic_8h.html" target="_self">atm_gcc_atomic.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="atm__gcc__sync_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="atm__gcc__sync_8h.html" target="_self">atm_gcc_sync.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_4_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="atm__win32_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="atm__win32_8h.html" target="_self">atm_win32.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_5_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="cancellable__platform_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="cancellable__platform_8h.html" target="_self">cancellable_platform.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_6_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="cmdline_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="cmdline_8h.html" target="_self">cmdline.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_7_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="cpu_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="cpu_8h.html" target="_self">cpu.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_8_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="histogram_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="histogram_8h.html" target="_self">histogram.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_9_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="host__port_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="host__port_8h.html" target="_self">host_port.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_10_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="log_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="log_8h.html" target="_self">log.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_11_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="log__win32_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="log__win32_8h.html" target="_self">log_win32.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_12_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="port__platform_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="port__platform_8h.html" target="_self">port_platform.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_13_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="slice_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="slice_8h.html" target="_self">slice.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_14_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="slice__buffer_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="slice__buffer_8h.html" target="_self">slice_buffer.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_15_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="string__util_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="string__util_8h.html" target="_self">string_util.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_16_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="subprocess_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="subprocess_8h.html" target="_self">subprocess.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_17_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync_8h.html" target="_self">sync.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_18_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync__generic_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync__generic_8h.html" target="_self">sync_generic.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_19_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync__posix_8h.html" target="_self">sync_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_20_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync__win32_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync__win32_8h.html" target="_self">sync_win32.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_21_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="thd_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="thd_8h.html" target="_self">thd.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_22_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="time_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="time_8h.html" target="_self">time.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_23_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tls_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tls_8h.html" target="_self">tls.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_24_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tls__gcc_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tls__gcc_8h.html" target="_self">tls_gcc.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_25_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tls__msvc_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tls__msvc_8h.html" target="_self">tls_msvc.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_26_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tls__pthread_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tls__pthread_8h.html" target="_self">tls_pthread.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_27_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="useful_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="useful_8h.html" target="_self">useful.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="byte__buffer_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="byte__buffer_8h.html" target="_self">byte_buffer.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="byte__buffer__reader_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="byte__buffer__reader_8h.html" target="_self">byte_buffer_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="census_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="census_8h.html" target="_self">census.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="compression_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="compression_8h.html" target="_self">compression.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="grpc_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="grpc_8h.html" target="_self">grpc.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="grpc__security_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="grpc__security_8h.html" target="_self">grpc_security.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="status_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="status_8h.html" target="_self">status.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_" class="even"><td class="entry"><img id="arr_1_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('1_')"/><img id="img_1_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('1_')"/><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html" target="_self">src</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('1_0_')"/><img id="img_1_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('1_0_')"/><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html" target="_self">core</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_0_')"/><img id="img_1_0_0_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_0_')"/><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html" target="_self">census</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="context_8c.html" target="_self">context.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="census_2context_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="census_2context_8h.html" target="_self">context.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="grpc__context_8c.html" target="_self">grpc_context.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="initialize_8c.html" target="_self">initialize.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_4_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="record__stat_8c.html" target="_self">record_stat.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_0_5_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="rpc__stat__id_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="rpc__stat__id_8h.html" target="_self">rpc_stat_id.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_1_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_1_')"/><img id="img_1_0_1_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_1_')"/><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html" target="_self">channel</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="census__filter_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="census__filter_8h.html" target="_self">census_filter.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="channel__args_8c.html" target="_self">channel_args.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="channel__args_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="channel__args_8h.html" target="_self">channel_args.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="channel__stack_8c.html" target="_self">channel_stack.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="channel__stack_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="channel__stack_8h.html" target="_self">channel_stack.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="client__channel_8c.html" target="_self">client_channel.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="client__channel_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="client__channel_8h.html" target="_self">client_channel.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="compress__filter_8c.html" target="_self">compress_filter.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_8_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="compress__filter_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="compress__filter_8h.html" target="_self">compress_filter.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_9_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="connected__channel_8c.html" target="_self">connected_channel.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_10_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="connected__channel_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="connected__channel_8h.html" target="_self">connected_channel.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_11_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="channel_2context_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="channel_2context_8h.html" target="_self">context.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_12_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="http__client__filter_8c.html" target="_self">http_client_filter.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_13_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="http__client__filter_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="http__client__filter_8h.html" target="_self">http_client_filter.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_14_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="http__server__filter_8c.html" target="_self">http_server_filter.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_15_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="http__server__filter_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="http__server__filter_8h.html" target="_self">http_server_filter.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_16_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="noop__filter_8c.html" target="_self">noop_filter.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_1_17_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="noop__filter_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="noop__filter_8h.html" target="_self">noop_filter.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_2_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_2_')"/><img id="img_1_0_2_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_2_')"/><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html" target="_self">client_config</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_1_0_2_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_2_0_')"/><img id="img_1_0_2_0_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_2_0_')"/><a class="el" href="dir_bbc3f91aaf5c0e78deeca586ef449264.html" target="_self">lb_policies</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_0_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pick__first_8c.html" target="_self">pick_first.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_0_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="pick__first_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pick__first_8h.html" target="_self">pick_first.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_1_0_2_1_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_2_1_')"/><img id="img_1_0_2_1_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_2_1_')"/><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html" target="_self">resolvers</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_1_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="dns__resolver_8c.html" target="_self">dns_resolver.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_1_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="dns__resolver_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="dns__resolver_8h.html" target="_self">dns_resolver.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_1_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="sockaddr__resolver_8c.html" target="_self">sockaddr_resolver.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_1_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="sockaddr__resolver_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sockaddr__resolver_8h.html" target="_self">sockaddr_resolver.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_1_0_2_2_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_2_2_')"/><img id="img_1_0_2_2_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_2_2_')"/><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html" target="_self">subchannel_factory_decorators</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_2_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="add__channel__arg_8c.html" target="_self">add_channel_arg.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_2_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="add__channel__arg_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="add__channel__arg_8h.html" target="_self">add_channel_arg.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_2_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="merge__channel__args_8c.html" target="_self">merge_channel_args.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_2_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="merge__channel__args_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="merge__channel__args_8h.html" target="_self">merge_channel_args.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="client__config_8c.html" target="_self">client_config.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_4_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="client__config_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="client__config_8h.html" target="_self">client_config.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_5_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="connector_8c.html" target="_self">connector.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_6_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="connector_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="connector_8h.html" target="_self">connector.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_7_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="lb__policy_8c.html" target="_self">lb_policy.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_8_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="lb__policy_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="lb__policy_8h.html" target="_self">lb_policy.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_9_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="resolver_8c.html" target="_self">resolver.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_10_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="resolver_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="resolver_8h.html" target="_self">resolver.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_11_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="resolver__factory_8c.html" target="_self">resolver_factory.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_12_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="resolver__factory_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="resolver__factory_8h.html" target="_self">resolver_factory.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_13_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="resolver__registry_8c.html" target="_self">resolver_registry.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_14_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="resolver__registry_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="resolver__registry_8h.html" target="_self">resolver_registry.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_15_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="subchannel_8c.html" target="_self">subchannel.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_16_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="subchannel_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="subchannel_8h.html" target="_self">subchannel.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_17_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="subchannel__factory_8c.html" target="_self">subchannel_factory.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_18_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="subchannel__factory_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="subchannel__factory_8h.html" target="_self">subchannel_factory.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_19_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="uri__parser_8c.html" target="_self">uri_parser.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_2_20_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="uri__parser_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="uri__parser_8h.html" target="_self">uri_parser.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_3_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_3_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_3_')"/><img id="img_1_0_3_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_3_')"/><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html" target="_self">compression</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_3_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="algorithm_8c.html" target="_self">algorithm.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_3_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="message__compress_8c.html" target="_self">message_compress.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_3_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="message__compress_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="message__compress_8h.html" target="_self">message_compress.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_4_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_4_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_4_')"/><img id="img_1_0_4_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_4_')"/><a class="el" href="dir_5349cec9f9058ade8b7779c683443df9.html" target="_self">debug</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_4_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="trace_8c.html" target="_self">trace.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_4_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="trace_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="trace_8h.html" target="_self">trace.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_5_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_5_')"/><img id="img_1_0_5_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_5_')"/><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html" target="_self">httpcli</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="format__request_8c.html" target="_self">format_request.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="format__request_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="format__request_8h.html" target="_self">format_request.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="httpcli_8c.html" target="_self">httpcli.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="httpcli_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="httpcli_8h.html" target="_self">httpcli.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="httpcli__security__connector_8c.html" target="_self">httpcli_security_connector.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="httpcli__security__connector_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="httpcli__security__connector_8h.html" target="_self">httpcli_security_connector.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="parser_8c.html" target="_self">parser.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_5_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="parser_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="parser_8h.html" target="_self">parser.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_6_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_6_')"/><img id="img_1_0_6_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_6_')"/><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html" target="_self">iomgr</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="alarm_8c.html" target="_self">alarm.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="alarm_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="alarm_8h.html" target="_self">alarm.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="alarm__heap_8c.html" target="_self">alarm_heap.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="alarm__heap_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="alarm__heap_8h.html" target="_self">alarm_heap.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_4_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="alarm__internal_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="alarm__internal_8h.html" target="_self">alarm_internal.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_5_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="endpoint_8c.html" target="_self">endpoint.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_6_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="endpoint_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="endpoint_8h.html" target="_self">endpoint.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_7_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="endpoint__pair_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="endpoint__pair_8h.html" target="_self">endpoint_pair.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_8_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="endpoint__pair__posix_8c.html" target="_self">endpoint_pair_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_9_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="endpoint__pair__windows_8c.html" target="_self">endpoint_pair_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_10_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="fd__posix_8c.html" target="_self">fd_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_11_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fd__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fd__posix_8h.html" target="_self">fd_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_12_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="iocp__windows_8c.html" target="_self">iocp_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_13_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="iocp__windows_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="iocp__windows_8h.html" target="_self">iocp_windows.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_14_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="iomgr_8c.html" target="_self">iomgr.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_15_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="iomgr_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="iomgr_8h.html" target="_self">iomgr.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_16_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="iomgr__internal_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="iomgr__internal_8h.html" target="_self">iomgr_internal.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_17_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="iomgr__posix_8c.html" target="_self">iomgr_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_18_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="iomgr__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="iomgr__posix_8h.html" target="_self">iomgr_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_19_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="iomgr__windows_8c.html" target="_self">iomgr_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_20_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset_8h.html" target="_self">pollset.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_21_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__kick__posix_8c.html" target="_self">pollset_kick_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_22_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset__kick__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset__kick__posix_8h.html" target="_self">pollset_kick_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_23_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__multipoller__with__epoll_8c.html" target="_self">pollset_multipoller_with_epoll.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_24_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__multipoller__with__poll__posix_8c.html" target="_self">pollset_multipoller_with_poll_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_25_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__posix_8c.html" target="_self">pollset_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_26_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset__posix_8h.html" target="_self">pollset_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_27_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset__set_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset__set_8h.html" target="_self">pollset_set.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_28_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__set__posix_8c.html" target="_self">pollset_set_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_29_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset__set__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset__set__posix_8h.html" target="_self">pollset_set_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_30_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__set__windows_8c.html" target="_self">pollset_set_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_31_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset__set__windows_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset__set__windows_8h.html" target="_self">pollset_set_windows.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_32_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="pollset__windows_8c.html" target="_self">pollset_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_33_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="pollset__windows_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="pollset__windows_8h.html" target="_self">pollset_windows.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_34_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="resolve__address_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="resolve__address_8h.html" target="_self">resolve_address.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_35_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="resolve__address__posix_8c.html" target="_self">resolve_address_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_36_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="resolve__address__windows_8c.html" target="_self">resolve_address_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_37_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sockaddr_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sockaddr_8h.html" target="_self">sockaddr.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_38_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sockaddr__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sockaddr__posix_8h.html" target="_self">sockaddr_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_39_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="sockaddr__utils_8c.html" target="_self">sockaddr_utils.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_40_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sockaddr__utils_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sockaddr__utils_8h.html" target="_self">sockaddr_utils.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_41_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sockaddr__win32_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sockaddr__win32_8h.html" target="_self">sockaddr_win32.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_42_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="socket__utils__common__posix_8c.html" target="_self">socket_utils_common_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_43_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="socket__utils__linux_8c.html" target="_self">socket_utils_linux.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_44_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="socket__utils__posix_8c.html" target="_self">socket_utils_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_45_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="socket__utils__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="socket__utils__posix_8h.html" target="_self">socket_utils_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_46_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="socket__windows_8c.html" target="_self">socket_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_47_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="socket__windows_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="socket__windows_8h.html" target="_self">socket_windows.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_48_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tcp__client_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tcp__client_8h.html" target="_self">tcp_client.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_49_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tcp__client__posix_8c.html" target="_self">tcp_client_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_50_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tcp__client__windows_8c.html" target="_self">tcp_client_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_51_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tcp__posix_8c.html" target="_self">tcp_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_52_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tcp__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tcp__posix_8h.html" target="_self">tcp_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_53_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tcp__server_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tcp__server_8h.html" target="_self">tcp_server.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_54_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tcp__server__posix_8c.html" target="_self">tcp_server_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_55_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tcp__server__windows_8c.html" target="_self">tcp_server_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_56_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tcp__windows_8c.html" target="_self">tcp_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_57_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="tcp__windows_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="tcp__windows_8h.html" target="_self">tcp_windows.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_58_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="time__averaged__stats_8c.html" target="_self">time_averaged_stats.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_59_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="time__averaged__stats_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="time__averaged__stats_8h.html" target="_self">time_averaged_stats.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_60_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="wakeup__fd__eventfd_8c.html" target="_self">wakeup_fd_eventfd.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_61_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="wakeup__fd__nospecial_8c.html" target="_self">wakeup_fd_nospecial.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_62_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="wakeup__fd__pipe_8c.html" target="_self">wakeup_fd_pipe.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_63_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="wakeup__fd__pipe_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="wakeup__fd__pipe_8h.html" target="_self">wakeup_fd_pipe.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_64_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="wakeup__fd__posix_8c.html" target="_self">wakeup_fd_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_6_65_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="wakeup__fd__posix_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="wakeup__fd__posix_8h.html" target="_self">wakeup_fd_posix.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_7_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_7_')"/><img id="img_1_0_7_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_7_')"/><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html" target="_self">json</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="json_8c.html" target="_self">json.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="json_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="json_8h.html" target="_self">json.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="json__common_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="json__common_8h.html" target="_self">json_common.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="json__reader_8c.html" target="_self">json_reader.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="json__reader_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="json__reader_8h.html" target="_self">json_reader.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="json__string_8c.html" target="_self">json_string.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="json__writer_8c.html" target="_self">json_writer.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_7_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="json__writer_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="json__writer_8h.html" target="_self">json_writer.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_8_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_8_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_8_')"/><img id="img_1_0_8_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_8_')"/><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html" target="_self">profiling</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_8_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="basic__timers_8c.html" target="_self">basic_timers.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_8_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="stap__timers_8c.html" target="_self">stap_timers.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_8_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="timers_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="timers_8h.html" target="_self">timers.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_8_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="timers__preciseclock_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="timers__preciseclock_8h.html" target="_self">timers_preciseclock.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_9_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_9_')"/><img id="img_1_0_9_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_9_')"/><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html" target="_self">security</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="auth__filters_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="auth__filters_8h.html" target="_self">auth_filters.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="base64_8c.html" target="_self">base64.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="base64_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="base64_8h.html" target="_self">base64.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="client__auth__filter_8c.html" target="_self">client_auth_filter.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="credentials_8c.html" target="_self">credentials.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="credentials_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="credentials_8h.html" target="_self">credentials.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="credentials__metadata_8c.html" target="_self">credentials_metadata.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="credentials__posix_8c.html" target="_self">credentials_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_8_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="credentials__win32_8c.html" target="_self">credentials_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_9_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="google__default__credentials_8c.html" target="_self">google_default_credentials.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_10_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="json__token_8c.html" target="_self">json_token.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_11_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="json__token_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="json__token_8h.html" target="_self">json_token.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_12_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="jwt__verifier_8c.html" target="_self">jwt_verifier.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_13_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="jwt__verifier_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="jwt__verifier_8h.html" target="_self">jwt_verifier.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_14_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="secure__endpoint_8c.html" target="_self">secure_endpoint.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_15_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="secure__endpoint_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="secure__endpoint_8h.html" target="_self">secure_endpoint.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_16_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="secure__transport__setup_8c.html" target="_self">secure_transport_setup.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_17_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="secure__transport__setup_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="secure__transport__setup_8h.html" target="_self">secure_transport_setup.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_18_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="security__connector_8c.html" target="_self">security_connector.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_19_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="security__connector_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="security__connector_8h.html" target="_self">security_connector.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_20_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="security__context_8c.html" target="_self">security_context.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_21_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="security__context_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="security__context_8h.html" target="_self">security_context.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_22_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="server__auth__filter_8c.html" target="_self">server_auth_filter.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_9_23_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="server__secure__chttp2_8c.html" target="_self">server_secure_chttp2.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_10_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_10_')"/><img id="img_1_0_10_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_10_')"/><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html" target="_self">support</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="alloc_8c.html" target="_self">alloc.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="cancellable_8c.html" target="_self">cancellable.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="cmdline_8c.html" target="_self">cmdline.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="cpu__iphone_8c.html" target="_self">cpu_iphone.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_4_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="cpu__linux_8c.html" target="_self">cpu_linux.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_5_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="cpu__posix_8c.html" target="_self">cpu_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_6_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="cpu__windows_8c.html" target="_self">cpu_windows.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_7_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="env_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="env_8h.html" target="_self">env.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_8_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="env__linux_8c.html" target="_self">env_linux.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_9_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="env__posix_8c.html" target="_self">env_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_10_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="env__win32_8c.html" target="_self">env_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_11_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="file_8c.html" target="_self">file.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_12_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="file_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="file_8h.html" target="_self">file.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_13_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="file__posix_8c.html" target="_self">file_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_14_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="file__win32_8c.html" target="_self">file_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_15_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="histogram_8c.html" target="_self">histogram.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_16_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="host__port_8c.html" target="_self">host_port.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_17_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="log_8c.html" target="_self">log.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_18_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="log__android_8c.html" target="_self">log_android.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_19_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="log__linux_8c.html" target="_self">log_linux.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_20_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="log__posix_8c.html" target="_self">log_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_21_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="log__win32_8c.html" target="_self">log_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_22_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="murmur__hash_8c.html" target="_self">murmur_hash.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_23_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="murmur__hash_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="murmur__hash_8h.html" target="_self">murmur_hash.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_24_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="slice_8c.html" target="_self">slice.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_25_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="slice__buffer_8c.html" target="_self">slice_buffer.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_26_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="stack__lockfree_8c.html" target="_self">stack_lockfree.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_27_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="stack__lockfree_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="stack__lockfree_8h.html" target="_self">stack_lockfree.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_28_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="string_8c.html" target="_self">string.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_29_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="string_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="string_8h.html" target="_self">string.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_30_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="string__posix_8c.html" target="_self">string_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_31_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="string__win32_8c.html" target="_self">string_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_32_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="string__win32_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="string__win32_8h.html" target="_self">string_win32.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_33_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="subprocess__posix_8c.html" target="_self">subprocess_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_34_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="sync_8c.html" target="_self">sync.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_35_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="sync__posix_8c.html" target="_self">sync_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_36_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="sync__win32_8c.html" target="_self">sync_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_37_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="thd_8c.html" target="_self">thd.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_38_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="thd__internal_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="thd__internal_8h.html" target="_self">thd_internal.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_39_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="thd__posix_8c.html" target="_self">thd_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_40_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="thd__win32_8c.html" target="_self">thd_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_41_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="time_8c.html" target="_self">time.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_42_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="time__posix_8c.html" target="_self">time_posix.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_43_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="time__win32_8c.html" target="_self">time_win32.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_10_44_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="tls__pthread_8c.html" target="_self">tls_pthread.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_11_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_11_')"/><img id="img_1_0_11_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_11_')"/><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html" target="_self">surface</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="byte__buffer_8c.html" target="_self">byte_buffer.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="byte__buffer__queue_8c.html" target="_self">byte_buffer_queue.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="byte__buffer__queue_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="byte__buffer__queue_8h.html" target="_self">byte_buffer_queue.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="byte__buffer__reader_8c.html" target="_self">byte_buffer_reader.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="call_8c.html" target="_self">call.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="call_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="call_8h.html" target="_self">call.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="call__details_8c.html" target="_self">call_details.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="call__log__batch_8c.html" target="_self">call_log_batch.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_8_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="channel_8c.html" target="_self">channel.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_9_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="channel_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="channel_8h.html" target="_self">channel.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_10_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="channel__connectivity_8c.html" target="_self">channel_connectivity.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_11_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="channel__create_8c.html" target="_self">channel_create.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_12_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="completion__queue_8c.html" target="_self">completion_queue.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_13_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="completion__queue_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="completion__queue_8h.html" target="_self">completion_queue.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_14_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="event__string_8c.html" target="_self">event_string.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_15_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="event__string_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="event__string_8h.html" target="_self">event_string.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_16_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="init_8c.html" target="_self">init.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_17_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="init_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="init_8h.html" target="_self">init.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_18_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="init__secure_8c.html" target="_self">init_secure.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_19_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="lame__client_8c.html" target="_self">lame_client.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_20_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="metadata__array_8c.html" target="_self">metadata_array.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_21_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="secure__channel__create_8c.html" target="_self">secure_channel_create.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_22_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="server_8c.html" target="_self">server.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_23_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="server_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="server_8h.html" target="_self">server.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_24_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="server__chttp2_8c.html" target="_self">server_chttp2.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_25_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="server__create_8c.html" target="_self">server_create.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_26_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="surface__trace_8c.html" target="_self">surface_trace.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_27_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="surface__trace_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="surface__trace_8h.html" target="_self">surface_trace.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_11_28_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="version_8c.html" target="_self">version.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_12_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_12_')"/><img id="img_1_0_12_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_12_')"/><a class="el" href="dir_79268b13b30141157b35932967b4e740.html" target="_self">transport</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_1_0_12_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_0_12_0_')"/><img id="img_1_0_12_0_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_12_0_')"/><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html" target="_self">chttp2</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_0_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="alpn_8c.html" target="_self">alpn.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="alpn_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="alpn_8h.html" target="_self">alpn.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="bin__encoder_8c.html" target="_self">bin_encoder.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="bin__encoder_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="bin__encoder_8h.html" target="_self">bin_encoder.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_4_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame_8h.html" target="_self">frame.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_5_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="frame__data_8c.html" target="_self">frame_data.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_6_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame__data_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame__data_8h.html" target="_self">frame_data.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_7_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="frame__goaway_8c.html" target="_self">frame_goaway.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_8_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame__goaway_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame__goaway_8h.html" target="_self">frame_goaway.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_9_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="frame__ping_8c.html" target="_self">frame_ping.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_10_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame__ping_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame__ping_8h.html" target="_self">frame_ping.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_11_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="frame__rst__stream_8c.html" target="_self">frame_rst_stream.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_12_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame__rst__stream_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame__rst__stream_8h.html" target="_self">frame_rst_stream.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_13_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="frame__settings_8c.html" target="_self">frame_settings.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_14_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame__settings_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame__settings_8h.html" target="_self">frame_settings.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_15_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="frame__window__update_8c.html" target="_self">frame_window_update.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_16_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="frame__window__update_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="frame__window__update_8h.html" target="_self">frame_window_update.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_17_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="hpack__parser_8c.html" target="_self">hpack_parser.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_18_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="hpack__parser_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="hpack__parser_8h.html" target="_self">hpack_parser.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_19_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="hpack__table_8c.html" target="_self">hpack_table.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_20_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="hpack__table_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="hpack__table_8h.html" target="_self">hpack_table.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_21_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="http2__errors_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="http2__errors_8h.html" target="_self">http2_errors.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_22_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="huffsyms_8c.html" target="_self">huffsyms.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_23_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="huffsyms_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="huffsyms_8h.html" target="_self">huffsyms.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_24_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="incoming__metadata_8c.html" target="_self">incoming_metadata.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_25_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="incoming__metadata_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="incoming__metadata_8h.html" target="_self">incoming_metadata.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_26_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="internal_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="internal_8h.html" target="_self">internal.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_27_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="parsing_8c.html" target="_self">parsing.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_28_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="status__conversion_8c.html" target="_self">status_conversion.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_29_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="status__conversion_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="status__conversion_8h.html" target="_self">status_conversion.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_30_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="stream__encoder_8c.html" target="_self">stream_encoder.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_31_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="stream__encoder_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="stream__encoder_8h.html" target="_self">stream_encoder.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_32_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="stream__lists_8c.html" target="_self">stream_lists.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_33_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="stream__map_8c.html" target="_self">stream_map.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_34_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="stream__map_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="stream__map_8h.html" target="_self">stream_map.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_35_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="timeout__encoding_8c.html" target="_self">timeout_encoding.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_36_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="timeout__encoding_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="timeout__encoding_8h.html" target="_self">timeout_encoding.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_37_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="varint_8c.html" target="_self">varint.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_38_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="varint_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="varint_8h.html" target="_self">varint.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_0_39_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="writing_8c.html" target="_self">writing.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_1_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="chttp2__transport_8c.html" target="_self">chttp2_transport.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_2_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="chttp2__transport_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="chttp2__transport_8h.html" target="_self">chttp2_transport.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_3_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="connectivity__state_8c.html" target="_self">connectivity_state.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_4_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="connectivity__state_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="connectivity__state_8h.html" target="_self">connectivity_state.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_5_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="metadata_8c.html" target="_self">metadata.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_6_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="metadata_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="metadata_8h.html" target="_self">metadata.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_7_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="stream__op_8c.html" target="_self">stream_op.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_8_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="stream__op_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="stream__op_8h.html" target="_self">stream_op.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_9_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="transport_8c.html" target="_self">transport.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_10_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="transport_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="transport_8h.html" target="_self">transport.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_11_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="transport__impl_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="transport__impl_8h.html" target="_self">transport_impl.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_12_12_" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="transport__op__string_8c.html" target="_self">transport_op_string.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_1_0_13_" src="ftv2plastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('1_0_13_')"/><img id="img_1_0_13_" src="ftv2folderclosed.png" alt="+" width="24" height="22" onclick="toggleFolder('1_0_13_')"/><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html" target="_self">tsi</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="fake__transport__security_8c.html" target="_self">fake_transport_security.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fake__transport__security_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fake__transport__security_8h.html" target="_self">fake_transport_security.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="ssl__transport__security_8c.html" target="_self">ssl_transport_security.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="ssl__transport__security_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="ssl__transport__security_8h.html" target="_self">ssl_transport_security.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2doc.png" alt="*" width="24" height="22" /><a class="el" href="transport__security_8c.html" target="_self">transport_security.c</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="transport__security_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="transport__security_8h.html" target="_self">transport_security.h</a></td><td class="desc"></td></tr>
+<tr id="row_1_0_13_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="transport__security__interface_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="transport__security__interface_8h.html" target="_self">transport_security_interface.h</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/format__request_8c.html b/doc/ref/core.internal/html/format__request_8c.html
new file mode 100644
index 0000000000..bdfde089aa
--- /dev/null
+++ b/doc/ref/core.internal/html/format__request_8c.html
@@ -0,0 +1,166 @@
+<!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: src/core/httpcli/format_request.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">format_request.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="format__request_8h_source.html">src/core/httpcli/format_request.h</a>&quot;</code><br/>
+<code>#include &lt;stdarg.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0fa0de242d866bb79b5ad39f3c46eae2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="format__request_8c.html#a0fa0de242d866bb79b5ad39f3c46eae2">grpc_httpcli_format_get_request</a> (const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request)</td></tr>
+<tr class="separator:a0fa0de242d866bb79b5ad39f3c46eae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6a0298e2b174b65c5571622d3908501"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="format__request_8c.html#ae6a0298e2b174b65c5571622d3908501">grpc_httpcli_format_post_request</a> (const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, const char *body_bytes, size_t body_size)</td></tr>
+<tr class="separator:ae6a0298e2b174b65c5571622d3908501"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0fa0de242d866bb79b5ad39f3c46eae2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_httpcli_format_get_request </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae6a0298e2b174b65c5571622d3908501"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_httpcli_format_post_request </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>body_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>body_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/format__request_8h.html b/doc/ref/core.internal/html/format__request_8h.html
new file mode 100644
index 0000000000..308fd11967
--- /dev/null
+++ b/doc/ref/core.internal/html/format__request_8h.html
@@ -0,0 +1,162 @@
+<!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: src/core/httpcli/format_request.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">format_request.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="format__request_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0fa0de242d866bb79b5ad39f3c46eae2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2">grpc_httpcli_format_get_request</a> (const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request)</td></tr>
+<tr class="separator:a0fa0de242d866bb79b5ad39f3c46eae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6a0298e2b174b65c5571622d3908501"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="format__request_8h.html#ae6a0298e2b174b65c5571622d3908501">grpc_httpcli_format_post_request</a> (const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, const char *body_bytes, size_t body_size)</td></tr>
+<tr class="separator:ae6a0298e2b174b65c5571622d3908501"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0fa0de242d866bb79b5ad39f3c46eae2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_httpcli_format_get_request </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae6a0298e2b174b65c5571622d3908501"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_httpcli_format_post_request </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>body_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>body_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/format__request_8h_source.html b/doc/ref/core.internal/html/format__request_8h_source.html
new file mode 100644
index 0000000000..4ebfb8b21d
--- /dev/null
+++ b/doc/ref/core.internal/html/format__request_8h_source.html
@@ -0,0 +1,150 @@
+<!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: src/core/httpcli/format_request.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">format_request.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="format__request_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_HTTPCLI_FORMAT_REQUEST_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_HTTPCLI_FORMAT_REQUEST_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="httpcli_8h.html">src/core/httpcli/httpcli.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2">grpc_httpcli_format_get_request</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="format__request_8h.html#ae6a0298e2b174b65c5571622d3908501">grpc_httpcli_format_post_request</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *body_bytes,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">size_t</span> body_size);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_HTTPCLI_FORMAT_REQUEST_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="httpcli_8h_html"><div class="ttname"><a href="httpcli_8h.html">httpcli.h</a></div></div>
+<div class="ttc" id="format__request_8h_html_a0fa0de242d866bb79b5ad39f3c46eae2"><div class="ttname"><a href="format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2">grpc_httpcli_format_get_request</a></div><div class="ttdeci">gpr_slice grpc_httpcli_format_get_request(const grpc_httpcli_request *request)</div><div class="ttdef"><b>Definition:</b> format_request.c:65</div></div>
+<div class="ttc" id="format__request_8h_html_ae6a0298e2b174b65c5571622d3908501"><div class="ttname"><a href="format__request_8h.html#ae6a0298e2b174b65c5571622d3908501">grpc_httpcli_format_post_request</a></div><div class="ttdeci">gpr_slice grpc_httpcli_format_post_request(const grpc_httpcli_request *request, const char *body_bytes, size_t body_size)</div><div class="ttdef"><b>Definition:</b> format_request.c:81</div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html"><div class="ttname"><a href="structgrpc__httpcli__request.html">grpc_httpcli_request</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:62</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame_8h.html b/doc/ref/core.internal/html/frame_8h.html
new file mode 100644
index 0000000000..e1adc31921
--- /dev/null
+++ b/doc/ref/core.internal/html/frame_8h.html
@@ -0,0 +1,371 @@
+<!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: src/core/transport/chttp2/frame.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">frame.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="frame_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:af475a6ee5b3fc2b9c8b835d927521bee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#af475a6ee5b3fc2b9c8b835d927521bee">GRPC_CHTTP2_FRAME_DATA</a>&#160;&#160;&#160;0</td></tr>
+<tr class="separator:af475a6ee5b3fc2b9c8b835d927521bee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab82e94b9ff60e4ef29301db9b4022805"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#ab82e94b9ff60e4ef29301db9b4022805">GRPC_CHTTP2_FRAME_HEADER</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:ab82e94b9ff60e4ef29301db9b4022805"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8ffe7f9a02584c5eed5876f6d8e497b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#ae8ffe7f9a02584c5eed5876f6d8e497b">GRPC_CHTTP2_FRAME_CONTINUATION</a>&#160;&#160;&#160;9</td></tr>
+<tr class="separator:ae8ffe7f9a02584c5eed5876f6d8e497b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e6ad3bb0bc03b02cd2791f34014c933"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a0e6ad3bb0bc03b02cd2791f34014c933">GRPC_CHTTP2_FRAME_RST_STREAM</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:a0e6ad3bb0bc03b02cd2791f34014c933"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa030a067f1b4cbb8d34c28fbb43e8046"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#aa030a067f1b4cbb8d34c28fbb43e8046">GRPC_CHTTP2_FRAME_SETTINGS</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:aa030a067f1b4cbb8d34c28fbb43e8046"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a92c84ae932e1b9a79af8f099516ece"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a9a92c84ae932e1b9a79af8f099516ece">GRPC_CHTTP2_FRAME_PING</a>&#160;&#160;&#160;6</td></tr>
+<tr class="separator:a9a92c84ae932e1b9a79af8f099516ece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a624f289bc52602a8c3340ad747075130"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a624f289bc52602a8c3340ad747075130">GRPC_CHTTP2_FRAME_GOAWAY</a>&#160;&#160;&#160;7</td></tr>
+<tr class="separator:a624f289bc52602a8c3340ad747075130"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9af6484a80a10f0213465fa5dc14031"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#ac9af6484a80a10f0213465fa5dc14031">GRPC_CHTTP2_FRAME_WINDOW_UPDATE</a>&#160;&#160;&#160;8</td></tr>
+<tr class="separator:ac9af6484a80a10f0213465fa5dc14031"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a461cf678ffd9272c8a10f133c058124e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a461cf678ffd9272c8a10f133c058124e">GRPC_CHTTP2_MAX_PAYLOAD_LENGTH</a>&#160;&#160;&#160;((1 &lt;&lt; 14) - 1)</td></tr>
+<tr class="separator:a461cf678ffd9272c8a10f133c058124e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebe712016c70bba5c7fc0cbc7f372681"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#aebe712016c70bba5c7fc0cbc7f372681">GRPC_CHTTP2_DATA_FLAG_END_STREAM</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:aebe712016c70bba5c7fc0cbc7f372681"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae399b812927e4ccfa1836814e719bec6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#ae399b812927e4ccfa1836814e719bec6">GRPC_CHTTP2_FLAG_ACK</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:ae399b812927e4ccfa1836814e719bec6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e28337a838f07e06987f344a01f7f0f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a9e28337a838f07e06987f344a01f7f0f">GRPC_CHTTP2_DATA_FLAG_END_HEADERS</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:a9e28337a838f07e06987f344a01f7f0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab01d61cf6f1abddae8031ebcf6e34e09"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#ab01d61cf6f1abddae8031ebcf6e34e09">GRPC_CHTTP2_DATA_FLAG_PADDED</a>&#160;&#160;&#160;8</td></tr>
+<tr class="separator:ab01d61cf6f1abddae8031ebcf6e34e09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fbbbbd20f7217de2249fb8597b48c36"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a8fbbbbd20f7217de2249fb8597b48c36">GRPC_CHTTP2_FLAG_HAS_PRIORITY</a>&#160;&#160;&#160;0x20</td></tr>
+<tr class="separator:a8fbbbbd20f7217de2249fb8597b48c36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a67486ee57e3d27c619df98c80420f421"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a67486ee57e3d27c619df98c80420f421">grpc_chttp2_stream_parsing</a></td></tr>
+<tr class="separator:a67486ee57e3d27c619df98c80420f421"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a736ee44646a381e8119085a7803c20bc"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#a736ee44646a381e8119085a7803c20bc">grpc_chttp2_transport_parsing</a></td></tr>
+<tr class="separator:a736ee44646a381e8119085a7803c20bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ada474db64756bd411eeeaf3de4318e35"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> { <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931">GRPC_CHTTP2_PARSE_OK</a>,
+<a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4">GRPC_CHTTP2_STREAM_ERROR</a>,
+<a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4">GRPC_CHTTP2_CONNECTION_ERROR</a>
+ }</td></tr>
+<tr class="separator:ada474db64756bd411eeeaf3de4318e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a9e28337a838f07e06987f344a01f7f0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_DATA_FLAG_END_HEADERS&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aebe712016c70bba5c7fc0cbc7f372681"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_DATA_FLAG_END_STREAM&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab01d61cf6f1abddae8031ebcf6e34e09"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_DATA_FLAG_PADDED&#160;&#160;&#160;8</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae399b812927e4ccfa1836814e719bec6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FLAG_ACK&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8fbbbbd20f7217de2249fb8597b48c36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FLAG_HAS_PRIORITY&#160;&#160;&#160;0x20</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae8ffe7f9a02584c5eed5876f6d8e497b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_CONTINUATION&#160;&#160;&#160;9</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af475a6ee5b3fc2b9c8b835d927521bee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_DATA&#160;&#160;&#160;0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a624f289bc52602a8c3340ad747075130"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_GOAWAY&#160;&#160;&#160;7</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab82e94b9ff60e4ef29301db9b4022805"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_HEADER&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9a92c84ae932e1b9a79af8f099516ece"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_PING&#160;&#160;&#160;6</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0e6ad3bb0bc03b02cd2791f34014c933"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_RST_STREAM&#160;&#160;&#160;3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa030a067f1b4cbb8d34c28fbb43e8046"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_SETTINGS&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9af6484a80a10f0213465fa5dc14031"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FRAME_WINDOW_UPDATE&#160;&#160;&#160;8</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a461cf678ffd9272c8a10f133c058124e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_MAX_PAYLOAD_LENGTH&#160;&#160;&#160;((1 &lt;&lt; 14) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a67486ee57e3d27c619df98c80420f421"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a736ee44646a381e8119085a7803c20bc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="ada474db64756bd411eeeaf3de4318e35"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931"></a>GRPC_CHTTP2_PARSE_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4"></a>GRPC_CHTTP2_STREAM_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4"></a>GRPC_CHTTP2_CONNECTION_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame_8h_source.html b/doc/ref/core.internal/html/frame_8h_source.html
new file mode 100644
index 0000000000..ecad627ede
--- /dev/null
+++ b/doc/ref/core.internal/html/frame_8h_source.html
@@ -0,0 +1,176 @@
+<!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: src/core/transport/chttp2/frame.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* Common definitions for frame handling in the chttp2 transport */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931"> 43</a></span>&#160; <a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931">GRPC_CHTTP2_PARSE_OK</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4"> 44</a></span>&#160; <a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4">GRPC_CHTTP2_STREAM_ERROR</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4"> 45</a></span>&#160; <a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4">GRPC_CHTTP2_CONNECTION_ERROR</a></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;} <a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* defined in internal.h */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="frame_8h.html#a67486ee57e3d27c619df98c80420f421"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="frame_8h.html#a736ee44646a381e8119085a7803c20bc"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="frame_8h.html#af475a6ee5b3fc2b9c8b835d927521bee"> 52</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_FRAME_DATA 0</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="frame_8h.html#ab82e94b9ff60e4ef29301db9b4022805"> 53</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_HEADER 1</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="frame_8h.html#ae8ffe7f9a02584c5eed5876f6d8e497b"> 54</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_CONTINUATION 9</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="frame_8h.html#a0e6ad3bb0bc03b02cd2791f34014c933"> 55</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_RST_STREAM 3</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="frame_8h.html#aa030a067f1b4cbb8d34c28fbb43e8046"> 56</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_SETTINGS 4</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="frame_8h.html#a9a92c84ae932e1b9a79af8f099516ece"> 57</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_PING 6</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="frame_8h.html#a624f289bc52602a8c3340ad747075130"> 58</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_GOAWAY 7</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="frame_8h.html#ac9af6484a80a10f0213465fa5dc14031"> 59</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FRAME_WINDOW_UPDATE 8</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="frame_8h.html#a461cf678ffd9272c8a10f133c058124e"> 61</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_MAX_PAYLOAD_LENGTH ((1 &lt;&lt; 14) - 1)</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="frame_8h.html#aebe712016c70bba5c7fc0cbc7f372681"> 63</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_DATA_FLAG_END_STREAM 1</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="frame_8h.html#ae399b812927e4ccfa1836814e719bec6"> 64</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FLAG_ACK 1</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="frame_8h.html#a9e28337a838f07e06987f344a01f7f0f"> 65</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_DATA_FLAG_END_HEADERS 4</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="frame_8h.html#ab01d61cf6f1abddae8031ebcf6e34e09"> 66</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_DATA_FLAG_PADDED 8</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="frame_8h.html#a8fbbbbd20f7217de2249fb8597b48c36"> 67</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_FLAG_HAS_PRIORITY 0x20</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931">GRPC_CHTTP2_PARSE_OK</a></div><div class="ttdef"><b>Definition:</b> frame.h:43</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4">GRPC_CHTTP2_CONNECTION_ERROR</a></div><div class="ttdef"><b>Definition:</b> frame.h:45</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4">GRPC_CHTTP2_STREAM_ERROR</a></div><div class="ttdef"><b>Definition:</b> frame.h:44</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame__data_8c.html b/doc/ref/core.internal/html/frame__data_8c.html
new file mode 100644
index 0000000000..89260e9bff
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__data_8c.html
@@ -0,0 +1,223 @@
+<!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: src/core/transport/chttp2/frame_data.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_data.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame__data_8h_source.html">src/core/transport/chttp2/frame_data.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a796d3b28bd11e75897705b4f92a5cae7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8c.html#a796d3b28bd11e75897705b4f92a5cae7">grpc_chttp2_data_parser_init</a> (<a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser)</td></tr>
+<tr class="separator:a796d3b28bd11e75897705b4f92a5cae7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5927900bd0d0911de70cab715f4d4468"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8c.html#a5927900bd0d0911de70cab715f4d4468">grpc_chttp2_data_parser_destroy</a> (<a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser)</td></tr>
+<tr class="separator:a5927900bd0d0911de70cab715f4d4468"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afab39491d68260dc81d1a57cac6f434a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8c.html#afab39491d68260dc81d1a57cac6f434a">grpc_chttp2_data_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:afab39491d68260dc81d1a57cac6f434a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc519029db35772068e9a052076fcfa1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8c.html#abc519029db35772068e9a052076fcfa1">grpc_chttp2_data_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:abc519029db35772068e9a052076fcfa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="afab39491d68260dc81d1a57cac6f434a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_data_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5927900bd0d0911de70cab715f4d4468"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_data_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a796d3b28bd11e75897705b4f92a5cae7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_data_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc519029db35772068e9a052076fcfa1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_data_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__data_8h.html b/doc/ref/core.internal/html/frame__data_8h.html
new file mode 100644
index 0000000000..f399814b54
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__data_8h.html
@@ -0,0 +1,288 @@
+<!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: src/core/transport/chttp2/frame_data.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_data.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="stream__op_8h_source.html">src/core/transport/stream_op.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+</div>
+<p><a href="frame__data_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a0217c22db3da53fe20f70cb48dd3a910"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a> { <br/>
+&#160;&#160;<a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc">GRPC_CHTTP2_DATA_FH_0</a>,
+<a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c">GRPC_CHTTP2_DATA_FH_1</a>,
+<a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843">GRPC_CHTTP2_DATA_FH_2</a>,
+<a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91">GRPC_CHTTP2_DATA_FH_3</a>,
+<br/>
+&#160;&#160;<a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288">GRPC_CHTTP2_DATA_FH_4</a>,
+<a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de">GRPC_CHTTP2_DATA_FRAME</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a0217c22db3da53fe20f70cb48dd3a910"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a796d3b28bd11e75897705b4f92a5cae7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7">grpc_chttp2_data_parser_init</a> (<a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser)</td></tr>
+<tr class="separator:a796d3b28bd11e75897705b4f92a5cae7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5927900bd0d0911de70cab715f4d4468"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468">grpc_chttp2_data_parser_destroy</a> (<a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser)</td></tr>
+<tr class="separator:a5927900bd0d0911de70cab715f4d4468"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afab39491d68260dc81d1a57cac6f434a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a">grpc_chttp2_data_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:afab39491d68260dc81d1a57cac6f434a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc519029db35772068e9a052076fcfa1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html#abc519029db35772068e9a052076fcfa1">grpc_chttp2_data_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:abc519029db35772068e9a052076fcfa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa79c486a29b6e104c57be53a20d91362"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362">grpc_chttp2_data_frame_create_empty_close</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id)</td></tr>
+<tr class="separator:aa79c486a29b6e104c57be53a20d91362"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc"></a>GRPC_CHTTP2_DATA_FH_0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c"></a>GRPC_CHTTP2_DATA_FH_1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843"></a>GRPC_CHTTP2_DATA_FH_2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91"></a>GRPC_CHTTP2_DATA_FH_3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288"></a>GRPC_CHTTP2_DATA_FH_4</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de"></a>GRPC_CHTTP2_DATA_FRAME</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa79c486a29b6e104c57be53a20d91362"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_data_frame_create_empty_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afab39491d68260dc81d1a57cac6f434a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_data_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5927900bd0d0911de70cab715f4d4468"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_data_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a796d3b28bd11e75897705b4f92a5cae7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_data_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc519029db35772068e9a052076fcfa1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_data_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__data_8h_source.html b/doc/ref/core.internal/html/frame__data_8h_source.html
new file mode 100644
index 0000000000..ac4347fc5c
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__data_8h_source.html
@@ -0,0 +1,211 @@
+<!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: src/core/transport/chttp2/frame_data.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame_data.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame__data_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_DATA_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_DATA_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Parser for GRPC streams embedded in DATA frames */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice__buffer_8h.html">grpc/support/slice_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="stream__op_8h.html">src/core/transport/stream_op.h</a>&quot;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc"> 45</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc">GRPC_CHTTP2_DATA_FH_0</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c"> 46</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c">GRPC_CHTTP2_DATA_FH_1</a>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843"> 47</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843">GRPC_CHTTP2_DATA_FH_2</a>,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91"> 48</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91">GRPC_CHTTP2_DATA_FH_3</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288"> 49</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288">GRPC_CHTTP2_DATA_FH_4</a>,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de"> 50</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de">GRPC_CHTTP2_DATA_FRAME</a></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab"> 54</a></span>&#160; <a class="code" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a> <a class="code" href="structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab">state</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e"> 55</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e">is_last_frame</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865"> 56</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865">frame_type</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a"> 57</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a">frame_size</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7"> 59</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7">is_frame_compressed</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c"> 60</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> <a class="code" href="structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c">incoming_sopb</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* initialize per-stream state for data frame parsing */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7">grpc_chttp2_data_parser_init</a>(</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">void</span> <a class="code" href="frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468">grpc_chttp2_data_parser_destroy</a>(<a class="code" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* start processing a new data frame */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a">grpc_chttp2_data_parser_begin_frame</a>(</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> *parser, <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/* handle a slice of a data frame - is_last indicates the last slice of a</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> frame */</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__data_8h.html#abc519029db35772068e9a052076fcfa1">grpc_chttp2_data_parser_parse</a>(</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> *parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">/* create a slice with an empty data frame and is_last set */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362">grpc_chttp2_data_frame_create_empty_close</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_DATA_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a></div><div class="ttdeci">grpc_chttp2_stream_state</div><div class="ttdef"><b>Definition:</b> frame_data.h:44</div></div>
+<div class="ttc" id="frame__data_8h_html_afab39491d68260dc81d1a57cac6f434a"><div class="ttname"><a href="frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a">grpc_chttp2_data_parser_begin_frame</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_data_parser_begin_frame(grpc_chttp2_data_parser *parser, gpr_uint8 flags)</div><div class="ttdef"><b>Definition:</b> frame_data.c:56</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html_a0b6ee9238d492fc7ed2a0e21fd483aa7"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7">grpc_chttp2_data_parser::is_frame_compressed</a></div><div class="ttdeci">int is_frame_compressed</div><div class="ttdef"><b>Definition:</b> frame_data.h:59</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html_a6fd6d128f7954d9ece6b375d2699619c"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c">grpc_chttp2_data_parser::incoming_sopb</a></div><div class="ttdeci">grpc_stream_op_buffer incoming_sopb</div><div class="ttdef"><b>Definition:</b> frame_data.h:60</div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de">GRPC_CHTTP2_DATA_FRAME</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:50</div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288">GRPC_CHTTP2_DATA_FH_4</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:49</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html_a4f5b790cb938400757b8f1fdbf6125ab"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab">grpc_chttp2_data_parser::state</a></div><div class="ttdeci">grpc_chttp2_stream_state state</div><div class="ttdef"><b>Definition:</b> frame_data.h:54</div></div>
+<div class="ttc" id="frame__data_8h_html_a796d3b28bd11e75897705b4f92a5cae7"><div class="ttname"><a href="frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7">grpc_chttp2_data_parser_init</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_data_parser_init(grpc_chttp2_data_parser *parser)</div><div class="ttdef"><b>Definition:</b> frame_data.c:45</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91">GRPC_CHTTP2_DATA_FH_3</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:48</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c">GRPC_CHTTP2_DATA_FH_1</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:46</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html_a82d208096ae99ff778356f549de2647a"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a">grpc_chttp2_data_parser::frame_size</a></div><div class="ttdeci">gpr_uint32 frame_size</div><div class="ttdef"><b>Definition:</b> frame_data.h:57</div></div>
+<div class="ttc" id="slice__buffer_8h_html"><div class="ttname"><a href="slice__buffer_8h.html">slice_buffer.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="frame__data_8h_html_a5927900bd0d0911de70cab715f4d4468"><div class="ttname"><a href="frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468">grpc_chttp2_data_parser_destroy</a></div><div class="ttdeci">void grpc_chttp2_data_parser_destroy(grpc_chttp2_data_parser *parser)</div><div class="ttdef"><b>Definition:</b> frame_data.c:52</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:53</div></div>
+<div class="ttc" id="frame__data_8h_html_aa79c486a29b6e104c57be53a20d91362"><div class="ttname"><a href="frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362">grpc_chttp2_data_frame_create_empty_close</a></div><div class="ttdeci">gpr_slice grpc_chttp2_data_frame_create_empty_close(gpr_uint32 id)</div><div class="ttdef"><b>Definition:</b> stream_encoder.c:449</div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843">GRPC_CHTTP2_DATA_FH_2</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:47</div></div>
+<div class="ttc" id="frame__data_8h_html_abc519029db35772068e9a052076fcfa1"><div class="ttname"><a href="frame__data_8h.html#abc519029db35772068e9a052076fcfa1">grpc_chttp2_data_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_data_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> frame_data.c:72</div></div>
+<div class="ttc" id="frame__data_8h_html_a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc"><div class="ttname"><a href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc">GRPC_CHTTP2_DATA_FH_0</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:45</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html_a0a9b5ff25be677ae71473791fc201865"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865">grpc_chttp2_data_parser::frame_type</a></div><div class="ttdeci">gpr_uint8 frame_type</div><div class="ttdef"><b>Definition:</b> frame_data.h:56</div></div>
+<div class="ttc" id="stream__op_8h_html"><div class="ttname"><a href="stream__op_8h.html">stream_op.h</a></div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html"><div class="ttname"><a href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div><div class="ttdef"><b>Definition:</b> stream_op.h:176</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html_ae3b9c3b2e6d778a42225361adbad882e"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e">grpc_chttp2_data_parser::is_last_frame</a></div><div class="ttdeci">gpr_uint8 is_last_frame</div><div class="ttdef"><b>Definition:</b> frame_data.h:55</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame__goaway_8c.html b/doc/ref/core.internal/html/frame__goaway_8c.html
new file mode 100644
index 0000000000..f966d7b377
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__goaway_8c.html
@@ -0,0 +1,267 @@
+<!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: src/core/transport/chttp2/frame_goaway.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_goaway.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame__goaway_8h_source.html">src/core/transport/chttp2/frame_goaway.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8df9b9a3fcd7bc6d679b47909c2c8f23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8c.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">grpc_chttp2_goaway_parser_init</a> (<a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p)</td></tr>
+<tr class="separator:a8df9b9a3fcd7bc6d679b47909c2c8f23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cd3e388f5844ad2c4c7d1c9488436a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8c.html#a5cd3e388f5844ad2c4c7d1c9488436a8">grpc_chttp2_goaway_parser_destroy</a> (<a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p)</td></tr>
+<tr class="separator:a5cd3e388f5844ad2c4c7d1c9488436a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2dd5fba43ce1f26f220199c1c7db0f05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8c.html#a2dd5fba43ce1f26f220199c1c7db0f05">grpc_chttp2_goaway_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:a2dd5fba43ce1f26f220199c1c7db0f05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52a6863feebfb5a9962330d42b22be2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8c.html#a52a6863feebfb5a9962330d42b22be2d">grpc_chttp2_goaway_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:a52a6863feebfb5a9962330d42b22be2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71bd236ace0cb6b0f04ebb1049efc5bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8c.html#a71bd236ace0cb6b0f04ebb1049efc5bc">grpc_chttp2_goaway_append</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> last_stream_id, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> error_code, <a class="el" href="structgpr__slice.html">gpr_slice</a> debug_data, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *slice_buffer)</td></tr>
+<tr class="separator:a71bd236ace0cb6b0f04ebb1049efc5bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a71bd236ace0cb6b0f04ebb1049efc5bc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_goaway_append </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>last_stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>error_code</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>debug_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>slice_buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2dd5fba43ce1f26f220199c1c7db0f05"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_goaway_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5cd3e388f5844ad2c4c7d1c9488436a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_goaway_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8df9b9a3fcd7bc6d679b47909c2c8f23"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_goaway_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52a6863feebfb5a9962330d42b22be2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_goaway_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__goaway_8h.html b/doc/ref/core.internal/html/frame__goaway_8h.html
new file mode 100644
index 0000000000..5f9fed657f
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__goaway_8h.html
@@ -0,0 +1,326 @@
+<!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: src/core/transport/chttp2/frame_goaway.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_goaway.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+</div>
+<p><a href="frame__goaway_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a14004d750241aad1932b7a6abdcd436a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a> { <br/>
+&#160;&#160;<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149">GRPC_CHTTP2_GOAWAY_LSI0</a>,
+<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6">GRPC_CHTTP2_GOAWAY_LSI1</a>,
+<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe">GRPC_CHTTP2_GOAWAY_LSI2</a>,
+<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72">GRPC_CHTTP2_GOAWAY_LSI3</a>,
+<br/>
+&#160;&#160;<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a">GRPC_CHTTP2_GOAWAY_ERR0</a>,
+<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131">GRPC_CHTTP2_GOAWAY_ERR1</a>,
+<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f">GRPC_CHTTP2_GOAWAY_ERR2</a>,
+<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998">GRPC_CHTTP2_GOAWAY_ERR3</a>,
+<br/>
+&#160;&#160;<a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619">GRPC_CHTTP2_GOAWAY_DEBUG</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a14004d750241aad1932b7a6abdcd436a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8df9b9a3fcd7bc6d679b47909c2c8f23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">grpc_chttp2_goaway_parser_init</a> (<a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p)</td></tr>
+<tr class="separator:a8df9b9a3fcd7bc6d679b47909c2c8f23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cd3e388f5844ad2c4c7d1c9488436a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8">grpc_chttp2_goaway_parser_destroy</a> (<a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p)</td></tr>
+<tr class="separator:a5cd3e388f5844ad2c4c7d1c9488436a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48814915966d3dd70b73d854629813b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6">grpc_chttp2_goaway_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:a48814915966d3dd70b73d854629813b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52a6863feebfb5a9962330d42b22be2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d">grpc_chttp2_goaway_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:a52a6863feebfb5a9962330d42b22be2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71bd236ace0cb6b0f04ebb1049efc5bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc">grpc_chttp2_goaway_append</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> last_stream_id, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> error_code, <a class="el" href="structgpr__slice.html">gpr_slice</a> debug_data, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *slice_buffer)</td></tr>
+<tr class="separator:a71bd236ace0cb6b0f04ebb1049efc5bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a14004d750241aad1932b7a6abdcd436a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149"></a>GRPC_CHTTP2_GOAWAY_LSI0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6"></a>GRPC_CHTTP2_GOAWAY_LSI1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe"></a>GRPC_CHTTP2_GOAWAY_LSI2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72"></a>GRPC_CHTTP2_GOAWAY_LSI3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a"></a>GRPC_CHTTP2_GOAWAY_ERR0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131"></a>GRPC_CHTTP2_GOAWAY_ERR1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f"></a>GRPC_CHTTP2_GOAWAY_ERR2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998"></a>GRPC_CHTTP2_GOAWAY_ERR3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619"></a>GRPC_CHTTP2_GOAWAY_DEBUG</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a71bd236ace0cb6b0f04ebb1049efc5bc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_goaway_append </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>last_stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>error_code</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>debug_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>slice_buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a48814915966d3dd70b73d854629813b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_goaway_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5cd3e388f5844ad2c4c7d1c9488436a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_goaway_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8df9b9a3fcd7bc6d679b47909c2c8f23"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_goaway_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52a6863feebfb5a9962330d42b22be2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_goaway_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__goaway_8h_source.html b/doc/ref/core.internal/html/frame__goaway_8h_source.html
new file mode 100644
index 0000000000..81677c8328
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__goaway_8h_source.html
@@ -0,0 +1,207 @@
+<!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: src/core/transport/chttp2/frame_goaway.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame_goaway.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame__goaway_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_GOAWAY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_GOAWAY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice__buffer_8h.html">grpc/support/slice_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149"> 43</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149">GRPC_CHTTP2_GOAWAY_LSI0</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6"> 44</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6">GRPC_CHTTP2_GOAWAY_LSI1</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe"> 45</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe">GRPC_CHTTP2_GOAWAY_LSI2</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72"> 46</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72">GRPC_CHTTP2_GOAWAY_LSI3</a>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a"> 47</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a">GRPC_CHTTP2_GOAWAY_ERR0</a>,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131"> 48</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131">GRPC_CHTTP2_GOAWAY_ERR1</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f"> 49</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f">GRPC_CHTTP2_GOAWAY_ERR2</a>,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998"> 50</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998">GRPC_CHTTP2_GOAWAY_ERR3</a>,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619"> 51</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619">GRPC_CHTTP2_GOAWAY_DEBUG</a></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;} <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html"> 54</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589"> 55</a></span>&#160; <a class="code" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a> <a class="code" href="structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589">state</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be"> 56</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be">last_stream_id</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5"> 57</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5">error_code</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e"> 58</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e">debug_data</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23"> 59</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23">debug_length</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce"> 60</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce">debug_pos</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keywordtype">void</span> <a class="code" href="frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">grpc_chttp2_goaway_parser_init</a>(<a class="code" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8">grpc_chttp2_goaway_parser_destroy</a>(<a class="code" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *p);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6">grpc_chttp2_goaway_parser_begin_frame</a>(</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> *parser, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d">grpc_chttp2_goaway_parser_parse</a>(</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">void</span> *parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc">grpc_chttp2_goaway_append</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> last_stream_id, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> error_code,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> debug_data,</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *slice_buffer);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_GOAWAY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html_a0c4cd3884d0d1351a86466cbcd5f58be"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be">grpc_chttp2_goaway_parser::last_stream_id</a></div><div class="ttdeci">gpr_uint32 last_stream_id</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:56</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998">GRPC_CHTTP2_GOAWAY_ERR3</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:50</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149">GRPC_CHTTP2_GOAWAY_LSI0</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:43</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619">GRPC_CHTTP2_GOAWAY_DEBUG</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:51</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6">GRPC_CHTTP2_GOAWAY_LSI1</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:44</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a5cd3e388f5844ad2c4c7d1c9488436a8"><div class="ttname"><a href="frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8">grpc_chttp2_goaway_parser_destroy</a></div><div class="ttdeci">void grpc_chttp2_goaway_parser_destroy(grpc_chttp2_goaway_parser *p)</div><div class="ttdef"><b>Definition:</b> frame_goaway.c:46</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131">GRPC_CHTTP2_GOAWAY_ERR1</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:48</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a">GRPC_CHTTP2_GOAWAY_ERR0</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:47</div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html_aa3aaf26c909bb9bfae33386f1ececd23"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23">grpc_chttp2_goaway_parser::debug_length</a></div><div class="ttdeci">gpr_uint32 debug_length</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:59</div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html_afc5c60968d8b1b68e4c0705a66129589"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589">grpc_chttp2_goaway_parser::state</a></div><div class="ttdeci">grpc_chttp2_goaway_parse_state state</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:55</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:54</div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html_a7d67619fd763e569f825792784814aa5"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5">grpc_chttp2_goaway_parser::error_code</a></div><div class="ttdeci">gpr_uint32 error_code</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:57</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f">GRPC_CHTTP2_GOAWAY_ERR2</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:49</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72">GRPC_CHTTP2_GOAWAY_LSI3</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:46</div></div>
+<div class="ttc" id="slice__buffer_8h_html"><div class="ttname"><a href="slice__buffer_8h.html">slice_buffer.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html_aacb3c390aaaf7d9bfd7a047a32cf6a0e"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e">grpc_chttp2_goaway_parser::debug_data</a></div><div class="ttdeci">char * debug_data</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:58</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a52a6863feebfb5a9962330d42b22be2d"><div class="ttname"><a href="frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d">grpc_chttp2_goaway_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_goaway_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> frame_goaway.c:65</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a8df9b9a3fcd7bc6d679b47909c2c8f23"><div class="ttname"><a href="frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">grpc_chttp2_goaway_parser_init</a></div><div class="ttdeci">void grpc_chttp2_goaway_parser_init(grpc_chttp2_goaway_parser *p)</div><div class="ttdef"><b>Definition:</b> frame_goaway.c:42</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html_a13fecb34da53cca561d7b0e1db1484ce"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce">grpc_chttp2_goaway_parser::debug_pos</a></div><div class="ttdeci">gpr_uint32 debug_pos</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:60</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a71bd236ace0cb6b0f04ebb1049efc5bc"><div class="ttname"><a href="frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc">grpc_chttp2_goaway_append</a></div><div class="ttdeci">void grpc_chttp2_goaway_append(gpr_uint32 last_stream_id, gpr_uint32 error_code, gpr_slice debug_data, gpr_slice_buffer *slice_buffer)</div><div class="ttdef"><b>Definition:</b> frame_goaway.c:158</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436a"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a></div><div class="ttdeci">grpc_chttp2_goaway_parse_state</div><div class="ttdef"><b>Definition:</b> frame_goaway.h:42</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe"><div class="ttname"><a href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe">GRPC_CHTTP2_GOAWAY_LSI2</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:45</div></div>
+<div class="ttc" id="frame__goaway_8h_html_a48814915966d3dd70b73d854629813b6"><div class="ttname"><a href="frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6">grpc_chttp2_goaway_parser_begin_frame</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_goaway_parser_begin_frame(grpc_chttp2_goaway_parser *parser, gpr_uint32 length, gpr_uint8 flags)</div><div class="ttdef"><b>Definition:</b> frame_goaway.c:50</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame__ping_8c.html b/doc/ref/core.internal/html/frame__ping_8c.html
new file mode 100644
index 0000000000..66b49202d3
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__ping_8c.html
@@ -0,0 +1,219 @@
+<!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: src/core/transport/chttp2/frame_ping.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_ping.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame__ping_8h_source.html">src/core/transport/chttp2/frame_ping.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a80bb3f2ba166dcbd164aa04e680c58e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8c.html#a80bb3f2ba166dcbd164aa04e680c58e3">grpc_chttp2_ping_create</a> (<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> ack, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *opaque_8bytes)</td></tr>
+<tr class="separator:a80bb3f2ba166dcbd164aa04e680c58e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76f66f3bbe53a20610183253d30c57f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8c.html#a76f66f3bbe53a20610183253d30c57f7">grpc_chttp2_ping_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:a76f66f3bbe53a20610183253d30c57f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace393509f26406ff6bdc9e60e7534042"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8c.html#ace393509f26406ff6bdc9e60e7534042">grpc_chttp2_ping_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ace393509f26406ff6bdc9e60e7534042"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a80bb3f2ba166dcbd164aa04e680c58e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_ping_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>ack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>opaque_8bytes</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76f66f3bbe53a20610183253d30c57f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_ping_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ace393509f26406ff6bdc9e60e7534042"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_ping_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__ping_8h.html b/doc/ref/core.internal/html/frame__ping_8h.html
new file mode 100644
index 0000000000..431c0d0cfe
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__ping_8h.html
@@ -0,0 +1,224 @@
+<!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: src/core/transport/chttp2/frame_ping.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_ping.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+</div>
+<p><a href="frame__ping_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a80bb3f2ba166dcbd164aa04e680c58e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3">grpc_chttp2_ping_create</a> (<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> ack, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *opaque_8bytes)</td></tr>
+<tr class="separator:a80bb3f2ba166dcbd164aa04e680c58e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76f66f3bbe53a20610183253d30c57f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7">grpc_chttp2_ping_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:a76f66f3bbe53a20610183253d30c57f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace393509f26406ff6bdc9e60e7534042"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042">grpc_chttp2_ping_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ace393509f26406ff6bdc9e60e7534042"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a80bb3f2ba166dcbd164aa04e680c58e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_ping_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>ack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>opaque_8bytes</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76f66f3bbe53a20610183253d30c57f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_ping_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ace393509f26406ff6bdc9e60e7534042"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_ping_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__ping_8h_source.html b/doc/ref/core.internal/html/frame__ping_8h_source.html
new file mode 100644
index 0000000000..8dfe9eecab
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__ping_8h_source.html
@@ -0,0 +1,167 @@
+<!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: src/core/transport/chttp2/frame_ping.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame_ping.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame__ping_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_PING_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_PING_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__ping__parser.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33"> 41</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33">byte</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c"> 42</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c">is_ack</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__ping__parser.html#a338f5adfa9a1236094e16c36c5cd5b4e"> 43</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> opaque_8bytes[8];</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3">grpc_chttp2_ping_create</a>(<a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> ack, <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *opaque_8bytes);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7">grpc_chttp2_ping_parser_begin_frame</a>(</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> *parser, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042">grpc_chttp2_ping_parser_parse</a>(</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">void</span> *parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_PING_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="structgrpc__chttp2__ping__parser_html_adbc3402e14a75f592502d3185165a59c"><div class="ttname"><a href="structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c">grpc_chttp2_ping_parser::is_ack</a></div><div class="ttdeci">gpr_uint8 is_ack</div><div class="ttdef"><b>Definition:</b> frame_ping.h:42</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="frame__ping_8h_html_a76f66f3bbe53a20610183253d30c57f7"><div class="ttname"><a href="frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7">grpc_chttp2_ping_parser_begin_frame</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_ping_parser_begin_frame(grpc_chttp2_ping_parser *parser, gpr_uint32 length, gpr_uint8 flags)</div><div class="ttdef"><b>Definition:</b> frame_ping.c:60</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="frame__ping_8h_html_a80bb3f2ba166dcbd164aa04e680c58e3"><div class="ttname"><a href="frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3">grpc_chttp2_ping_create</a></div><div class="ttdeci">gpr_slice grpc_chttp2_ping_create(gpr_uint8 ack, gpr_uint8 *opaque_8bytes)</div><div class="ttdef"><b>Definition:</b> frame_ping.c:42</div></div>
+<div class="ttc" id="structgrpc__chttp2__ping__parser_html"><div class="ttname"><a href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a></div><div class="ttdef"><b>Definition:</b> frame_ping.h:40</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="structgrpc__chttp2__ping__parser_html_a210db2114f01c53a41e466da1cf1af33"><div class="ttname"><a href="structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33">grpc_chttp2_ping_parser::byte</a></div><div class="ttdeci">gpr_uint8 byte</div><div class="ttdef"><b>Definition:</b> frame_ping.h:41</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="frame__ping_8h_html_ace393509f26406ff6bdc9e60e7534042"><div class="ttname"><a href="frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042">grpc_chttp2_ping_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_ping_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> frame_ping.c:71</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame__rst__stream_8c.html b/doc/ref/core.internal/html/frame__rst__stream_8c.html
new file mode 100644
index 0000000000..0c3080093d
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__rst__stream_8c.html
@@ -0,0 +1,218 @@
+<!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: src/core/transport/chttp2/frame_rst_stream.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_rst_stream.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame__rst__stream_8h_source.html">src/core/transport/chttp2/frame_rst_stream.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6a627690f79faf403072532d19a08895"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8c.html#a6a627690f79faf403072532d19a08895">grpc_chttp2_rst_stream_create</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> code)</td></tr>
+<tr class="separator:a6a627690f79faf403072532d19a08895"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3138dce884dfcb8c9653de757261d16e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8c.html#a3138dce884dfcb8c9653de757261d16e">grpc_chttp2_rst_stream_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:a3138dce884dfcb8c9653de757261d16e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89852ed41fa9b715fb86ab6193160fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8c.html#ad89852ed41fa9b715fb86ab6193160fc">grpc_chttp2_rst_stream_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ad89852ed41fa9b715fb86ab6193160fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a6a627690f79faf403072532d19a08895"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_rst_stream_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>code</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3138dce884dfcb8c9653de757261d16e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_rst_stream_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad89852ed41fa9b715fb86ab6193160fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_rst_stream_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__rst__stream_8h.html b/doc/ref/core.internal/html/frame__rst__stream_8h.html
new file mode 100644
index 0000000000..f14043a58d
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__rst__stream_8h.html
@@ -0,0 +1,224 @@
+<!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: src/core/transport/chttp2/frame_rst_stream.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_rst_stream.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+</div>
+<p><a href="frame__rst__stream_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aecab04c529c662e1703ae01fb70d7687"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687">grpc_chttp2_rst_stream_create</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> code)</td></tr>
+<tr class="separator:aecab04c529c662e1703ae01fb70d7687"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3138dce884dfcb8c9653de757261d16e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e">grpc_chttp2_rst_stream_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:a3138dce884dfcb8c9653de757261d16e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad89852ed41fa9b715fb86ab6193160fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc">grpc_chttp2_rst_stream_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ad89852ed41fa9b715fb86ab6193160fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aecab04c529c662e1703ae01fb70d7687"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_rst_stream_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>code</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3138dce884dfcb8c9653de757261d16e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_rst_stream_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad89852ed41fa9b715fb86ab6193160fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_rst_stream_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__rst__stream_8h_source.html b/doc/ref/core.internal/html/frame__rst__stream_8h_source.html
new file mode 100644
index 0000000000..51c79becf9
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__rst__stream_8h_source.html
@@ -0,0 +1,165 @@
+<!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: src/core/transport/chttp2/frame_rst_stream.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame_rst_stream.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame__rst__stream_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_RST_STREAM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_RST_STREAM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__rst__stream__parser.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665"> 41</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665">byte</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__rst__stream__parser.html#a254db3891d5bf60dec2f27a5ee6ef496"> 42</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> reason_bytes[4];</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;} <a class="code" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687">grpc_chttp2_rst_stream_create</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> code);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e">grpc_chttp2_rst_stream_parser_begin_frame</a>(</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> *parser, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc">grpc_chttp2_rst_stream_parser_parse</a>(</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">void</span> *parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_RST_STREAM_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__chttp2__rst__stream__parser_html_aee8f43a9cfb3468529d9bfa7ad30d665"><div class="ttname"><a href="structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665">grpc_chttp2_rst_stream_parser::byte</a></div><div class="ttdeci">gpr_uint8 byte</div><div class="ttdef"><b>Definition:</b> frame_rst_stream.h:41</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="frame__rst__stream_8h_html_ad89852ed41fa9b715fb86ab6193160fc"><div class="ttname"><a href="frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc">grpc_chttp2_rst_stream_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_rst_stream_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> frame_rst_stream.c:73</div></div>
+<div class="ttc" id="structgrpc__chttp2__rst__stream__parser_html"><div class="ttname"><a href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a></div><div class="ttdef"><b>Definition:</b> frame_rst_stream.h:40</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="frame__rst__stream_8h_html_aecab04c529c662e1703ae01fb70d7687"><div class="ttname"><a href="frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687">grpc_chttp2_rst_stream_create</a></div><div class="ttdeci">gpr_slice grpc_chttp2_rst_stream_create(gpr_uint32 stream_id, gpr_uint32 code)</div><div class="ttdef"><b>Definition:</b> frame_rst_stream.c:41</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="frame__rst__stream_8h_html_a3138dce884dfcb8c9653de757261d16e"><div class="ttname"><a href="frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e">grpc_chttp2_rst_stream_parser_begin_frame</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_rst_stream_parser_begin_frame(grpc_chttp2_rst_stream_parser *parser, gpr_uint32 length, gpr_uint8 flags)</div><div class="ttdef"><b>Definition:</b> frame_rst_stream.c:62</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame__settings_8c.html b/doc/ref/core.internal/html/frame__settings_8c.html
new file mode 100644
index 0000000000..1ecb19db87
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__settings_8c.html
@@ -0,0 +1,294 @@
+<!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: src/core/transport/chttp2/frame_settings.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">frame_settings.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame__settings_8h_source.html">src/core/transport/chttp2/frame_settings.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa7db515ebcf9a8add8ade457502d065a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8c.html#aa7db515ebcf9a8add8ade457502d065a">grpc_chttp2_settings_create</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *old, const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *new, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> force_mask, size_t count)</td></tr>
+<tr class="separator:aa7db515ebcf9a8add8ade457502d065a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1382503cac023cb2cbf516427ec7954"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8c.html#aa1382503cac023cb2cbf516427ec7954">grpc_chttp2_settings_ack_create</a> (void)</td></tr>
+<tr class="separator:aa1382503cac023cb2cbf516427ec7954"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ad385f78097ad98242ae5a8b4bc9ccf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8c.html#a8ad385f78097ad98242ae5a8b4bc9ccf">grpc_chttp2_settings_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *settings)</td></tr>
+<tr class="separator:a8ad385f78097ad98242ae5a8b4bc9ccf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24ea784f4fb455974f9b4e5d66ee1416"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8c.html#a24ea784f4fb455974f9b4e5d66ee1416">grpc_chttp2_settings_parser_parse</a> (void *p, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:a24ea784f4fb455974f9b4e5d66ee1416"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a61e84df9b71280ea1a733437d9de8f37"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8c.html#a61e84df9b71280ea1a733437d9de8f37">grpc_chttp2_settings_parameters</a> [<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td></tr>
+<tr class="separator:a61e84df9b71280ea1a733437d9de8f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa1382503cac023cb2cbf516427ec7954"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_settings_ack_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7db515ebcf9a8add8ade457502d065a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_settings_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>old</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>new</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>force_mask</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ad385f78097ad98242ae5a8b4bc9ccf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_settings_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>settings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a24ea784f4fb455974f9b4e5d66ee1416"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_settings_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a61e84df9b71280ea1a733437d9de8f37"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a> grpc_chttp2_settings_parameters[<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> {NULL, 0, 0, 0, <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a>},</div>
+<div class="line"> {<span class="stringliteral">&quot;HEADER_TABLE_SIZE&quot;</span>, 4096, 0, 0xffffffff,</div>
+<div class="line"> <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">GRPC_CHTTP2_CLAMP_INVALID_VALUE</a>},</div>
+<div class="line"> {<span class="stringliteral">&quot;ENABLE_PUSH&quot;</span>, 1, 0, 1, <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a>},</div>
+<div class="line"> {<span class="stringliteral">&quot;MAX_CONCURRENT_STREAMS&quot;</span>, 0xffffffffu, 0, 0xffffffffu,</div>
+<div class="line"> <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a>},</div>
+<div class="line"> {<span class="stringliteral">&quot;INITIAL_WINDOW_SIZE&quot;</span>, 65535, 0, 0xffffffffu,</div>
+<div class="line"> <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a>},</div>
+<div class="line"> {<span class="stringliteral">&quot;MAX_FRAME_SIZE&quot;</span>, 16384, 16384, 16777215,</div>
+<div class="line"> <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a>},</div>
+<div class="line"> {<span class="stringliteral">&quot;MAX_HEADER_LIST_SIZE&quot;</span>, 0xffffffffu, 0, 0xffffffffu,</div>
+<div class="line"> <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">GRPC_CHTTP2_CLAMP_INVALID_VALUE</a>},</div>
+<div class="line">}</div>
+<div class="ttc" id="frame__settings_8h_html_a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d"><div class="ttname"><a href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">GRPC_CHTTP2_CLAMP_INVALID_VALUE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:71</div></div>
+<div class="ttc" id="frame__settings_8h_html_a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac"><div class="ttname"><a href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:72</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__settings_8h.html b/doc/ref/core.internal/html/frame__settings_8h.html
new file mode 100644
index 0000000000..09c973ddb8
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__settings_8h.html
@@ -0,0 +1,387 @@
+<!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: src/core/transport/chttp2/frame_settings.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">frame_settings.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+</div>
+<p><a href="frame__settings_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ae964433822fb14f6c7d72fc1f3420b8f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a> { <br/>
+&#160;&#160;<a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7">GRPC_CHTTP2_SPS_ID0</a>,
+<a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a">GRPC_CHTTP2_SPS_ID1</a>,
+<a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee">GRPC_CHTTP2_SPS_VAL0</a>,
+<a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97">GRPC_CHTTP2_SPS_VAL1</a>,
+<br/>
+&#160;&#160;<a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311">GRPC_CHTTP2_SPS_VAL2</a>,
+<a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0">GRPC_CHTTP2_SPS_VAL3</a>
+<br/>
+ }</td></tr>
+<tr class="separator:ae964433822fb14f6c7d72fc1f3420b8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1579a1a90fe405ea3791529c14da11ef"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef">grpc_chttp2_setting_id</a> { <br/>
+&#160;&#160;<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7">GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE</a> = 1,
+<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b">GRPC_CHTTP2_SETTINGS_ENABLE_PUSH</a> = 2,
+<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924">GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS</a> = 3,
+<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c">GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE</a> = 4,
+<br/>
+&#160;&#160;<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7">GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE</a> = 5,
+<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5">GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE</a> = 6,
+<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a1579a1a90fe405ea3791529c14da11ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4df6da81a733ff99e174c9502a7e69df"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a> { <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">GRPC_CHTTP2_CLAMP_INVALID_VALUE</a>,
+<a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a>
+ }</td></tr>
+<tr class="separator:a4df6da81a733ff99e174c9502a7e69df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa7db515ebcf9a8add8ade457502d065a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a">grpc_chttp2_settings_create</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *old, const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *new, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> force_mask, size_t count)</td></tr>
+<tr class="separator:aa7db515ebcf9a8add8ade457502d065a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1382503cac023cb2cbf516427ec7954"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954">grpc_chttp2_settings_ack_create</a> (void)</td></tr>
+<tr class="separator:aa1382503cac023cb2cbf516427ec7954"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ad385f78097ad98242ae5a8b4bc9ccf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf">grpc_chttp2_settings_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *settings)</td></tr>
+<tr class="separator:a8ad385f78097ad98242ae5a8b4bc9ccf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15ff513efa0a8683d5df89ee5b369544"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544">grpc_chttp2_settings_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:a15ff513efa0a8683d5df89ee5b369544"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a61e84df9b71280ea1a733437d9de8f37"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37">grpc_chttp2_settings_parameters</a> [<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td></tr>
+<tr class="separator:a61e84df9b71280ea1a733437d9de8f37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a4df6da81a733ff99e174c9502a7e69df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d"></a>GRPC_CHTTP2_CLAMP_INVALID_VALUE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac"></a>GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a1579a1a90fe405ea3791529c14da11ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef">grpc_chttp2_setting_id</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7"></a>GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b"></a>GRPC_CHTTP2_SETTINGS_ENABLE_PUSH</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924"></a>GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c"></a>GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7"></a>GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5"></a>GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205"></a>GRPC_CHTTP2_NUM_SETTINGS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7"></a>GRPC_CHTTP2_SPS_ID0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a"></a>GRPC_CHTTP2_SPS_ID1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee"></a>GRPC_CHTTP2_SPS_VAL0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97"></a>GRPC_CHTTP2_SPS_VAL1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311"></a>GRPC_CHTTP2_SPS_VAL2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0"></a>GRPC_CHTTP2_SPS_VAL3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa1382503cac023cb2cbf516427ec7954"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_settings_ack_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7db515ebcf9a8add8ade457502d065a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_settings_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>old</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>new</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>force_mask</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ad385f78097ad98242ae5a8b4bc9ccf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_settings_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>settings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15ff513efa0a8683d5df89ee5b369544"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_settings_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a61e84df9b71280ea1a733437d9de8f37"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a> grpc_chttp2_settings_parameters[<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__settings_8h_source.html b/doc/ref/core.internal/html/frame__settings_8h_source.html
new file mode 100644
index 0000000000..2e9c26981d
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__settings_8h_source.html
@@ -0,0 +1,244 @@
+<!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: src/core/transport/chttp2/frame_settings.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame_settings.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame__settings_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_SETTINGS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_SETTINGS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7"> 42</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7">GRPC_CHTTP2_SPS_ID0</a>,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a"> 43</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a">GRPC_CHTTP2_SPS_ID1</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee"> 44</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee">GRPC_CHTTP2_SPS_VAL0</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97"> 45</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97">GRPC_CHTTP2_SPS_VAL1</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311"> 46</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311">GRPC_CHTTP2_SPS_VAL2</a>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0"> 47</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0">GRPC_CHTTP2_SPS_VAL3</a></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;} <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* The things HTTP/2 defines as connection level settings */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef"> 51</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7"> 52</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7">GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE</a> = 1,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b"> 53</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b">GRPC_CHTTP2_SETTINGS_ENABLE_PUSH</a> = 2,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924"> 54</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924">GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS</a> = 3,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c"> 55</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c">GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE</a> = 4,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7"> 56</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7">GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE</a> = 5,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5"> 57</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5">GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE</a> = 6,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205"> 58</a></span>&#160; <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef">grpc_chttp2_setting_id</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html"> 61</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4"> 62</a></span>&#160; <a class="code" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a> <a class="code" href="structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4">state</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528"> 63</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *<a class="code" href="structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528">target_settings</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec"> 64</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec">is_ack</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745"> 65</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745">id</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327"> 66</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327">value</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__settings__parser.html#a4b6b73681cb815b663dda8008ff3d519"> 67</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> incoming_settings[<a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>];</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;} <a class="code" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df"> 70</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d"> 71</a></span>&#160; <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">GRPC_CHTTP2_CLAMP_INVALID_VALUE</a>,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac"> 72</a></span>&#160; <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;} <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__setting__parameters.html"> 75</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f"> 76</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f">name</a>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb"> 77</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb">default_value</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82"> 78</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82">min_value</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001"> 79</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001">max_value</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df"> 80</a></span>&#160; <a class="code" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a> <a class="code" href="structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df">invalid_value_behavior</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;} <a class="code" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* HTTP/2 mandated connection setting parameters */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37">grpc_chttp2_settings_parameters</a>[<a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>];</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* Create a settings frame by diffing old &amp; new, and updating old to be new */</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a">grpc_chttp2_settings_create</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *old, <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *<span class="keyword">new</span>,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> force_mask, <span class="keywordtype">size_t</span> count);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Create an ack settings frame */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954">grpc_chttp2_settings_ack_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf">grpc_chttp2_settings_parser_begin_frame</a>(</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> *parser, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags,</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *settings);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544">grpc_chttp2_settings_parser_parse</a>(</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">void</span> *parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_SETTINGS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="frame__settings_8h_html_a61e84df9b71280ea1a733437d9de8f37"><div class="ttname"><a href="frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37">grpc_chttp2_settings_parameters</a></div><div class="ttdeci">const grpc_chttp2_setting_parameters grpc_chttp2_settings_parameters[GRPC_CHTTP2_NUM_SETTINGS]</div><div class="ttdef"><b>Definition:</b> frame_settings.c:47</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7">GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:56</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a">GRPC_CHTTP2_SPS_ID1</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:43</div></div>
+<div class="ttc" id="frame__settings_8h_html_a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d"><div class="ttname"><a href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">GRPC_CHTTP2_CLAMP_INVALID_VALUE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:71</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b">GRPC_CHTTP2_SETTINGS_ENABLE_PUSH</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:53</div></div>
+<div class="ttc" id="structgrpc__chttp2__setting__parameters_html_a9b900f51c9a7756a67cbf502094d92df"><div class="ttname"><a href="structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df">grpc_chttp2_setting_parameters::invalid_value_behavior</a></div><div class="ttdeci">grpc_chttp2_invalid_value_behavior invalid_value_behavior</div><div class="ttdef"><b>Definition:</b> frame_settings.h:80</div></div>
+<div class="ttc" id="structgrpc__chttp2__setting__parameters_html_a2a66171eecdc68ef2e5ec07cbfbbc21f"><div class="ttname"><a href="structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f">grpc_chttp2_setting_parameters::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> frame_settings.h:76</div></div>
+<div class="ttc" id="frame__settings_8h_html_a8ad385f78097ad98242ae5a8b4bc9ccf"><div class="ttname"><a href="frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf">grpc_chttp2_settings_parser_begin_frame</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_settings_parser_begin_frame(grpc_chttp2_settings_parser *parser, gpr_uint32 length, gpr_uint8 flags, gpr_uint32 *settings)</div><div class="ttdef"><b>Definition:</b> frame_settings.c:114</div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311">GRPC_CHTTP2_SPS_VAL2</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:46</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html_ac8ede4f13bcb8e7146527ce98284d528"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528">grpc_chttp2_settings_parser::target_settings</a></div><div class="ttdeci">gpr_uint32 * target_settings</div><div class="ttdef"><b>Definition:</b> frame_settings.h:63</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee">GRPC_CHTTP2_SPS_VAL0</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:44</div></div>
+<div class="ttc" id="frame__settings_8h_html_aa1382503cac023cb2cbf516427ec7954"><div class="ttname"><a href="frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954">grpc_chttp2_settings_ack_create</a></div><div class="ttdeci">gpr_slice grpc_chttp2_settings_ack_create(void)</div><div class="ttdef"><b>Definition:</b> frame_settings.c:108</div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8f"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a></div><div class="ttdeci">grpc_chttp2_settings_parse_state</div><div class="ttdef"><b>Definition:</b> frame_settings.h:41</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c">GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:55</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html_a3237e1bd69e648a47181625a1c310eec"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec">grpc_chttp2_settings_parser::is_ack</a></div><div class="ttdeci">gpr_uint8 is_ack</div><div class="ttdef"><b>Definition:</b> frame_settings.h:64</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__setting__parameters_html_a47307bf712f4e37e397eb03c272bafdb"><div class="ttname"><a href="structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb">grpc_chttp2_setting_parameters::default_value</a></div><div class="ttdeci">gpr_uint32 default_value</div><div class="ttdef"><b>Definition:</b> frame_settings.h:77</div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7">GRPC_CHTTP2_SPS_ID0</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:42</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7">GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:52</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html_a78292a3a593ad3806e8067b055687745"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745">grpc_chttp2_settings_parser::id</a></div><div class="ttdeci">gpr_uint16 id</div><div class="ttdef"><b>Definition:</b> frame_settings.h:65</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924">GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:54</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="frame__settings_8h_html_a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac"><div class="ttname"><a href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:72</div></div>
+<div class="ttc" id="port__platform_8h_html_abb7bceac4325643af77af51c7b6af371"><div class="ttname"><a href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></div><div class="ttdeci">uint16_t gpr_uint16</div><div class="ttdef"><b>Definition:</b> port_platform.h:308</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5">GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:57</div></div>
+<div class="ttc" id="structgrpc__chttp2__setting__parameters_html_af8a60fd353bdb4a187535b0abd9ff001"><div class="ttname"><a href="structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001">grpc_chttp2_setting_parameters::max_value</a></div><div class="ttdeci">gpr_uint32 max_value</div><div class="ttdef"><b>Definition:</b> frame_settings.h:79</div></div>
+<div class="ttc" id="frame__settings_8h_html_aa7db515ebcf9a8add8ade457502d065a"><div class="ttname"><a href="frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a">grpc_chttp2_settings_create</a></div><div class="ttdeci">gpr_slice grpc_chttp2_settings_create(gpr_uint32 *old, const gpr_uint32 *new, gpr_uint32 force_mask, size_t count)</div><div class="ttdef"><b>Definition:</b> frame_settings.c:76</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:58</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html_a0aa608ce7e3352061233d6ffb3656327"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327">grpc_chttp2_settings_parser::value</a></div><div class="ttdeci">gpr_uint32 value</div><div class="ttdef"><b>Definition:</b> frame_settings.h:66</div></div>
+<div class="ttc" id="structgrpc__chttp2__setting__parameters_html"><div class="ttname"><a href="structgrpc__chttp2__setting__parameters.html">grpc_chttp2_setting_parameters</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:75</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:61</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97">GRPC_CHTTP2_SPS_VAL1</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:45</div></div>
+<div class="ttc" id="structgrpc__chttp2__setting__parameters_html_a53661f0f5873a104014c0f9603ebec82"><div class="ttname"><a href="structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82">grpc_chttp2_setting_parameters::min_value</a></div><div class="ttdeci">gpr_uint32 min_value</div><div class="ttdef"><b>Definition:</b> frame_settings.h:78</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11ef"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef">grpc_chttp2_setting_id</a></div><div class="ttdeci">grpc_chttp2_setting_id</div><div class="ttdef"><b>Definition:</b> frame_settings.h:51</div></div>
+<div class="ttc" id="frame__settings_8h_html_a4df6da81a733ff99e174c9502a7e69df"><div class="ttname"><a href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a></div><div class="ttdeci">grpc_chttp2_invalid_value_behavior</div><div class="ttdef"><b>Definition:</b> frame_settings.h:70</div></div>
+<div class="ttc" id="frame__settings_8h_html_a15ff513efa0a8683d5df89ee5b369544"><div class="ttname"><a href="frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544">grpc_chttp2_settings_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_settings_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> frame_settings.c:140</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html_ad7e412c7ebd8595533c129f0b5a571c4"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4">grpc_chttp2_settings_parser::state</a></div><div class="ttdeci">grpc_chttp2_settings_parse_state state</div><div class="ttdef"><b>Definition:</b> frame_settings.h:62</div></div>
+<div class="ttc" id="frame__settings_8h_html_ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0"><div class="ttname"><a href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0">GRPC_CHTTP2_SPS_VAL3</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:47</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/frame__window__update_8c.html b/doc/ref/core.internal/html/frame__window__update_8c.html
new file mode 100644
index 0000000000..61ebdb479b
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__window__update_8c.html
@@ -0,0 +1,217 @@
+<!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: src/core/transport/chttp2/frame_window_update.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_window_update.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame__window__update_8h_source.html">src/core/transport/chttp2/frame_window_update.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a66b55a7299f42a5862cdd349afc6d6ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8c.html#a66b55a7299f42a5862cdd349afc6d6ac">grpc_chttp2_window_update_create</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> window_update)</td></tr>
+<tr class="separator:a66b55a7299f42a5862cdd349afc6d6ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad675abd4715d42665d37f606447dcde8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8c.html#ad675abd4715d42665d37f606447dcde8">grpc_chttp2_window_update_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:ad675abd4715d42665d37f606447dcde8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1c1b5d960c0ed5cfff799476b4e425a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8c.html#ab1c1b5d960c0ed5cfff799476b4e425a">grpc_chttp2_window_update_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ab1c1b5d960c0ed5cfff799476b4e425a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a66b55a7299f42a5862cdd349afc6d6ac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_window_update_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>window_update</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad675abd4715d42665d37f606447dcde8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_window_update_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab1c1b5d960c0ed5cfff799476b4e425a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_window_update_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__window__update_8h.html b/doc/ref/core.internal/html/frame__window__update_8h.html
new file mode 100644
index 0000000000..bd0c6f13ef
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__window__update_8h.html
@@ -0,0 +1,224 @@
+<!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: src/core/transport/chttp2/frame_window_update.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">frame_window_update.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+</div>
+<p><a href="frame__window__update_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a98b5291151f7f1b9ea69a988bbe66fe0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0">grpc_chttp2_window_update_create</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> window_delta)</td></tr>
+<tr class="separator:a98b5291151f7f1b9ea69a988bbe66fe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad675abd4715d42665d37f606447dcde8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8">grpc_chttp2_window_update_parser_begin_frame</a> (<a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> *parser, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags)</td></tr>
+<tr class="separator:ad675abd4715d42665d37f606447dcde8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1c1b5d960c0ed5cfff799476b4e425a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a">grpc_chttp2_window_update_parser_parse</a> (void *parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ab1c1b5d960c0ed5cfff799476b4e425a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a98b5291151f7f1b9ea69a988bbe66fe0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_window_update_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>window_delta</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad675abd4715d42665d37f606447dcde8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_window_update_parser_begin_frame </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab1c1b5d960c0ed5cfff799476b4e425a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_window_update_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/frame__window__update_8h_source.html b/doc/ref/core.internal/html/frame__window__update_8h_source.html
new file mode 100644
index 0000000000..27e02793e6
--- /dev/null
+++ b/doc/ref/core.internal/html/frame__window__update_8h_source.html
@@ -0,0 +1,170 @@
+<!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: src/core/transport/chttp2/frame_window_update.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">frame_window_update.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="frame__window__update_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_WINDOW_UPDATE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_WINDOW_UPDATE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__window__update__parser.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79"> 41</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79">byte</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca"> 42</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca">is_connection_update</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2"> 43</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2">amount</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0">grpc_chttp2_window_update_create</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <span class="keywordtype">id</span>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> window_delta);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8">grpc_chttp2_window_update_parser_begin_frame</a>(</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> *parser, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> flags);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a">grpc_chttp2_window_update_parser_parse</a>(</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">void</span> *parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_FRAME_WINDOW_UPDATE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="structgrpc__chttp2__window__update__parser_html_a6c822f3aa4adda962a78d20ae3ed0da2"><div class="ttname"><a href="structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2">grpc_chttp2_window_update_parser::amount</a></div><div class="ttdeci">gpr_uint32 amount</div><div class="ttdef"><b>Definition:</b> frame_window_update.h:43</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__chttp2__window__update__parser_html_a9e8db4c14f00aa3572c81566448cba79"><div class="ttname"><a href="structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79">grpc_chttp2_window_update_parser::byte</a></div><div class="ttdeci">gpr_uint8 byte</div><div class="ttdef"><b>Definition:</b> frame_window_update.h:41</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="structgrpc__chttp2__window__update__parser_html"><div class="ttname"><a href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a></div><div class="ttdef"><b>Definition:</b> frame_window_update.h:40</div></div>
+<div class="ttc" id="frame__window__update_8h_html_ab1c1b5d960c0ed5cfff799476b4e425a"><div class="ttname"><a href="frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a">grpc_chttp2_window_update_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_window_update_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> frame_window_update.c:76</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="frame__window__update_8h_html_a98b5291151f7f1b9ea69a988bbe66fe0"><div class="ttname"><a href="frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0">grpc_chttp2_window_update_create</a></div><div class="ttdeci">gpr_slice grpc_chttp2_window_update_create(gpr_uint32 id, gpr_uint32 window_delta)</div><div class="ttdef"><b>Definition:</b> frame_window_update.c:39</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgrpc__chttp2__window__update__parser_html_a59104211b0db6e55fe6ac2a1409f18ca"><div class="ttname"><a href="structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca">grpc_chttp2_window_update_parser::is_connection_update</a></div><div class="ttdeci">gpr_uint8 is_connection_update</div><div class="ttdef"><b>Definition:</b> frame_window_update.h:42</div></div>
+<div class="ttc" id="frame__window__update_8h_html_ad675abd4715d42665d37f606447dcde8"><div class="ttname"><a href="frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8">grpc_chttp2_window_update_parser_begin_frame</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_window_update_parser_begin_frame(grpc_chttp2_window_update_parser *parser, gpr_uint32 length, gpr_uint8 flags)</div><div class="ttdef"><b>Definition:</b> frame_window_update.c:63</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/ftv2blank.png b/doc/ref/core.internal/html/ftv2blank.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2blank.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2cl.png b/doc/ref/core.internal/html/ftv2cl.png
new file mode 100644
index 0000000000..132f6577bf
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2cl.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2doc.png b/doc/ref/core.internal/html/ftv2doc.png
new file mode 100644
index 0000000000..17edabff95
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2doc.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2folderclosed.png b/doc/ref/core.internal/html/ftv2folderclosed.png
new file mode 100644
index 0000000000..bb8ab35edc
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2folderclosed.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2folderopen.png b/doc/ref/core.internal/html/ftv2folderopen.png
new file mode 100644
index 0000000000..d6c7f676a3
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2folderopen.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2lastnode.png b/doc/ref/core.internal/html/ftv2lastnode.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2lastnode.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2link.png b/doc/ref/core.internal/html/ftv2link.png
new file mode 100644
index 0000000000..17edabff95
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2link.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2mlastnode.png b/doc/ref/core.internal/html/ftv2mlastnode.png
new file mode 100644
index 0000000000..0b63f6d38c
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2mlastnode.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2mnode.png b/doc/ref/core.internal/html/ftv2mnode.png
new file mode 100644
index 0000000000..0b63f6d38c
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2mnode.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2mo.png b/doc/ref/core.internal/html/ftv2mo.png
new file mode 100644
index 0000000000..4bfb80f76e
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2mo.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2node.png b/doc/ref/core.internal/html/ftv2node.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2node.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2ns.png b/doc/ref/core.internal/html/ftv2ns.png
new file mode 100644
index 0000000000..72e3d71c28
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2ns.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2plastnode.png b/doc/ref/core.internal/html/ftv2plastnode.png
new file mode 100644
index 0000000000..c6ee22f937
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2plastnode.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2pnode.png b/doc/ref/core.internal/html/ftv2pnode.png
new file mode 100644
index 0000000000..c6ee22f937
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2pnode.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2splitbar.png b/doc/ref/core.internal/html/ftv2splitbar.png
new file mode 100644
index 0000000000..fe895f2c58
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2splitbar.png
Binary files differ
diff --git a/doc/ref/core.internal/html/ftv2vertline.png b/doc/ref/core.internal/html/ftv2vertline.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/core.internal/html/ftv2vertline.png
Binary files differ
diff --git a/doc/ref/core.internal/html/functions.html b/doc/ref/core.internal/html/functions.html
new file mode 100644
index 0000000000..6d7ba6cd24
--- /dev/null
+++ b/doc/ref/core.internal/html/functions.html
@@ -0,0 +1,275 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>accept_stream
+: <a class="el" href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a">grpc_chttp2_transport</a>
+</li>
+<li>accept_stream_user_data
+: <a class="el" href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f">grpc_chttp2_transport</a>
+</li>
+<li>accepting_stream
+: <a class="el" href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e">grpc_chttp2_transport</a>
+</li>
+<li>access_token_md
+: <a class="el" href="structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09">grpc_access_token_credentials</a>
+, <a class="el" href="structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693">grpc_fake_oauth2_credentials</a>
+, <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>active
+: <a class="el" href="structgrpc__subchannel.html#a9095183eaf77899e3b932d3445cfa45b">grpc_subchannel</a>
+</li>
+<li>active_version
+: <a class="el" href="structgrpc__subchannel.html#a6569eb7df7abc7fd022ff8c1a6ce2ae1">grpc_subchannel</a>
+</li>
+<li>add_fd
+: <a class="el" href="structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5">grpc_pollset_vtable</a>
+</li>
+<li>add_to_pollset
+: <a class="el" href="structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556">grpc_endpoint_vtable</a>
+</li>
+<li>add_to_pollset_set
+: <a class="el" href="structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c">grpc_endpoint_vtable</a>
+</li>
+<li>added_to_iocp
+: <a class="el" href="structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47">grpc_winsocket</a>
+</li>
+<li>addr
+: <a class="el" href="structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__resolved__address.html#a664035b0fc073c4a49f5e7c1cc765c9d">grpc_resolved_address</a>
+, <a class="el" href="structgrpc__subchannel.html#a1133699340905f7c7f8c50fc97591647">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb">grpc_subchannel_args</a>
+, <a class="el" href="structsockaddr__resolver.html#a35fd9ba04c766da4556c76e6f32a6356">sockaddr_resolver</a>
+</li>
+<li>addr_len
+: <a class="el" href="structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__subchannel.html#ab74ce5a1e1067a508e74048ec68aea10">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026">grpc_subchannel_args</a>
+, <a class="el" href="structsockaddr__resolver.html#acad714ee68d2e23a4157f49f7fc35e91">sockaddr_resolver</a>
+</li>
+<li>addresses
+: <a class="el" href="structinternal__request.html#a0ab2a9ca4e299dc1f8fa41de2e3384b0">internal_request</a>
+</li>
+<li>addrs
+: <a class="el" href="structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c">grpc_resolved_addresses</a>
+</li>
+<li>after_prioritization
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0">grpc_chttp2_hpack_parser</a>
+</li>
+<li>aggregate_total_weight
+: <a class="el" href="structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1">grpc_time_averaged_stats</a>
+</li>
+<li>aggregate_weighted_avg
+: <a class="el" href="structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab">grpc_time_averaged_stats</a>
+</li>
+<li>alarm
+: <a class="el" href="structgrpc__call.html#a673a0cdde6bc7ebe5ff66820b8bd0b91">grpc_call</a>
+, <a class="el" href="structgrpc__subchannel.html#af42dd9bca8055a7afb3415f857ca28fa">grpc_subchannel</a>
+, <a class="el" href="structstate__watcher.html#a550220a27c14e026329a260cd581ece2">state_watcher</a>
+</li>
+<li>alarm_capacity
+: <a class="el" href="structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd">grpc_alarm_heap</a>
+</li>
+<li>alarm_count
+: <a class="el" href="structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5">grpc_alarm_heap</a>
+</li>
+<li>alarms
+: <a class="el" href="structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82">grpc_alarm_heap</a>
+</li>
+<li>alg
+: <a class="el" href="structjose__header.html#a1f2a1e1efa6f64762c67f7c688790c0d">jose_header</a>
+</li>
+<li>allocated
+: <a class="el" href="structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e">grpc_credentials_md_store</a>
+, <a class="el" href="structjson__writer__userdata.html#a6be58e44bfcd53828551b919df38489d">json_writer_userdata</a>
+</li>
+<li>allocated_completions
+: <a class="el" href="structgrpc__call.html#a7fa8c9ad3543546625b2aaa7d2853c05">grpc_call</a>
+</li>
+<li>allocated_mappings
+: <a class="el" href="structgrpc__jwt__verifier.html#adcf1fd004d97c7345bffbbfbb5983e3c">grpc_jwt_verifier</a>
+</li>
+<li>allocated_size
+: <a class="el" href="structtsi__fake__frame.html#ac48b3f97ad8df8b87cf38b75d843591b">tsi_fake_frame</a>
+</li>
+<li>alpn_protocol_list
+: <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a92aea4cb778959043703fcc3623c68a9">tsi_ssl_client_handshaker_factory</a>
+, <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a02579737ef9a57855da159c54c05955f">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>alpn_protocol_list_length
+: <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a63415a7f73f99c3ccee2addc915c9482">tsi_ssl_client_handshaker_factory</a>
+, <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a1dd579a38c0ab5d7f1304b26a838954b">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>amount
+: <a class="el" href="structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2">grpc_chttp2_window_update_parser</a>
+</li>
+<li>announce_window
+: <a class="el" href="structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17">grpc_chttp2_stream_writing</a>
+</li>
+<li>arg
+: <a class="el" href="structlistener.html#a979a29a26af9ef7a83a22f0cdd7fe1a4">listener</a>
+</li>
+<li>args
+: <a class="el" href="structconnector.html#ad3d70fc61b888fcb246a4a307b16c4ec">connector</a>
+, <a class="el" href="structgpr__cmdline.html#a7966fa04e7e92065675c49535ea9c078">gpr_cmdline</a>
+, <a class="el" href="structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76">grpc_channel_args</a>
+, <a class="el" href="structgrpc__subchannel.html#a9ffccab543a55f5ea53d9075f8d88079">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081">grpc_subchannel_args</a>
+</li>
+<li>argv0
+: <a class="el" href="structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e">gpr_cmdline</a>
+</li>
+<li>async_setup_task
+: <a class="el" href="structcall__data.html#ab21ef8aafd3c095825805e29e69670ce">call_data</a>
+</li>
+<li>atm
+: <a class="el" href="unionlockfree__node.html#a8bac5e680ab1fce893f7727f7a0be892">lockfree_node</a>
+</li>
+<li>aud
+: <a class="el" href="structgrpc__jwt__claims.html#ab3aeb778bc0983824534ffa0c1e51f9c">grpc_jwt_claims</a>
+</li>
+<li>audience
+: <a class="el" href="structverifier__cb__ctx.html#afdbd6e54ed44e9938991b0ed1915ed2d">verifier_cb_ctx</a>
+</li>
+<li>auth_context
+: <a class="el" href="structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c">grpc_client_security_context</a>
+, <a class="el" href="structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17">grpc_security_connector</a>
+, <a class="el" href="structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1">grpc_server_security_context</a>
+</li>
+<li>authority
+: <a class="el" href="structcall__data.html#a216c8a3e91a659b6ad5f3de09bbf8ff0">call_data</a>
+, <a class="el" href="structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7">grpc_uri</a>
+, <a class="el" href="structregistered__call.html#aa41fdf7362b58db7148acb228df62408">registered_call</a>
+</li>
+<li>authority_key
+: <a class="el" href="structchannel__data.html#abff9ead49754255e5fe5f5767634b553">channel_data</a>
+</li>
+<li>authority_string
+: <a class="el" href="structchannel__data.html#a65b7bac5d0844808a6d6b399ca1d234f">channel_data</a>
+, <a class="el" href="structgrpc__channel.html#a9ad924bb3cc339c10d106f48b9a4a959">grpc_channel</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>
diff --git a/doc/ref/core.internal/html/functions_b.html b/doc/ref/core.internal/html/functions_b.html
new file mode 100644
index 0000000000..e197057aa5
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_b.html
@@ -0,0 +1,250 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>backoff_delta
+: <a class="el" href="structgrpc__subchannel.html#a337c8cb56f9a249ca181ddc1f5999af5">grpc_subchannel</a>
+</li>
+<li>base
+: <a class="el" href="structconnector.html#a073303affdd652e8688303df9a126bd2">connector</a>
+, <a class="el" href="structdns__resolver.html#a135f51d63ab8d730d7ba491f0d94b6f6">dns_resolver</a>
+, <a class="el" href="structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b">grpc_access_token_credentials</a>
+, <a class="el" href="structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08">grpc_channel_security_connector</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2">grpc_composite_credentials</a>
+, <a class="el" href="structgrpc__fake__channel__security__connector.html#a3a30ba1484411dcedb12607e1a523431">grpc_fake_channel_security_connector</a>
+, <a class="el" href="structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901">grpc_fake_oauth2_credentials</a>
+, <a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a4da06be1278854b4447140407d81db25">grpc_httpcli_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d">grpc_iam_credentials</a>
+, <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5">grpc_oauth2_token_fetcher_credentials</a>
+, <a class="el" href="structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e">grpc_refresh_token_credentials</a>
+, <a class="el" href="structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0">grpc_service_account_credentials</a>
+, <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4">grpc_service_account_jwt_access_credentials</a>
+, <a class="el" href="structgrpc__ssl__channel__security__connector.html#af7253d985a9b58d3f7a363d05fdb148c">grpc_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4">grpc_ssl_credentials</a>
+, <a class="el" href="structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71">grpc_ssl_server_credentials</a>
+, <a class="el" href="structgrpc__ssl__server__security__connector.html#a458d7df65c42b6df819570e79f750907">grpc_ssl_server_security_connector</a>
+, <a class="el" href="structmalloc__refcount.html#a9443dc5946fa32f480286c87d5dc3686">malloc_refcount</a>
+, <a class="el" href="structmerge__args__factory.html#a10d01f7c94efbd37682c4c2af19a21e8">merge_args_factory</a>
+, <a class="el" href="structpick__first__lb__policy.html#a3e8f7088400929001aa4b589a3f79f79">pick_first_lb_policy</a>
+, <a class="el" href="structsecure__endpoint.html#ac85eec4e82c343cb9fd03c8dea0a08bb">secure_endpoint</a>
+, <a class="el" href="structsockaddr__resolver.html#a92a0b91dca1a2ecdb5eea739a8038c82">sockaddr_resolver</a>
+, <a class="el" href="structsubchannel__factory.html#a58fdbc6cebefc2d0f5a75081bee7b676">subchannel_factory</a>
+, <a class="el" href="structtsi__fake__frame__protector.html#a1f23e2443125ab322674638a71832620">tsi_fake_frame_protector</a>
+, <a class="el" href="structtsi__fake__handshaker.html#ac20760acd01b20d55b2f92b6a8a139da">tsi_fake_handshaker</a>
+, <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a66026b4b56a25d198d4aafa959da8413">tsi_ssl_client_handshaker_factory</a>
+, <a class="el" href="structtsi__ssl__frame__protector.html#a7d015792be7227bfd44a6a17dc08aa72">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a21ae1da6ec22caf8229b148e11aad657">tsi_ssl_handshaker</a>
+, <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a68655e93122b5b856ecb840526ff86d9">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>base64_and_huffman
+: <a class="el" href="structinternal__string.html#abfafee0983fc1c6c1e38c8e539d41999">internal_string</a>
+</li>
+<li>base64_buffer
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e">grpc_chttp2_hpack_parser</a>
+</li>
+<li>batch
+: <a class="el" href="structrequested__call.html#a664afa5ffde3750f0ff04f69813fbcd2">requested_call</a>
+</li>
+<li>batch_num_samples
+: <a class="el" href="structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb">grpc_time_averaged_stats</a>
+</li>
+<li>batch_total_value
+: <a class="el" href="structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b">grpc_time_averaged_stats</a>
+</li>
+<li>begin_message
+: <a class="el" href="structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f">grpc_stream_op</a>
+</li>
+<li>binary
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f">grpc_chttp2_hpack_parser</a>
+</li>
+<li>bind_pollset
+: <a class="el" href="structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2">grpc_transport_op</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4">grpc_transport_stream_op</a>
+</li>
+<li>bind_pollset_set
+: <a class="el" href="structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3">grpc_transport_op</a>
+</li>
+<li>bits
+: <a class="el" href="structb64__huff__sym.html#ab216d5e5b8fdb4ccfd9a4843aa389b81">b64_huff_sym</a>
+, <a class="el" href="structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88">grpc_chttp2_huffsym</a>
+</li>
+<li>body
+: <a class="el" href="structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90">grpc_httpcli_response</a>
+</li>
+<li>body_capacity
+: <a class="el" href="structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628">grpc_httpcli_parser</a>
+</li>
+<li>body_length
+: <a class="el" href="structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb">grpc_httpcli_response</a>
+</li>
+<li>bound_pollset
+: <a class="el" href="structgrpc__call.html#a3cd66ac4c2f69f16f6037fc63f0d49db">grpc_call</a>
+</li>
+<li>broadcast
+: <a class="el" href="structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3">grpc_lb_policy_vtable</a>
+</li>
+<li>bucket_next
+: <a class="el" href="structinternal__metadata.html#aadcd0104b419227943fcd4a53920777e">internal_metadata</a>
+, <a class="el" href="structinternal__string.html#a821c2b13cb1eea1ed3e36e867b62f3ba">internal_string</a>
+</li>
+<li>buckets
+: <a class="el" href="structgpr__histogram.html#abc707964e4925f4b7abf4c69daaaef73">gpr_histogram</a>
+</li>
+<li>buffer
+: <a class="el" href="structgrpc__jwt__claims.html#a62be74275bf0b7d887d70229bb9e497b">grpc_jwt_claims</a>
+, <a class="el" href="structjose__header.html#af14380ad49201179d4ad6e3fa7a0e58b">jose_header</a>
+, <a class="el" href="structtsi__ssl__frame__protector.html#a3df125b5b712526ea26ba5dbaa8a71ee">tsi_ssl_frame_protector</a>
+</li>
+<li>buffer_in
+: <a class="el" href="structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22">grpc_byte_buffer_reader</a>
+</li>
+<li>buffer_offset
+: <a class="el" href="structtsi__ssl__frame__protector.html#a8d6f4e3e06cec85370146dae562a572f">tsi_ssl_frame_protector</a>
+</li>
+<li>buffer_out
+: <a class="el" href="structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47">grpc_byte_buffer_reader</a>
+</li>
+<li>buffer_size
+: <a class="el" href="structtsi__ssl__frame__protector.html#a1a3705245461fa77c84d7cb3806b1840">tsi_ssl_frame_protector</a>
+</li>
+<li>buffered_metadata
+: <a class="el" href="structgrpc__call.html#ae501d7b947eb7a73170ccc5272e83c15">grpc_call</a>
+</li>
+<li>byte
+: <a class="el" href="structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33">grpc_chttp2_ping_parser</a>
+, <a class="el" href="structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665">grpc_chttp2_rst_stream_parser</a>
+, <a class="el" href="structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79">grpc_chttp2_window_update_parser</a>
+</li>
+<li>bytes
+: <a class="el" href="structgpr__slice.html#a39592633c4ad594a15b3a52aadff398d">gpr_slice</a>
+, <a class="el" href="structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59">grpc_byte_buffer_queue</a>
+</li>
+<li>bytes_transfered
+: <a class="el" href="structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e">grpc_winsocket_callback_info</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>
diff --git a/doc/ref/core.internal/html/functions_c.html b/doc/ref/core.internal/html/functions_c.html
new file mode 100644
index 0000000000..076b5fc7aa
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_c.html
@@ -0,0 +1,508 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li class="current"><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>cache_mu
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>cached
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a8c7e6a306aa24aaefa9f96982fdaafbd">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>call
+: <a class="el" href="structcall__data.html#a5512e8a6ddade275bc9b64ef48de3036">call_data</a>
+, <a class="el" href="structfinished__loose__op__allocated__args.html#a39f5408992820aa61c3aa11e378612d3">finished_loose_op_allocated_args</a>
+, <a class="el" href="structrequested__call.html#a0995465df7da49fbbb591d8b03dd1de2">requested_call</a>
+</li>
+<li>call_data
+: <a class="el" href="structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04">grpc_call_element</a>
+</li>
+<li>call_host_check_is_async
+: <a class="el" href="structgrpc__fake__channel__security__connector.html#af6c4c25382f598179b3b50d4a90a0584">grpc_fake_channel_security_connector</a>
+</li>
+<li>call_stack_size
+: <a class="el" href="structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2">grpc_channel_stack</a>
+</li>
+<li>called_shutdown
+: <a class="el" href="structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53">grpc_pollset</a>
+</li>
+<li>cancel_alarm
+: <a class="el" href="structgrpc__call.html#a8ecae45b11c6194a51ccd17b0ae1a724">grpc_call</a>
+</li>
+<li>cancel_with_status
+: <a class="el" href="structgrpc__call.html#a52b7e350723f5cd4a577a86a4b72f026">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf">grpc_transport_stream_op</a>
+</li>
+<li>cancelled
+: <a class="el" href="structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2">gpr_cancellable</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__op.html#ae5a9717d4a69c46f343381596e223874">grpc_op</a>
+</li>
+<li>cancelled_status
+: <a class="el" href="structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098">grpc_chttp2_stream_global</a>
+</li>
+<li>capacity
+: <a class="el" href="structdump__out.html#ad4ef0a9a3b2494b534b9fcba9d349f21">dump_out</a>
+, <a class="el" href="structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e">gpr_slice_buffer</a>
+, <a class="el" href="structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd">gpr_strvec</a>
+, <a class="el" href="structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9">grpc_bbq_array</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613">grpc_chttp2_hpack_parser_string</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef">grpc_chttp2_stream_map</a>
+, <a class="el" href="structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97">grpc_metadata_array</a>
+, <a class="el" href="structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772">grpc_stream_op_buffer</a>
+, <a class="el" href="structrequest__killer.html#aef7c9b567894a3f6af2ebaed400fff42">request_killer</a>
+</li>
+<li>cb
+: <a class="el" href="structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd">grpc_alarm</a>
+, <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a14c42c56de0c02fcaca7103953411ce0">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__credentials__metadata__request.html#afd521fb44c2c0a7aaab92243f606c67e">grpc_credentials_metadata_request</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1">grpc_iomgr_closure</a>
+, <a class="el" href="structgrpc__secure__transport__setup.html#a1bf28f7192cd4fe30e4daaf306545e9c">grpc_secure_transport_setup</a>
+, <a class="el" href="structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1">grpc_winsocket_callback_info</a>
+</li>
+<li>cb_arg
+: <a class="el" href="structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3">grpc_alarm</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293">grpc_iomgr_closure</a>
+</li>
+<li>cert_chain
+: <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656">grpc_ssl_pem_key_cert_pair</a>
+</li>
+<li>chained
+: <a class="el" href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6">grpc_auth_context</a>
+</li>
+<li>chand
+: <a class="el" href="structlb__policy__connectivity__watcher.html#a8c4c66e260e9c93b8ce9b4a129e581e5">lb_policy_connectivity_watcher</a>
+</li>
+<li>channel
+: <a class="el" href="structchannel__data.html#aa44b8e02dfe6cd2b3823c51f9559dc29">channel_data</a>
+, <a class="el" href="structgrpc__call.html#aefaa9e839c97ca63876add3d3a04a94d">grpc_call</a>
+, <a class="el" href="structstate__watcher.html#a0b0df5ad70d6a91a268452e03a885404">state_watcher</a>
+</li>
+<li>channel_args
+: <a class="el" href="structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__server.html#ab1ef57d52ade4e4f8eb0e26b42ea48a4">grpc_server</a>
+</li>
+<li>channel_callback
+: <a class="el" href="structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb">grpc_chttp2_transport</a>
+</li>
+<li>channel_connectivity_changed
+: <a class="el" href="structchannel__data.html#a026ed08d4fb85fff5a0f332d3a35cf17">channel_data</a>
+</li>
+<li>channel_data
+: <a class="el" href="structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b">grpc_call_element</a>
+, <a class="el" href="structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d">grpc_channel_element</a>
+</li>
+<li>channel_filter_count
+: <a class="el" href="structgrpc__server.html#a090ca3cc3f02e7b51d8c089f6c675ac2">grpc_server</a>
+</li>
+<li>channel_filters
+: <a class="el" href="structgrpc__server.html#a2da21f54a2ad688793d6c753ea74ec02">grpc_server</a>
+</li>
+<li>channel_saw_error
+: <a class="el" href="structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b">grpc_resolver_vtable</a>
+</li>
+<li>channels
+: <a class="el" href="structchannel__broadcaster.html#ad8aee8e6b39c0a74c47bc518fe60e0d7">channel_broadcaster</a>
+</li>
+<li>check_availability
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04">grpc_wakeup_fd_vtable</a>
+</li>
+<li>check_call_host
+: <a class="el" href="structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e">grpc_channel_security_connector</a>
+</li>
+<li>check_connectivity
+: <a class="el" href="structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25">grpc_lb_policy_vtable</a>
+</li>
+<li>check_peer
+: <a class="el" href="structgrpc__security__connector__vtable.html#aee8169e56a02a5cb55d68bcc6d0d56de">grpc_security_connector_vtable</a>
+</li>
+<li>checking_connectivity
+: <a class="el" href="structpick__first__lb__policy.html#a27c07323206631d5b7b021bfc2fb13d8">pick_first_lb_policy</a>
+</li>
+<li>checking_subchannel
+: <a class="el" href="structpick__first__lb__policy.html#a71958e25ab870a0f4436c07fed4585da">pick_first_lb_policy</a>
+</li>
+<li>child
+: <a class="el" href="structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71">grpc_json</a>
+</li>
+<li>claims
+: <a class="el" href="structverifier__cb__ctx.html#a47babe5494185ee4fd95e92a8309fa26">verifier_cb_ctx</a>
+</li>
+<li>client
+: <a class="el" href="structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c">grpc_endpoint_pair</a>
+</li>
+<li>client_email
+: <a class="el" href="structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b">grpc_auth_json_key</a>
+</li>
+<li>client_id
+: <a class="el" href="structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462">grpc_auth_json_key</a>
+, <a class="el" href="structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c">grpc_auth_refresh_token</a>
+</li>
+<li>client_secret
+: <a class="el" href="structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4">grpc_auth_refresh_token</a>
+</li>
+<li>clock
+: <a class="el" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">grpc_precise_clock</a>
+</li>
+<li>clock_type
+: <a class="el" href="structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff">gpr_timespec</a>
+</li>
+<li>closed
+: <a class="el" href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e">grpc_fd</a>
+</li>
+<li>closure
+: <a class="el" href="structfinished__loose__op__allocated__args.html#a1bf518b8de4a386cbf55698134e8c485">finished_loose_op_allocated_args</a>
+, <a class="el" href="structshutdown__cleanup__args.html#a42d1e24f7cc5d51db75df17263950c9a">shutdown_cleanup_args</a>
+, <a class="el" href="structstate__watcher.html#ab806a249c408b4412fc03ed0a5ede4c9">state_watcher</a>
+, <a class="el" href="structwaiting__call.html#ad8d9537c7523e3c09e5fcd4cf0bb1124">waiting_call</a>
+</li>
+<li>code
+: <a class="el" href="uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1">grpc_ioreq_data</a>
+, <a class="el" href="structreceived__status.html#a5adb1c689f796d0055094addbc8b31c2">received_status</a>
+</li>
+<li>complete_mask
+: <a class="el" href="structreqinfo__master.html#a42a5da5664f298a2ff5c94760f69ffb3">reqinfo_master</a>
+</li>
+<li>completed_head
+: <a class="el" href="structgrpc__completion__queue.html#a484ad9fad34b51c8ab2e0f6a144e6d5e">grpc_completion_queue</a>
+</li>
+<li>completed_requests
+: <a class="el" href="structgrpc__call.html#af82a58a0e542b5acd8bc4b1e50842ddd">grpc_call</a>
+</li>
+<li>completed_tail
+: <a class="el" href="structgrpc__completion__queue.html#a82c067060ebf5ff91bc9ec961b414fa2">grpc_completion_queue</a>
+</li>
+<li>completing
+: <a class="el" href="structgrpc__call.html#a0ad5b28a10c5453b5fcd3cbf5e9ec0cc">grpc_call</a>
+</li>
+<li>completion
+: <a class="el" href="structrequested__call.html#a4ab625b5e4dc9670ef586c4d245858f5">requested_call</a>
+, <a class="el" href="structshutdown__tag.html#a659b6448a029795dd262462d5f679609">shutdown_tag</a>
+</li>
+<li>completion_mu
+: <a class="el" href="structgrpc__call.html#aaf50407acc01602b67f4e442b3a3121d">grpc_call</a>
+</li>
+<li>completion_storage
+: <a class="el" href="structstate__watcher.html#a1d65436328c649d7f029b98e54d50588">state_watcher</a>
+</li>
+<li>completions
+: <a class="el" href="structgrpc__call.html#ad48e9f752753814bf9ee0233c392fccd">grpc_call</a>
+</li>
+<li>composite_creds
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#aa01c70e7c7cd7ac2071c933c4ca4ed65">grpc_composite_credentials_metadata_context</a>
+</li>
+<li>compression
+: <a class="el" href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399">grpc_byte_buffer</a>
+</li>
+<li>compression_algorithm
+: <a class="el" href="structcall__data.html#a9f593ec03211bdc3ede0b4da81d4354f">call_data</a>
+, <a class="el" href="structgrpc__call.html#afa14a32dc253da1909a2dd6e44304fdc">grpc_call</a>
+</li>
+<li>compression_algorithm_storage
+: <a class="el" href="structcall__data.html#ad33eb76b6d73d8a4475ff69ff4e8964c">call_data</a>
+</li>
+<li>concurrent_stream_count
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995">grpc_chttp2_transport_global</a>
+</li>
+<li>config
+: <a class="el" href="structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06">grpc_ssl_credentials</a>
+, <a class="el" href="structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3">grpc_ssl_server_credentials</a>
+</li>
+<li>connect
+: <a class="el" href="structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078">grpc_connector_vtable</a>
+</li>
+<li>connected
+: <a class="el" href="structgrpc__subchannel.html#a69b581893484f0f728b780c5a9152bf4">grpc_subchannel</a>
+</li>
+<li>connecting
+: <a class="el" href="structgrpc__subchannel.html#a084840ded6075b823c3572c504694635">grpc_subchannel</a>
+</li>
+<li>connecting_result
+: <a class="el" href="structgrpc__subchannel.html#a71c47f21609f3dab29311d422360665f">grpc_subchannel</a>
+</li>
+<li>connection
+: <a class="el" href="structgrpc__subchannel__call.html#a1eb7f2be785456f81008f984d80f8ac6">grpc_subchannel_call</a>
+</li>
+<li>connection_window_target
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06">grpc_chttp2_transport_global</a>
+</li>
+<li>connectivity_changed
+: <a class="el" href="structpick__first__lb__policy.html#a54f466dc5e968d2b3a8f8fe6511d2c56">pick_first_lb_policy</a>
+</li>
+<li>connectivity_state
+: <a class="el" href="structchannel__data.html#ace61d17706353a536bd079f18d54564f">channel_data</a>
+, <a class="el" href="structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d">grpc_transport_op</a>
+, <a class="el" href="structstate__watcher.html#a2777b6c363f7d4262252bc4aaf515d43">state_watcher</a>
+</li>
+<li>connector
+: <a class="el" href="structgrpc__secure__transport__setup.html#a494b76f3257449ed5eb88e0a52194324">grpc_secure_transport_setup</a>
+, <a class="el" href="structgrpc__subchannel.html#a9439dd93e3b5078fb1e2669c327ed984">grpc_subchannel</a>
+</li>
+<li>connector_creds
+: <a class="el" href="structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637">grpc_composite_credentials</a>
+</li>
+<li>consume
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e">grpc_wakeup_fd_vtable</a>
+</li>
+<li>container_begins
+: <a class="el" href="structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4">grpc_json_reader_vtable</a>
+</li>
+<li>container_empty
+: <a class="el" href="structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381">grpc_json_writer</a>
+</li>
+<li>container_ends
+: <a class="el" href="structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec">grpc_json_reader_vtable</a>
+</li>
+<li>container_just_begun
+: <a class="el" href="structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3">grpc_json_reader</a>
+</li>
+<li>content_type
+: <a class="el" href="structcall__data.html#a4169f3d34c6e55c4bba43a86241bf1ea">call_data</a>
+, <a class="el" href="structchannel__data.html#a7d6e2d61b1f1dc47be825afbdb0b1176">channel_data</a>
+</li>
+<li>contents
+: <a class="el" href="unionlockfree__node.html#a4cf276073deb1a941a409b19bb78f5c4">lockfree_node</a>
+</li>
+<li>context
+: <a class="el" href="structgrpc__call.html#a91cd558ccf432aa44bbe813c4acd022c">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae">grpc_transport_stream_op</a>
+, <a class="el" href="structinternal__metadata.html#a19b31328660cdb5c8a8bf821094871c5">internal_metadata</a>
+, <a class="el" href="structinternal__request.html#a0a0fbaaabcd158b4fb0ff6c8b2d4879f">internal_request</a>
+, <a class="el" href="structinternal__string.html#a1bfe57ac1191b1278d4a61d34edbf1d7">internal_string</a>
+</li>
+<li>continuation
+: <a class="el" href="structwaiting__for__connect.html#a8289e332e8b65421a161e607bb637f51">waiting_for_connect</a>
+</li>
+<li>copy
+: <a class="el" href="structgrpc__arg.html#abef4f8be0109b19fcbe7f614f1243303">grpc_arg</a>
+</li>
+<li>count
+: <a class="el" href="structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d">gpr_histogram</a>
+, <a class="el" href="structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470">gpr_refcount</a>
+, <a class="el" href="structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff">gpr_slice_buffer</a>
+, <a class="el" href="structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387">gpr_strvec</a>
+, <a class="el" href="structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2">grpc_bbq_array</a>
+, <a class="el" href="structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a">grpc_call_stack</a>
+, <a class="el" href="structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67">grpc_channel_stack</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8">grpc_chttp2_stream_map</a>
+, <a class="el" href="uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4">grpc_metadata_array</a>
+, <a class="el" href="structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a">grpc_op</a>
+, <a class="el" href="structrequest__killer.html#ae3dd02f0f46905f3d7a7b88193ca0af6">request_killer</a>
+</li>
+<li>counter
+: <a class="el" href="structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1">grpc_pollset</a>
+</li>
+<li>cq
+: <a class="el" href="structgrpc__call.html#ae24201f3b8347e790898e3bc2ae1ad09">grpc_call</a>
+, <a class="el" href="structshutdown__tag.html#afca3fb84e8cde4f0b5f3e18905f555e9">shutdown_tag</a>
+, <a class="el" href="structstate__watcher.html#ae85d1a92c4f1e6a4eff3bcb356ff8204">state_watcher</a>
+</li>
+<li>cq_bound_to_call
+: <a class="el" href="structrequested__call.html#a7294f3532a1f72151e0ef3634f518431">requested_call</a>
+</li>
+<li>cq_count
+: <a class="el" href="structgrpc__server.html#a0a49b61d38a3aee3f080087cf4b1f92d">grpc_server</a>
+</li>
+<li>cq_for_notification
+: <a class="el" href="structrequested__call.html#a3b4918a8f8c79ab768156dc658e21b83">requested_call</a>
+</li>
+<li>cq_new
+: <a class="el" href="structcall__data.html#a253926f346f7783d43ad5791ac70bba2">call_data</a>
+</li>
+<li>cqs
+: <a class="el" href="structgrpc__server.html#a87495e0b247e92860d6c2a6504cf5528">grpc_server</a>
+</li>
+<li>create
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e">grpc_wakeup_fd_vtable</a>
+</li>
+<li>create_frame_protector
+: <a class="el" href="structtsi__handshaker__vtable.html#a071e3b76f8ddec1c89f9131c923f3648">tsi_handshaker_vtable</a>
+</li>
+<li>create_handshaker
+: <a class="el" href="structgrpc__security__connector__vtable.html#ae1202bdafbea18af0fe2b0e6c11ae636">grpc_security_connector_vtable</a>
+, <a class="el" href="structtsi__ssl__handshaker__factory.html#a44a633a0520c8561b5c63f97742daaef">tsi_ssl_handshaker_factory</a>
+</li>
+<li>create_resolver
+: <a class="el" href="structgrpc__resolver__factory__vtable.html#a59d7eb4c9cb95b6ba33628c30b948f10">grpc_resolver_factory_vtable</a>
+</li>
+<li>create_security_connector
+: <a class="el" href="structgrpc__credentials__vtable.html#a7bbb5a8658e7f2295ed816f7f60e6f00">grpc_credentials_vtable</a>
+, <a class="el" href="structgrpc__server__credentials__vtable.html#af56836a7d92bb4475b92d5991eb9c30d">grpc_server_credentials_vtable</a>
+</li>
+<li>create_subchannel
+: <a class="el" href="structgrpc__subchannel__factory__vtable.html#a25972ec53ef7aa219669847b7cbb515d">grpc_subchannel_factory_vtable</a>
+</li>
+<li>creds
+: <a class="el" href="structcall__data.html#a163b0cfa0e971a064e4ad6f35001f8ed">call_data</a>
+, <a class="el" href="structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf">grpc_client_security_context</a>
+, <a class="el" href="structgrpc__credentials__metadata__request.html#a7cf76389aba6b2f8ae6fcb00f59bff98">grpc_credentials_metadata_request</a>
+</li>
+<li>creds_array
+: <a class="el" href="structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231">grpc_credentials_array</a>
+</li>
+<li>creds_index
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#af3232f00703210b60772c4dd1c727a56">grpc_composite_credentials_metadata_context</a>
+</li>
+<li>cs
+: <a class="el" href="structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c">gpr_mu</a>
+</li>
+<li>ctx
+: <a class="el" href="structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58">grpc_auth_property_iterator</a>
+</li>
+<li>cur_arg
+: <a class="el" href="structgpr__cmdline.html#aa4b1fcaf802c2ca83c9e2213b8283297">gpr_cmdline</a>
+</li>
+<li>cur_frame_type
+: <a class="el" href="structframer__state.html#ab6d529c8b0d12ca60075d0c9e29d037b">framer_state</a>
+</li>
+<li>cur_line
+: <a class="el" href="structgrpc__httpcli__parser.html#a8524fc39d4fa476bf3133e922edf092c">grpc_httpcli_parser</a>
+</li>
+<li>cur_line_length
+: <a class="el" href="structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e">grpc_httpcli_parser</a>
+</li>
+<li>current
+: <a class="el" href="structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f">grpc_byte_buffer_reader</a>
+, <a class="el" href="structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f">grpc_connectivity_state_watcher</a>
+</li>
+<li>current_container
+: <a class="el" href="structjson__reader__userdata.html#a46c3b03cc1ca3fbeeb76f726ce844bf2">json_reader_userdata</a>
+</li>
+<li>current_state
+: <a class="el" href="structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e">grpc_connectivity_state_tracker</a>
+</li>
+<li>current_value
+: <a class="el" href="structjson__reader__userdata.html#ab1069140339bf83ea323ac0ac696cc8c">json_reader_userdata</a>
+</li>
+<li>cv
+: <a class="el" href="structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844">grpc_pollset</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>
diff --git a/doc/ref/core.internal/html/functions_d.html b/doc/ref/core.internal/html/functions_d.html
new file mode 100644
index 0000000000..19fa1525b8
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_d.html
@@ -0,0 +1,261 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>data
+: <a class="el" href="structdump__out.html#aaceca2e7d88a29bcd3593c5cba3e8a3a">dump_out</a>
+, <a class="el" href="structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da">gpr_slice</a>
+, <a class="el" href="structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51">grpc_bbq_array</a>
+, <a class="el" href="structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f">grpc_byte_buffer</a>
+, <a class="el" href="structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61">grpc_ioreq</a>
+, <a class="el" href="structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad">grpc_op</a>
+, <a class="el" href="structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621">grpc_pollset</a>
+, <a class="el" href="structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9">grpc_stream_op</a>
+, <a class="el" href="structrequested__call.html#a1814382d48854b3ce31b0aef9c4b4c7e">requested_call</a>
+, <a class="el" href="structtsi__fake__frame.html#a4c55725c3501776bccf3dc63dc3c0301">tsi_fake_frame</a>
+, <a class="el" href="structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55">tsi_peer_property</a>
+</li>
+<li>data_parser
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54">grpc_chttp2_stream_parsing</a>
+</li>
+<li>deadline
+: <a class="el" href="structcall__data.html#a9ca8837431c3942aa3b18092e314632c">call_data</a>
+, <a class="el" href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126">grpc_alarm</a>
+, <a class="el" href="structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15">grpc_call_details</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04">grpc_metadata_batch</a>
+, <a class="el" href="structinternal__request.html#a3b0a573ccd8ac3d01b0b3668e39a2e61">internal_request</a>
+, <a class="el" href="structrequested__call.html#a7b0834c5a24427fbe79fb77ffd103cc8">requested_call</a>
+</li>
+<li>debug_data
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e">grpc_chttp2_goaway_parser</a>
+</li>
+<li>debug_length
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23">grpc_chttp2_goaway_parser</a>
+</li>
+<li>debug_pos
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce">grpc_chttp2_goaway_parser</a>
+</li>
+<li>default_authority
+: <a class="el" href="structchannel__data.html#a51d18a12253f4520179c5f04cc9f4c48">channel_data</a>
+</li>
+<li>default_compression_algorithm
+: <a class="el" href="structchannel__data.html#acc452310378fb56c38c296cdfdde14e3">channel_data</a>
+</li>
+<li>default_port
+: <a class="el" href="structdns__resolver.html#ad3a4ce330d39e62347c8d230dc0431f4">dns_resolver</a>
+</li>
+<li>default_value
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb">grpc_chttp2_setting_parameters</a>
+</li>
+<li>deframe_state
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250">grpc_chttp2_transport_parsing</a>
+</li>
+<li>del_fd
+: <a class="el" href="structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60">grpc_pollset_vtable</a>
+</li>
+<li>depth
+: <a class="el" href="structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4">grpc_json_reader</a>
+, <a class="el" href="structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995">grpc_json_writer</a>
+</li>
+<li>description
+: <a class="el" href="structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d">gpr_cmdline</a>
+</li>
+<li>destroy
+: <a class="el" href="structgrpc__arg.html#a15c9a748974a6ac525074f3ed1e04eb4">grpc_arg</a>
+, <a class="el" href="structgrpc__call__context__element.html#a896c4d5b89848f2f14678745b6162f94">grpc_call_context_element</a>
+, <a class="el" href="structgrpc__credentials__vtable.html#a95766dfd1880536b6b891b18514b5720">grpc_credentials_vtable</a>
+, <a class="el" href="structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c">grpc_endpoint_vtable</a>
+, <a class="el" href="structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c">grpc_lb_policy_vtable</a>
+, <a class="el" href="structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815">grpc_pollset_vtable</a>
+, <a class="el" href="structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7">grpc_resolver_vtable</a>
+, <a class="el" href="structgrpc__security__connector__vtable.html#acd16feb960e41e1920c193017a135704">grpc_security_connector_vtable</a>
+, <a class="el" href="structgrpc__server__credentials__vtable.html#a78347ce536f6c1885d49a6cd5106eade">grpc_server_credentials_vtable</a>
+, <a class="el" href="structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf">grpc_transport_vtable</a>
+, <a class="el" href="structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2">grpc_wakeup_fd_vtable</a>
+, <a class="el" href="structlistener.html#add425fdd17452e62c09d047e24a3034f">listener</a>
+, <a class="el" href="structtsi__frame__protector__vtable.html#ac47686a0367046026dc8b97050ec2cdf">tsi_frame_protector_vtable</a>
+, <a class="el" href="structtsi__handshaker__vtable.html#a6ddd06eccb4d0576a3daba0ee98f45d8">tsi_handshaker_vtable</a>
+, <a class="el" href="structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a">tsi_ssl_handshaker_factory</a>
+</li>
+<li>destroy_call_elem
+: <a class="el" href="structgrpc__channel__filter.html#a347e5451860788a084735e66b1684312">grpc_channel_filter</a>
+</li>
+<li>destroy_called
+: <a class="el" href="structgrpc__call.html#af72cb94597b41817f2c12e8d4ac5ae95">grpc_call</a>
+</li>
+<li>destroy_channel_elem
+: <a class="el" href="structgrpc__channel__filter.html#a7ab39b0d83fd44c9e3be4b930e6b60e2">grpc_channel_filter</a>
+</li>
+<li>destroy_closure
+: <a class="el" href="structgrpc__call.html#a2cac7abed2fe85b3ddbdde40931ed793">grpc_call</a>
+, <a class="el" href="structgrpc__channel.html#ae6dda10ffe354ceefda810573f5e80e9">grpc_channel</a>
+</li>
+<li>destroy_stream
+: <a class="el" href="structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b">grpc_transport_vtable</a>
+</li>
+<li>destroy_user_data
+: <a class="el" href="structinternal__metadata.html#a5377f467bb28c9b4774d896b44d8c6a2">internal_metadata</a>
+</li>
+<li>destroying
+: <a class="el" href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f">grpc_chttp2_transport</a>
+</li>
+<li>details
+: <a class="el" href="structcall__data.html#a178c22c4c266e3ffd0583f3ed9bc749f">call_data</a>
+, <a class="el" href="uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6">grpc_ioreq_data</a>
+, <a class="el" href="structreceived__status.html#a6b73f215e5290bb6660c25e34c07ca72">received_status</a>
+, <a class="el" href="structrequested__call.html#a65cfbe1bb43697b7cc762ca44fa94c1b">requested_call</a>
+</li>
+<li>details_capacity
+: <a class="el" href="uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468">grpc_ioreq_data</a>
+</li>
+<li>details_link
+: <a class="el" href="structgrpc__call.html#a932212dbec6334868cf997dd275c2192">grpc_call</a>
+</li>
+<li>dirtied_local_settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e">grpc_chttp2_transport_global</a>
+</li>
+<li>disconnect
+: <a class="el" href="structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b">grpc_transport_op</a>
+</li>
+<li>disconnected
+: <a class="el" href="structgrpc__subchannel.html#aeb64d3a8c4d1f0c3b75cda0f97d80c5c">grpc_subchannel</a>
+</li>
+<li>done
+: <a class="el" href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64">grpc_cq_completion</a>
+</li>
+<li>done_arg
+: <a class="el" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">grpc_cq_completion</a>
+</li>
+<li>drain_pos
+: <a class="el" href="structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b">grpc_byte_buffer_queue</a>
+</li>
+<li>draining
+: <a class="el" href="structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b">grpc_byte_buffer_queue</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>
diff --git a/doc/ref/core.internal/html/functions_e.html b/doc/ref/core.internal/html/functions_e.html
new file mode 100644
index 0000000000..d8a4f95355
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_e.html
@@ -0,0 +1,200 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>elem
+: <a class="el" href="structcall__data.html#a7042d8feb119d4fcce1258c5eddca8ff">call_data</a>
+, <a class="el" href="structwaiting__call.html#af0c24ed1b79604b43d7a669331adcbc4">waiting_call</a>
+</li>
+<li>elems
+: <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d">grpc_chttp2_incoming_metadata_live_op_buffer</a>
+</li>
+<li>email_domain
+: <a class="el" href="structemail__key__mapping.html#a379069d9b6baffade9583b28046eab90">email_key_mapping</a>
+, <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df">grpc_jwt_verifier_email_domain_key_url_mapping</a>
+</li>
+<li>endpoint_reading
+: <a class="el" href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905">grpc_chttp2_transport</a>
+</li>
+<li>entries
+: <a class="el" href="structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1">gpr_stack_lockfree</a>
+, <a class="el" href="structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5">grpc_credentials_md_store</a>
+</li>
+<li>entries_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a028e3752a9b203d820e194029f6df186">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>entries_keys
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a80cc9b5282b637b3facbb68cf1038125">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>ents
+: <a class="el" href="structgrpc__chttp2__hptbl.html#af14d20a9a16ee86be7d9f18b2f5334eb">grpc_chttp2_hptbl</a>
+</li>
+<li>ep
+: <a class="el" href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff">grpc_chttp2_transport</a>
+, <a class="el" href="structinternal__request.html#af6443badea586cce9b4e3112832760c7">internal_request</a>
+</li>
+<li>error_code
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5">grpc_chttp2_goaway_parser</a>
+</li>
+<li>error_msg_key
+: <a class="el" href="structchannel__data.html#a214f33e78aafbbac774ea95c2e9dc8b3">channel_data</a>
+</li>
+<li>error_status_set
+: <a class="el" href="structgrpc__call.html#a5cb38ade0e31380920c4afe56eea7b85">grpc_call</a>
+</li>
+<li>escaped_string_was_key
+: <a class="el" href="structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107">grpc_json_reader</a>
+</li>
+<li>exit_idle
+: <a class="el" href="structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301">grpc_lb_policy_vtable</a>
+</li>
+<li>exit_idle_when_lb_policy_arrives
+: <a class="el" href="structchannel__data.html#a3fe0f0347e1953376cd84db85bba9917">channel_data</a>
+</li>
+<li>exp
+: <a class="el" href="structgrpc__jwt__claims.html#adb8933c8e007a5864aea01e258637594">grpc_jwt_claims</a>
+</li>
+<li>expect_continuation_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060">grpc_chttp2_transport_parsing</a>
+</li>
+<li>extra_arg
+: <a class="el" href="structgpr__cmdline.html#a1109c69ceb7d9c2ae8f374377690b4cb">gpr_cmdline</a>
+</li>
+<li>extra_arg_help
+: <a class="el" href="structgpr__cmdline.html#ab1e7d3da9d7dac50a04411059cf856fb">gpr_cmdline</a>
+</li>
+<li>extra_arg_name
+: <a class="el" href="structgpr__cmdline.html#abc1adda9fabb39a4cb8beba086aaa8b5">gpr_cmdline</a>
+</li>
+<li>extra_arg_user_data
+: <a class="el" href="structgpr__cmdline.html#afcf2c751450c2b09eea9ac769ddb2f11">gpr_cmdline</a>
+</li>
+<li>extract_peer
+: <a class="el" href="structtsi__handshaker__vtable.html#ab34c8028cf54bc2b0ee1e5ab95578541">tsi_handshaker_vtable</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>
diff --git a/doc/ref/core.internal/html/functions_f.html b/doc/ref/core.internal/html/functions_f.html
new file mode 100644
index 0000000000..81ed7fbf4a
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_f.html
@@ -0,0 +1,222 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>factory
+: <a class="el" href="structregistered__resolver.html#a19447c6e94f1739efdfdf0928f62a1bb">registered_resolver</a>
+</li>
+<li>fd
+: <a class="el" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">grpc_fd</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc">grpc_fd_watcher</a>
+, <a class="el" href="structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc">grpc_pollset</a>
+</li>
+<li>fd_capacity
+: <a class="el" href="structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec">grpc_pollset_set</a>
+</li>
+<li>fd_count
+: <a class="el" href="structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6">grpc_pollset_set</a>
+</li>
+<li>fd_list
+: <a class="el" href="structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772">grpc_pollset_kick_state</a>
+</li>
+<li>fds
+: <a class="el" href="structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6">grpc_pollset_set</a>
+</li>
+<li>fetch_func
+: <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>file
+: <a class="el" href="structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89">gpr_log_func_args</a>
+</li>
+<li>filling
+: <a class="el" href="structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c">grpc_byte_buffer_queue</a>
+</li>
+<li>filter
+: <a class="el" href="structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8">grpc_call_element</a>
+, <a class="el" href="structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3">grpc_channel_element</a>
+</li>
+<li>filter_count
+: <a class="el" href="structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128">grpc_subchannel_args</a>
+</li>
+<li>filter_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a387e0eb34c64c7faaf16e0f2f3ad4d0e">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>filter_elems_sum
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>filters
+: <a class="el" href="structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2">grpc_connect_out_args</a>
+, <a class="el" href="structgrpc__subchannel.html#a9de51c82bda25cff592acbe7b2866a32">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab">grpc_subchannel_args</a>
+</li>
+<li>finish_destroy_channel_closure
+: <a class="el" href="structchannel__data.html#acecc0d7f7ae20cc71b53692eb20a0a92">channel_data</a>
+</li>
+<li>finish_shutdown
+: <a class="el" href="structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8">grpc_pollset_vtable</a>
+</li>
+<li>first_ent
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77">grpc_chttp2_hptbl</a>
+</li>
+<li>flag
+: <a class="el" href="structtracer.html#a7cb129f30976377f84c881d419094573">tracer</a>
+</li>
+<li>flags
+: <a class="el" href="structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c">gpr_thd_options</a>
+, <a class="el" href="structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b">grpc_begin_message</a>
+, <a class="el" href="structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1">grpc_ioreq</a>
+, <a class="el" href="structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb">grpc_op</a>
+</li>
+<li>force_client_auth
+: <a class="el" href="structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007">grpc_ssl_server_config</a>
+</li>
+<li>force_send_settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027">grpc_chttp2_transport_global</a>
+</li>
+<li>frame_protector_created
+: <a class="el" href="structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec">tsi_handshaker</a>
+</li>
+<li>frame_size
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a">grpc_chttp2_data_parser</a>
+</li>
+<li>frame_type
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865">grpc_chttp2_data_parser</a>
+</li>
+<li>free
+: <a class="el" href="structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece">grpc_chttp2_stream_map</a>
+</li>
+<li>free_space
+: <a class="el" href="structjson__writer__userdata.html#a7bb26b7e7b6783d61265705d79c87e03">json_writer_userdata</a>
+</li>
+<li>freelist_next
+: <a class="el" href="structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d">grpc_fd</a>
+</li>
+<li>from_ssl
+: <a class="el" href="structtsi__ssl__frame__protector.html#a5d6ce8a49205271885618a79964a6b73">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a92fd97e3dc2041f61cf9e99b51f5a8e8">tsi_ssl_handshaker</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>
diff --git a/doc/ref/core.internal/html/functions_g.html b/doc/ref/core.internal/html/functions_g.html
new file mode 100644
index 0000000000..c670630d9c
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_g.html
@@ -0,0 +1,192 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li class="current"><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>garbage
+: <a class="el" href="structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc">grpc_metadata_batch</a>
+</li>
+<li>get_bytes_to_send_to_peer
+: <a class="el" href="structtsi__handshaker__vtable.html#a78c12cd8f2a53cc2bd32367a725f48ff">tsi_handshaker_vtable</a>
+</li>
+<li>get_peer
+: <a class="el" href="structgrpc__channel__filter.html#a6ddcbc355118eca15b48ee15476d2ace">grpc_channel_filter</a>
+, <a class="el" href="structgrpc__endpoint__vtable.html#a01e48582c45e2e7033e344d253316911">grpc_endpoint_vtable</a>
+, <a class="el" href="structgrpc__transport__vtable.html#a763d8c95adc9c74dae02a58557e001ed">grpc_transport_vtable</a>
+</li>
+<li>get_request_metadata
+: <a class="el" href="structgrpc__credentials__vtable.html#a14795750df563c75436add4e7c05603d">grpc_credentials_vtable</a>
+</li>
+<li>get_result
+: <a class="el" href="structtsi__handshaker__vtable.html#af65c4700c22e71ecb09a94ae951d2bf3">tsi_handshaker_vtable</a>
+</li>
+<li>global
+: <a class="el" href="structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5">grpc_chttp2_stream</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694">grpc_chttp2_transport</a>
+</li>
+<li>goaway_error
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_last_stream_index
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_message
+: <a class="el" href="structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293">grpc_transport_op</a>
+</li>
+<li>goaway_parser
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_received
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_status
+: <a class="el" href="structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f">grpc_transport_op</a>
+</li>
+<li>goaway_text
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8">grpc_chttp2_transport_parsing</a>
+</li>
+<li>got_initial_metadata
+: <a class="el" href="structcall__data.html#a7bda5a1466231baa3df0059573579b9b">call_data</a>
+</li>
+<li>got_key
+: <a class="el" href="structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed">grpc_json_writer</a>
+</li>
+<li>grpc_compression_algorithm_string
+: <a class="el" href="structgrpc__channel.html#afd8f60fef22e201f1e1ba3b00f285602">grpc_channel</a>
+</li>
+<li>grpc_message_string
+: <a class="el" href="structgrpc__channel.html#aa00f6e53c4b732654311f194aa2f3957">grpc_channel</a>
+</li>
+<li>grpc_scheme
+: <a class="el" href="structchannel__data.html#a24aa2dd2d7925c382b290e2417efabc7">channel_data</a>
+</li>
+<li>grpc_status_elem
+: <a class="el" href="structgrpc__channel.html#ad50abb90c5f7ef77e51f8387b06451f9">grpc_channel</a>
+</li>
+<li>grpc_status_string
+: <a class="el" href="structgrpc__channel.html#a4b3d99e4664ffe3399d29f61f7063600">grpc_channel</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>
diff --git a/doc/ref/core.internal/html/functions_h.html b/doc/ref/core.internal/html/functions_h.html
new file mode 100644
index 0000000000..dbe6667db7
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_h.html
@@ -0,0 +1,256 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>handshake_buffer
+: <a class="el" href="structgrpc__secure__transport__setup.html#a4ac21c122779d771e91d59bc1c74a723">grpc_secure_transport_setup</a>
+</li>
+<li>handshake_buffer_size
+: <a class="el" href="structgrpc__secure__transport__setup.html#a0edef695f006557a299ea4384f3a5438">grpc_secure_transport_setup</a>
+</li>
+<li>handshaker
+: <a class="el" href="structgrpc__secure__transport__setup.html#acb477ffb68f62bc22048abef085575c3">grpc_secure_transport_setup</a>
+</li>
+<li>handshaker_factory
+: <a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a4ec68b3563b321823c2386381727b9c6">grpc_httpcli_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__ssl__channel__security__connector.html#aea121da234d473666c85221663f00241">grpc_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__ssl__server__security__connector.html#aa18f372b18a7dc70e96cc6cf751d58e3">grpc_ssl_server_security_connector</a>
+</li>
+<li>handshaking_tcp_endpoints
+: <a class="el" href="structgrpc__server__secure__state.html#acba74fb1730945adb6b8d60421321b26">grpc_server_secure_state</a>
+</li>
+<li>has_base64_and_huffman_encoded
+: <a class="el" href="structinternal__string.html#ad30156b9bc8f7fc9c60b09e3dcaef00a">internal_string</a>
+</li>
+<li>has_compression_algorithm
+: <a class="el" href="structcall__data.html#a69baa5f9149f7edadc3c8e5fc2c82aa8">call_data</a>
+</li>
+<li>has_pending_iocp
+: <a class="el" href="structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294">grpc_winsocket_callback_info</a>
+</li>
+<li>has_request_metadata
+: <a class="el" href="structgrpc__credentials__vtable.html#acd487d7cf9dab42866c366a212ef4b15">grpc_credentials_vtable</a>
+</li>
+<li>has_request_metadata_only
+: <a class="el" href="structgrpc__credentials__vtable.html#a2028660c297e6e08be99e09f068921e7">grpc_credentials_vtable</a>
+</li>
+<li>has_value
+: <a class="el" href="structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7">grpc_chttp2_hptbl_find_result</a>
+</li>
+<li>hash
+: <a class="el" href="structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d">grpc_mdstr</a>
+, <a class="el" href="structinternal__string.html#abc9b5ed558b39ad7c3265964778b3b98">internal_string</a>
+</li>
+<li>hash_seed
+: <a class="el" href="structgrpc__mdctx.html#a7ac9fbdc8d9e07461ae46e89de5dec68">grpc_mdctx</a>
+</li>
+<li>have_alarm
+: <a class="el" href="structgrpc__call.html#a8ef6ebfaceedd93d50960c7e11a279b2">grpc_call</a>
+, <a class="el" href="structgrpc__subchannel.html#a04c16f8c09717fcda07708f4d2924e30">grpc_subchannel</a>
+</li>
+<li>have_read_byte
+: <a class="el" href="structinternal__request.html#aff291a650e0020e9a09beb9cc64298f9">internal_request</a>
+</li>
+<li>hc_on_recv
+: <a class="el" href="structcall__data.html#ab0f1ff70c9a8a72f5eb2e778fe709baf">call_data</a>
+</li>
+<li>hdr_capacity
+: <a class="el" href="structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77">grpc_httpcli_parser</a>
+</li>
+<li>hdr_count
+: <a class="el" href="structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0">grpc_httpcli_request</a>
+, <a class="el" href="structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e">grpc_httpcli_response</a>
+</li>
+<li>hdrs
+: <a class="el" href="structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6">grpc_httpcli_request</a>
+, <a class="el" href="structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d">grpc_httpcli_response</a>
+</li>
+<li>head
+: <a class="el" href="structgpr__stack__lockfree.html#a63a10f40dc93803a1d97846f659860eb">gpr_stack_lockfree</a>
+, <a class="el" href="structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73">grpc_chttp2_stream_list</a>
+, <a class="el" href="structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a">grpc_mdelem_list</a>
+</li>
+<li>header
+: <a class="el" href="structverifier__cb__ctx.html#a300805c3f085e1a830e26030a0c823ad">verifier_cb_ctx</a>
+</li>
+<li>header_eof
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50">grpc_chttp2_transport_parsing</a>
+</li>
+<li>header_idx
+: <a class="el" href="structframer__state.html#a8f1aacf4453938a5e335e77c6d775dc1">framer_state</a>
+</li>
+<li>heap
+: <a class="el" href="structshard__type.html#ae212a2061cff7c73ff1c208174272070">shard_type</a>
+</li>
+<li>heap_index
+: <a class="el" href="structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b">grpc_alarm</a>
+</li>
+<li>help
+: <a class="el" href="structarg.html#a7c3bb14ce3710281f4f5c511961823df">arg</a>
+</li>
+<li>host
+: <a class="el" href="structcall__data.html#a5b3ab9bd0e3c549bf9ad739f0011b995">call_data</a>
+, <a class="el" href="structchannel__registered__method.html#a6f9cc4376a5b8955a060f089720f2e9d">channel_registered_method</a>
+, <a class="el" href="structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631">grpc_call_details</a>
+, <a class="el" href="structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d">grpc_httpcli_request</a>
+, <a class="el" href="structinternal__request.html#ab545c1a0948fde5ebcf3a38e4bb2e976">internal_request</a>
+, <a class="el" href="structregistered__method.html#ac8947363747871cca9a921739b686545">registered_method</a>
+</li>
+<li>host_capacity
+: <a class="el" href="structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1">grpc_call_details</a>
+</li>
+<li>host_key
+: <a class="el" href="structchannel__data.html#acf1f4e1f7664686d2c41072763080cf6">channel_data</a>
+</li>
+<li>hpack_compressor
+: <a class="el" href="structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460">grpc_chttp2_transport_writing</a>
+</li>
+<li>hpack_parser
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d">grpc_chttp2_transport_parsing</a>
+</li>
+<li>hs_on_recv
+: <a class="el" href="structcall__data.html#a449389cf74cdadc8a00b52990c7052d5">call_data</a>
+</li>
+<li>http_ctx
+: <a class="el" href="structgrpc__jwt__verifier.html#a0dbb6661ebad9689425e9a3e24c67a3d">grpc_jwt_verifier</a>
+</li>
+<li>http_scheme
+: <a class="el" href="structchannel__data.html#a76cf628a9f2165700655595e349dc71c">channel_data</a>
+</li>
+<li>httpcli_context
+: <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>https_scheme
+: <a class="el" href="structchannel__data.html#a64d3d8ab7ed7ca08eb8e1e1823051d97">channel_data</a>
+</li>
+<li>huff
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5">grpc_chttp2_hpack_parser</a>
+</li>
+<li>huff_state
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c">grpc_chttp2_hpack_parser</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>
diff --git a/doc/ref/core.internal/html/functions_i.html b/doc/ref/core.internal/html/functions_i.html
new file mode 100644
index 0000000000..b03c776e66
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_i.html
@@ -0,0 +1,343 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>iam_md
+: <a class="el" href="structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8">grpc_iam_credentials</a>
+</li>
+<li>iat
+: <a class="el" href="structgrpc__jwt__claims.html#a4f50dadfd0a2d3493065b5b4faf84fef">grpc_jwt_claims</a>
+</li>
+<li>id
+: <a class="el" href="structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3">census_stat</a>
+, <a class="el" href="structgrpc__chttp2__outstanding__ping.html#a3cf40734ac72489211630654aaa02bd9">grpc_chttp2_outstanding_ping</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745">grpc_chttp2_settings_parser</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832">grpc_chttp2_stream_writing</a>
+</li>
+<li>in_array
+: <a class="el" href="structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438">grpc_json_reader</a>
+</li>
+<li>in_flight_cbs
+: <a class="el" href="structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2">grpc_pollset</a>
+</li>
+<li>in_object
+: <a class="el" href="structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6">grpc_json_reader</a>
+</li>
+<li>in_stream_map
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4">grpc_chttp2_stream_global</a>
+</li>
+<li>inactive_watcher_root
+: <a class="el" href="structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8">grpc_fd</a>
+</li>
+<li>included
+: <a class="el" href="structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95">grpc_chttp2_stream</a>
+</li>
+<li>incoming
+: <a class="el" href="structtsi__fake__handshaker.html#a88e5531bc9e28f480211209fe0d68e14">tsi_fake_handshaker</a>
+</li>
+<li>incoming_configuration
+: <a class="el" href="structchannel__data.html#a2b20db607d1a87fa17b260cac4a121f0">channel_data</a>
+</li>
+<li>incoming_frame_flags
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_frame_size
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_frame_type
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_message
+: <a class="el" href="structgrpc__call.html#a98eafd66de3d31324c7a9c113dfb9a56">grpc_call</a>
+</li>
+<li>incoming_message_flags
+: <a class="el" href="structgrpc__call.html#a4c3b082e465f93d090d6f523e197b43a">grpc_call</a>
+</li>
+<li>incoming_message_length
+: <a class="el" href="structgrpc__call.html#a51fb682fa9024d09b2e137edb2fc13d0">grpc_call</a>
+</li>
+<li>incoming_metadata
+: <a class="el" href="structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc">grpc_chttp2_stream_parsing</a>
+</li>
+<li>incoming_queue
+: <a class="el" href="structgrpc__call.html#ae217707d3befc054ac994f12de9e10bb">grpc_call</a>
+</li>
+<li>incoming_settings
+: <a class="el" href="structgrpc__chttp2__settings__parser.html#a4b6b73681cb815b663dda8008ff3d519">grpc_chttp2_settings_parser</a>
+</li>
+<li>incoming_sopb
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c">grpc_chttp2_data_parser</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e">grpc_chttp2_stream_global</a>
+</li>
+<li>incoming_stream
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_window
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_window_delta
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9">grpc_chttp2_transport_parsing</a>
+</li>
+<li>indent
+: <a class="el" href="structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de">grpc_json_writer</a>
+</li>
+<li>index
+: <a class="el" href="structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6">grpc_auth_property_iterator</a>
+, <a class="el" href="structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb">grpc_byte_buffer_reader</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea">grpc_chttp2_hptbl_find_result</a>
+, <a class="el" href="structlockfree__node__contents.html#a928cde9bc69482abb79427725c16b8f7">lockfree_node_contents</a>
+</li>
+<li>indices_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#ae15305b7ada7f6b084088b9ab64240a1">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>indices_keys
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#abd71f91eced6cc4bfdef970d00bbe808">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>init_avg
+: <a class="el" href="structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224">grpc_time_averaged_stats</a>
+</li>
+<li>init_call_elem
+: <a class="el" href="structgrpc__channel__filter.html#aea34a13bc660ba869d4c18ed6cd21c2b">grpc_channel_filter</a>
+</li>
+<li>init_channel_elem
+: <a class="el" href="structgrpc__channel__filter.html#a7171b1634e5a7d42880f68ae1a4f875a">grpc_channel_filter</a>
+</li>
+<li>init_stream
+: <a class="el" href="structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f">grpc_transport_vtable</a>
+</li>
+<li>initial_metadata
+: <a class="el" href="structrequested__call.html#a813caeee0e35952179d319607847c7b7">requested_call</a>
+</li>
+<li>initial_window_update
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c">grpc_chttp2_transport_parsing</a>
+</li>
+<li>inlined
+: <a class="el" href="structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28">gpr_slice</a>
+, <a class="el" href="structgpr__slice__buffer.html#adb678a23dc27e50c478bc48d365420e2">gpr_slice_buffer</a>
+</li>
+<li>inlined_ops
+: <a class="el" href="structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301">grpc_stream_op_buffer</a>
+</li>
+<li>inner
+: <a class="el" href="structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805">grpc_composite_credentials</a>
+</li>
+<li>input
+: <a class="el" href="structjson__reader__userdata.html#abccbf0e7d9695f00948288df13ba4c7e">json_reader_userdata</a>
+</li>
+<li>input_buffer
+: <a class="el" href="structsecure__endpoint.html#abc32a14befcf93c3a16dcb9e8fa66ef4">secure_endpoint</a>
+</li>
+<li>integer
+: <a class="el" href="structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554">grpc_arg</a>
+</li>
+<li>interested_parties
+: <a class="el" href="structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac">grpc_connect_in_args</a>
+</li>
+<li>internal_data
+: <a class="el" href="structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553">grpc_metadata</a>
+</li>
+<li>internal_refcount
+: <a class="el" href="structgrpc__call.html#a8aedf0fd044d8d985172fd02293ed55d">grpc_call</a>
+, <a class="el" href="structgrpc__server.html#ab5c3bf8e55920a90654d31c6a0836e93">grpc_server</a>
+</li>
+<li>into_ssl
+: <a class="el" href="structtsi__ssl__frame__protector.html#ac1162fd08a5da7a1c5f142251beb9934">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a6d79399d2bf72081032843d9800dcaa6">tsi_ssl_handshaker</a>
+</li>
+<li>invalid_value_behavior
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df">grpc_chttp2_setting_parameters</a>
+</li>
+<li>iomgr_obj
+: <a class="el" href="structinternal__request.html#a16edaecfecf5937255d86d07ab3be4d0">internal_request</a>
+</li>
+<li>iomgr_object
+: <a class="el" href="structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc">grpc_fd</a>
+, <a class="el" href="structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6">grpc_winsocket</a>
+</li>
+<li>is_ack
+: <a class="el" href="structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c">grpc_chttp2_ping_parser</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec">grpc_chttp2_settings_parser</a>
+</li>
+<li>is_async
+: <a class="el" href="structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806">grpc_fake_oauth2_credentials</a>
+</li>
+<li>is_boundary
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec">grpc_chttp2_hpack_parser</a>
+</li>
+<li>is_client
+: <a class="el" href="structgrpc__call.html#a5a4810b490545e9b18b488bef197314f">grpc_call</a>
+, <a class="el" href="structgrpc__channel.html#a4bfedb17fb28f088111e21abd9c2c4cc">grpc_channel</a>
+, <a class="el" href="structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58">grpc_chttp2_transport_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57">grpc_chttp2_transport_writing</a>
+, <a class="el" href="structtsi__fake__handshaker.html#ab3817b146f5d0d09232581e33bfd50f0">tsi_fake_handshaker</a>
+</li>
+<li>is_client_side
+: <a class="el" href="structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd">grpc_security_connector</a>
+</li>
+<li>is_connection_update
+: <a class="el" href="structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca">grpc_chttp2_window_update_parser</a>
+</li>
+<li>is_done
+: <a class="el" href="structcompute__engine__detector.html#a1b82128e01e4041639ff7e3f5286207d">compute_engine_detector</a>
+</li>
+<li>is_eof
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b">grpc_chttp2_hpack_parser</a>
+</li>
+<li>is_frame_compressed
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7">grpc_chttp2_data_parser</a>
+</li>
+<li>is_last_frame
+: <a class="el" href="structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e">grpc_chttp2_data_parser</a>
+</li>
+<li>is_last_send
+: <a class="el" href="structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f">grpc_transport_stream_op</a>
+</li>
+<li>is_server_cq
+: <a class="el" href="structgrpc__completion__queue.html#a495f730490aa5625bb7ce2604ee8e6d7">grpc_completion_queue</a>
+</li>
+<li>is_set
+: <a class="el" href="structreceived__status.html#a39555cb7bcc2ccf18854bd73136c9c03">received_status</a>
+</li>
+<li>is_shutdown
+: <a class="el" href="structgrpc__server__secure__state.html#aea11767a6c8e97a44574e8e3a368deec">grpc_server_secure_state</a>
+</li>
+<li>iss
+: <a class="el" href="structgrpc__jwt__claims.html#a69f31f01a0d1cac4f79f0a46ed4e6593">grpc_jwt_claims</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>
diff --git a/doc/ref/core.internal/html/functions_j.html b/doc/ref/core.internal/html/functions_j.html
new file mode 100644
index 0000000000..60e1f588a4
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_j.html
@@ -0,0 +1,144 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
+<li>json
+: <a class="el" href="structgrpc__jwt__claims.html#add6f381accf815cd0b7385fded17fae5">grpc_jwt_claims</a>
+</li>
+<li>jti
+: <a class="el" href="structgrpc__jwt__claims.html#abf5af69634298aaeeae5a0a2e6ef60f9">grpc_jwt_claims</a>
+</li>
+<li>jwt_expiration
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>jwt_lifetime
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>jwt_md
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533">grpc_service_account_jwt_access_credentials</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>
diff --git a/doc/ref/core.internal/html/functions_k.html b/doc/ref/core.internal/html/functions_k.html
new file mode 100644
index 0000000000..ae736491ac
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_k.html
@@ -0,0 +1,165 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li class="current"><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>key
+: <a class="el" href="structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece">gpr_pthread_thread_local</a>
+, <a class="el" href="structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968">grpc_arg</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53">grpc_credentials_md</a>
+, <a class="el" href="structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e">grpc_httpcli_header</a>
+, <a class="el" href="structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6">grpc_json</a>
+, <a class="el" href="structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94">grpc_mdelem</a>
+, <a class="el" href="structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7">grpc_metadata</a>
+, <a class="el" href="structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd">grpc_service_account_credentials</a>
+, <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32">grpc_service_account_jwt_access_credentials</a>
+, <a class="el" href="structinternal__metadata.html#a1ef3f9e31e4380c0ec8fce01714c0fa3">internal_metadata</a>
+, <a class="el" href="structjson__reader__userdata.html#ac7750253670b78b205a06c2e371ac418">json_reader_userdata</a>
+</li>
+<li>key_url_prefix
+: <a class="el" href="structemail__key__mapping.html#a0c0fa6aa94861adf3c6a4f5f9579d37a">email_key_mapping</a>
+, <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec">grpc_jwt_verifier_email_domain_key_url_mapping</a>
+</li>
+<li>keys
+: <a class="el" href="structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6">grpc_chttp2_stream_map</a>
+</li>
+<li>kick
+: <a class="el" href="structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc">grpc_pollset_vtable</a>
+</li>
+<li>kick_state
+: <a class="el" href="structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f">grpc_pollset</a>
+</li>
+<li>kicked
+: <a class="el" href="structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8">grpc_pollset_kick_state</a>
+</li>
+<li>kid
+: <a class="el" href="structjose__header.html#ae38087aaf6d4e0670bb5deda4375f719">jose_header</a>
+</li>
+<li>kill_zombie_closure
+: <a class="el" href="structcall__data.html#a2a1ef01585059d467002ce70f6fa03d1">call_data</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>
diff --git a/doc/ref/core.internal/html/functions_l.html b/doc/ref/core.internal/html/functions_l.html
new file mode 100644
index 0000000000..d43dcab91c
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_l.html
@@ -0,0 +1,198 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li class="current"><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>last_ent
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b">grpc_chttp2_hptbl</a>
+</li>
+<li>last_incoming_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542">grpc_chttp2_transport_parsing</a>
+</li>
+<li>last_send_contains
+: <a class="el" href="structgrpc__call.html#a4428a5f3615eb7ed703cb5650c379225">grpc_call</a>
+</li>
+<li>last_shutdown_message_time
+: <a class="el" href="structgrpc__server.html#aba4f032ca63d1a654bd2a7776dfb6b6f">grpc_server</a>
+</li>
+<li>last_stream_id
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be">grpc_chttp2_goaway_parser</a>
+</li>
+<li>last_was_header
+: <a class="el" href="structframer__state.html#a81d1d4409a7212a9da08212e55772b20">framer_state</a>
+</li>
+<li>lb_policy
+: <a class="el" href="structchannel__data.html#a3cbf28a9634e67af5aea0af6363e4d94">channel_data</a>
+, <a class="el" href="structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9">grpc_client_config</a>
+, <a class="el" href="structlb__policy__connectivity__watcher.html#a2e56bc230933c8ee0f5dbacf58e1805c">lb_policy_connectivity_watcher</a>
+</li>
+<li>lb_policy_factory
+: <a class="el" href="structdns__resolver.html#a9e7953dbbac44c59c5f8d2946e4295f7">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#a3d3d40590716456f336738170ad3f3e8">sockaddr_resolver</a>
+</li>
+<li>left_overs
+: <a class="el" href="structgrpc__secure__transport__setup.html#ac057ddae29de167423a28ff357acab20">grpc_secure_transport_setup</a>
+</li>
+<li>leftover_bytes
+: <a class="el" href="structsecure__endpoint.html#a46eca04c2167e2d459c0a7aab630bf8a">secure_endpoint</a>
+</li>
+<li>len
+: <a class="el" href="structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56">grpc_resolved_address</a>
+</li>
+<li>length
+: <a class="el" href="structb64__huff__sym.html#a32397c9284689efd11eb89236d8d69e2">b64_huff_sym</a>
+, <a class="el" href="structdump__out.html#ae5a2d8bf503113afc8d2da2cb36d70ad">dump_out</a>
+, <a class="el" href="structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5">gpr_slice</a>
+, <a class="el" href="structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3">gpr_slice_buffer</a>
+, <a class="el" href="structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0">grpc_begin_message</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5">grpc_chttp2_hpack_parser_string</a>
+, <a class="el" href="structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88">grpc_chttp2_huffsym</a>
+, <a class="el" href="structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7">tsi_peer_property</a>
+</li>
+<li>line
+: <a class="el" href="structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb">gpr_log_func_args</a>
+</li>
+<li>links
+: <a class="el" href="structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624">grpc_chttp2_stream</a>
+</li>
+<li>list
+: <a class="el" href="structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d">grpc_metadata_batch</a>
+, <a class="el" href="structshard__type.html#a9e5f5db6f2eb96346ad17f43f731b31f">shard_type</a>
+</li>
+<li>listeners
+: <a class="el" href="structgrpc__server.html#a8034614967f908b2de453975996bdb7f">grpc_server</a>
+</li>
+<li>listeners_destroyed
+: <a class="el" href="structgrpc__server.html#aa36374d7075e4d6af2c2c2cb8dc26552">grpc_server</a>
+</li>
+<li>lists
+: <a class="el" href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a">grpc_chttp2_transport</a>
+</li>
+<li>locked
+: <a class="el" href="structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342">gpr_mu</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>
diff --git a/doc/ref/core.internal/html/functions_m.html b/doc/ref/core.internal/html/functions_m.html
new file mode 100644
index 0000000000..dff6c9338c
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_m.html
@@ -0,0 +1,290 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>mappings
+: <a class="el" href="structgrpc__jwt__verifier.html#a1d15c7406be10b7fc86775320b2afac4">grpc_jwt_verifier</a>
+</li>
+<li>master
+: <a class="el" href="structchannel__data.html#a185d2abf35cf1fbdaa13b4fb097bda5e">channel_data</a>
+, <a class="el" href="structgrpc__subchannel.html#a7662fa59b78e15ce10c272651e82b70d">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275">grpc_subchannel_args</a>
+, <a class="el" href="structsubchannel__factory.html#ab7945d086262563fdde51b250893e428">subchannel_factory</a>
+</li>
+<li>masters
+: <a class="el" href="structgrpc__call.html#a6a0e7c0825db8dc7561af44663cbd75d">grpc_call</a>
+</li>
+<li>max_bytes
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b">grpc_chttp2_hptbl</a>
+</li>
+<li>max_frame_size
+: <a class="el" href="structtsi__fake__frame__protector.html#a03f274c6362a35ad486d91fdac777816">tsi_fake_frame_protector</a>
+</li>
+<li>max_message_length
+: <a class="el" href="structgrpc__channel.html#af25859261f7e57e5c5f2bbafda64dbf1">grpc_channel</a>
+</li>
+<li>max_possible
+: <a class="el" href="structgpr__histogram.html#af94ad5cd243aff89bbe7b0a9918dab77">gpr_histogram</a>
+</li>
+<li>max_recv_bytes
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b">grpc_transport_stream_op</a>
+</li>
+<li>max_requested_calls
+: <a class="el" href="structgrpc__server.html#aaaa9b2a91b6e3edd7ebb0b194110f403">grpc_server</a>
+</li>
+<li>max_seen
+: <a class="el" href="structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1">gpr_histogram</a>
+</li>
+<li>max_value
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001">grpc_chttp2_setting_parameters</a>
+</li>
+<li>maybe_work
+: <a class="el" href="structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f">grpc_pollset_vtable</a>
+</li>
+<li>md
+: <a class="el" href="structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715">grpc_linked_mdelem</a>
+</li>
+<li>md_ctx
+: <a class="el" href="structchannel__data.html#ad12b240dea3a1193fa08327ef1e4553e">channel_data</a>
+</li>
+<li>md_elems
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a5102b59e552251b072c0ac96020b43ea">grpc_composite_credentials_metadata_context</a>
+</li>
+<li>md_links
+: <a class="el" href="structcall__data.html#a0cb931b8950cc5841edf1156ca861600">call_data</a>
+</li>
+<li>mdctx
+: <a class="el" href="structchannel__data.html#a8ccd22d950d3fda54a0f338d55d1f813">channel_data</a>
+, <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c">grpc_chttp2_hpack_compressor</a>
+, <a class="el" href="structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b">grpc_chttp2_hptbl</a>
+, <a class="el" href="structgrpc__subchannel.html#a2e2040552b5320c9a91a6e080760f96a">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477">grpc_subchannel_args</a>
+, <a class="el" href="structsubchannel__factory.html#a920af9d40dedd8ba5eb2f64648eb5008">subchannel_factory</a>
+</li>
+<li>mdelem_compression_algorithms
+: <a class="el" href="structchannel__data.html#a4af222359dc97dc96780402413bb015d">channel_data</a>
+</li>
+<li>mdstr_outgoing_compression_algorithm_key
+: <a class="el" href="structchannel__data.html#aeb493774aec5abf500f8ef36b99553d6">channel_data</a>
+</li>
+<li>mdstr_request_compression_algorithm_key
+: <a class="el" href="structchannel__data.html#a9c1ff3982fc4510f367df5a35960abcb">channel_data</a>
+</li>
+<li>mdtab
+: <a class="el" href="structgrpc__mdctx.html#adff99895d519ab72b9c66a23de57156c">grpc_mdctx</a>
+</li>
+<li>mdtab_capacity
+: <a class="el" href="structgrpc__mdctx.html#ab79559486a14c29803dd0f6464afe2df">grpc_mdctx</a>
+</li>
+<li>mdtab_count
+: <a class="el" href="structgrpc__mdctx.html#af513520e504950d327e9a41cb1781779">grpc_mdctx</a>
+</li>
+<li>mdtab_free
+: <a class="el" href="structgrpc__mdctx.html#a42820dc23bdea76b0d2a7e7db3d64131">grpc_mdctx</a>
+</li>
+<li>mem_used
+: <a class="el" href="structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878">grpc_chttp2_hptbl</a>
+</li>
+<li>merge_args
+: <a class="el" href="structmerge__args__factory.html#a973c42ea64bda49e62c9648f1d9eb919">merge_args_factory</a>
+, <a class="el" href="structsubchannel__factory.html#a0538fbb1dc64ec4ab487326b64792bde">subchannel_factory</a>
+</li>
+<li>message
+: <a class="el" href="structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b">gpr_log_func_args</a>
+</li>
+<li>metadata
+: <a class="el" href="uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe">grpc_metadata_array</a>
+, <a class="el" href="structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079">grpc_op</a>
+, <a class="el" href="structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464">grpc_stream_op</a>
+</li>
+<li>metadata_context
+: <a class="el" href="structgrpc__call.html#a1fcf672edf744df8c192aba2da0da3f2">grpc_call</a>
+, <a class="el" href="structgrpc__channel.html#a715d3ad3606de80c57ea96570e364ec8">grpc_channel</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e">grpc_connect_in_args</a>
+</li>
+<li>method
+: <a class="el" href="structcall__data.html#a7d9cd71936be176040c5f69a78d695b0">call_data</a>
+, <a class="el" href="structchannel__data.html#a78079d15b762dcc791e6e996951d9f6a">channel_data</a>
+, <a class="el" href="structchannel__registered__method.html#a7d2b4e40ba59b8b98e1b06b94f7345f1">channel_registered_method</a>
+, <a class="el" href="structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5">grpc_call_details</a>
+, <a class="el" href="structregistered__method.html#a84540106ff6f3763d9ada701667cf77d">registered_method</a>
+</li>
+<li>method_capacity
+: <a class="el" href="structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0">grpc_call_details</a>
+</li>
+<li>method_post
+: <a class="el" href="structchannel__data.html#a05461a751cad059d57ccd5ed3c698fd7">channel_data</a>
+</li>
+<li>min_deadline
+: <a class="el" href="structshard__type.html#a16cac3c86f6ac95b49f7a8b703dc4f07">shard_type</a>
+</li>
+<li>min_seen
+: <a class="el" href="structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf">gpr_histogram</a>
+</li>
+<li>min_value
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82">grpc_chttp2_setting_parameters</a>
+</li>
+<li>mu
+: <a class="el" href="structdns__resolver.html#aa1661d76a33a19a305d5edb1b354ce8a">dns_resolver</a>
+, <a class="el" href="structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f">gpr_cancellable</a>
+, <a class="el" href="structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__call.html#a0641698dba5cf939dbc61e2a6019199c">grpc_call</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__mdctx.html#a3c1051440f8ce4c48c38a08f5a478c4e">grpc_mdctx</a>
+, <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45">grpc_oauth2_token_fetcher_credentials</a>
+, <a class="el" href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">grpc_pollset</a>
+, <a class="el" href="structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a">grpc_pollset_kick_state</a>
+, <a class="el" href="structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703">grpc_pollset_set</a>
+, <a class="el" href="structgrpc__server__secure__state.html#a6572a200d1489334fa4af215ccffa717">grpc_server_secure_state</a>
+, <a class="el" href="structgrpc__subchannel.html#a020e44ce2c4d73d26c63a4ec9f2f3e14">grpc_subchannel</a>
+, <a class="el" href="structpick__first__lb__policy.html#a5bc2719af90ffde998983bdeeacfd764">pick_first_lb_policy</a>
+, <a class="el" href="structshard__type.html#ae0271c419d83a06ab69fe48ce3e3196b">shard_type</a>
+, <a class="el" href="structsockaddr__resolver.html#a9ac37ca23a45425c9af702236f53c81d">sockaddr_resolver</a>
+, <a class="el" href="structstate__watcher.html#a39ac8f332dc6a1b6a9bf0815b6912327">state_watcher</a>
+</li>
+<li>mu_call
+: <a class="el" href="structgrpc__server.html#a4d89504a094de15aa4a208c0159d904b">grpc_server</a>
+</li>
+<li>mu_config
+: <a class="el" href="structchannel__data.html#a925aa059f74c20ba06718d45b78382af">channel_data</a>
+</li>
+<li>mu_global
+: <a class="el" href="structgrpc__server.html#a2f291ce57ed6540efe5c99e607be3a27">grpc_server</a>
+</li>
+<li>mu_state
+: <a class="el" href="structcall__data.html#aa671a127b29c32228f221a6121515a64">call_data</a>
+</li>
+<li>mu_user_data
+: <a class="el" href="structinternal__metadata.html#a04fa79f6da10ebdc3c337277b0997657">internal_metadata</a>
+</li>
+<li>multiplier
+: <a class="el" href="structgpr__histogram.html#aa3b6846c10a297bf1a9706ab348ffead">gpr_histogram</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>
diff --git a/doc/ref/core.internal/html/functions_n.html b/doc/ref/core.internal/html/functions_n.html
new file mode 100644
index 0000000000..85a50f3763
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_n.html
@@ -0,0 +1,255 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>naddrs
+: <a class="el" href="structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8">grpc_resolved_addresses</a>
+</li>
+<li>name
+: <a class="el" href="structarg.html#a19d6eebdcc5e2c4679c5f77760adb5dc">arg</a>
+, <a class="el" href="structdns__resolver.html#a5670dbafe81b9e38af022bd5cf907fa3">dns_resolver</a>
+, <a class="el" href="structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27">grpc_auth_property</a>
+, <a class="el" href="structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7">grpc_auth_property_iterator</a>
+, <a class="el" href="structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6">grpc_channel_filter</a>
+, <a class="el" href="structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f">grpc_chttp2_setting_parameters</a>
+, <a class="el" href="structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8">grpc_connectivity_state_tracker</a>
+, <a class="el" href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf">grpc_iomgr_object</a>
+, <a class="el" href="structtracer.html#a08a3bb14c306ce7394df6a5bb56e6eb3">tracer</a>
+, <a class="el" href="structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67">tsi_peer_property</a>
+</li>
+<li>nbf
+: <a class="el" href="structgrpc__jwt__claims.html#a294f9a7e9e2cc0820c469b7b340c980a">grpc_jwt_claims</a>
+</li>
+<li>need_mask
+: <a class="el" href="structreqinfo__master.html#af1092f7b58950276ec6b35da0f7e1fd5">reqinfo_master</a>
+</li>
+<li>needs_draining
+: <a class="el" href="structtsi__fake__frame.html#a5c19114ec65853283cf5234b8bef611b">tsi_fake_frame</a>
+</li>
+<li>needs_incoming_message
+: <a class="el" href="structtsi__fake__handshaker.html#a5b5522b09970836d1867fc4c08411c91">tsi_fake_handshaker</a>
+</li>
+<li>new_stream_map
+: <a class="el" href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca">grpc_chttp2_transport</a>
+</li>
+<li>next
+: <a class="el" href="structarg.html#a5e585c92ebdfcf1c6d966d887d07f7ff">arg</a>
+, <a class="el" href="structcall__link.html#a61d52b76dfba4d08d6c453392dea6947">call_link</a>
+, <a class="el" href="structchannel__data.html#a7cbc7853658b85e4f62f37a71189a3d7">channel_data</a>
+, <a class="el" href="structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab">grpc_alarm</a>
+, <a class="el" href="structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f">grpc_chttp2_outstanding_ping</a>
+, <a class="el" href="structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de">grpc_chttp2_stream_link</a>
+, <a class="el" href="structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388">grpc_connectivity_state_watcher</a>
+, <a class="el" href="structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948">grpc_cq_completion</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae">grpc_fd_watcher</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef">grpc_iomgr_closure</a>
+, <a class="el" href="structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c">grpc_iomgr_object</a>
+, <a class="el" href="structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2">grpc_json</a>
+, <a class="el" href="structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f">grpc_kick_fd_info</a>
+, <a class="el" href="structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef">grpc_linked_mdelem</a>
+, <a class="el" href="structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0">grpc_resolver_vtable</a>
+, <a class="el" href="structlistener.html#afd926873c32f6f18eff932b871c7a9d7">listener</a>
+, <a class="el" href="structpending__pick.html#abecbb432724c24c523d0cfda19f7b1c1">pending_pick</a>
+, <a class="el" href="structregistered__call.html#a81f1e87dddb1f37ff09a9aaa56ca62cd">registered_call</a>
+, <a class="el" href="structregistered__method.html#a662f0ff612e8211e1ac2ff2bc7350776">registered_method</a>
+, <a class="el" href="structtcp__endpoint__list.html#aaeb000e9fe236631fc1355b657a9e1fe">tcp_endpoint_list</a>
+, <a class="el" href="structtracer.html#aec6b92c7c58fec94b57b7a2385c3c3c1">tracer</a>
+, <a class="el" href="structwaiting__for__connect.html#a62c2a3b3fa576054930f40d722716438">waiting_for_connect</a>
+</li>
+<li>next_address
+: <a class="el" href="structinternal__request.html#a76357b043a6e64d3254650151c2795bb">internal_request</a>
+</li>
+<li>next_attempt
+: <a class="el" href="structgrpc__subchannel.html#a6ee4fc265d48aad4c76411a80001ac5c">grpc_subchannel</a>
+</li>
+<li>next_completion
+: <a class="el" href="structdns__resolver.html#a6ed64036e71eb1ee7dc886adb51820d6">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#acd7a423835a4be78a041f895bba3b421">sockaddr_resolver</a>
+</li>
+<li>next_message_to_send
+: <a class="el" href="structtsi__fake__handshaker.html#ab343e56591aa9bae847d1af36534ecbe">tsi_fake_handshaker</a>
+</li>
+<li>next_state
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1">grpc_chttp2_hpack_parser</a>
+</li>
+<li>next_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9">grpc_chttp2_transport_parsing</a>
+</li>
+<li>nops
+: <a class="el" href="structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b">grpc_stream_op_buffer</a>
+</li>
+<li>notify
+: <a class="el" href="structconnector.html#ae73053d157c31e9015427d56228e7123">connector</a>
+, <a class="el" href="structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f">grpc_connectivity_state_watcher</a>
+, <a class="el" href="structwaiting__for__connect.html#a8e497a44e87d2780b2f7dbd2dd006526">waiting_for_connect</a>
+</li>
+<li>notify_on_read
+: <a class="el" href="structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2">grpc_endpoint_vtable</a>
+</li>
+<li>notify_on_state_change
+: <a class="el" href="structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed">grpc_lb_policy_vtable</a>
+</li>
+<li>num_args
+: <a class="el" href="structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde">grpc_channel_args</a>
+</li>
+<li>num_buckets
+: <a class="el" href="structgpr__histogram.html#a039f2094c3aea146aaf6a9a75bc5ab12">gpr_histogram</a>
+</li>
+<li>num_channels
+: <a class="el" href="structchannel__broadcaster.html#a0b95a339b9c30a54d2f33b336be1c0c9">channel_broadcaster</a>
+</li>
+<li>num_completed_requests
+: <a class="el" href="structgrpc__call.html#ae92d9e5f96d5e80d9c480ab79e051ada">grpc_call</a>
+</li>
+<li>num_creds
+: <a class="el" href="structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96">grpc_credentials_array</a>
+</li>
+<li>num_entries
+: <a class="el" href="structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259">grpc_credentials_md_store</a>
+</li>
+<li>num_ents
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1">grpc_chttp2_hptbl</a>
+</li>
+<li>num_filters
+: <a class="el" href="structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3">grpc_connect_out_args</a>
+, <a class="el" href="structgrpc__subchannel.html#a0d8559ba4069f1940a92d6d58d4f4009">grpc_subchannel</a>
+</li>
+<li>num_key_cert_pairs
+: <a class="el" href="structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c">grpc_ssl_server_config</a>
+</li>
+<li>num_mappings
+: <a class="el" href="structgrpc__jwt__verifier.html#a5c116d4a596479e9acb28be8c5adc3b5">grpc_jwt_verifier</a>
+</li>
+<li>num_shutdown_tags
+: <a class="el" href="structgrpc__server.html#afd8d25139f82d26ce567e4a1a786b54b">grpc_server</a>
+</li>
+<li>num_subchannels
+: <a class="el" href="structpick__first__lb__policy.html#a39415d22c1bb4ace43e7abc6331f08e1">pick_first_lb_policy</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>
diff --git a/doc/ref/core.internal/html/functions_o.html b/doc/ref/core.internal/html/functions_o.html
new file mode 100644
index 0000000000..16926a19fb
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_o.html
@@ -0,0 +1,276 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>obfuscated
+: <a class="el" href="structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f">grpc_metadata</a>
+</li>
+<li>offset
+: <a class="el" href="structtsi__fake__frame.html#ab1fe06dcec5ebffc85112c9a726ed3f6">tsi_fake_frame</a>
+</li>
+<li>on_changed
+: <a class="el" href="structlb__policy__connectivity__watcher.html#ab9bd1ed9605d5f575ea8e2ce51ed597c">lb_policy_connectivity_watcher</a>
+</li>
+<li>on_complete
+: <a class="el" href="structcompleted__request.html#a2abd9edaf87e7b33717d655f9651a26a">completed_request</a>
+, <a class="el" href="structpending__pick.html#a754316904bce1aec5d5afcc61b2b5abe">pending_pick</a>
+, <a class="el" href="structreqinfo__master.html#a77f3e6ff12d266f5e2d0b49ed590a344">reqinfo_master</a>
+, <a class="el" href="structstate__watcher.html#a3bd085c4cbd7f167fa42b7191f502d39">state_watcher</a>
+</li>
+<li>on_config_changed
+: <a class="el" href="structchannel__data.html#a5a8db474fbde3443ad862229ef3be367">channel_data</a>
+</li>
+<li>on_connectivity_state_change
+: <a class="el" href="structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953">grpc_transport_op</a>
+</li>
+<li>on_consumed
+: <a class="el" href="structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a">grpc_transport_op</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93">grpc_transport_stream_op</a>
+</li>
+<li>on_done_bind
+: <a class="el" href="structgrpc__call.html#a14ae475238cf1ae8b2d022c7a6b755b7">grpc_call</a>
+</li>
+<li>on_done_closure
+: <a class="el" href="structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f">grpc_fd</a>
+</li>
+<li>on_done_recv
+: <a class="el" href="structcall__data.html#a3c7f4d12b26ecd073c992c56fa9c098d">call_data</a>
+, <a class="el" href="structgrpc__call.html#a7397b6f80ed39e5e5b3cf1c68e88e959">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479">grpc_transport_stream_op</a>
+</li>
+<li>on_done_send
+: <a class="el" href="structgrpc__call.html#a4cef85f8e845ae1f24f043e5d853a843">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07">grpc_transport_stream_op</a>
+</li>
+<li>on_header
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f">grpc_chttp2_hpack_parser</a>
+</li>
+<li>on_header_user_data
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b">grpc_chttp2_hpack_parser</a>
+</li>
+<li>on_recv
+: <a class="el" href="structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c">grpc_chttp2_outstanding_ping</a>
+</li>
+<li>on_response
+: <a class="el" href="structinternal__request.html#a4679ca2c4587920feca983ac852ef2b6">internal_request</a>
+</li>
+<li>on_simulated_token_fetch_done_closure
+: <a class="el" href="structgrpc__credentials__metadata__request.html#a31c83ca54622158600b17ebcc6047af8">grpc_credentials_metadata_request</a>
+</li>
+<li>one_on_log_multiplier
+: <a class="el" href="structgpr__histogram.html#a63929f09cc7a7feedf7b1f330b0458c3">gpr_histogram</a>
+</li>
+<li>op
+: <a class="el" href="structcall__data.html#a0d259211de98a88e11c71fa93abd2877">call_data</a>
+, <a class="el" href="structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0">grpc_ioreq</a>
+, <a class="el" href="structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115">grpc_op</a>
+</li>
+<li>op_id
+: <a class="el" href="structcensus__context.html#ab46ba00da079c14fed8259bae560fdac">census_context</a>
+</li>
+<li>op_md_idx
+: <a class="el" href="structcall__data.html#aaa6841afd5ac22f2538e950688f8e67b">call_data</a>
+</li>
+<li>opaque
+: <a class="el" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">grpc_winsocket_callback_info</a>
+</li>
+<li>opaque_8bytes
+: <a class="el" href="structgrpc__chttp2__ping__parser.html#a338f5adfa9a1236094e16c36c5cd5b4e">grpc_chttp2_ping_parser</a>
+</li>
+<li>ops
+: <a class="el" href="structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975">grpc_stream_op_buffer</a>
+</li>
+<li>optional_payload
+: <a class="el" href="structrequested__call.html#a5c928486fa8b32b8ff89a672de5b4e2c">requested_call</a>
+</li>
+<li>orphan
+: <a class="el" href="structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08">grpc_winsocket</a>
+</li>
+<li>out
+: <a class="el" href="structhuff__out.html#a2d501bd162d6a335c51b2250e3f1bfef">huff_out</a>
+</li>
+<li>outbuf
+: <a class="el" href="structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0">grpc_chttp2_transport_writing</a>
+</li>
+<li>outgoing
+: <a class="el" href="structtsi__fake__handshaker.html#aa25567cc12e88a59cbf9ba3b51d90223">tsi_fake_handshaker</a>
+</li>
+<li>outgoing_sopb
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d">grpc_chttp2_stream_global</a>
+</li>
+<li>outgoing_window
+: <a class="el" href="structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7">grpc_chttp2_transport_global</a>
+</li>
+<li>outgoing_window_update
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a">grpc_chttp2_transport_parsing</a>
+</li>
+<li>output
+: <a class="el" href="structframer__state.html#ac6ebee785ebffe4a16a2ccd010ad08d6">framer_state</a>
+, <a class="el" href="structjson__writer__userdata.html#a1f55aaf048a0ff4414110e154133867d">json_writer_userdata</a>
+</li>
+<li>output_buffer
+: <a class="el" href="structsecure__endpoint.html#a901c720fdbd311bbaea1e91b441a0d61">secure_endpoint</a>
+</li>
+<li>output_char
+: <a class="el" href="structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2">grpc_json_writer_vtable</a>
+</li>
+<li>output_length_at_start_of_frame
+: <a class="el" href="structframer__state.html#a268504b075ec06de3ff0abb7ee7e589b">framer_state</a>
+</li>
+<li>output_string
+: <a class="el" href="structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e">grpc_json_writer_vtable</a>
+</li>
+<li>output_string_with_len
+: <a class="el" href="structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd">grpc_json_writer_vtable</a>
+</li>
+<li>outstanding
+: <a class="el" href="structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc">grpc_winsocket_callback_info</a>
+</li>
+<li>outstanding_metadata
+: <a class="el" href="structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0">grpc_chttp2_stream_global</a>
+</li>
+<li>overlapped
+: <a class="el" href="structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09">grpc_winsocket_callback_info</a>
+</li>
+<li>overridden_target_name
+: <a class="el" href="structgrpc__ssl__channel__security__connector.html#aaa9e644fdf517be178f1543922ddbe9a">grpc_ssl_channel_security_connector</a>
+</li>
+<li>owned_metadata
+: <a class="el" href="structgrpc__call.html#a3d2b2ada096589b52bfafa00be6e25b2">grpc_call</a>
+</li>
+<li>owned_metadata_capacity
+: <a class="el" href="structgrpc__call.html#a34cb5caca97e3b28ed0d321d9d38f6c8">grpc_call</a>
+</li>
+<li>owned_metadata_count
+: <a class="el" href="structgrpc__call.html#acc8804b9c6ee72c862e9eba7518a48ee">grpc_call</a>
+</li>
+<li>owning_refs
+: <a class="el" href="structgrpc__completion__queue.html#aae47cbaaca85ca3f9e7cb2317709f8e6">grpc_completion_queue</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>
diff --git a/doc/ref/core.internal/html/functions_p.html b/doc/ref/core.internal/html/functions_p.html
new file mode 100644
index 0000000000..6e0d41b351
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_p.html
@@ -0,0 +1,355 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>p
+: <a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">grpc_arg</a>
+</li>
+<li>parent
+: <a class="el" href="structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba">grpc_json</a>
+</li>
+<li>parser
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61">grpc_chttp2_transport_parsing</a>
+, <a class="el" href="structinternal__request.html#a2de0ab3497414fd48d1a180c4473cfab">internal_request</a>
+</li>
+<li>parser_data
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442">grpc_chttp2_transport_parsing</a>
+</li>
+<li>parsing
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9">grpc_chttp2_stream</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c">grpc_chttp2_transport</a>
+</li>
+<li>parsing_active
+: <a class="el" href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3">grpc_chttp2_transport</a>
+</li>
+<li>parsing_stream_map
+: <a class="el" href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937">grpc_chttp2_transport</a>
+</li>
+<li>path
+: <a class="el" href="structcall__data.html#a6bcb3a806a24c9818f835251b97c01f8">call_data</a>
+, <a class="el" href="structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa">grpc_httpcli_request</a>
+, <a class="el" href="structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f">grpc_uri</a>
+, <a class="el" href="structregistered__call.html#a9abf9cadc3985fe0eacd827dcb857ea5">registered_call</a>
+</li>
+<li>path_key
+: <a class="el" href="structchannel__data.html#ad664631571a7160913f62e95368bbb2d">channel_data</a>
+</li>
+<li>path_string
+: <a class="el" href="structchannel__data.html#a3b2675d97ec1d95dc4cde4db5b00e0e7">channel_data</a>
+, <a class="el" href="structgrpc__channel.html#ad55dee766f5bae6c7bc00ad07bcb4b04">grpc_channel</a>
+</li>
+<li>peer
+: <a class="el" href="structgrpc__ssl__channel__security__connector.html#a8624078f54a0cf3dfdd47f4a0ac81042">grpc_ssl_channel_security_connector</a>
+</li>
+<li>peer_identity_property_name
+: <a class="el" href="structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33">grpc_auth_context</a>
+</li>
+<li>peer_string
+: <a class="el" href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7">grpc_chttp2_transport</a>
+</li>
+<li>pem_cert_chain
+: <a class="el" href="structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696">grpc_ssl_config</a>
+</li>
+<li>pem_cert_chain_size
+: <a class="el" href="structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03">grpc_ssl_config</a>
+</li>
+<li>pem_cert_chains
+: <a class="el" href="structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270">grpc_ssl_server_config</a>
+</li>
+<li>pem_cert_chains_sizes
+: <a class="el" href="structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0">grpc_ssl_server_config</a>
+</li>
+<li>pem_private_key
+: <a class="el" href="structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a">grpc_ssl_config</a>
+</li>
+<li>pem_private_key_size
+: <a class="el" href="structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820">grpc_ssl_config</a>
+</li>
+<li>pem_private_keys
+: <a class="el" href="structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49">grpc_ssl_server_config</a>
+</li>
+<li>pem_private_keys_sizes
+: <a class="el" href="structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c">grpc_ssl_server_config</a>
+</li>
+<li>pem_root_certs
+: <a class="el" href="structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41">grpc_ssl_config</a>
+, <a class="el" href="structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d">grpc_ssl_server_config</a>
+</li>
+<li>pem_root_certs_size
+: <a class="el" href="structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561">grpc_ssl_config</a>
+, <a class="el" href="structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121">grpc_ssl_server_config</a>
+</li>
+<li>pending_closures_head
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84">grpc_chttp2_transport_global</a>
+</li>
+<li>pending_closures_tail
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf">grpc_chttp2_transport_global</a>
+</li>
+<li>pending_events
+: <a class="el" href="structgrpc__completion__queue.html#a613cc61628fa742f363fb3125e8550db">grpc_completion_queue</a>
+</li>
+<li>pending_head
+: <a class="el" href="structrequest__matcher.html#aa302d9766527338ff4b416b59bbe1db2">request_matcher</a>
+</li>
+<li>pending_next
+: <a class="el" href="structcall__data.html#ad76af7080f636ebaa53a1575af62094e">call_data</a>
+</li>
+<li>pending_picks
+: <a class="el" href="structpick__first__lb__policy.html#a017af289ea4d9b9b392eadec3356ff56">pick_first_lb_policy</a>
+</li>
+<li>pending_tail
+: <a class="el" href="structrequest__matcher.html#a87b7e22827aea02c49a435f8aff3cdfe">request_matcher</a>
+</li>
+<li>perform_op
+: <a class="el" href="structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4">grpc_transport_vtable</a>
+</li>
+<li>perform_stream_op
+: <a class="el" href="structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab">grpc_transport_vtable</a>
+</li>
+<li>persistence_factor
+: <a class="el" href="structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602">grpc_time_averaged_stats</a>
+</li>
+<li>phase
+: <a class="el" href="structstate__watcher.html#a02cd41caaad234931890c2f4740bf345">state_watcher</a>
+</li>
+<li>pick
+: <a class="el" href="structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f">grpc_lb_policy_vtable</a>
+</li>
+<li>picked_channel
+: <a class="el" href="structcall__data.html#a96231ab5cca907d5638687fc2d64cccb">call_data</a>
+</li>
+<li>ping
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30">grpc_chttp2_transport_parsing</a>
+</li>
+<li>ping_counter
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7">grpc_chttp2_transport_global</a>
+</li>
+<li>pings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b">grpc_chttp2_transport_parsing</a>
+</li>
+<li>pointer
+: <a class="el" href="structgrpc__arg.html#a85b5bbfbdec09ae46cff15628096137a">grpc_arg</a>
+</li>
+<li>pollset
+: <a class="el" href="structcall__data.html#ab3a66a414a73ad49d82a87935ec0c08e">call_data</a>
+, <a class="el" href="structcompute__engine__detector.html#aadec91057716658d818c9dd3ead90ccd">compute_engine_detector</a>
+, <a class="el" href="structgrpc__completion__queue.html#aea3ae4f771564833e6082e50c4ebbbdc">grpc_completion_queue</a>
+, <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a826b0b290b5335867fb0299e75006083">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6">grpc_fd_watcher</a>
+, <a class="el" href="structinternal__request.html#aba6c008fc3a067827acf1dea8d88dec7">internal_request</a>
+, <a class="el" href="structpending__pick.html#afcad270e19b4e1e0a709426ca42e01fe">pending_pick</a>
+, <a class="el" href="structverifier__cb__ctx.html#a66c16d6c5a98e27b0bdc901f4f2f010a">verifier_cb_ctx</a>
+, <a class="el" href="structwaiting__for__connect.html#a18622a8e1fc008c3c9e97d0ae72a4369">waiting_for_connect</a>
+</li>
+<li>pollset_capacity
+: <a class="el" href="structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7">grpc_pollset_set</a>
+</li>
+<li>pollset_count
+: <a class="el" href="structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9">grpc_pollset_set</a>
+</li>
+<li>pollset_set
+: <a class="el" href="structchannel__data.html#ac98d4251e7919399dc6504b3ac6d8977">channel_data</a>
+, <a class="el" href="structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2">grpc_httpcli_context</a>
+, <a class="el" href="structgrpc__subchannel.html#a5d4cf69a350aa223319ed1d916ae55d0">grpc_subchannel</a>
+</li>
+<li>pollsets
+: <a class="el" href="structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb">grpc_pollset_set</a>
+, <a class="el" href="structgrpc__server.html#a747c9f6abd58918d40735615ad95e434">grpc_server</a>
+</li>
+<li>prev
+: <a class="el" href="structcall__link.html#abbc2f63926a688bd3fc03f5df8705bc3">call_link</a>
+, <a class="el" href="structchannel__data.html#afbde4416755c3c9a0b7d0021e8e290c5">channel_data</a>
+, <a class="el" href="structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97">grpc_alarm</a>
+, <a class="el" href="structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6">grpc_chttp2_outstanding_ping</a>
+, <a class="el" href="structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400">grpc_chttp2_stream_link</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465">grpc_fd_watcher</a>
+, <a class="el" href="structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d">grpc_iomgr_object</a>
+, <a class="el" href="structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee">grpc_json</a>
+, <a class="el" href="structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44">grpc_kick_fd_info</a>
+, <a class="el" href="structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0">grpc_linked_mdelem</a>
+</li>
+<li>private_key
+: <a class="el" href="structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2">grpc_auth_json_key</a>
+, <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72">grpc_ssl_pem_key_cert_pair</a>
+</li>
+<li>private_key_id
+: <a class="el" href="structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4">grpc_auth_json_key</a>
+</li>
+<li>process_bytes_from_peer
+: <a class="el" href="structtsi__handshaker__vtable.html#aefed0ec53fa68de5417c720357c50a38">tsi_handshaker_vtable</a>
+</li>
+<li>properties
+: <a class="el" href="structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7">grpc_auth_context</a>
+, <a class="el" href="structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a">tsi_peer</a>
+</li>
+<li>property_count
+: <a class="el" href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b">grpc_auth_context</a>
+, <a class="el" href="structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8">tsi_peer</a>
+</li>
+<li>protect
+: <a class="el" href="structtsi__frame__protector__vtable.html#aa9c6a8a8c0154365f7a62924e1ad458f">tsi_frame_protector_vtable</a>
+</li>
+<li>protect_flush
+: <a class="el" href="structtsi__frame__protector__vtable.html#a4dc40054ebcebc5d9bc87a63adce0614">tsi_frame_protector_vtable</a>
+</li>
+<li>protect_frame
+: <a class="el" href="structtsi__fake__frame__protector.html#a279c6e7620230ba5c790f7063846dbce">tsi_fake_frame_protector</a>
+</li>
+<li>protector
+: <a class="el" href="structsecure__endpoint.html#a43b8ec6db9164ca64be2b1629822d5ec">secure_endpoint</a>
+</li>
+<li>protector_mu
+: <a class="el" href="structsecure__endpoint.html#a4fa8c5008b701606701d1d93c989961e">secure_endpoint</a>
+</li>
+<li>ptr
+: <a class="el" href="structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009">grpc_pollset</a>
+</li>
+<li>publish_sopb
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe">grpc_chttp2_stream_global</a>
+</li>
+<li>publish_state
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3">grpc_chttp2_stream_global</a>
+</li>
+<li>published
+: <a class="el" href="structsockaddr__resolver.html#a38967133a685f7d20effceaaeec54e5e">sockaddr_resolver</a>
+</li>
+<li>published_cancelled
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be">grpc_chttp2_stream_global</a>
+</li>
+<li>published_state
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665">grpc_chttp2_stream_global</a>
+</li>
+<li>published_version
+: <a class="el" href="structdns__resolver.html#aaf1729e3f0480a378eb4689e6105454b">dns_resolver</a>
+</li>
+<li>pushed
+: <a class="el" href="structgpr__stack__lockfree.html#a2e9bcdf7ab0d5eba90feec6754a7884a">gpr_stack_lockfree</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>
diff --git a/doc/ref/core.internal/html/functions_q.html b/doc/ref/core.internal/html/functions_q.html
new file mode 100644
index 0000000000..99b57985b6
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_q.html
@@ -0,0 +1,136 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_q"></a>- q -</h3><ul>
+<li>qbuf
+: <a class="el" href="structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308">grpc_chttp2_transport_parsing</a>
+</li>
+<li>queue_deadline_cap
+: <a class="el" href="structshard__type.html#a561cd2753aeec34ba62c823ca9471168">shard_type</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>
diff --git a/doc/ref/core.internal/html/functions_r.html b/doc/ref/core.internal/html/functions_r.html
new file mode 100644
index 0000000000..7f0cda92eb
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_r.html
@@ -0,0 +1,356 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li class="current"><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>r
+: <a class="el" href="structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a">grpc_httpcli_parser</a>
+</li>
+<li>random
+: <a class="el" href="structgrpc__subchannel.html#aaf1f3f4c177860b9b000fea1c67e4af6">grpc_subchannel</a>
+</li>
+<li>raw
+: <a class="el" href="structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6">grpc_byte_buffer</a>
+</li>
+<li>rc
+: <a class="el" href="structnew__slice__refcount.html#ac72a90414d0021e8902d5cd9e5010f1b">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#a059da4cf3d67bbf0f8407872ee4c583b">new_with_len_slice_refcount</a>
+</li>
+<li>read_cb
+: <a class="el" href="structsecure__endpoint.html#a1abae10ca6f256c0ebc655e68f1d5a47">secure_endpoint</a>
+</li>
+<li>read_char
+: <a class="el" href="structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca">grpc_json_reader_vtable</a>
+</li>
+<li>read_closed
+: <a class="el" href="structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a">grpc_chttp2_stream_global</a>
+</li>
+<li>read_fd
+: <a class="el" href="structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86">grpc_wakeup_fd_info</a>
+</li>
+<li>read_info
+: <a class="el" href="structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb">grpc_winsocket</a>
+</li>
+<li>read_staging_buffer
+: <a class="el" href="structsecure__endpoint.html#acb9f223fa1653bb697b63e21226c2915">secure_endpoint</a>
+</li>
+<li>read_state
+: <a class="el" href="structgrpc__call.html#a9f26a9a6519f11d88d97cd0b1f92c440">grpc_call</a>
+</li>
+<li>read_user_data
+: <a class="el" href="structsecure__endpoint.html#ae9adc2f043f1b89821897f926bd95ff5">secure_endpoint</a>
+</li>
+<li>read_watcher
+: <a class="el" href="structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27">grpc_fd</a>
+</li>
+<li>reading_action
+: <a class="el" href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885">grpc_chttp2_transport</a>
+</li>
+<li>reading_message
+: <a class="el" href="structgrpc__call.html#a9db5a5b3f304f49fef8c5ed3ce754761">grpc_call</a>
+</li>
+<li>readst
+: <a class="el" href="structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0">grpc_fd</a>
+</li>
+<li>reason_bytes
+: <a class="el" href="structgrpc__chttp2__rst__stream__parser.html#a254db3891d5bf60dec2f27a5ee6ef496">grpc_chttp2_rst_stream_parser</a>
+</li>
+<li>received_close
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b">grpc_chttp2_stream_parsing</a>
+</li>
+<li>receiving
+: <a class="el" href="structgrpc__call.html#a95e4aaa4d6cd6b6f1568282178ba3682">grpc_call</a>
+</li>
+<li>recv_close_on_server
+: <a class="el" href="structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1">grpc_op</a>
+</li>
+<li>recv_done_closure
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c">grpc_chttp2_stream_global</a>
+</li>
+<li>recv_initial_metadata
+: <a class="el" href="structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749">grpc_op</a>
+</li>
+<li>recv_message
+: <a class="el" href="uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1">grpc_op</a>
+</li>
+<li>recv_metadata
+: <a class="el" href="uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8">grpc_ioreq_data</a>
+</li>
+<li>recv_ops
+: <a class="el" href="structcall__data.html#a5a77f05f0ebe7e2fa851cb29f4175fd2">call_data</a>
+, <a class="el" href="structgrpc__call.html#a77c3749f20284b1a9a836286a470a08e">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991">grpc_transport_stream_op</a>
+</li>
+<li>recv_state
+: <a class="el" href="structcall__data.html#a58e1bd0d7508078f1e2ffae518f284c9">call_data</a>
+, <a class="el" href="structgrpc__call.html#a23a473fb241cc663a16873d18690535b">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc">grpc_transport_stream_op</a>
+</li>
+<li>recv_status
+: <a class="el" href="uniongrpc__ioreq__data.html#ab9788c1a37dea6052f004111bc67d6e7">grpc_ioreq_data</a>
+</li>
+<li>recv_status_details
+: <a class="el" href="uniongrpc__ioreq__data.html#acddc8869b041b695c617cb46e941859e">grpc_ioreq_data</a>
+</li>
+<li>recv_status_on_client
+: <a class="el" href="structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3">grpc_op</a>
+</li>
+<li>ref
+: <a class="el" href="structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7">gpr_slice_refcount</a>
+, <a class="el" href="structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15">grpc_connector_vtable</a>
+, <a class="el" href="structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527">grpc_resolver_factory_vtable</a>
+, <a class="el" href="structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed">grpc_subchannel_factory_vtable</a>
+, <a class="el" href="structsecure__endpoint.html#a02863c0d02a5776bee65747c5553f517">secure_endpoint</a>
+</li>
+<li>refcnt
+: <a class="el" href="structinternal__metadata.html#af658b2849de44285d529f4aa4da956f4">internal_metadata</a>
+</li>
+<li>refcount
+: <a class="el" href="structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24">gpr_slice</a>
+, <a class="el" href="structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae">grpc_auth_context</a>
+, <a class="el" href="structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6">grpc_credentials</a>
+, <a class="el" href="structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694">grpc_credentials_md_store</a>
+, <a class="el" href="structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19">grpc_security_connector</a>
+, <a class="el" href="structgrpc__server__secure__state.html#ae73c249bbe0e5c30a103fe4fa2ec1f13">grpc_server_secure_state</a>
+, <a class="el" href="structinternal__string.html#a9e0174af2b64a5b66e09080c92a0aec2">internal_string</a>
+</li>
+<li>refcounted
+: <a class="el" href="structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102">gpr_slice</a>
+</li>
+<li>refresh_token
+: <a class="el" href="structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12">grpc_auth_refresh_token</a>
+, <a class="el" href="structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb">grpc_refresh_token_credentials</a>
+</li>
+<li>refs
+: <a class="el" href="structconnection.html#a4f45cf20601ceebe1381dc83f1dbf516">connection</a>
+, <a class="el" href="structconnector.html#ab2f6962cb7eff201b6b79655d8bace00">connector</a>
+, <a class="el" href="structdns__resolver.html#ab33e01167cedc1126007318a3c71238e">dns_resolver</a>
+, <a class="el" href="structgrpc__channel.html#acc936d967cd122b7b5300387e8ea0abe">grpc_channel</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__client__config.html#a176869d426cb1799e6eeebeb9cefd7e2">grpc_client_config</a>
+, <a class="el" href="structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485">grpc_lb_policy</a>
+, <a class="el" href="structgrpc__mdctx.html#a2764b3ed2bf9e59845aa9e1f02857d25">grpc_mdctx</a>
+, <a class="el" href="structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233">grpc_resolver</a>
+, <a class="el" href="structgrpc__subchannel.html#ab4a1c366594861d4aa0da8b4ec9a3475">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__call.html#a74891e108fd0a94a2915e828c2a172c5">grpc_subchannel_call</a>
+, <a class="el" href="structinternal__string.html#a870bec6b963c65fedd1290747c207650">internal_string</a>
+, <a class="el" href="structmalloc__refcount.html#adcdbbc75e835cbf6fc50025880f5e569">malloc_refcount</a>
+, <a class="el" href="structmerge__args__factory.html#aae69ffa567a7a04cf4c0f9f8eba0b852">merge_args_factory</a>
+, <a class="el" href="structnew__slice__refcount.html#a2baa2f77ff0fd04fe3aa6b80c573e8fe">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#ae68449b1a65da5e9561a4762f5601fa3">new_with_len_slice_refcount</a>
+, <a class="el" href="structsockaddr__resolver.html#ae6ff58914bcf9afa2399f39fdd27ad5f">sockaddr_resolver</a>
+, <a class="el" href="structsubchannel__factory.html#a32ce0e8c21b78563576c8a620251a3f5">subchannel_factory</a>
+</li>
+<li>refst
+: <a class="el" href="structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1">grpc_fd</a>
+</li>
+<li>registered
+: <a class="el" href="structrequested__call.html#a7ee06556aae0a6e22ca157a961c484ce">requested_call</a>
+</li>
+<li>registered_call_mu
+: <a class="el" href="structgrpc__channel.html#aa59a21ba43df1a848efbc177cd5725cd">grpc_channel</a>
+</li>
+<li>registered_calls
+: <a class="el" href="structgrpc__channel.html#ac92f7c7b4dd87743f30a16aaaf91f061">grpc_channel</a>
+</li>
+<li>registered_method
+: <a class="el" href="structrequested__call.html#ae210a8bd23019d2008f1eb9ab1320eae">requested_call</a>
+</li>
+<li>registered_method_max_probes
+: <a class="el" href="structchannel__data.html#aa9b814136d8be896321481e78098008b">channel_data</a>
+</li>
+<li>registered_method_slots
+: <a class="el" href="structchannel__data.html#a707bff2830ad502cdd36ec18235f12e1">channel_data</a>
+</li>
+<li>registered_methods
+: <a class="el" href="structchannel__data.html#a0c63e5d9500bc02961af18685479fc89">channel_data</a>
+, <a class="el" href="structgrpc__server.html#addf8e1f57942da0e5f7235668c0968bd">grpc_server</a>
+</li>
+<li>regress_weight
+: <a class="el" href="structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d">grpc_time_averaged_stats</a>
+</li>
+<li>remaining_input
+: <a class="el" href="structjson__reader__userdata.html#a3535b10b322fe1063463bbddadcbad61">json_reader_userdata</a>
+</li>
+<li>remaining_slice_bytes
+: <a class="el" href="structcall__data.html#a69fca2329317c8cf3d9c215334b2aa40">call_data</a>
+</li>
+<li>request_data
+: <a class="el" href="structgrpc__call.html#a7d8e4ea86a2539b59f762ba97652bd8d">grpc_call</a>
+</li>
+<li>request_flags
+: <a class="el" href="structgrpc__call.html#a43f9cd5720841b99ea69fd94aed0ee13">grpc_call</a>
+</li>
+<li>request_freelist
+: <a class="el" href="structgrpc__server.html#a70a23bf1b0e885d055f0c45382e7110a">grpc_server</a>
+</li>
+<li>request_matcher
+: <a class="el" href="structregistered__method.html#af4a01615a9970b99e38cacf58ed49da0">registered_method</a>
+</li>
+<li>request_metadata_creds
+: <a class="el" href="structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d">grpc_channel_security_connector</a>
+</li>
+<li>request_set
+: <a class="el" href="structgrpc__call.html#adace21c70dcd672521c08f0465e33c95">grpc_call</a>
+</li>
+<li>request_text
+: <a class="el" href="structinternal__request.html#a17b242a8f7682f8438f357c5c7f05f67">internal_request</a>
+</li>
+<li>requested_calls
+: <a class="el" href="structgrpc__server.html#ac582d8e154ce4f8a326bcf3a76f235e6">grpc_server</a>
+</li>
+<li>requests
+: <a class="el" href="structrequest__killer.html#ae9c50f145796c60343bdc4100a79c231">request_killer</a>
+, <a class="el" href="structrequest__matcher.html#a5f69adf001614b2fda3756100b3ba60d">request_matcher</a>
+</li>
+<li>resolved_config
+: <a class="el" href="structdns__resolver.html#a368c90c0b364fd6b3459ca6ef25cfd6d">dns_resolver</a>
+</li>
+<li>resolved_version
+: <a class="el" href="structdns__resolver.html#aee7098ec311fd223ceb6e57e8bfdd2fc">dns_resolver</a>
+</li>
+<li>resolver
+: <a class="el" href="structchannel__data.html#a8cf393ab5da1a500d6c6f8543c408682">channel_data</a>
+</li>
+<li>resolving
+: <a class="el" href="structdns__resolver.html#abc4a241cfa112a6b430d39749a2f6faf">dns_resolver</a>
+</li>
+<li>result
+: <a class="el" href="structconnector.html#a9b15773040e783143121ad19ad3582d8">connector</a>
+, <a class="el" href="structtsi__fake__handshaker.html#a7dc6f4f013c03d3aa669c3a2fb9a761c">tsi_fake_handshaker</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a12ec1007039ee18e12dee8b2fd2670b7">tsi_ssl_handshaker</a>
+</li>
+<li>root_channel_data
+: <a class="el" href="structgrpc__server.html#ab9a64dbadf2655aa804caae0fbefe47d">grpc_server</a>
+</li>
+<li>rst_stream
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04">grpc_chttp2_transport_parsing</a>
+</li>
+<li>rst_stream_reason
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2">grpc_chttp2_stream_parsing</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>
diff --git a/doc/ref/core.internal/html/functions_s.html b/doc/ref/core.internal/html/functions_s.html
new file mode 100644
index 0000000000..33e83f3d8b
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_s.html
@@ -0,0 +1,533 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>saw_rst_stream
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b">grpc_chttp2_stream_parsing</a>
+</li>
+<li>sc
+: <a class="el" href="structgrpc__server__secure__state.html#ad912fd9fa1531a5f016f83e49c768512">grpc_server_secure_state</a>
+</li>
+<li>scheme
+: <a class="el" href="structcall__data.html#aa63048a662dd766734726542dba0f27a">call_data</a>
+, <a class="el" href="structchannel__data.html#ac7a621172aad5d1876691fb987a670e6">channel_data</a>
+, <a class="el" href="structgrpc__uri.html#a6163de89ece765552254810174fdfc32">grpc_uri</a>
+, <a class="el" href="structregistered__resolver.html#a8b53ba24e4ee032d66224f3588bceaba">registered_resolver</a>
+</li>
+<li>scope
+: <a class="el" href="structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f">grpc_service_account_credentials</a>
+</li>
+<li>secure_endpoint
+: <a class="el" href="structgrpc__secure__transport__setup.html#ae7e2e65bef91a9804fe95a47c4bfb8cb">grpc_secure_transport_setup</a>
+</li>
+<li>secure_peer_name
+: <a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a12192010723cff00bb4e87c9704ad768">grpc_httpcli_ssl_channel_security_connector</a>
+</li>
+<li>security_connector
+: <a class="el" href="structchannel__data.html#a78473c478d6fbbb716fb77864c94efd6">channel_data</a>
+, <a class="el" href="structconnector.html#a83d8a5c7e3b72cdee46c36cca81d5cb0">connector</a>
+, <a class="el" href="structsubchannel__factory.html#a9b700fff25d9d9c6739dfbed18ce5e2b">subchannel_factory</a>
+</li>
+<li>security_context_set
+: <a class="el" href="structcall__data.html#a74f306e56988bd7e20d0116829ce4128">call_data</a>
+</li>
+<li>seen_authority
+: <a class="el" href="structcall__data.html#a5f3505d88df4cba5a1ed776c46b88b7e">call_data</a>
+</li>
+<li>seen_goaway
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829">grpc_chttp2_transport_global</a>
+</li>
+<li>seen_path
+: <a class="el" href="structcall__data.html#acb1130d03f1fd0db1cf0d8d1fc10866e">call_data</a>
+</li>
+<li>seen_post
+: <a class="el" href="structcall__data.html#aea6244f4fd9d2e7ccb5615b9f5ea5fe0">call_data</a>
+</li>
+<li>seen_scheme
+: <a class="el" href="structcall__data.html#a502cf8ae568f38ae501877458e399796">call_data</a>
+</li>
+<li>seen_te_trailers
+: <a class="el" href="structcall__data.html#a54d050afd0c9cc8d05a561034602f280">call_data</a>
+</li>
+<li>selected
+: <a class="el" href="structpick__first__lb__policy.html#ad4fd8d1ef626d9c42f631317921634ef">pick_first_lb_policy</a>
+</li>
+<li>send_closed
+: <a class="el" href="structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0">grpc_chttp2_stream_writing</a>
+</li>
+<li>send_deadline
+: <a class="el" href="structgrpc__call.html#a5de7c68ffa6939ff2e1c43c4cd418315">grpc_call</a>
+</li>
+<li>send_done_closure
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905">grpc_chttp2_stream_global</a>
+</li>
+<li>send_goaway
+: <a class="el" href="structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704">grpc_transport_op</a>
+</li>
+<li>send_initial_metadata
+: <a class="el" href="structgrpc__call.html#a96ac69dc425de5924edd871f93338112">grpc_call</a>
+, <a class="el" href="structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83">grpc_op</a>
+</li>
+<li>send_initial_metadata_count
+: <a class="el" href="structgrpc__call.html#abb6adc9d5f666a056c89172f506fcc3d">grpc_call</a>
+</li>
+<li>send_message
+: <a class="el" href="uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434">grpc_op</a>
+</li>
+<li>send_metadata
+: <a class="el" href="uniongrpc__ioreq__data.html#a4b9337cc24e8b42caa5c1502be083952">grpc_ioreq_data</a>
+</li>
+<li>send_ops
+: <a class="el" href="structgrpc__call.html#ab17467642afa4f6c1c27bb9013093592">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691">grpc_transport_stream_op</a>
+</li>
+<li>send_ping
+: <a class="el" href="structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286">grpc_transport_op</a>
+</li>
+<li>send_status
+: <a class="el" href="uniongrpc__ioreq__data.html#a3711b0c39c293284a4e4897f74c974ab">grpc_ioreq_data</a>
+</li>
+<li>send_status_from_server
+: <a class="el" href="structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb">grpc_op</a>
+</li>
+<li>sending
+: <a class="el" href="structgrpc__call.html#a7d64e836e0421c8129ac75e477271ef8">grpc_call</a>
+</li>
+<li>sent_authority
+: <a class="el" href="structcall__data.html#aab616ade799853e16e5e35ee3a16ffbc">call_data</a>
+</li>
+<li>sent_goaway
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8">grpc_chttp2_transport_global</a>
+</li>
+<li>sent_initial_metadata
+: <a class="el" href="structcall__data.html#aded44c7ecaa861e2a4a39380b172368a">call_data</a>
+</li>
+<li>sent_local_settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d">grpc_chttp2_transport_global</a>
+</li>
+<li>sent_status
+: <a class="el" href="structcall__data.html#a8b65de65391e41536ccf959f6b6a751d">call_data</a>
+</li>
+<li>server
+: <a class="el" href="structchannel__data.html#a52e6bd3f94f7bc6b7a5696532f747d8c">channel_data</a>
+, <a class="el" href="structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2">grpc_endpoint_pair</a>
+, <a class="el" href="structgrpc__server__secure__state.html#a81df8ea928391a76a30197cce0235455">grpc_server_secure_state</a>
+, <a class="el" href="structrequested__call.html#ad3fbf352005312d002348e26038d8fb0">requested_call</a>
+</li>
+<li>server_on_recv
+: <a class="el" href="structcall__data.html#aa02e9d60f24965068bc073ec4870bcb4">call_data</a>
+</li>
+<li>server_registered_method
+: <a class="el" href="structchannel__registered__method.html#a3d7e5ca9b211c76e489ddc6602da3509">channel_registered_method</a>
+</li>
+<li>service_url
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a7041c3ef3e78168d24699294470422e4">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>set_accept_stream
+: <a class="el" href="structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8">grpc_transport_op</a>
+</li>
+<li>set_accept_stream_user_data
+: <a class="el" href="structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f">grpc_transport_op</a>
+</li>
+<li>set_false
+: <a class="el" href="structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6">grpc_json_reader_vtable</a>
+</li>
+<li>set_key
+: <a class="el" href="structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7">grpc_json_reader_vtable</a>
+</li>
+<li>set_null
+: <a class="el" href="structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff">grpc_json_reader_vtable</a>
+</li>
+<li>set_number
+: <a class="el" href="structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596">grpc_json_reader_vtable</a>
+</li>
+<li>set_state_mu
+: <a class="el" href="structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30">grpc_fd</a>
+</li>
+<li>set_string
+: <a class="el" href="structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4">grpc_json_reader_vtable</a>
+</li>
+<li>set_true
+: <a class="el" href="structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e">grpc_json_reader_vtable</a>
+</li>
+<li>set_value
+: <a class="el" href="uniongrpc__ioreq__data.html#aedb6839ded1488cf3bd6905345fba0d2">grpc_ioreq_data</a>
+</li>
+<li>settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ab25f0c4b45d1c12d29eaf856e7b1b4a7">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31">grpc_chttp2_transport_parsing</a>
+</li>
+<li>settings_ack_received
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586">grpc_chttp2_transport_parsing</a>
+</li>
+<li>settings_updated
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013">grpc_chttp2_transport_parsing</a>
+</li>
+<li>severity
+: <a class="el" href="structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc">gpr_log_func_args</a>
+</li>
+<li>shard_queue_index
+: <a class="el" href="structshard__type.html#a2024ca8c92ce9d378aa5aa551126a9c1">shard_type</a>
+</li>
+<li>shutdown
+: <a class="el" href="structgrpc__completion__queue.html#a4d6f10502b79874124dc63169f4366d6">grpc_completion_queue</a>
+, <a class="el" href="structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6">grpc_endpoint_vtable</a>
+, <a class="el" href="structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a">grpc_fd</a>
+, <a class="el" href="structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6">grpc_lb_policy_vtable</a>
+, <a class="el" href="structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae">grpc_resolver_vtable</a>
+, <a class="el" href="structpick__first__lb__policy.html#a2818821a8daa60e92637357811aea7d4">pick_first_lb_policy</a>
+</li>
+<li>shutdown_called
+: <a class="el" href="structgrpc__completion__queue.html#a81ae0a3f77b40e2a21370e641e9f73e4">grpc_completion_queue</a>
+</li>
+<li>shutdown_closure
+: <a class="el" href="structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a">grpc_winsocket</a>
+</li>
+<li>shutdown_closures
+: <a class="el" href="structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa">grpc_fd</a>
+</li>
+<li>shutdown_done_arg
+: <a class="el" href="structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d">grpc_pollset</a>
+</li>
+<li>shutdown_done_cb
+: <a class="el" href="structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7">grpc_pollset</a>
+</li>
+<li>shutdown_flag
+: <a class="el" href="structgrpc__server.html#aac6a14f451724678ba63c9f9a153dc33">grpc_server</a>
+</li>
+<li>shutdown_published
+: <a class="el" href="structgrpc__server.html#a6d04ab898c0d58f111975211c8d202ba">grpc_server</a>
+</li>
+<li>shutdown_tags
+: <a class="el" href="structgrpc__server.html#ab0ca72c038ccce56c33539dc5f321864">grpc_server</a>
+</li>
+<li>shutting_down
+: <a class="el" href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">grpc_pollset</a>
+</li>
+<li>signature
+: <a class="el" href="structverifier__cb__ctx.html#a78cd1bf7eb4ac6484ceeaf778ad6e2df">verifier_cb_ctx</a>
+</li>
+<li>signed_data
+: <a class="el" href="structverifier__cb__ctx.html#a65de5acf17b58f8a142466750e1b558b">verifier_cb_ctx</a>
+</li>
+<li>simple
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f">grpc_chttp2_transport_parsing</a>
+</li>
+<li>size
+: <a class="el" href="structtsi__fake__frame.html#a59d8fa5e8e076fca91b8c1fa1572d9cf">tsi_fake_frame</a>
+</li>
+<li>sizeof_call_data
+: <a class="el" href="structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc">grpc_channel_filter</a>
+</li>
+<li>sizeof_channel_data
+: <a class="el" href="structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4">grpc_channel_filter</a>
+</li>
+<li>sizeof_stream
+: <a class="el" href="structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f">grpc_transport_vtable</a>
+</li>
+<li>slice
+: <a class="el" href="structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e">grpc_mdstr</a>
+, <a class="el" href="structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee">grpc_stream_op</a>
+, <a class="el" href="structinternal__string.html#aafd8da96270b4377198d99bc51f2ac9b">internal_string</a>
+, <a class="el" href="structshutdown__cleanup__args.html#ac171669ceb843c70885925c549867e5c">shutdown_cleanup_args</a>
+</li>
+<li>slice_buffer
+: <a class="el" href="structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae">grpc_byte_buffer</a>
+</li>
+<li>slices
+: <a class="el" href="structcall__data.html#a765c539d2737d435cf434241edda82f9">call_data</a>
+, <a class="el" href="structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba">gpr_slice_buffer</a>
+</li>
+<li>socket
+: <a class="el" href="structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d">grpc_winsocket</a>
+</li>
+<li>sopb
+: <a class="el" href="structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120">grpc_chttp2_stream_writing</a>
+</li>
+<li>ssl
+: <a class="el" href="structtsi__ssl__frame__protector.html#a64129d003fe330c56c39496361bd9e5f">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a1dbdafd7f92dad04fe09c4648e5ee952">tsi_ssl_handshaker</a>
+</li>
+<li>ssl_context
+: <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a455d6ff556cd36c93ab91a0ef013ed9a">tsi_ssl_client_handshaker_factory</a>
+</li>
+<li>ssl_context_count
+: <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a6aa4d962f3466b7cb16abd04b0266c2c">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>ssl_context_x509_subject_names
+: <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a9877f06340c6acaa2db8deb38ac03209">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>ssl_contexts
+: <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a31163c22828f9e7467a4cf8ec6e79244">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>start
+: <a class="el" href="structlistener.html#a5fb6be7cbe102bcb09c1d26db4a26fb2">listener</a>
+</li>
+<li>start_transport_op
+: <a class="el" href="structgrpc__channel__filter.html#aa3508daf2442c8bc11529d0295798819">grpc_channel_filter</a>
+</li>
+<li>start_transport_stream_op
+: <a class="el" href="structgrpc__channel__filter.html#a089c1e5997b329703ccaaf633722a6c5">grpc_channel_filter</a>
+</li>
+<li>started_picking
+: <a class="el" href="structpick__first__lb__policy.html#a8eff3397ca43852b04a3be5b5e03a6ce">pick_first_lb_policy</a>
+</li>
+<li>state
+: <a class="el" href="structcall__data.html#a394da9a4876df32b91b8891303695a5d">call_data</a>
+, <a class="el" href="structgpr__cmdline.html#acb165b9b6f98c942dd65d66f1c95a806">gpr_cmdline</a>
+, <a class="el" href="structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9">gpr_event</a>
+, <a class="el" href="structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab">grpc_chttp2_data_parser</a>
+, <a class="el" href="structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589">grpc_chttp2_goaway_parser</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4">grpc_chttp2_settings_parser</a>
+, <a class="el" href="structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305">grpc_httpcli_parser</a>
+, <a class="el" href="structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245">grpc_json_reader</a>
+, <a class="el" href="structlb__policy__connectivity__watcher.html#ac37e7a5f39e7f99381837601b8d0d7d5">lb_policy_connectivity_watcher</a>
+, <a class="el" href="structstate__watcher.html#a3a1c09d1740e9cc49f81e4ac4f8bf4bd">state_watcher</a>
+</li>
+<li>state_mu
+: <a class="el" href="structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551">grpc_winsocket</a>
+</li>
+<li>state_tracker
+: <a class="el" href="structchannel__data.html#ab56a403060ce2596d204cc024baea99d">channel_data</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__subchannel.html#af9e337eebe13100918b0c1178233d64d">grpc_subchannel</a>
+, <a class="el" href="structpick__first__lb__policy.html#a4b686da7cdddd0893e3d36c213bd274a">pick_first_lb_policy</a>
+</li>
+<li>static_ents
+: <a class="el" href="structgrpc__chttp2__hptbl.html#afe1cceb7c0988d6c29df983ad3764344">grpc_chttp2_hptbl</a>
+</li>
+<li>stats
+: <a class="el" href="structshard__type.html#a700e0afbcbed737607bac82970c61601">shard_type</a>
+</li>
+<li>status
+: <a class="el" href="structcall__data.html#af1e73bf35274521a98f39316fddf3deb">call_data</a>
+, <a class="el" href="structchannel__data.html#aed19c41ead3b51daafdbf78a983c1877">channel_data</a>
+, <a class="el" href="structgrpc__call.html#ac4f49d27f54bd1436da3ad7cfe662639">grpc_call</a>
+, <a class="el" href="structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243">grpc_httpcli_response</a>
+, <a class="el" href="structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4">grpc_op</a>
+</li>
+<li>status_details
+: <a class="el" href="structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6">grpc_op</a>
+</li>
+<li>status_details_capacity
+: <a class="el" href="structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9">grpc_op</a>
+</li>
+<li>status_key
+: <a class="el" href="structchannel__data.html#aa193724e83bed60e8f8f1a7a1cb0ca0f">channel_data</a>
+</li>
+<li>status_link
+: <a class="el" href="structgrpc__call.html#acb6f13c9a524b29da7f4a760332dea6d">grpc_call</a>
+</li>
+<li>status_not_found
+: <a class="el" href="structchannel__data.html#aa61798f024b686a60598011b688a5302">channel_data</a>
+</li>
+<li>status_ok
+: <a class="el" href="structchannel__data.html#a5d2922163981387d63fcc086acc40bc1">channel_data</a>
+</li>
+<li>str
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c">grpc_chttp2_hpack_parser_string</a>
+</li>
+<li>str_grpc_timeout
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c">grpc_chttp2_transport_parsing</a>
+</li>
+<li>stream_id
+: <a class="el" href="structframer__state.html#a568da28436bbdcbf1a1eb321cf064651">framer_state</a>
+</li>
+<li>strgot
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6">grpc_chttp2_hpack_parser</a>
+</li>
+<li>string
+: <a class="el" href="structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8">grpc_arg</a>
+, <a class="el" href="structjson__reader__userdata.html#aab7c5997934c699371c79b5a613a877e">json_reader_userdata</a>
+</li>
+<li>string_add_char
+: <a class="el" href="structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19">grpc_json_reader_vtable</a>
+</li>
+<li>string_add_utf32
+: <a class="el" href="structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612">grpc_json_reader_vtable</a>
+</li>
+<li>string_clear
+: <a class="el" href="structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303">grpc_json_reader_vtable</a>
+</li>
+<li>string_len
+: <a class="el" href="structjson__writer__userdata.html#a321162f4c1f6c7cb60676fa6a1eb3c18">json_writer_userdata</a>
+</li>
+<li>string_ptr
+: <a class="el" href="structjson__reader__userdata.html#a6afccb66b4dac7cb2db6ef4c8d0e073b">json_reader_userdata</a>
+</li>
+<li>strlen
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab">grpc_chttp2_hpack_parser</a>
+</li>
+<li>strs
+: <a class="el" href="structgpr__strvec.html#a6c928c402061e0a51346155669029795">gpr_strvec</a>
+</li>
+<li>strtab
+: <a class="el" href="structgrpc__mdctx.html#ad2eeb34c05c392c75ca79c62e0a91644">grpc_mdctx</a>
+</li>
+<li>strtab_capacity
+: <a class="el" href="structgrpc__mdctx.html#a1ac53c8c3069ff245cd33243094b21af">grpc_mdctx</a>
+</li>
+<li>strtab_count
+: <a class="el" href="structgrpc__mdctx.html#a19a486374bb3cc0c61ad53868423bce5">grpc_mdctx</a>
+</li>
+<li>sub
+: <a class="el" href="structgrpc__jwt__claims.html#a298ff2d584fdee85bd9de0b52c72a1bd">grpc_jwt_claims</a>
+</li>
+<li>subchannel
+: <a class="el" href="structconnection.html#ac46b9b593d187793cf2685550b615dc7">connection</a>
+, <a class="el" href="structstate__watcher.html#ab1de71efe9c462d4692acedd9da69db3">state_watcher</a>
+, <a class="el" href="structwaiting__for__connect.html#a6992a59790cdc05659227b1ea7b8650d">waiting_for_connect</a>
+</li>
+<li>subchannel_call
+: <a class="el" href="structcall__data.html#a68077448625c53fa5dab0a717c0a77b2">call_data</a>
+</li>
+<li>subchannel_factory
+: <a class="el" href="structdns__resolver.html#ad80a689714c3c2d68bba566d1c5ae236">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#ae68e3b93926c4d132ca5c05a752b1e59">sockaddr_resolver</a>
+</li>
+<li>subchannels
+: <a class="el" href="structpick__first__lb__policy.html#a359affbda6360c97745389a1c036afbf">pick_first_lb_policy</a>
+</li>
+<li>success
+: <a class="el" href="structcompleted__request.html#a5512a2663c0d87f40b1e493b0bf9dd6b">completed_request</a>
+, <a class="el" href="structcompute__engine__detector.html#a952441665ae667415c4eed612ec5f25b">compute_engine_detector</a>
+, <a class="el" href="structgrpc__event.html#a99d4215e5df50869af320b1cca5540db">grpc_event</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0">grpc_iomgr_closure</a>
+, <a class="el" href="structreqinfo__master.html#a638b15223a3d12acea6adf081d2a43a9">reqinfo_master</a>
+, <a class="el" href="structstate__watcher.html#a0e2c034f2582615aa9c6949879289cc2">state_watcher</a>
+</li>
+<li>sum
+: <a class="el" href="structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a">gpr_histogram</a>
+</li>
+<li>sum_of_squares
+: <a class="el" href="structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1">gpr_histogram</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>
diff --git a/doc/ref/core.internal/html/functions_t.html b/doc/ref/core.internal/html/functions_t.html
new file mode 100644
index 0000000000..26c27e1bd7
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_t.html
@@ -0,0 +1,236 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>table
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17">grpc_chttp2_hpack_parser</a>
+</li>
+<li>table_elem_size
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a067f49c14e2c169678f44c10a7e4ee2e">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>table_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>table_size
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>tag
+: <a class="el" href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e">grpc_cq_completion</a>
+, <a class="el" href="structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201">grpc_event</a>
+, <a class="el" href="structrequested__call.html#abcebc67ebdd3f7230b72cbb324049ff4">requested_call</a>
+, <a class="el" href="structshutdown__tag.html#a632bfe333648e7440bf13caa5eaa48c0">shutdown_tag</a>
+, <a class="el" href="structstate__watcher.html#a67d44afd79ad20ec97e2e43f538f6d77">state_watcher</a>
+</li>
+<li>tail
+: <a class="el" href="structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620">grpc_chttp2_stream_list</a>
+, <a class="el" href="structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193">grpc_mdelem_list</a>
+</li>
+<li>tail_remote_index
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>target
+: <a class="el" href="structgrpc__channel.html#ac84ed7ccb6f221068ee55b5e6c073543">grpc_channel</a>
+, <a class="el" href="structpending__pick.html#aa395cbb07c193eaa41d0463f46067fec">pending_pick</a>
+, <a class="el" href="structwaiting__for__connect.html#afa5ba6604f746da394b505f116e764f6">waiting_for_connect</a>
+</li>
+<li>target_config
+: <a class="el" href="structdns__resolver.html#a757b9b42d89d961103798397c2cddefb">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#ad9d11ab81955963bff8db90903241efa">sockaddr_resolver</a>
+</li>
+<li>target_name
+: <a class="el" href="structgrpc__ssl__channel__security__connector.html#ac86e0e283bad7b35d30cec32ed042a5b">grpc_ssl_channel_security_connector</a>
+</li>
+<li>target_settings
+: <a class="el" href="structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528">grpc_chttp2_settings_parser</a>
+</li>
+<li>tcp
+: <a class="el" href="structgrpc__server__secure__state.html#a8c4788f633b14cc2d49c26d9172b0b69">grpc_server_secure_state</a>
+</li>
+<li>tcp_endpoint
+: <a class="el" href="structtcp__endpoint__list.html#a1de9aaa649c6d84c81c676171676b862">tcp_endpoint_list</a>
+</li>
+<li>te_trailers
+: <a class="el" href="structcall__data.html#a8cfc1a2d2dab43a5bddc26df4801721b">call_data</a>
+, <a class="el" href="structchannel__data.html#a141ad0e139c47b491a219ad68b263c2b">channel_data</a>
+</li>
+<li>temp
+: <a class="el" href="structhuff__out.html#a29fa27e52be848917a68702c97e75d3b">huff_out</a>
+</li>
+<li>temp_length
+: <a class="el" href="structhuff__out.html#a47f24dd352a07a9a7124319d8222090e">huff_out</a>
+</li>
+<li>timeout_key_str
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>token_expiration
+: <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>token_lifetime
+: <a class="el" href="structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae">grpc_service_account_credentials</a>
+</li>
+<li>top
+: <a class="el" href="structjson__reader__userdata.html#ac4f75823aab9f46c2541424046742c13">json_reader_userdata</a>
+</li>
+<li>trace_id
+: <a class="el" href="structcensus__context.html#af2f543e5253035ca31b883c23453c918">census_context</a>
+</li>
+<li>trailing_metadata
+: <a class="el" href="structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1">grpc_op</a>
+</li>
+<li>trailing_metadata_count
+: <a class="el" href="structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab">grpc_op</a>
+</li>
+<li>transport
+: <a class="el" href="structconnected__channel__channel__data.html#a7f95ecc760083ad9d72bada84f33ca6b">connected_channel_channel_data</a>
+, <a class="el" href="structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9">grpc_connect_out_args</a>
+</li>
+<li>triggered
+: <a class="el" href="structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f">grpc_alarm</a>
+</li>
+<li>tv_nsec
+: <a class="el" href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">gpr_timespec</a>
+</li>
+<li>tv_sec
+: <a class="el" href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">gpr_timespec</a>
+</li>
+<li>typ
+: <a class="el" href="structjose__header.html#a62661b991df1e33a832d0bf7449ab2d4">jose_header</a>
+</li>
+<li>type
+: <a class="el" href="structarg.html#ac42f6b11ab4ceee17be7871636e06dca">arg</a>
+, <a class="el" href="structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4">grpc_arg</a>
+, <a class="el" href="structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52">grpc_auth_json_key</a>
+, <a class="el" href="structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e">grpc_auth_refresh_token</a>
+, <a class="el" href="structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8">grpc_byte_buffer</a>
+, <a class="el" href="structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b">grpc_credentials</a>
+, <a class="el" href="structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7">grpc_event</a>
+, <a class="el" href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e">grpc_json</a>
+, <a class="el" href="structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c">grpc_server_credentials</a>
+, <a class="el" href="structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580">grpc_stream_op</a>
+, <a class="el" href="structrequested__call.html#a45da072fe9d7a970fe7880d9d2671e4c">requested_call</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>
diff --git a/doc/ref/core.internal/html/functions_u.html b/doc/ref/core.internal/html/functions_u.html
new file mode 100644
index 0000000000..28a6f99f25
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_u.html
@@ -0,0 +1,197 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>unannounced_incoming_window
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9">grpc_chttp2_stream_global</a>
+</li>
+<li>unicode_char
+: <a class="el" href="structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562">grpc_json_reader</a>
+</li>
+<li>unicode_high_surrogate
+: <a class="el" href="structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1">grpc_json_reader</a>
+</li>
+<li>unprotect
+: <a class="el" href="structtsi__frame__protector__vtable.html#aa4c1c5ad2e0299585050a3d11247e91e">tsi_frame_protector_vtable</a>
+</li>
+<li>unprotect_frame
+: <a class="el" href="structtsi__fake__frame__protector.html#ac3e7c2d5e9b3f81c75772f328243db00">tsi_fake_frame_protector</a>
+</li>
+<li>unref
+: <a class="el" href="structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00">gpr_slice_refcount</a>
+, <a class="el" href="structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9">grpc_connector_vtable</a>
+, <a class="el" href="structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e">grpc_resolver_factory_vtable</a>
+, <a class="el" href="structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a">grpc_subchannel_factory_vtable</a>
+</li>
+<li>unregistered_request_matcher
+: <a class="el" href="structgrpc__server.html#a8114e3dda6d6f5ec9257b5a5343b9821">grpc_server</a>
+</li>
+<li>unused
+: <a class="el" href="structcall__data.html#ab6ed893c5caa5b86338edf8b97bd77d8">call_data</a>
+, <a class="el" href="structchannel__data.html#af5333a0c2b420d203cbe8a1a5e270efb">channel_data</a>
+, <a class="el" href="structconnected__channel__call__data.html#ab7364ac5f5abf2c67075fd09e829cffd">connected_channel_call_data</a>
+, <a class="el" href="structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c">grpc_pollset_set</a>
+</li>
+<li>url_scheme
+: <a class="el" href="structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca">grpc_security_connector</a>
+</li>
+<li>use_ssl
+: <a class="el" href="structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3">grpc_httpcli_request</a>
+, <a class="el" href="structinternal__request.html#a0d17604038fc0b611296561b66cb46c5">internal_request</a>
+</li>
+<li>user_agent
+: <a class="el" href="structcall__data.html#ab58bbaa2f8f054f606d919abce3f4716">call_data</a>
+, <a class="el" href="structchannel__data.html#a9fd48ef186ac5f36381e9e873a1e2602">channel_data</a>
+</li>
+<li>user_cb
+: <a class="el" href="structverifier__cb__ctx.html#acb4e5c28f3b0d9270a28dc0c730123fa">verifier_cb_ctx</a>
+</li>
+<li>user_data
+: <a class="el" href="structcompleted__request.html#a0f293e59a3e7c87f6cc59694a9b567ac">completed_request</a>
+, <a class="el" href="structgrpc__composite__credentials__metadata__context.html#aa7ca5d9fca93b8a99acc2119f36b8ce6">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__credentials__metadata__request.html#afba92ff6e76a2b87d1b4b6e0d8531b87">grpc_credentials_metadata_request</a>
+, <a class="el" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__secure__transport__setup.html#a8c39ff96c74f4adc29fc0ba7e79f849c">grpc_secure_transport_setup</a>
+, <a class="el" href="structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef">internal_metadata</a>
+, <a class="el" href="structinternal__request.html#aa47b4bb5697930b25831fbc2fc9ae16e">internal_request</a>
+, <a class="el" href="structnew__slice__refcount.html#a0476a0932ddf32f1cdd04cdd585fda68">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#a47821f141ea3ddf0c13dd7d5bed35dda">new_with_len_slice_refcount</a>
+, <a class="el" href="structreqinfo__master.html#aeaa50a715a0fc681a87daae3e3b72c9d">reqinfo_master</a>
+, <a class="el" href="structverifier__cb__ctx.html#a9ceed8c4de3dcf252fdaf7347c0b93a8">verifier_cb_ctx</a>
+</li>
+<li>user_destroy
+: <a class="el" href="structnew__slice__refcount.html#abe796cd680fb136eff9fa49f96bbd3e8">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#ac8dc1c24ebd5fee4f034679b05177755">new_with_len_slice_refcount</a>
+</li>
+<li>user_length
+: <a class="el" href="structnew__with__len__slice__refcount.html#ab9f2fc163ee3e185eda913129ffb4546">new_with_len_slice_refcount</a>
+</li>
+<li>userdata
+: <a class="el" href="structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc">grpc_json_reader</a>
+, <a class="el" href="structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31">grpc_json_writer</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>
diff --git a/doc/ref/core.internal/html/functions_v.html b/doc/ref/core.internal/html/functions_v.html
new file mode 100644
index 0000000000..a2813447f4
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_v.html
@@ -0,0 +1,178 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li class="current"><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>value
+: <a class="el" href="structarg.html#a688d0385c96e5d5d7cb1a7342f9b4497">arg</a>
+, <a class="el" href="structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179">census_stat</a>
+, <a class="el" href="structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1">gpr_gcc_thread_local</a>
+, <a class="el" href="structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798">gpr_msvc_thread_local</a>
+, <a class="el" href="structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a">gpr_stats_counter</a>
+, <a class="el" href="structgrpc__arg.html#ad2be4ee606c82fc084af1661d30f6f7f">grpc_arg</a>
+, <a class="el" href="structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e">grpc_auth_property</a>
+, <a class="el" href="structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4">grpc_call_context_element</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327">grpc_chttp2_settings_parser</a>
+, <a class="el" href="structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841">grpc_credentials_md</a>
+, <a class="el" href="structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa">grpc_httpcli_header</a>
+, <a class="el" href="structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44">grpc_json</a>
+, <a class="el" href="structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1">grpc_mdelem</a>
+, <a class="el" href="structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36">grpc_metadata</a>
+, <a class="el" href="structinternal__metadata.html#abef02b106cd8bcee80c9d5ee375fe537">internal_metadata</a>
+, <a class="el" href="structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6">tsi_peer_property</a>
+</li>
+<li>value_length
+: <a class="el" href="structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101">grpc_auth_property</a>
+, <a class="el" href="structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f">grpc_metadata</a>
+</li>
+<li>values
+: <a class="el" href="structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824">grpc_chttp2_stream_map</a>
+</li>
+<li>verifier
+: <a class="el" href="structverifier__cb__ctx.html#ac60d07b1cc9322f01f2f76f462188737">verifier_cb_ctx</a>
+</li>
+<li>version
+: <a class="el" href="structstate__watcher.html#adb6d0b4ffa782421e6f0898f8b13d4e8">state_watcher</a>
+</li>
+<li>vtable
+: <a class="el" href="structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec">grpc_connector</a>
+, <a class="el" href="structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e">grpc_credentials</a>
+, <a class="el" href="structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7">grpc_endpoint</a>
+, <a class="el" href="structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5">grpc_json_reader</a>
+, <a class="el" href="structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b">grpc_json_writer</a>
+, <a class="el" href="structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a">grpc_lb_policy</a>
+, <a class="el" href="structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887">grpc_pollset</a>
+, <a class="el" href="structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386">grpc_resolver</a>
+, <a class="el" href="structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3">grpc_resolver_factory</a>
+, <a class="el" href="structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1">grpc_security_connector</a>
+, <a class="el" href="structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63">grpc_server_credentials</a>
+, <a class="el" href="structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51">grpc_subchannel_factory</a>
+, <a class="el" href="structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007">grpc_transport</a>
+, <a class="el" href="structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619">tsi_frame_protector</a>
+, <a class="el" href="structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958">tsi_handshaker</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>
diff --git a/doc/ref/core.internal/html/functions_vars.html b/doc/ref/core.internal/html/functions_vars.html
new file mode 100644
index 0000000000..f624f8c077
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars.html
@@ -0,0 +1,275 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>accept_stream
+: <a class="el" href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a">grpc_chttp2_transport</a>
+</li>
+<li>accept_stream_user_data
+: <a class="el" href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f">grpc_chttp2_transport</a>
+</li>
+<li>accepting_stream
+: <a class="el" href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e">grpc_chttp2_transport</a>
+</li>
+<li>access_token_md
+: <a class="el" href="structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09">grpc_access_token_credentials</a>
+, <a class="el" href="structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693">grpc_fake_oauth2_credentials</a>
+, <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>active
+: <a class="el" href="structgrpc__subchannel.html#a9095183eaf77899e3b932d3445cfa45b">grpc_subchannel</a>
+</li>
+<li>active_version
+: <a class="el" href="structgrpc__subchannel.html#a6569eb7df7abc7fd022ff8c1a6ce2ae1">grpc_subchannel</a>
+</li>
+<li>add_fd
+: <a class="el" href="structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5">grpc_pollset_vtable</a>
+</li>
+<li>add_to_pollset
+: <a class="el" href="structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556">grpc_endpoint_vtable</a>
+</li>
+<li>add_to_pollset_set
+: <a class="el" href="structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c">grpc_endpoint_vtable</a>
+</li>
+<li>added_to_iocp
+: <a class="el" href="structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47">grpc_winsocket</a>
+</li>
+<li>addr
+: <a class="el" href="structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__resolved__address.html#a664035b0fc073c4a49f5e7c1cc765c9d">grpc_resolved_address</a>
+, <a class="el" href="structgrpc__subchannel.html#a1133699340905f7c7f8c50fc97591647">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb">grpc_subchannel_args</a>
+, <a class="el" href="structsockaddr__resolver.html#a35fd9ba04c766da4556c76e6f32a6356">sockaddr_resolver</a>
+</li>
+<li>addr_len
+: <a class="el" href="structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__subchannel.html#ab74ce5a1e1067a508e74048ec68aea10">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026">grpc_subchannel_args</a>
+, <a class="el" href="structsockaddr__resolver.html#acad714ee68d2e23a4157f49f7fc35e91">sockaddr_resolver</a>
+</li>
+<li>addresses
+: <a class="el" href="structinternal__request.html#a0ab2a9ca4e299dc1f8fa41de2e3384b0">internal_request</a>
+</li>
+<li>addrs
+: <a class="el" href="structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c">grpc_resolved_addresses</a>
+</li>
+<li>after_prioritization
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0">grpc_chttp2_hpack_parser</a>
+</li>
+<li>aggregate_total_weight
+: <a class="el" href="structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1">grpc_time_averaged_stats</a>
+</li>
+<li>aggregate_weighted_avg
+: <a class="el" href="structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab">grpc_time_averaged_stats</a>
+</li>
+<li>alarm
+: <a class="el" href="structgrpc__call.html#a673a0cdde6bc7ebe5ff66820b8bd0b91">grpc_call</a>
+, <a class="el" href="structgrpc__subchannel.html#af42dd9bca8055a7afb3415f857ca28fa">grpc_subchannel</a>
+, <a class="el" href="structstate__watcher.html#a550220a27c14e026329a260cd581ece2">state_watcher</a>
+</li>
+<li>alarm_capacity
+: <a class="el" href="structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd">grpc_alarm_heap</a>
+</li>
+<li>alarm_count
+: <a class="el" href="structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5">grpc_alarm_heap</a>
+</li>
+<li>alarms
+: <a class="el" href="structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82">grpc_alarm_heap</a>
+</li>
+<li>alg
+: <a class="el" href="structjose__header.html#a1f2a1e1efa6f64762c67f7c688790c0d">jose_header</a>
+</li>
+<li>allocated
+: <a class="el" href="structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e">grpc_credentials_md_store</a>
+, <a class="el" href="structjson__writer__userdata.html#a6be58e44bfcd53828551b919df38489d">json_writer_userdata</a>
+</li>
+<li>allocated_completions
+: <a class="el" href="structgrpc__call.html#a7fa8c9ad3543546625b2aaa7d2853c05">grpc_call</a>
+</li>
+<li>allocated_mappings
+: <a class="el" href="structgrpc__jwt__verifier.html#adcf1fd004d97c7345bffbbfbb5983e3c">grpc_jwt_verifier</a>
+</li>
+<li>allocated_size
+: <a class="el" href="structtsi__fake__frame.html#ac48b3f97ad8df8b87cf38b75d843591b">tsi_fake_frame</a>
+</li>
+<li>alpn_protocol_list
+: <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a92aea4cb778959043703fcc3623c68a9">tsi_ssl_client_handshaker_factory</a>
+, <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a02579737ef9a57855da159c54c05955f">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>alpn_protocol_list_length
+: <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a63415a7f73f99c3ccee2addc915c9482">tsi_ssl_client_handshaker_factory</a>
+, <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a1dd579a38c0ab5d7f1304b26a838954b">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>amount
+: <a class="el" href="structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2">grpc_chttp2_window_update_parser</a>
+</li>
+<li>announce_window
+: <a class="el" href="structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17">grpc_chttp2_stream_writing</a>
+</li>
+<li>arg
+: <a class="el" href="structlistener.html#a979a29a26af9ef7a83a22f0cdd7fe1a4">listener</a>
+</li>
+<li>args
+: <a class="el" href="structconnector.html#ad3d70fc61b888fcb246a4a307b16c4ec">connector</a>
+, <a class="el" href="structgpr__cmdline.html#a7966fa04e7e92065675c49535ea9c078">gpr_cmdline</a>
+, <a class="el" href="structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76">grpc_channel_args</a>
+, <a class="el" href="structgrpc__subchannel.html#a9ffccab543a55f5ea53d9075f8d88079">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081">grpc_subchannel_args</a>
+</li>
+<li>argv0
+: <a class="el" href="structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e">gpr_cmdline</a>
+</li>
+<li>async_setup_task
+: <a class="el" href="structcall__data.html#ab21ef8aafd3c095825805e29e69670ce">call_data</a>
+</li>
+<li>atm
+: <a class="el" href="unionlockfree__node.html#a8bac5e680ab1fce893f7727f7a0be892">lockfree_node</a>
+</li>
+<li>aud
+: <a class="el" href="structgrpc__jwt__claims.html#ab3aeb778bc0983824534ffa0c1e51f9c">grpc_jwt_claims</a>
+</li>
+<li>audience
+: <a class="el" href="structverifier__cb__ctx.html#afdbd6e54ed44e9938991b0ed1915ed2d">verifier_cb_ctx</a>
+</li>
+<li>auth_context
+: <a class="el" href="structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c">grpc_client_security_context</a>
+, <a class="el" href="structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17">grpc_security_connector</a>
+, <a class="el" href="structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1">grpc_server_security_context</a>
+</li>
+<li>authority
+: <a class="el" href="structcall__data.html#a216c8a3e91a659b6ad5f3de09bbf8ff0">call_data</a>
+, <a class="el" href="structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7">grpc_uri</a>
+, <a class="el" href="structregistered__call.html#aa41fdf7362b58db7148acb228df62408">registered_call</a>
+</li>
+<li>authority_key
+: <a class="el" href="structchannel__data.html#abff9ead49754255e5fe5f5767634b553">channel_data</a>
+</li>
+<li>authority_string
+: <a class="el" href="structchannel__data.html#a65b7bac5d0844808a6d6b399ca1d234f">channel_data</a>
+, <a class="el" href="structgrpc__channel.html#a9ad924bb3cc339c10d106f48b9a4a959">grpc_channel</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>
diff --git a/doc/ref/core.internal/html/functions_vars_b.html b/doc/ref/core.internal/html/functions_vars_b.html
new file mode 100644
index 0000000000..6b89a53f5e
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_b.html
@@ -0,0 +1,250 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>backoff_delta
+: <a class="el" href="structgrpc__subchannel.html#a337c8cb56f9a249ca181ddc1f5999af5">grpc_subchannel</a>
+</li>
+<li>base
+: <a class="el" href="structconnector.html#a073303affdd652e8688303df9a126bd2">connector</a>
+, <a class="el" href="structdns__resolver.html#a135f51d63ab8d730d7ba491f0d94b6f6">dns_resolver</a>
+, <a class="el" href="structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b">grpc_access_token_credentials</a>
+, <a class="el" href="structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08">grpc_channel_security_connector</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2">grpc_composite_credentials</a>
+, <a class="el" href="structgrpc__fake__channel__security__connector.html#a3a30ba1484411dcedb12607e1a523431">grpc_fake_channel_security_connector</a>
+, <a class="el" href="structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901">grpc_fake_oauth2_credentials</a>
+, <a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a4da06be1278854b4447140407d81db25">grpc_httpcli_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d">grpc_iam_credentials</a>
+, <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5">grpc_oauth2_token_fetcher_credentials</a>
+, <a class="el" href="structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e">grpc_refresh_token_credentials</a>
+, <a class="el" href="structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0">grpc_service_account_credentials</a>
+, <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4">grpc_service_account_jwt_access_credentials</a>
+, <a class="el" href="structgrpc__ssl__channel__security__connector.html#af7253d985a9b58d3f7a363d05fdb148c">grpc_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4">grpc_ssl_credentials</a>
+, <a class="el" href="structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71">grpc_ssl_server_credentials</a>
+, <a class="el" href="structgrpc__ssl__server__security__connector.html#a458d7df65c42b6df819570e79f750907">grpc_ssl_server_security_connector</a>
+, <a class="el" href="structmalloc__refcount.html#a9443dc5946fa32f480286c87d5dc3686">malloc_refcount</a>
+, <a class="el" href="structmerge__args__factory.html#a10d01f7c94efbd37682c4c2af19a21e8">merge_args_factory</a>
+, <a class="el" href="structpick__first__lb__policy.html#a3e8f7088400929001aa4b589a3f79f79">pick_first_lb_policy</a>
+, <a class="el" href="structsecure__endpoint.html#ac85eec4e82c343cb9fd03c8dea0a08bb">secure_endpoint</a>
+, <a class="el" href="structsockaddr__resolver.html#a92a0b91dca1a2ecdb5eea739a8038c82">sockaddr_resolver</a>
+, <a class="el" href="structsubchannel__factory.html#a58fdbc6cebefc2d0f5a75081bee7b676">subchannel_factory</a>
+, <a class="el" href="structtsi__fake__frame__protector.html#a1f23e2443125ab322674638a71832620">tsi_fake_frame_protector</a>
+, <a class="el" href="structtsi__fake__handshaker.html#ac20760acd01b20d55b2f92b6a8a139da">tsi_fake_handshaker</a>
+, <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a66026b4b56a25d198d4aafa959da8413">tsi_ssl_client_handshaker_factory</a>
+, <a class="el" href="structtsi__ssl__frame__protector.html#a7d015792be7227bfd44a6a17dc08aa72">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a21ae1da6ec22caf8229b148e11aad657">tsi_ssl_handshaker</a>
+, <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a68655e93122b5b856ecb840526ff86d9">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>base64_and_huffman
+: <a class="el" href="structinternal__string.html#abfafee0983fc1c6c1e38c8e539d41999">internal_string</a>
+</li>
+<li>base64_buffer
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e">grpc_chttp2_hpack_parser</a>
+</li>
+<li>batch
+: <a class="el" href="structrequested__call.html#a664afa5ffde3750f0ff04f69813fbcd2">requested_call</a>
+</li>
+<li>batch_num_samples
+: <a class="el" href="structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb">grpc_time_averaged_stats</a>
+</li>
+<li>batch_total_value
+: <a class="el" href="structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b">grpc_time_averaged_stats</a>
+</li>
+<li>begin_message
+: <a class="el" href="structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f">grpc_stream_op</a>
+</li>
+<li>binary
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f">grpc_chttp2_hpack_parser</a>
+</li>
+<li>bind_pollset
+: <a class="el" href="structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2">grpc_transport_op</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4">grpc_transport_stream_op</a>
+</li>
+<li>bind_pollset_set
+: <a class="el" href="structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3">grpc_transport_op</a>
+</li>
+<li>bits
+: <a class="el" href="structb64__huff__sym.html#ab216d5e5b8fdb4ccfd9a4843aa389b81">b64_huff_sym</a>
+, <a class="el" href="structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88">grpc_chttp2_huffsym</a>
+</li>
+<li>body
+: <a class="el" href="structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90">grpc_httpcli_response</a>
+</li>
+<li>body_capacity
+: <a class="el" href="structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628">grpc_httpcli_parser</a>
+</li>
+<li>body_length
+: <a class="el" href="structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb">grpc_httpcli_response</a>
+</li>
+<li>bound_pollset
+: <a class="el" href="structgrpc__call.html#a3cd66ac4c2f69f16f6037fc63f0d49db">grpc_call</a>
+</li>
+<li>broadcast
+: <a class="el" href="structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3">grpc_lb_policy_vtable</a>
+</li>
+<li>bucket_next
+: <a class="el" href="structinternal__metadata.html#aadcd0104b419227943fcd4a53920777e">internal_metadata</a>
+, <a class="el" href="structinternal__string.html#a821c2b13cb1eea1ed3e36e867b62f3ba">internal_string</a>
+</li>
+<li>buckets
+: <a class="el" href="structgpr__histogram.html#abc707964e4925f4b7abf4c69daaaef73">gpr_histogram</a>
+</li>
+<li>buffer
+: <a class="el" href="structgrpc__jwt__claims.html#a62be74275bf0b7d887d70229bb9e497b">grpc_jwt_claims</a>
+, <a class="el" href="structjose__header.html#af14380ad49201179d4ad6e3fa7a0e58b">jose_header</a>
+, <a class="el" href="structtsi__ssl__frame__protector.html#a3df125b5b712526ea26ba5dbaa8a71ee">tsi_ssl_frame_protector</a>
+</li>
+<li>buffer_in
+: <a class="el" href="structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22">grpc_byte_buffer_reader</a>
+</li>
+<li>buffer_offset
+: <a class="el" href="structtsi__ssl__frame__protector.html#a8d6f4e3e06cec85370146dae562a572f">tsi_ssl_frame_protector</a>
+</li>
+<li>buffer_out
+: <a class="el" href="structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47">grpc_byte_buffer_reader</a>
+</li>
+<li>buffer_size
+: <a class="el" href="structtsi__ssl__frame__protector.html#a1a3705245461fa77c84d7cb3806b1840">tsi_ssl_frame_protector</a>
+</li>
+<li>buffered_metadata
+: <a class="el" href="structgrpc__call.html#ae501d7b947eb7a73170ccc5272e83c15">grpc_call</a>
+</li>
+<li>byte
+: <a class="el" href="structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33">grpc_chttp2_ping_parser</a>
+, <a class="el" href="structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665">grpc_chttp2_rst_stream_parser</a>
+, <a class="el" href="structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79">grpc_chttp2_window_update_parser</a>
+</li>
+<li>bytes
+: <a class="el" href="structgpr__slice.html#a39592633c4ad594a15b3a52aadff398d">gpr_slice</a>
+, <a class="el" href="structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59">grpc_byte_buffer_queue</a>
+</li>
+<li>bytes_transfered
+: <a class="el" href="structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e">grpc_winsocket_callback_info</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>
diff --git a/doc/ref/core.internal/html/functions_vars_c.html b/doc/ref/core.internal/html/functions_vars_c.html
new file mode 100644
index 0000000000..d1d99c9adb
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_c.html
@@ -0,0 +1,508 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li class="current"><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>cache_mu
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>cached
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a8c7e6a306aa24aaefa9f96982fdaafbd">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>call
+: <a class="el" href="structcall__data.html#a5512e8a6ddade275bc9b64ef48de3036">call_data</a>
+, <a class="el" href="structfinished__loose__op__allocated__args.html#a39f5408992820aa61c3aa11e378612d3">finished_loose_op_allocated_args</a>
+, <a class="el" href="structrequested__call.html#a0995465df7da49fbbb591d8b03dd1de2">requested_call</a>
+</li>
+<li>call_data
+: <a class="el" href="structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04">grpc_call_element</a>
+</li>
+<li>call_host_check_is_async
+: <a class="el" href="structgrpc__fake__channel__security__connector.html#af6c4c25382f598179b3b50d4a90a0584">grpc_fake_channel_security_connector</a>
+</li>
+<li>call_stack_size
+: <a class="el" href="structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2">grpc_channel_stack</a>
+</li>
+<li>called_shutdown
+: <a class="el" href="structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53">grpc_pollset</a>
+</li>
+<li>cancel_alarm
+: <a class="el" href="structgrpc__call.html#a8ecae45b11c6194a51ccd17b0ae1a724">grpc_call</a>
+</li>
+<li>cancel_with_status
+: <a class="el" href="structgrpc__call.html#a52b7e350723f5cd4a577a86a4b72f026">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf">grpc_transport_stream_op</a>
+</li>
+<li>cancelled
+: <a class="el" href="structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2">gpr_cancellable</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__op.html#ae5a9717d4a69c46f343381596e223874">grpc_op</a>
+</li>
+<li>cancelled_status
+: <a class="el" href="structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098">grpc_chttp2_stream_global</a>
+</li>
+<li>capacity
+: <a class="el" href="structdump__out.html#ad4ef0a9a3b2494b534b9fcba9d349f21">dump_out</a>
+, <a class="el" href="structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e">gpr_slice_buffer</a>
+, <a class="el" href="structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd">gpr_strvec</a>
+, <a class="el" href="structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9">grpc_bbq_array</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613">grpc_chttp2_hpack_parser_string</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef">grpc_chttp2_stream_map</a>
+, <a class="el" href="structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97">grpc_metadata_array</a>
+, <a class="el" href="structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772">grpc_stream_op_buffer</a>
+, <a class="el" href="structrequest__killer.html#aef7c9b567894a3f6af2ebaed400fff42">request_killer</a>
+</li>
+<li>cb
+: <a class="el" href="structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd">grpc_alarm</a>
+, <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a14c42c56de0c02fcaca7103953411ce0">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__credentials__metadata__request.html#afd521fb44c2c0a7aaab92243f606c67e">grpc_credentials_metadata_request</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1">grpc_iomgr_closure</a>
+, <a class="el" href="structgrpc__secure__transport__setup.html#a1bf28f7192cd4fe30e4daaf306545e9c">grpc_secure_transport_setup</a>
+, <a class="el" href="structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1">grpc_winsocket_callback_info</a>
+</li>
+<li>cb_arg
+: <a class="el" href="structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3">grpc_alarm</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293">grpc_iomgr_closure</a>
+</li>
+<li>cert_chain
+: <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656">grpc_ssl_pem_key_cert_pair</a>
+</li>
+<li>chained
+: <a class="el" href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6">grpc_auth_context</a>
+</li>
+<li>chand
+: <a class="el" href="structlb__policy__connectivity__watcher.html#a8c4c66e260e9c93b8ce9b4a129e581e5">lb_policy_connectivity_watcher</a>
+</li>
+<li>channel
+: <a class="el" href="structchannel__data.html#aa44b8e02dfe6cd2b3823c51f9559dc29">channel_data</a>
+, <a class="el" href="structgrpc__call.html#aefaa9e839c97ca63876add3d3a04a94d">grpc_call</a>
+, <a class="el" href="structstate__watcher.html#a0b0df5ad70d6a91a268452e03a885404">state_watcher</a>
+</li>
+<li>channel_args
+: <a class="el" href="structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__server.html#ab1ef57d52ade4e4f8eb0e26b42ea48a4">grpc_server</a>
+</li>
+<li>channel_callback
+: <a class="el" href="structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb">grpc_chttp2_transport</a>
+</li>
+<li>channel_connectivity_changed
+: <a class="el" href="structchannel__data.html#a026ed08d4fb85fff5a0f332d3a35cf17">channel_data</a>
+</li>
+<li>channel_data
+: <a class="el" href="structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b">grpc_call_element</a>
+, <a class="el" href="structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d">grpc_channel_element</a>
+</li>
+<li>channel_filter_count
+: <a class="el" href="structgrpc__server.html#a090ca3cc3f02e7b51d8c089f6c675ac2">grpc_server</a>
+</li>
+<li>channel_filters
+: <a class="el" href="structgrpc__server.html#a2da21f54a2ad688793d6c753ea74ec02">grpc_server</a>
+</li>
+<li>channel_saw_error
+: <a class="el" href="structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b">grpc_resolver_vtable</a>
+</li>
+<li>channels
+: <a class="el" href="structchannel__broadcaster.html#ad8aee8e6b39c0a74c47bc518fe60e0d7">channel_broadcaster</a>
+</li>
+<li>check_availability
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04">grpc_wakeup_fd_vtable</a>
+</li>
+<li>check_call_host
+: <a class="el" href="structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e">grpc_channel_security_connector</a>
+</li>
+<li>check_connectivity
+: <a class="el" href="structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25">grpc_lb_policy_vtable</a>
+</li>
+<li>check_peer
+: <a class="el" href="structgrpc__security__connector__vtable.html#aee8169e56a02a5cb55d68bcc6d0d56de">grpc_security_connector_vtable</a>
+</li>
+<li>checking_connectivity
+: <a class="el" href="structpick__first__lb__policy.html#a27c07323206631d5b7b021bfc2fb13d8">pick_first_lb_policy</a>
+</li>
+<li>checking_subchannel
+: <a class="el" href="structpick__first__lb__policy.html#a71958e25ab870a0f4436c07fed4585da">pick_first_lb_policy</a>
+</li>
+<li>child
+: <a class="el" href="structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71">grpc_json</a>
+</li>
+<li>claims
+: <a class="el" href="structverifier__cb__ctx.html#a47babe5494185ee4fd95e92a8309fa26">verifier_cb_ctx</a>
+</li>
+<li>client
+: <a class="el" href="structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c">grpc_endpoint_pair</a>
+</li>
+<li>client_email
+: <a class="el" href="structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b">grpc_auth_json_key</a>
+</li>
+<li>client_id
+: <a class="el" href="structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462">grpc_auth_json_key</a>
+, <a class="el" href="structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c">grpc_auth_refresh_token</a>
+</li>
+<li>client_secret
+: <a class="el" href="structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4">grpc_auth_refresh_token</a>
+</li>
+<li>clock
+: <a class="el" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">grpc_precise_clock</a>
+</li>
+<li>clock_type
+: <a class="el" href="structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff">gpr_timespec</a>
+</li>
+<li>closed
+: <a class="el" href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e">grpc_fd</a>
+</li>
+<li>closure
+: <a class="el" href="structfinished__loose__op__allocated__args.html#a1bf518b8de4a386cbf55698134e8c485">finished_loose_op_allocated_args</a>
+, <a class="el" href="structshutdown__cleanup__args.html#a42d1e24f7cc5d51db75df17263950c9a">shutdown_cleanup_args</a>
+, <a class="el" href="structstate__watcher.html#ab806a249c408b4412fc03ed0a5ede4c9">state_watcher</a>
+, <a class="el" href="structwaiting__call.html#ad8d9537c7523e3c09e5fcd4cf0bb1124">waiting_call</a>
+</li>
+<li>code
+: <a class="el" href="uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1">grpc_ioreq_data</a>
+, <a class="el" href="structreceived__status.html#a5adb1c689f796d0055094addbc8b31c2">received_status</a>
+</li>
+<li>complete_mask
+: <a class="el" href="structreqinfo__master.html#a42a5da5664f298a2ff5c94760f69ffb3">reqinfo_master</a>
+</li>
+<li>completed_head
+: <a class="el" href="structgrpc__completion__queue.html#a484ad9fad34b51c8ab2e0f6a144e6d5e">grpc_completion_queue</a>
+</li>
+<li>completed_requests
+: <a class="el" href="structgrpc__call.html#af82a58a0e542b5acd8bc4b1e50842ddd">grpc_call</a>
+</li>
+<li>completed_tail
+: <a class="el" href="structgrpc__completion__queue.html#a82c067060ebf5ff91bc9ec961b414fa2">grpc_completion_queue</a>
+</li>
+<li>completing
+: <a class="el" href="structgrpc__call.html#a0ad5b28a10c5453b5fcd3cbf5e9ec0cc">grpc_call</a>
+</li>
+<li>completion
+: <a class="el" href="structrequested__call.html#a4ab625b5e4dc9670ef586c4d245858f5">requested_call</a>
+, <a class="el" href="structshutdown__tag.html#a659b6448a029795dd262462d5f679609">shutdown_tag</a>
+</li>
+<li>completion_mu
+: <a class="el" href="structgrpc__call.html#aaf50407acc01602b67f4e442b3a3121d">grpc_call</a>
+</li>
+<li>completion_storage
+: <a class="el" href="structstate__watcher.html#a1d65436328c649d7f029b98e54d50588">state_watcher</a>
+</li>
+<li>completions
+: <a class="el" href="structgrpc__call.html#ad48e9f752753814bf9ee0233c392fccd">grpc_call</a>
+</li>
+<li>composite_creds
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#aa01c70e7c7cd7ac2071c933c4ca4ed65">grpc_composite_credentials_metadata_context</a>
+</li>
+<li>compression
+: <a class="el" href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399">grpc_byte_buffer</a>
+</li>
+<li>compression_algorithm
+: <a class="el" href="structcall__data.html#a9f593ec03211bdc3ede0b4da81d4354f">call_data</a>
+, <a class="el" href="structgrpc__call.html#afa14a32dc253da1909a2dd6e44304fdc">grpc_call</a>
+</li>
+<li>compression_algorithm_storage
+: <a class="el" href="structcall__data.html#ad33eb76b6d73d8a4475ff69ff4e8964c">call_data</a>
+</li>
+<li>concurrent_stream_count
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995">grpc_chttp2_transport_global</a>
+</li>
+<li>config
+: <a class="el" href="structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06">grpc_ssl_credentials</a>
+, <a class="el" href="structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3">grpc_ssl_server_credentials</a>
+</li>
+<li>connect
+: <a class="el" href="structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078">grpc_connector_vtable</a>
+</li>
+<li>connected
+: <a class="el" href="structgrpc__subchannel.html#a69b581893484f0f728b780c5a9152bf4">grpc_subchannel</a>
+</li>
+<li>connecting
+: <a class="el" href="structgrpc__subchannel.html#a084840ded6075b823c3572c504694635">grpc_subchannel</a>
+</li>
+<li>connecting_result
+: <a class="el" href="structgrpc__subchannel.html#a71c47f21609f3dab29311d422360665f">grpc_subchannel</a>
+</li>
+<li>connection
+: <a class="el" href="structgrpc__subchannel__call.html#a1eb7f2be785456f81008f984d80f8ac6">grpc_subchannel_call</a>
+</li>
+<li>connection_window_target
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06">grpc_chttp2_transport_global</a>
+</li>
+<li>connectivity_changed
+: <a class="el" href="structpick__first__lb__policy.html#a54f466dc5e968d2b3a8f8fe6511d2c56">pick_first_lb_policy</a>
+</li>
+<li>connectivity_state
+: <a class="el" href="structchannel__data.html#ace61d17706353a536bd079f18d54564f">channel_data</a>
+, <a class="el" href="structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d">grpc_transport_op</a>
+, <a class="el" href="structstate__watcher.html#a2777b6c363f7d4262252bc4aaf515d43">state_watcher</a>
+</li>
+<li>connector
+: <a class="el" href="structgrpc__secure__transport__setup.html#a494b76f3257449ed5eb88e0a52194324">grpc_secure_transport_setup</a>
+, <a class="el" href="structgrpc__subchannel.html#a9439dd93e3b5078fb1e2669c327ed984">grpc_subchannel</a>
+</li>
+<li>connector_creds
+: <a class="el" href="structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637">grpc_composite_credentials</a>
+</li>
+<li>consume
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e">grpc_wakeup_fd_vtable</a>
+</li>
+<li>container_begins
+: <a class="el" href="structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4">grpc_json_reader_vtable</a>
+</li>
+<li>container_empty
+: <a class="el" href="structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381">grpc_json_writer</a>
+</li>
+<li>container_ends
+: <a class="el" href="structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec">grpc_json_reader_vtable</a>
+</li>
+<li>container_just_begun
+: <a class="el" href="structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3">grpc_json_reader</a>
+</li>
+<li>content_type
+: <a class="el" href="structcall__data.html#a4169f3d34c6e55c4bba43a86241bf1ea">call_data</a>
+, <a class="el" href="structchannel__data.html#a7d6e2d61b1f1dc47be825afbdb0b1176">channel_data</a>
+</li>
+<li>contents
+: <a class="el" href="unionlockfree__node.html#a4cf276073deb1a941a409b19bb78f5c4">lockfree_node</a>
+</li>
+<li>context
+: <a class="el" href="structgrpc__call.html#a91cd558ccf432aa44bbe813c4acd022c">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae">grpc_transport_stream_op</a>
+, <a class="el" href="structinternal__metadata.html#a19b31328660cdb5c8a8bf821094871c5">internal_metadata</a>
+, <a class="el" href="structinternal__request.html#a0a0fbaaabcd158b4fb0ff6c8b2d4879f">internal_request</a>
+, <a class="el" href="structinternal__string.html#a1bfe57ac1191b1278d4a61d34edbf1d7">internal_string</a>
+</li>
+<li>continuation
+: <a class="el" href="structwaiting__for__connect.html#a8289e332e8b65421a161e607bb637f51">waiting_for_connect</a>
+</li>
+<li>copy
+: <a class="el" href="structgrpc__arg.html#abef4f8be0109b19fcbe7f614f1243303">grpc_arg</a>
+</li>
+<li>count
+: <a class="el" href="structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d">gpr_histogram</a>
+, <a class="el" href="structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470">gpr_refcount</a>
+, <a class="el" href="structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff">gpr_slice_buffer</a>
+, <a class="el" href="structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387">gpr_strvec</a>
+, <a class="el" href="structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2">grpc_bbq_array</a>
+, <a class="el" href="structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a">grpc_call_stack</a>
+, <a class="el" href="structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67">grpc_channel_stack</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8">grpc_chttp2_stream_map</a>
+, <a class="el" href="uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4">grpc_metadata_array</a>
+, <a class="el" href="structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a">grpc_op</a>
+, <a class="el" href="structrequest__killer.html#ae3dd02f0f46905f3d7a7b88193ca0af6">request_killer</a>
+</li>
+<li>counter
+: <a class="el" href="structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1">grpc_pollset</a>
+</li>
+<li>cq
+: <a class="el" href="structgrpc__call.html#ae24201f3b8347e790898e3bc2ae1ad09">grpc_call</a>
+, <a class="el" href="structshutdown__tag.html#afca3fb84e8cde4f0b5f3e18905f555e9">shutdown_tag</a>
+, <a class="el" href="structstate__watcher.html#ae85d1a92c4f1e6a4eff3bcb356ff8204">state_watcher</a>
+</li>
+<li>cq_bound_to_call
+: <a class="el" href="structrequested__call.html#a7294f3532a1f72151e0ef3634f518431">requested_call</a>
+</li>
+<li>cq_count
+: <a class="el" href="structgrpc__server.html#a0a49b61d38a3aee3f080087cf4b1f92d">grpc_server</a>
+</li>
+<li>cq_for_notification
+: <a class="el" href="structrequested__call.html#a3b4918a8f8c79ab768156dc658e21b83">requested_call</a>
+</li>
+<li>cq_new
+: <a class="el" href="structcall__data.html#a253926f346f7783d43ad5791ac70bba2">call_data</a>
+</li>
+<li>cqs
+: <a class="el" href="structgrpc__server.html#a87495e0b247e92860d6c2a6504cf5528">grpc_server</a>
+</li>
+<li>create
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e">grpc_wakeup_fd_vtable</a>
+</li>
+<li>create_frame_protector
+: <a class="el" href="structtsi__handshaker__vtable.html#a071e3b76f8ddec1c89f9131c923f3648">tsi_handshaker_vtable</a>
+</li>
+<li>create_handshaker
+: <a class="el" href="structgrpc__security__connector__vtable.html#ae1202bdafbea18af0fe2b0e6c11ae636">grpc_security_connector_vtable</a>
+, <a class="el" href="structtsi__ssl__handshaker__factory.html#a44a633a0520c8561b5c63f97742daaef">tsi_ssl_handshaker_factory</a>
+</li>
+<li>create_resolver
+: <a class="el" href="structgrpc__resolver__factory__vtable.html#a59d7eb4c9cb95b6ba33628c30b948f10">grpc_resolver_factory_vtable</a>
+</li>
+<li>create_security_connector
+: <a class="el" href="structgrpc__credentials__vtable.html#a7bbb5a8658e7f2295ed816f7f60e6f00">grpc_credentials_vtable</a>
+, <a class="el" href="structgrpc__server__credentials__vtable.html#af56836a7d92bb4475b92d5991eb9c30d">grpc_server_credentials_vtable</a>
+</li>
+<li>create_subchannel
+: <a class="el" href="structgrpc__subchannel__factory__vtable.html#a25972ec53ef7aa219669847b7cbb515d">grpc_subchannel_factory_vtable</a>
+</li>
+<li>creds
+: <a class="el" href="structcall__data.html#a163b0cfa0e971a064e4ad6f35001f8ed">call_data</a>
+, <a class="el" href="structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf">grpc_client_security_context</a>
+, <a class="el" href="structgrpc__credentials__metadata__request.html#a7cf76389aba6b2f8ae6fcb00f59bff98">grpc_credentials_metadata_request</a>
+</li>
+<li>creds_array
+: <a class="el" href="structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231">grpc_credentials_array</a>
+</li>
+<li>creds_index
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#af3232f00703210b60772c4dd1c727a56">grpc_composite_credentials_metadata_context</a>
+</li>
+<li>cs
+: <a class="el" href="structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c">gpr_mu</a>
+</li>
+<li>ctx
+: <a class="el" href="structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58">grpc_auth_property_iterator</a>
+</li>
+<li>cur_arg
+: <a class="el" href="structgpr__cmdline.html#aa4b1fcaf802c2ca83c9e2213b8283297">gpr_cmdline</a>
+</li>
+<li>cur_frame_type
+: <a class="el" href="structframer__state.html#ab6d529c8b0d12ca60075d0c9e29d037b">framer_state</a>
+</li>
+<li>cur_line
+: <a class="el" href="structgrpc__httpcli__parser.html#a8524fc39d4fa476bf3133e922edf092c">grpc_httpcli_parser</a>
+</li>
+<li>cur_line_length
+: <a class="el" href="structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e">grpc_httpcli_parser</a>
+</li>
+<li>current
+: <a class="el" href="structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f">grpc_byte_buffer_reader</a>
+, <a class="el" href="structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f">grpc_connectivity_state_watcher</a>
+</li>
+<li>current_container
+: <a class="el" href="structjson__reader__userdata.html#a46c3b03cc1ca3fbeeb76f726ce844bf2">json_reader_userdata</a>
+</li>
+<li>current_state
+: <a class="el" href="structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e">grpc_connectivity_state_tracker</a>
+</li>
+<li>current_value
+: <a class="el" href="structjson__reader__userdata.html#ab1069140339bf83ea323ac0ac696cc8c">json_reader_userdata</a>
+</li>
+<li>cv
+: <a class="el" href="structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844">grpc_pollset</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>
diff --git a/doc/ref/core.internal/html/functions_vars_d.html b/doc/ref/core.internal/html/functions_vars_d.html
new file mode 100644
index 0000000000..bc0be2e860
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_d.html
@@ -0,0 +1,261 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>data
+: <a class="el" href="structdump__out.html#aaceca2e7d88a29bcd3593c5cba3e8a3a">dump_out</a>
+, <a class="el" href="structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da">gpr_slice</a>
+, <a class="el" href="structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51">grpc_bbq_array</a>
+, <a class="el" href="structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f">grpc_byte_buffer</a>
+, <a class="el" href="structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61">grpc_ioreq</a>
+, <a class="el" href="structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad">grpc_op</a>
+, <a class="el" href="structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621">grpc_pollset</a>
+, <a class="el" href="structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9">grpc_stream_op</a>
+, <a class="el" href="structrequested__call.html#a1814382d48854b3ce31b0aef9c4b4c7e">requested_call</a>
+, <a class="el" href="structtsi__fake__frame.html#a4c55725c3501776bccf3dc63dc3c0301">tsi_fake_frame</a>
+, <a class="el" href="structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55">tsi_peer_property</a>
+</li>
+<li>data_parser
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54">grpc_chttp2_stream_parsing</a>
+</li>
+<li>deadline
+: <a class="el" href="structcall__data.html#a9ca8837431c3942aa3b18092e314632c">call_data</a>
+, <a class="el" href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126">grpc_alarm</a>
+, <a class="el" href="structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15">grpc_call_details</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c">grpc_connect_in_args</a>
+, <a class="el" href="structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04">grpc_metadata_batch</a>
+, <a class="el" href="structinternal__request.html#a3b0a573ccd8ac3d01b0b3668e39a2e61">internal_request</a>
+, <a class="el" href="structrequested__call.html#a7b0834c5a24427fbe79fb77ffd103cc8">requested_call</a>
+</li>
+<li>debug_data
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e">grpc_chttp2_goaway_parser</a>
+</li>
+<li>debug_length
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23">grpc_chttp2_goaway_parser</a>
+</li>
+<li>debug_pos
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce">grpc_chttp2_goaway_parser</a>
+</li>
+<li>default_authority
+: <a class="el" href="structchannel__data.html#a51d18a12253f4520179c5f04cc9f4c48">channel_data</a>
+</li>
+<li>default_compression_algorithm
+: <a class="el" href="structchannel__data.html#acc452310378fb56c38c296cdfdde14e3">channel_data</a>
+</li>
+<li>default_port
+: <a class="el" href="structdns__resolver.html#ad3a4ce330d39e62347c8d230dc0431f4">dns_resolver</a>
+</li>
+<li>default_value
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb">grpc_chttp2_setting_parameters</a>
+</li>
+<li>deframe_state
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250">grpc_chttp2_transport_parsing</a>
+</li>
+<li>del_fd
+: <a class="el" href="structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60">grpc_pollset_vtable</a>
+</li>
+<li>depth
+: <a class="el" href="structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4">grpc_json_reader</a>
+, <a class="el" href="structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995">grpc_json_writer</a>
+</li>
+<li>description
+: <a class="el" href="structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d">gpr_cmdline</a>
+</li>
+<li>destroy
+: <a class="el" href="structgrpc__arg.html#a15c9a748974a6ac525074f3ed1e04eb4">grpc_arg</a>
+, <a class="el" href="structgrpc__call__context__element.html#a896c4d5b89848f2f14678745b6162f94">grpc_call_context_element</a>
+, <a class="el" href="structgrpc__credentials__vtable.html#a95766dfd1880536b6b891b18514b5720">grpc_credentials_vtable</a>
+, <a class="el" href="structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c">grpc_endpoint_vtable</a>
+, <a class="el" href="structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c">grpc_lb_policy_vtable</a>
+, <a class="el" href="structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815">grpc_pollset_vtable</a>
+, <a class="el" href="structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7">grpc_resolver_vtable</a>
+, <a class="el" href="structgrpc__security__connector__vtable.html#acd16feb960e41e1920c193017a135704">grpc_security_connector_vtable</a>
+, <a class="el" href="structgrpc__server__credentials__vtable.html#a78347ce536f6c1885d49a6cd5106eade">grpc_server_credentials_vtable</a>
+, <a class="el" href="structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf">grpc_transport_vtable</a>
+, <a class="el" href="structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2">grpc_wakeup_fd_vtable</a>
+, <a class="el" href="structlistener.html#add425fdd17452e62c09d047e24a3034f">listener</a>
+, <a class="el" href="structtsi__frame__protector__vtable.html#ac47686a0367046026dc8b97050ec2cdf">tsi_frame_protector_vtable</a>
+, <a class="el" href="structtsi__handshaker__vtable.html#a6ddd06eccb4d0576a3daba0ee98f45d8">tsi_handshaker_vtable</a>
+, <a class="el" href="structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a">tsi_ssl_handshaker_factory</a>
+</li>
+<li>destroy_call_elem
+: <a class="el" href="structgrpc__channel__filter.html#a347e5451860788a084735e66b1684312">grpc_channel_filter</a>
+</li>
+<li>destroy_called
+: <a class="el" href="structgrpc__call.html#af72cb94597b41817f2c12e8d4ac5ae95">grpc_call</a>
+</li>
+<li>destroy_channel_elem
+: <a class="el" href="structgrpc__channel__filter.html#a7ab39b0d83fd44c9e3be4b930e6b60e2">grpc_channel_filter</a>
+</li>
+<li>destroy_closure
+: <a class="el" href="structgrpc__call.html#a2cac7abed2fe85b3ddbdde40931ed793">grpc_call</a>
+, <a class="el" href="structgrpc__channel.html#ae6dda10ffe354ceefda810573f5e80e9">grpc_channel</a>
+</li>
+<li>destroy_stream
+: <a class="el" href="structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b">grpc_transport_vtable</a>
+</li>
+<li>destroy_user_data
+: <a class="el" href="structinternal__metadata.html#a5377f467bb28c9b4774d896b44d8c6a2">internal_metadata</a>
+</li>
+<li>destroying
+: <a class="el" href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f">grpc_chttp2_transport</a>
+</li>
+<li>details
+: <a class="el" href="structcall__data.html#a178c22c4c266e3ffd0583f3ed9bc749f">call_data</a>
+, <a class="el" href="uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6">grpc_ioreq_data</a>
+, <a class="el" href="structreceived__status.html#a6b73f215e5290bb6660c25e34c07ca72">received_status</a>
+, <a class="el" href="structrequested__call.html#a65cfbe1bb43697b7cc762ca44fa94c1b">requested_call</a>
+</li>
+<li>details_capacity
+: <a class="el" href="uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468">grpc_ioreq_data</a>
+</li>
+<li>details_link
+: <a class="el" href="structgrpc__call.html#a932212dbec6334868cf997dd275c2192">grpc_call</a>
+</li>
+<li>dirtied_local_settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e">grpc_chttp2_transport_global</a>
+</li>
+<li>disconnect
+: <a class="el" href="structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b">grpc_transport_op</a>
+</li>
+<li>disconnected
+: <a class="el" href="structgrpc__subchannel.html#aeb64d3a8c4d1f0c3b75cda0f97d80c5c">grpc_subchannel</a>
+</li>
+<li>done
+: <a class="el" href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64">grpc_cq_completion</a>
+</li>
+<li>done_arg
+: <a class="el" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">grpc_cq_completion</a>
+</li>
+<li>drain_pos
+: <a class="el" href="structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b">grpc_byte_buffer_queue</a>
+</li>
+<li>draining
+: <a class="el" href="structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b">grpc_byte_buffer_queue</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>
diff --git a/doc/ref/core.internal/html/functions_vars_e.html b/doc/ref/core.internal/html/functions_vars_e.html
new file mode 100644
index 0000000000..41cd70489d
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_e.html
@@ -0,0 +1,200 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>elem
+: <a class="el" href="structcall__data.html#a7042d8feb119d4fcce1258c5eddca8ff">call_data</a>
+, <a class="el" href="structwaiting__call.html#af0c24ed1b79604b43d7a669331adcbc4">waiting_call</a>
+</li>
+<li>elems
+: <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92">grpc_chttp2_incoming_metadata_buffer</a>
+, <a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d">grpc_chttp2_incoming_metadata_live_op_buffer</a>
+</li>
+<li>email_domain
+: <a class="el" href="structemail__key__mapping.html#a379069d9b6baffade9583b28046eab90">email_key_mapping</a>
+, <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df">grpc_jwt_verifier_email_domain_key_url_mapping</a>
+</li>
+<li>endpoint_reading
+: <a class="el" href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905">grpc_chttp2_transport</a>
+</li>
+<li>entries
+: <a class="el" href="structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1">gpr_stack_lockfree</a>
+, <a class="el" href="structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5">grpc_credentials_md_store</a>
+</li>
+<li>entries_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a028e3752a9b203d820e194029f6df186">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>entries_keys
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a80cc9b5282b637b3facbb68cf1038125">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>ents
+: <a class="el" href="structgrpc__chttp2__hptbl.html#af14d20a9a16ee86be7d9f18b2f5334eb">grpc_chttp2_hptbl</a>
+</li>
+<li>ep
+: <a class="el" href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff">grpc_chttp2_transport</a>
+, <a class="el" href="structinternal__request.html#af6443badea586cce9b4e3112832760c7">internal_request</a>
+</li>
+<li>error_code
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5">grpc_chttp2_goaway_parser</a>
+</li>
+<li>error_msg_key
+: <a class="el" href="structchannel__data.html#a214f33e78aafbbac774ea95c2e9dc8b3">channel_data</a>
+</li>
+<li>error_status_set
+: <a class="el" href="structgrpc__call.html#a5cb38ade0e31380920c4afe56eea7b85">grpc_call</a>
+</li>
+<li>escaped_string_was_key
+: <a class="el" href="structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107">grpc_json_reader</a>
+</li>
+<li>exit_idle
+: <a class="el" href="structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301">grpc_lb_policy_vtable</a>
+</li>
+<li>exit_idle_when_lb_policy_arrives
+: <a class="el" href="structchannel__data.html#a3fe0f0347e1953376cd84db85bba9917">channel_data</a>
+</li>
+<li>exp
+: <a class="el" href="structgrpc__jwt__claims.html#adb8933c8e007a5864aea01e258637594">grpc_jwt_claims</a>
+</li>
+<li>expect_continuation_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060">grpc_chttp2_transport_parsing</a>
+</li>
+<li>extra_arg
+: <a class="el" href="structgpr__cmdline.html#a1109c69ceb7d9c2ae8f374377690b4cb">gpr_cmdline</a>
+</li>
+<li>extra_arg_help
+: <a class="el" href="structgpr__cmdline.html#ab1e7d3da9d7dac50a04411059cf856fb">gpr_cmdline</a>
+</li>
+<li>extra_arg_name
+: <a class="el" href="structgpr__cmdline.html#abc1adda9fabb39a4cb8beba086aaa8b5">gpr_cmdline</a>
+</li>
+<li>extra_arg_user_data
+: <a class="el" href="structgpr__cmdline.html#afcf2c751450c2b09eea9ac769ddb2f11">gpr_cmdline</a>
+</li>
+<li>extract_peer
+: <a class="el" href="structtsi__handshaker__vtable.html#ab34c8028cf54bc2b0ee1e5ab95578541">tsi_handshaker_vtable</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>
diff --git a/doc/ref/core.internal/html/functions_vars_f.html b/doc/ref/core.internal/html/functions_vars_f.html
new file mode 100644
index 0000000000..1f80a18995
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_f.html
@@ -0,0 +1,222 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>factory
+: <a class="el" href="structregistered__resolver.html#a19447c6e94f1739efdfdf0928f62a1bb">registered_resolver</a>
+</li>
+<li>fd
+: <a class="el" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">grpc_fd</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc">grpc_fd_watcher</a>
+, <a class="el" href="structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc">grpc_pollset</a>
+</li>
+<li>fd_capacity
+: <a class="el" href="structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec">grpc_pollset_set</a>
+</li>
+<li>fd_count
+: <a class="el" href="structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6">grpc_pollset_set</a>
+</li>
+<li>fd_list
+: <a class="el" href="structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772">grpc_pollset_kick_state</a>
+</li>
+<li>fds
+: <a class="el" href="structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6">grpc_pollset_set</a>
+</li>
+<li>fetch_func
+: <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>file
+: <a class="el" href="structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89">gpr_log_func_args</a>
+</li>
+<li>filling
+: <a class="el" href="structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c">grpc_byte_buffer_queue</a>
+</li>
+<li>filter
+: <a class="el" href="structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8">grpc_call_element</a>
+, <a class="el" href="structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3">grpc_channel_element</a>
+</li>
+<li>filter_count
+: <a class="el" href="structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128">grpc_subchannel_args</a>
+</li>
+<li>filter_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a387e0eb34c64c7faaf16e0f2f3ad4d0e">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>filter_elems_sum
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>filters
+: <a class="el" href="structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2">grpc_connect_out_args</a>
+, <a class="el" href="structgrpc__subchannel.html#a9de51c82bda25cff592acbe7b2866a32">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab">grpc_subchannel_args</a>
+</li>
+<li>finish_destroy_channel_closure
+: <a class="el" href="structchannel__data.html#acecc0d7f7ae20cc71b53692eb20a0a92">channel_data</a>
+</li>
+<li>finish_shutdown
+: <a class="el" href="structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8">grpc_pollset_vtable</a>
+</li>
+<li>first_ent
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77">grpc_chttp2_hptbl</a>
+</li>
+<li>flag
+: <a class="el" href="structtracer.html#a7cb129f30976377f84c881d419094573">tracer</a>
+</li>
+<li>flags
+: <a class="el" href="structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c">gpr_thd_options</a>
+, <a class="el" href="structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b">grpc_begin_message</a>
+, <a class="el" href="structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1">grpc_ioreq</a>
+, <a class="el" href="structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb">grpc_op</a>
+</li>
+<li>force_client_auth
+: <a class="el" href="structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007">grpc_ssl_server_config</a>
+</li>
+<li>force_send_settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027">grpc_chttp2_transport_global</a>
+</li>
+<li>frame_protector_created
+: <a class="el" href="structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec">tsi_handshaker</a>
+</li>
+<li>frame_size
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a">grpc_chttp2_data_parser</a>
+</li>
+<li>frame_type
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865">grpc_chttp2_data_parser</a>
+</li>
+<li>free
+: <a class="el" href="structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece">grpc_chttp2_stream_map</a>
+</li>
+<li>free_space
+: <a class="el" href="structjson__writer__userdata.html#a7bb26b7e7b6783d61265705d79c87e03">json_writer_userdata</a>
+</li>
+<li>freelist_next
+: <a class="el" href="structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d">grpc_fd</a>
+</li>
+<li>from_ssl
+: <a class="el" href="structtsi__ssl__frame__protector.html#a5d6ce8a49205271885618a79964a6b73">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a92fd97e3dc2041f61cf9e99b51f5a8e8">tsi_ssl_handshaker</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>
diff --git a/doc/ref/core.internal/html/functions_vars_g.html b/doc/ref/core.internal/html/functions_vars_g.html
new file mode 100644
index 0000000000..5c7c126bca
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_g.html
@@ -0,0 +1,192 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li class="current"><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>garbage
+: <a class="el" href="structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc">grpc_metadata_batch</a>
+</li>
+<li>get_bytes_to_send_to_peer
+: <a class="el" href="structtsi__handshaker__vtable.html#a78c12cd8f2a53cc2bd32367a725f48ff">tsi_handshaker_vtable</a>
+</li>
+<li>get_peer
+: <a class="el" href="structgrpc__channel__filter.html#a6ddcbc355118eca15b48ee15476d2ace">grpc_channel_filter</a>
+, <a class="el" href="structgrpc__endpoint__vtable.html#a01e48582c45e2e7033e344d253316911">grpc_endpoint_vtable</a>
+, <a class="el" href="structgrpc__transport__vtable.html#a763d8c95adc9c74dae02a58557e001ed">grpc_transport_vtable</a>
+</li>
+<li>get_request_metadata
+: <a class="el" href="structgrpc__credentials__vtable.html#a14795750df563c75436add4e7c05603d">grpc_credentials_vtable</a>
+</li>
+<li>get_result
+: <a class="el" href="structtsi__handshaker__vtable.html#af65c4700c22e71ecb09a94ae951d2bf3">tsi_handshaker_vtable</a>
+</li>
+<li>global
+: <a class="el" href="structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5">grpc_chttp2_stream</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694">grpc_chttp2_transport</a>
+</li>
+<li>goaway_error
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_last_stream_index
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_message
+: <a class="el" href="structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293">grpc_transport_op</a>
+</li>
+<li>goaway_parser
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_received
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5">grpc_chttp2_transport_parsing</a>
+</li>
+<li>goaway_status
+: <a class="el" href="structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f">grpc_transport_op</a>
+</li>
+<li>goaway_text
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8">grpc_chttp2_transport_parsing</a>
+</li>
+<li>got_initial_metadata
+: <a class="el" href="structcall__data.html#a7bda5a1466231baa3df0059573579b9b">call_data</a>
+</li>
+<li>got_key
+: <a class="el" href="structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed">grpc_json_writer</a>
+</li>
+<li>grpc_compression_algorithm_string
+: <a class="el" href="structgrpc__channel.html#afd8f60fef22e201f1e1ba3b00f285602">grpc_channel</a>
+</li>
+<li>grpc_message_string
+: <a class="el" href="structgrpc__channel.html#aa00f6e53c4b732654311f194aa2f3957">grpc_channel</a>
+</li>
+<li>grpc_scheme
+: <a class="el" href="structchannel__data.html#a24aa2dd2d7925c382b290e2417efabc7">channel_data</a>
+</li>
+<li>grpc_status_elem
+: <a class="el" href="structgrpc__channel.html#ad50abb90c5f7ef77e51f8387b06451f9">grpc_channel</a>
+</li>
+<li>grpc_status_string
+: <a class="el" href="structgrpc__channel.html#a4b3d99e4664ffe3399d29f61f7063600">grpc_channel</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>
diff --git a/doc/ref/core.internal/html/functions_vars_h.html b/doc/ref/core.internal/html/functions_vars_h.html
new file mode 100644
index 0000000000..1294fdc344
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_h.html
@@ -0,0 +1,256 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>handshake_buffer
+: <a class="el" href="structgrpc__secure__transport__setup.html#a4ac21c122779d771e91d59bc1c74a723">grpc_secure_transport_setup</a>
+</li>
+<li>handshake_buffer_size
+: <a class="el" href="structgrpc__secure__transport__setup.html#a0edef695f006557a299ea4384f3a5438">grpc_secure_transport_setup</a>
+</li>
+<li>handshaker
+: <a class="el" href="structgrpc__secure__transport__setup.html#acb477ffb68f62bc22048abef085575c3">grpc_secure_transport_setup</a>
+</li>
+<li>handshaker_factory
+: <a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a4ec68b3563b321823c2386381727b9c6">grpc_httpcli_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__ssl__channel__security__connector.html#aea121da234d473666c85221663f00241">grpc_ssl_channel_security_connector</a>
+, <a class="el" href="structgrpc__ssl__server__security__connector.html#aa18f372b18a7dc70e96cc6cf751d58e3">grpc_ssl_server_security_connector</a>
+</li>
+<li>handshaking_tcp_endpoints
+: <a class="el" href="structgrpc__server__secure__state.html#acba74fb1730945adb6b8d60421321b26">grpc_server_secure_state</a>
+</li>
+<li>has_base64_and_huffman_encoded
+: <a class="el" href="structinternal__string.html#ad30156b9bc8f7fc9c60b09e3dcaef00a">internal_string</a>
+</li>
+<li>has_compression_algorithm
+: <a class="el" href="structcall__data.html#a69baa5f9149f7edadc3c8e5fc2c82aa8">call_data</a>
+</li>
+<li>has_pending_iocp
+: <a class="el" href="structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294">grpc_winsocket_callback_info</a>
+</li>
+<li>has_request_metadata
+: <a class="el" href="structgrpc__credentials__vtable.html#acd487d7cf9dab42866c366a212ef4b15">grpc_credentials_vtable</a>
+</li>
+<li>has_request_metadata_only
+: <a class="el" href="structgrpc__credentials__vtable.html#a2028660c297e6e08be99e09f068921e7">grpc_credentials_vtable</a>
+</li>
+<li>has_value
+: <a class="el" href="structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7">grpc_chttp2_hptbl_find_result</a>
+</li>
+<li>hash
+: <a class="el" href="structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d">grpc_mdstr</a>
+, <a class="el" href="structinternal__string.html#abc9b5ed558b39ad7c3265964778b3b98">internal_string</a>
+</li>
+<li>hash_seed
+: <a class="el" href="structgrpc__mdctx.html#a7ac9fbdc8d9e07461ae46e89de5dec68">grpc_mdctx</a>
+</li>
+<li>have_alarm
+: <a class="el" href="structgrpc__call.html#a8ef6ebfaceedd93d50960c7e11a279b2">grpc_call</a>
+, <a class="el" href="structgrpc__subchannel.html#a04c16f8c09717fcda07708f4d2924e30">grpc_subchannel</a>
+</li>
+<li>have_read_byte
+: <a class="el" href="structinternal__request.html#aff291a650e0020e9a09beb9cc64298f9">internal_request</a>
+</li>
+<li>hc_on_recv
+: <a class="el" href="structcall__data.html#ab0f1ff70c9a8a72f5eb2e778fe709baf">call_data</a>
+</li>
+<li>hdr_capacity
+: <a class="el" href="structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77">grpc_httpcli_parser</a>
+</li>
+<li>hdr_count
+: <a class="el" href="structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0">grpc_httpcli_request</a>
+, <a class="el" href="structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e">grpc_httpcli_response</a>
+</li>
+<li>hdrs
+: <a class="el" href="structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6">grpc_httpcli_request</a>
+, <a class="el" href="structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d">grpc_httpcli_response</a>
+</li>
+<li>head
+: <a class="el" href="structgpr__stack__lockfree.html#a63a10f40dc93803a1d97846f659860eb">gpr_stack_lockfree</a>
+, <a class="el" href="structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73">grpc_chttp2_stream_list</a>
+, <a class="el" href="structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a">grpc_mdelem_list</a>
+</li>
+<li>header
+: <a class="el" href="structverifier__cb__ctx.html#a300805c3f085e1a830e26030a0c823ad">verifier_cb_ctx</a>
+</li>
+<li>header_eof
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50">grpc_chttp2_transport_parsing</a>
+</li>
+<li>header_idx
+: <a class="el" href="structframer__state.html#a8f1aacf4453938a5e335e77c6d775dc1">framer_state</a>
+</li>
+<li>heap
+: <a class="el" href="structshard__type.html#ae212a2061cff7c73ff1c208174272070">shard_type</a>
+</li>
+<li>heap_index
+: <a class="el" href="structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b">grpc_alarm</a>
+</li>
+<li>help
+: <a class="el" href="structarg.html#a7c3bb14ce3710281f4f5c511961823df">arg</a>
+</li>
+<li>host
+: <a class="el" href="structcall__data.html#a5b3ab9bd0e3c549bf9ad739f0011b995">call_data</a>
+, <a class="el" href="structchannel__registered__method.html#a6f9cc4376a5b8955a060f089720f2e9d">channel_registered_method</a>
+, <a class="el" href="structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631">grpc_call_details</a>
+, <a class="el" href="structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d">grpc_httpcli_request</a>
+, <a class="el" href="structinternal__request.html#ab545c1a0948fde5ebcf3a38e4bb2e976">internal_request</a>
+, <a class="el" href="structregistered__method.html#ac8947363747871cca9a921739b686545">registered_method</a>
+</li>
+<li>host_capacity
+: <a class="el" href="structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1">grpc_call_details</a>
+</li>
+<li>host_key
+: <a class="el" href="structchannel__data.html#acf1f4e1f7664686d2c41072763080cf6">channel_data</a>
+</li>
+<li>hpack_compressor
+: <a class="el" href="structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460">grpc_chttp2_transport_writing</a>
+</li>
+<li>hpack_parser
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d">grpc_chttp2_transport_parsing</a>
+</li>
+<li>hs_on_recv
+: <a class="el" href="structcall__data.html#a449389cf74cdadc8a00b52990c7052d5">call_data</a>
+</li>
+<li>http_ctx
+: <a class="el" href="structgrpc__jwt__verifier.html#a0dbb6661ebad9689425e9a3e24c67a3d">grpc_jwt_verifier</a>
+</li>
+<li>http_scheme
+: <a class="el" href="structchannel__data.html#a76cf628a9f2165700655595e349dc71c">channel_data</a>
+</li>
+<li>httpcli_context
+: <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>https_scheme
+: <a class="el" href="structchannel__data.html#a64d3d8ab7ed7ca08eb8e1e1823051d97">channel_data</a>
+</li>
+<li>huff
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5">grpc_chttp2_hpack_parser</a>
+</li>
+<li>huff_state
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c">grpc_chttp2_hpack_parser</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>
diff --git a/doc/ref/core.internal/html/functions_vars_i.html b/doc/ref/core.internal/html/functions_vars_i.html
new file mode 100644
index 0000000000..6130539b26
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_i.html
@@ -0,0 +1,343 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>iam_md
+: <a class="el" href="structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8">grpc_iam_credentials</a>
+</li>
+<li>iat
+: <a class="el" href="structgrpc__jwt__claims.html#a4f50dadfd0a2d3493065b5b4faf84fef">grpc_jwt_claims</a>
+</li>
+<li>id
+: <a class="el" href="structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3">census_stat</a>
+, <a class="el" href="structgrpc__chttp2__outstanding__ping.html#a3cf40734ac72489211630654aaa02bd9">grpc_chttp2_outstanding_ping</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745">grpc_chttp2_settings_parser</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832">grpc_chttp2_stream_writing</a>
+</li>
+<li>in_array
+: <a class="el" href="structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438">grpc_json_reader</a>
+</li>
+<li>in_flight_cbs
+: <a class="el" href="structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2">grpc_pollset</a>
+</li>
+<li>in_object
+: <a class="el" href="structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6">grpc_json_reader</a>
+</li>
+<li>in_stream_map
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4">grpc_chttp2_stream_global</a>
+</li>
+<li>inactive_watcher_root
+: <a class="el" href="structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8">grpc_fd</a>
+</li>
+<li>included
+: <a class="el" href="structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95">grpc_chttp2_stream</a>
+</li>
+<li>incoming
+: <a class="el" href="structtsi__fake__handshaker.html#a88e5531bc9e28f480211209fe0d68e14">tsi_fake_handshaker</a>
+</li>
+<li>incoming_configuration
+: <a class="el" href="structchannel__data.html#a2b20db607d1a87fa17b260cac4a121f0">channel_data</a>
+</li>
+<li>incoming_frame_flags
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_frame_size
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_frame_type
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_message
+: <a class="el" href="structgrpc__call.html#a98eafd66de3d31324c7a9c113dfb9a56">grpc_call</a>
+</li>
+<li>incoming_message_flags
+: <a class="el" href="structgrpc__call.html#a4c3b082e465f93d090d6f523e197b43a">grpc_call</a>
+</li>
+<li>incoming_message_length
+: <a class="el" href="structgrpc__call.html#a51fb682fa9024d09b2e137edb2fc13d0">grpc_call</a>
+</li>
+<li>incoming_metadata
+: <a class="el" href="structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc">grpc_chttp2_stream_parsing</a>
+</li>
+<li>incoming_queue
+: <a class="el" href="structgrpc__call.html#ae217707d3befc054ac994f12de9e10bb">grpc_call</a>
+</li>
+<li>incoming_settings
+: <a class="el" href="structgrpc__chttp2__settings__parser.html#a4b6b73681cb815b663dda8008ff3d519">grpc_chttp2_settings_parser</a>
+</li>
+<li>incoming_sopb
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c">grpc_chttp2_data_parser</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e">grpc_chttp2_stream_global</a>
+</li>
+<li>incoming_stream
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_window
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498">grpc_chttp2_transport_parsing</a>
+</li>
+<li>incoming_window_delta
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9">grpc_chttp2_transport_parsing</a>
+</li>
+<li>indent
+: <a class="el" href="structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de">grpc_json_writer</a>
+</li>
+<li>index
+: <a class="el" href="structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6">grpc_auth_property_iterator</a>
+, <a class="el" href="structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb">grpc_byte_buffer_reader</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea">grpc_chttp2_hptbl_find_result</a>
+, <a class="el" href="structlockfree__node__contents.html#a928cde9bc69482abb79427725c16b8f7">lockfree_node_contents</a>
+</li>
+<li>indices_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#ae15305b7ada7f6b084088b9ab64240a1">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>indices_keys
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#abd71f91eced6cc4bfdef970d00bbe808">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>init_avg
+: <a class="el" href="structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224">grpc_time_averaged_stats</a>
+</li>
+<li>init_call_elem
+: <a class="el" href="structgrpc__channel__filter.html#aea34a13bc660ba869d4c18ed6cd21c2b">grpc_channel_filter</a>
+</li>
+<li>init_channel_elem
+: <a class="el" href="structgrpc__channel__filter.html#a7171b1634e5a7d42880f68ae1a4f875a">grpc_channel_filter</a>
+</li>
+<li>init_stream
+: <a class="el" href="structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f">grpc_transport_vtable</a>
+</li>
+<li>initial_metadata
+: <a class="el" href="structrequested__call.html#a813caeee0e35952179d319607847c7b7">requested_call</a>
+</li>
+<li>initial_window_update
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c">grpc_chttp2_transport_parsing</a>
+</li>
+<li>inlined
+: <a class="el" href="structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28">gpr_slice</a>
+, <a class="el" href="structgpr__slice__buffer.html#adb678a23dc27e50c478bc48d365420e2">gpr_slice_buffer</a>
+</li>
+<li>inlined_ops
+: <a class="el" href="structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301">grpc_stream_op_buffer</a>
+</li>
+<li>inner
+: <a class="el" href="structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805">grpc_composite_credentials</a>
+</li>
+<li>input
+: <a class="el" href="structjson__reader__userdata.html#abccbf0e7d9695f00948288df13ba4c7e">json_reader_userdata</a>
+</li>
+<li>input_buffer
+: <a class="el" href="structsecure__endpoint.html#abc32a14befcf93c3a16dcb9e8fa66ef4">secure_endpoint</a>
+</li>
+<li>integer
+: <a class="el" href="structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554">grpc_arg</a>
+</li>
+<li>interested_parties
+: <a class="el" href="structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac">grpc_connect_in_args</a>
+</li>
+<li>internal_data
+: <a class="el" href="structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553">grpc_metadata</a>
+</li>
+<li>internal_refcount
+: <a class="el" href="structgrpc__call.html#a8aedf0fd044d8d985172fd02293ed55d">grpc_call</a>
+, <a class="el" href="structgrpc__server.html#ab5c3bf8e55920a90654d31c6a0836e93">grpc_server</a>
+</li>
+<li>into_ssl
+: <a class="el" href="structtsi__ssl__frame__protector.html#ac1162fd08a5da7a1c5f142251beb9934">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a6d79399d2bf72081032843d9800dcaa6">tsi_ssl_handshaker</a>
+</li>
+<li>invalid_value_behavior
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df">grpc_chttp2_setting_parameters</a>
+</li>
+<li>iomgr_obj
+: <a class="el" href="structinternal__request.html#a16edaecfecf5937255d86d07ab3be4d0">internal_request</a>
+</li>
+<li>iomgr_object
+: <a class="el" href="structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc">grpc_fd</a>
+, <a class="el" href="structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6">grpc_winsocket</a>
+</li>
+<li>is_ack
+: <a class="el" href="structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c">grpc_chttp2_ping_parser</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec">grpc_chttp2_settings_parser</a>
+</li>
+<li>is_async
+: <a class="el" href="structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806">grpc_fake_oauth2_credentials</a>
+</li>
+<li>is_boundary
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec">grpc_chttp2_hpack_parser</a>
+</li>
+<li>is_client
+: <a class="el" href="structgrpc__call.html#a5a4810b490545e9b18b488bef197314f">grpc_call</a>
+, <a class="el" href="structgrpc__channel.html#a4bfedb17fb28f088111e21abd9c2c4cc">grpc_channel</a>
+, <a class="el" href="structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58">grpc_chttp2_transport_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57">grpc_chttp2_transport_writing</a>
+, <a class="el" href="structtsi__fake__handshaker.html#ab3817b146f5d0d09232581e33bfd50f0">tsi_fake_handshaker</a>
+</li>
+<li>is_client_side
+: <a class="el" href="structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd">grpc_security_connector</a>
+</li>
+<li>is_connection_update
+: <a class="el" href="structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca">grpc_chttp2_window_update_parser</a>
+</li>
+<li>is_done
+: <a class="el" href="structcompute__engine__detector.html#a1b82128e01e4041639ff7e3f5286207d">compute_engine_detector</a>
+</li>
+<li>is_eof
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b">grpc_chttp2_hpack_parser</a>
+</li>
+<li>is_frame_compressed
+: <a class="el" href="structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7">grpc_chttp2_data_parser</a>
+</li>
+<li>is_last_frame
+: <a class="el" href="structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e">grpc_chttp2_data_parser</a>
+</li>
+<li>is_last_send
+: <a class="el" href="structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f">grpc_transport_stream_op</a>
+</li>
+<li>is_server_cq
+: <a class="el" href="structgrpc__completion__queue.html#a495f730490aa5625bb7ce2604ee8e6d7">grpc_completion_queue</a>
+</li>
+<li>is_set
+: <a class="el" href="structreceived__status.html#a39555cb7bcc2ccf18854bd73136c9c03">received_status</a>
+</li>
+<li>is_shutdown
+: <a class="el" href="structgrpc__server__secure__state.html#aea11767a6c8e97a44574e8e3a368deec">grpc_server_secure_state</a>
+</li>
+<li>iss
+: <a class="el" href="structgrpc__jwt__claims.html#a69f31f01a0d1cac4f79f0a46ed4e6593">grpc_jwt_claims</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>
diff --git a/doc/ref/core.internal/html/functions_vars_j.html b/doc/ref/core.internal/html/functions_vars_j.html
new file mode 100644
index 0000000000..5147910ff4
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_j.html
@@ -0,0 +1,144 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
+<li>json
+: <a class="el" href="structgrpc__jwt__claims.html#add6f381accf815cd0b7385fded17fae5">grpc_jwt_claims</a>
+</li>
+<li>jti
+: <a class="el" href="structgrpc__jwt__claims.html#abf5af69634298aaeeae5a0a2e6ef60f9">grpc_jwt_claims</a>
+</li>
+<li>jwt_expiration
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>jwt_lifetime
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>jwt_md
+: <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533">grpc_service_account_jwt_access_credentials</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>
diff --git a/doc/ref/core.internal/html/functions_vars_k.html b/doc/ref/core.internal/html/functions_vars_k.html
new file mode 100644
index 0000000000..b88a3717bb
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_k.html
@@ -0,0 +1,165 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li class="current"><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>key
+: <a class="el" href="structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece">gpr_pthread_thread_local</a>
+, <a class="el" href="structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968">grpc_arg</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53">grpc_credentials_md</a>
+, <a class="el" href="structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e">grpc_httpcli_header</a>
+, <a class="el" href="structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6">grpc_json</a>
+, <a class="el" href="structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94">grpc_mdelem</a>
+, <a class="el" href="structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7">grpc_metadata</a>
+, <a class="el" href="structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd">grpc_service_account_credentials</a>
+, <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32">grpc_service_account_jwt_access_credentials</a>
+, <a class="el" href="structinternal__metadata.html#a1ef3f9e31e4380c0ec8fce01714c0fa3">internal_metadata</a>
+, <a class="el" href="structjson__reader__userdata.html#ac7750253670b78b205a06c2e371ac418">json_reader_userdata</a>
+</li>
+<li>key_url_prefix
+: <a class="el" href="structemail__key__mapping.html#a0c0fa6aa94861adf3c6a4f5f9579d37a">email_key_mapping</a>
+, <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec">grpc_jwt_verifier_email_domain_key_url_mapping</a>
+</li>
+<li>keys
+: <a class="el" href="structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6">grpc_chttp2_stream_map</a>
+</li>
+<li>kick
+: <a class="el" href="structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc">grpc_pollset_vtable</a>
+</li>
+<li>kick_state
+: <a class="el" href="structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f">grpc_pollset</a>
+</li>
+<li>kicked
+: <a class="el" href="structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8">grpc_pollset_kick_state</a>
+</li>
+<li>kid
+: <a class="el" href="structjose__header.html#ae38087aaf6d4e0670bb5deda4375f719">jose_header</a>
+</li>
+<li>kill_zombie_closure
+: <a class="el" href="structcall__data.html#a2a1ef01585059d467002ce70f6fa03d1">call_data</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>
diff --git a/doc/ref/core.internal/html/functions_vars_l.html b/doc/ref/core.internal/html/functions_vars_l.html
new file mode 100644
index 0000000000..24f8eaf02a
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_l.html
@@ -0,0 +1,198 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li class="current"><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>last_ent
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b">grpc_chttp2_hptbl</a>
+</li>
+<li>last_incoming_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542">grpc_chttp2_transport_parsing</a>
+</li>
+<li>last_send_contains
+: <a class="el" href="structgrpc__call.html#a4428a5f3615eb7ed703cb5650c379225">grpc_call</a>
+</li>
+<li>last_shutdown_message_time
+: <a class="el" href="structgrpc__server.html#aba4f032ca63d1a654bd2a7776dfb6b6f">grpc_server</a>
+</li>
+<li>last_stream_id
+: <a class="el" href="structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be">grpc_chttp2_goaway_parser</a>
+</li>
+<li>last_was_header
+: <a class="el" href="structframer__state.html#a81d1d4409a7212a9da08212e55772b20">framer_state</a>
+</li>
+<li>lb_policy
+: <a class="el" href="structchannel__data.html#a3cbf28a9634e67af5aea0af6363e4d94">channel_data</a>
+, <a class="el" href="structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9">grpc_client_config</a>
+, <a class="el" href="structlb__policy__connectivity__watcher.html#a2e56bc230933c8ee0f5dbacf58e1805c">lb_policy_connectivity_watcher</a>
+</li>
+<li>lb_policy_factory
+: <a class="el" href="structdns__resolver.html#a9e7953dbbac44c59c5f8d2946e4295f7">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#a3d3d40590716456f336738170ad3f3e8">sockaddr_resolver</a>
+</li>
+<li>left_overs
+: <a class="el" href="structgrpc__secure__transport__setup.html#ac057ddae29de167423a28ff357acab20">grpc_secure_transport_setup</a>
+</li>
+<li>leftover_bytes
+: <a class="el" href="structsecure__endpoint.html#a46eca04c2167e2d459c0a7aab630bf8a">secure_endpoint</a>
+</li>
+<li>len
+: <a class="el" href="structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56">grpc_resolved_address</a>
+</li>
+<li>length
+: <a class="el" href="structb64__huff__sym.html#a32397c9284689efd11eb89236d8d69e2">b64_huff_sym</a>
+, <a class="el" href="structdump__out.html#ae5a2d8bf503113afc8d2da2cb36d70ad">dump_out</a>
+, <a class="el" href="structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5">gpr_slice</a>
+, <a class="el" href="structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3">gpr_slice_buffer</a>
+, <a class="el" href="structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0">grpc_begin_message</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5">grpc_chttp2_hpack_parser_string</a>
+, <a class="el" href="structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88">grpc_chttp2_huffsym</a>
+, <a class="el" href="structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7">tsi_peer_property</a>
+</li>
+<li>line
+: <a class="el" href="structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb">gpr_log_func_args</a>
+</li>
+<li>links
+: <a class="el" href="structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624">grpc_chttp2_stream</a>
+</li>
+<li>list
+: <a class="el" href="structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d">grpc_metadata_batch</a>
+, <a class="el" href="structshard__type.html#a9e5f5db6f2eb96346ad17f43f731b31f">shard_type</a>
+</li>
+<li>listeners
+: <a class="el" href="structgrpc__server.html#a8034614967f908b2de453975996bdb7f">grpc_server</a>
+</li>
+<li>listeners_destroyed
+: <a class="el" href="structgrpc__server.html#aa36374d7075e4d6af2c2c2cb8dc26552">grpc_server</a>
+</li>
+<li>lists
+: <a class="el" href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a">grpc_chttp2_transport</a>
+</li>
+<li>locked
+: <a class="el" href="structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342">gpr_mu</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>
diff --git a/doc/ref/core.internal/html/functions_vars_m.html b/doc/ref/core.internal/html/functions_vars_m.html
new file mode 100644
index 0000000000..0aaaa9baaf
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_m.html
@@ -0,0 +1,290 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>mappings
+: <a class="el" href="structgrpc__jwt__verifier.html#a1d15c7406be10b7fc86775320b2afac4">grpc_jwt_verifier</a>
+</li>
+<li>master
+: <a class="el" href="structchannel__data.html#a185d2abf35cf1fbdaa13b4fb097bda5e">channel_data</a>
+, <a class="el" href="structgrpc__subchannel.html#a7662fa59b78e15ce10c272651e82b70d">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275">grpc_subchannel_args</a>
+, <a class="el" href="structsubchannel__factory.html#ab7945d086262563fdde51b250893e428">subchannel_factory</a>
+</li>
+<li>masters
+: <a class="el" href="structgrpc__call.html#a6a0e7c0825db8dc7561af44663cbd75d">grpc_call</a>
+</li>
+<li>max_bytes
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b">grpc_chttp2_hptbl</a>
+</li>
+<li>max_frame_size
+: <a class="el" href="structtsi__fake__frame__protector.html#a03f274c6362a35ad486d91fdac777816">tsi_fake_frame_protector</a>
+</li>
+<li>max_message_length
+: <a class="el" href="structgrpc__channel.html#af25859261f7e57e5c5f2bbafda64dbf1">grpc_channel</a>
+</li>
+<li>max_possible
+: <a class="el" href="structgpr__histogram.html#af94ad5cd243aff89bbe7b0a9918dab77">gpr_histogram</a>
+</li>
+<li>max_recv_bytes
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b">grpc_transport_stream_op</a>
+</li>
+<li>max_requested_calls
+: <a class="el" href="structgrpc__server.html#aaaa9b2a91b6e3edd7ebb0b194110f403">grpc_server</a>
+</li>
+<li>max_seen
+: <a class="el" href="structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1">gpr_histogram</a>
+</li>
+<li>max_value
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001">grpc_chttp2_setting_parameters</a>
+</li>
+<li>maybe_work
+: <a class="el" href="structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f">grpc_pollset_vtable</a>
+</li>
+<li>md
+: <a class="el" href="structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715">grpc_linked_mdelem</a>
+</li>
+<li>md_ctx
+: <a class="el" href="structchannel__data.html#ad12b240dea3a1193fa08327ef1e4553e">channel_data</a>
+</li>
+<li>md_elems
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a5102b59e552251b072c0ac96020b43ea">grpc_composite_credentials_metadata_context</a>
+</li>
+<li>md_links
+: <a class="el" href="structcall__data.html#a0cb931b8950cc5841edf1156ca861600">call_data</a>
+</li>
+<li>mdctx
+: <a class="el" href="structchannel__data.html#a8ccd22d950d3fda54a0f338d55d1f813">channel_data</a>
+, <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c">grpc_chttp2_hpack_compressor</a>
+, <a class="el" href="structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b">grpc_chttp2_hptbl</a>
+, <a class="el" href="structgrpc__subchannel.html#a2e2040552b5320c9a91a6e080760f96a">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477">grpc_subchannel_args</a>
+, <a class="el" href="structsubchannel__factory.html#a920af9d40dedd8ba5eb2f64648eb5008">subchannel_factory</a>
+</li>
+<li>mdelem_compression_algorithms
+: <a class="el" href="structchannel__data.html#a4af222359dc97dc96780402413bb015d">channel_data</a>
+</li>
+<li>mdstr_outgoing_compression_algorithm_key
+: <a class="el" href="structchannel__data.html#aeb493774aec5abf500f8ef36b99553d6">channel_data</a>
+</li>
+<li>mdstr_request_compression_algorithm_key
+: <a class="el" href="structchannel__data.html#a9c1ff3982fc4510f367df5a35960abcb">channel_data</a>
+</li>
+<li>mdtab
+: <a class="el" href="structgrpc__mdctx.html#adff99895d519ab72b9c66a23de57156c">grpc_mdctx</a>
+</li>
+<li>mdtab_capacity
+: <a class="el" href="structgrpc__mdctx.html#ab79559486a14c29803dd0f6464afe2df">grpc_mdctx</a>
+</li>
+<li>mdtab_count
+: <a class="el" href="structgrpc__mdctx.html#af513520e504950d327e9a41cb1781779">grpc_mdctx</a>
+</li>
+<li>mdtab_free
+: <a class="el" href="structgrpc__mdctx.html#a42820dc23bdea76b0d2a7e7db3d64131">grpc_mdctx</a>
+</li>
+<li>mem_used
+: <a class="el" href="structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878">grpc_chttp2_hptbl</a>
+</li>
+<li>merge_args
+: <a class="el" href="structmerge__args__factory.html#a973c42ea64bda49e62c9648f1d9eb919">merge_args_factory</a>
+, <a class="el" href="structsubchannel__factory.html#a0538fbb1dc64ec4ab487326b64792bde">subchannel_factory</a>
+</li>
+<li>message
+: <a class="el" href="structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b">gpr_log_func_args</a>
+</li>
+<li>metadata
+: <a class="el" href="uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe">grpc_metadata_array</a>
+, <a class="el" href="structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079">grpc_op</a>
+, <a class="el" href="structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464">grpc_stream_op</a>
+</li>
+<li>metadata_context
+: <a class="el" href="structgrpc__call.html#a1fcf672edf744df8c192aba2da0da3f2">grpc_call</a>
+, <a class="el" href="structgrpc__channel.html#a715d3ad3606de80c57ea96570e364ec8">grpc_channel</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e">grpc_connect_in_args</a>
+</li>
+<li>method
+: <a class="el" href="structcall__data.html#a7d9cd71936be176040c5f69a78d695b0">call_data</a>
+, <a class="el" href="structchannel__data.html#a78079d15b762dcc791e6e996951d9f6a">channel_data</a>
+, <a class="el" href="structchannel__registered__method.html#a7d2b4e40ba59b8b98e1b06b94f7345f1">channel_registered_method</a>
+, <a class="el" href="structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5">grpc_call_details</a>
+, <a class="el" href="structregistered__method.html#a84540106ff6f3763d9ada701667cf77d">registered_method</a>
+</li>
+<li>method_capacity
+: <a class="el" href="structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0">grpc_call_details</a>
+</li>
+<li>method_post
+: <a class="el" href="structchannel__data.html#a05461a751cad059d57ccd5ed3c698fd7">channel_data</a>
+</li>
+<li>min_deadline
+: <a class="el" href="structshard__type.html#a16cac3c86f6ac95b49f7a8b703dc4f07">shard_type</a>
+</li>
+<li>min_seen
+: <a class="el" href="structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf">gpr_histogram</a>
+</li>
+<li>min_value
+: <a class="el" href="structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82">grpc_chttp2_setting_parameters</a>
+</li>
+<li>mu
+: <a class="el" href="structdns__resolver.html#aa1661d76a33a19a305d5edb1b354ce8a">dns_resolver</a>
+, <a class="el" href="structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f">gpr_cancellable</a>
+, <a class="el" href="structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__call.html#a0641698dba5cf939dbc61e2a6019199c">grpc_call</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__mdctx.html#a3c1051440f8ce4c48c38a08f5a478c4e">grpc_mdctx</a>
+, <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45">grpc_oauth2_token_fetcher_credentials</a>
+, <a class="el" href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">grpc_pollset</a>
+, <a class="el" href="structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a">grpc_pollset_kick_state</a>
+, <a class="el" href="structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703">grpc_pollset_set</a>
+, <a class="el" href="structgrpc__server__secure__state.html#a6572a200d1489334fa4af215ccffa717">grpc_server_secure_state</a>
+, <a class="el" href="structgrpc__subchannel.html#a020e44ce2c4d73d26c63a4ec9f2f3e14">grpc_subchannel</a>
+, <a class="el" href="structpick__first__lb__policy.html#a5bc2719af90ffde998983bdeeacfd764">pick_first_lb_policy</a>
+, <a class="el" href="structshard__type.html#ae0271c419d83a06ab69fe48ce3e3196b">shard_type</a>
+, <a class="el" href="structsockaddr__resolver.html#a9ac37ca23a45425c9af702236f53c81d">sockaddr_resolver</a>
+, <a class="el" href="structstate__watcher.html#a39ac8f332dc6a1b6a9bf0815b6912327">state_watcher</a>
+</li>
+<li>mu_call
+: <a class="el" href="structgrpc__server.html#a4d89504a094de15aa4a208c0159d904b">grpc_server</a>
+</li>
+<li>mu_config
+: <a class="el" href="structchannel__data.html#a925aa059f74c20ba06718d45b78382af">channel_data</a>
+</li>
+<li>mu_global
+: <a class="el" href="structgrpc__server.html#a2f291ce57ed6540efe5c99e607be3a27">grpc_server</a>
+</li>
+<li>mu_state
+: <a class="el" href="structcall__data.html#aa671a127b29c32228f221a6121515a64">call_data</a>
+</li>
+<li>mu_user_data
+: <a class="el" href="structinternal__metadata.html#a04fa79f6da10ebdc3c337277b0997657">internal_metadata</a>
+</li>
+<li>multiplier
+: <a class="el" href="structgpr__histogram.html#aa3b6846c10a297bf1a9706ab348ffead">gpr_histogram</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>
diff --git a/doc/ref/core.internal/html/functions_vars_n.html b/doc/ref/core.internal/html/functions_vars_n.html
new file mode 100644
index 0000000000..9237cb8964
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_n.html
@@ -0,0 +1,255 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>naddrs
+: <a class="el" href="structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8">grpc_resolved_addresses</a>
+</li>
+<li>name
+: <a class="el" href="structarg.html#a19d6eebdcc5e2c4679c5f77760adb5dc">arg</a>
+, <a class="el" href="structdns__resolver.html#a5670dbafe81b9e38af022bd5cf907fa3">dns_resolver</a>
+, <a class="el" href="structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27">grpc_auth_property</a>
+, <a class="el" href="structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7">grpc_auth_property_iterator</a>
+, <a class="el" href="structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6">grpc_channel_filter</a>
+, <a class="el" href="structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f">grpc_chttp2_setting_parameters</a>
+, <a class="el" href="structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8">grpc_connectivity_state_tracker</a>
+, <a class="el" href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf">grpc_iomgr_object</a>
+, <a class="el" href="structtracer.html#a08a3bb14c306ce7394df6a5bb56e6eb3">tracer</a>
+, <a class="el" href="structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67">tsi_peer_property</a>
+</li>
+<li>nbf
+: <a class="el" href="structgrpc__jwt__claims.html#a294f9a7e9e2cc0820c469b7b340c980a">grpc_jwt_claims</a>
+</li>
+<li>need_mask
+: <a class="el" href="structreqinfo__master.html#af1092f7b58950276ec6b35da0f7e1fd5">reqinfo_master</a>
+</li>
+<li>needs_draining
+: <a class="el" href="structtsi__fake__frame.html#a5c19114ec65853283cf5234b8bef611b">tsi_fake_frame</a>
+</li>
+<li>needs_incoming_message
+: <a class="el" href="structtsi__fake__handshaker.html#a5b5522b09970836d1867fc4c08411c91">tsi_fake_handshaker</a>
+</li>
+<li>new_stream_map
+: <a class="el" href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca">grpc_chttp2_transport</a>
+</li>
+<li>next
+: <a class="el" href="structarg.html#a5e585c92ebdfcf1c6d966d887d07f7ff">arg</a>
+, <a class="el" href="structcall__link.html#a61d52b76dfba4d08d6c453392dea6947">call_link</a>
+, <a class="el" href="structchannel__data.html#a7cbc7853658b85e4f62f37a71189a3d7">channel_data</a>
+, <a class="el" href="structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab">grpc_alarm</a>
+, <a class="el" href="structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f">grpc_chttp2_outstanding_ping</a>
+, <a class="el" href="structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de">grpc_chttp2_stream_link</a>
+, <a class="el" href="structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388">grpc_connectivity_state_watcher</a>
+, <a class="el" href="structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948">grpc_cq_completion</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae">grpc_fd_watcher</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef">grpc_iomgr_closure</a>
+, <a class="el" href="structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c">grpc_iomgr_object</a>
+, <a class="el" href="structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2">grpc_json</a>
+, <a class="el" href="structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f">grpc_kick_fd_info</a>
+, <a class="el" href="structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef">grpc_linked_mdelem</a>
+, <a class="el" href="structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0">grpc_resolver_vtable</a>
+, <a class="el" href="structlistener.html#afd926873c32f6f18eff932b871c7a9d7">listener</a>
+, <a class="el" href="structpending__pick.html#abecbb432724c24c523d0cfda19f7b1c1">pending_pick</a>
+, <a class="el" href="structregistered__call.html#a81f1e87dddb1f37ff09a9aaa56ca62cd">registered_call</a>
+, <a class="el" href="structregistered__method.html#a662f0ff612e8211e1ac2ff2bc7350776">registered_method</a>
+, <a class="el" href="structtcp__endpoint__list.html#aaeb000e9fe236631fc1355b657a9e1fe">tcp_endpoint_list</a>
+, <a class="el" href="structtracer.html#aec6b92c7c58fec94b57b7a2385c3c3c1">tracer</a>
+, <a class="el" href="structwaiting__for__connect.html#a62c2a3b3fa576054930f40d722716438">waiting_for_connect</a>
+</li>
+<li>next_address
+: <a class="el" href="structinternal__request.html#a76357b043a6e64d3254650151c2795bb">internal_request</a>
+</li>
+<li>next_attempt
+: <a class="el" href="structgrpc__subchannel.html#a6ee4fc265d48aad4c76411a80001ac5c">grpc_subchannel</a>
+</li>
+<li>next_completion
+: <a class="el" href="structdns__resolver.html#a6ed64036e71eb1ee7dc886adb51820d6">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#acd7a423835a4be78a041f895bba3b421">sockaddr_resolver</a>
+</li>
+<li>next_message_to_send
+: <a class="el" href="structtsi__fake__handshaker.html#ab343e56591aa9bae847d1af36534ecbe">tsi_fake_handshaker</a>
+</li>
+<li>next_state
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1">grpc_chttp2_hpack_parser</a>
+</li>
+<li>next_stream_id
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9">grpc_chttp2_transport_parsing</a>
+</li>
+<li>nops
+: <a class="el" href="structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b">grpc_stream_op_buffer</a>
+</li>
+<li>notify
+: <a class="el" href="structconnector.html#ae73053d157c31e9015427d56228e7123">connector</a>
+, <a class="el" href="structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f">grpc_connectivity_state_watcher</a>
+, <a class="el" href="structwaiting__for__connect.html#a8e497a44e87d2780b2f7dbd2dd006526">waiting_for_connect</a>
+</li>
+<li>notify_on_read
+: <a class="el" href="structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2">grpc_endpoint_vtable</a>
+</li>
+<li>notify_on_state_change
+: <a class="el" href="structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed">grpc_lb_policy_vtable</a>
+</li>
+<li>num_args
+: <a class="el" href="structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde">grpc_channel_args</a>
+</li>
+<li>num_buckets
+: <a class="el" href="structgpr__histogram.html#a039f2094c3aea146aaf6a9a75bc5ab12">gpr_histogram</a>
+</li>
+<li>num_channels
+: <a class="el" href="structchannel__broadcaster.html#a0b95a339b9c30a54d2f33b336be1c0c9">channel_broadcaster</a>
+</li>
+<li>num_completed_requests
+: <a class="el" href="structgrpc__call.html#ae92d9e5f96d5e80d9c480ab79e051ada">grpc_call</a>
+</li>
+<li>num_creds
+: <a class="el" href="structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96">grpc_credentials_array</a>
+</li>
+<li>num_entries
+: <a class="el" href="structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259">grpc_credentials_md_store</a>
+</li>
+<li>num_ents
+: <a class="el" href="structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1">grpc_chttp2_hptbl</a>
+</li>
+<li>num_filters
+: <a class="el" href="structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3">grpc_connect_out_args</a>
+, <a class="el" href="structgrpc__subchannel.html#a0d8559ba4069f1940a92d6d58d4f4009">grpc_subchannel</a>
+</li>
+<li>num_key_cert_pairs
+: <a class="el" href="structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c">grpc_ssl_server_config</a>
+</li>
+<li>num_mappings
+: <a class="el" href="structgrpc__jwt__verifier.html#a5c116d4a596479e9acb28be8c5adc3b5">grpc_jwt_verifier</a>
+</li>
+<li>num_shutdown_tags
+: <a class="el" href="structgrpc__server.html#afd8d25139f82d26ce567e4a1a786b54b">grpc_server</a>
+</li>
+<li>num_subchannels
+: <a class="el" href="structpick__first__lb__policy.html#a39415d22c1bb4ace43e7abc6331f08e1">pick_first_lb_policy</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>
diff --git a/doc/ref/core.internal/html/functions_vars_o.html b/doc/ref/core.internal/html/functions_vars_o.html
new file mode 100644
index 0000000000..80a890d8ee
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_o.html
@@ -0,0 +1,276 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>obfuscated
+: <a class="el" href="structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f">grpc_metadata</a>
+</li>
+<li>offset
+: <a class="el" href="structtsi__fake__frame.html#ab1fe06dcec5ebffc85112c9a726ed3f6">tsi_fake_frame</a>
+</li>
+<li>on_changed
+: <a class="el" href="structlb__policy__connectivity__watcher.html#ab9bd1ed9605d5f575ea8e2ce51ed597c">lb_policy_connectivity_watcher</a>
+</li>
+<li>on_complete
+: <a class="el" href="structcompleted__request.html#a2abd9edaf87e7b33717d655f9651a26a">completed_request</a>
+, <a class="el" href="structpending__pick.html#a754316904bce1aec5d5afcc61b2b5abe">pending_pick</a>
+, <a class="el" href="structreqinfo__master.html#a77f3e6ff12d266f5e2d0b49ed590a344">reqinfo_master</a>
+, <a class="el" href="structstate__watcher.html#a3bd085c4cbd7f167fa42b7191f502d39">state_watcher</a>
+</li>
+<li>on_config_changed
+: <a class="el" href="structchannel__data.html#a5a8db474fbde3443ad862229ef3be367">channel_data</a>
+</li>
+<li>on_connectivity_state_change
+: <a class="el" href="structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953">grpc_transport_op</a>
+</li>
+<li>on_consumed
+: <a class="el" href="structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a">grpc_transport_op</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93">grpc_transport_stream_op</a>
+</li>
+<li>on_done_bind
+: <a class="el" href="structgrpc__call.html#a14ae475238cf1ae8b2d022c7a6b755b7">grpc_call</a>
+</li>
+<li>on_done_closure
+: <a class="el" href="structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f">grpc_fd</a>
+</li>
+<li>on_done_recv
+: <a class="el" href="structcall__data.html#a3c7f4d12b26ecd073c992c56fa9c098d">call_data</a>
+, <a class="el" href="structgrpc__call.html#a7397b6f80ed39e5e5b3cf1c68e88e959">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479">grpc_transport_stream_op</a>
+</li>
+<li>on_done_send
+: <a class="el" href="structgrpc__call.html#a4cef85f8e845ae1f24f043e5d853a843">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07">grpc_transport_stream_op</a>
+</li>
+<li>on_header
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f">grpc_chttp2_hpack_parser</a>
+</li>
+<li>on_header_user_data
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b">grpc_chttp2_hpack_parser</a>
+</li>
+<li>on_recv
+: <a class="el" href="structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c">grpc_chttp2_outstanding_ping</a>
+</li>
+<li>on_response
+: <a class="el" href="structinternal__request.html#a4679ca2c4587920feca983ac852ef2b6">internal_request</a>
+</li>
+<li>on_simulated_token_fetch_done_closure
+: <a class="el" href="structgrpc__credentials__metadata__request.html#a31c83ca54622158600b17ebcc6047af8">grpc_credentials_metadata_request</a>
+</li>
+<li>one_on_log_multiplier
+: <a class="el" href="structgpr__histogram.html#a63929f09cc7a7feedf7b1f330b0458c3">gpr_histogram</a>
+</li>
+<li>op
+: <a class="el" href="structcall__data.html#a0d259211de98a88e11c71fa93abd2877">call_data</a>
+, <a class="el" href="structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0">grpc_ioreq</a>
+, <a class="el" href="structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115">grpc_op</a>
+</li>
+<li>op_id
+: <a class="el" href="structcensus__context.html#ab46ba00da079c14fed8259bae560fdac">census_context</a>
+</li>
+<li>op_md_idx
+: <a class="el" href="structcall__data.html#aaa6841afd5ac22f2538e950688f8e67b">call_data</a>
+</li>
+<li>opaque
+: <a class="el" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">grpc_winsocket_callback_info</a>
+</li>
+<li>opaque_8bytes
+: <a class="el" href="structgrpc__chttp2__ping__parser.html#a338f5adfa9a1236094e16c36c5cd5b4e">grpc_chttp2_ping_parser</a>
+</li>
+<li>ops
+: <a class="el" href="structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975">grpc_stream_op_buffer</a>
+</li>
+<li>optional_payload
+: <a class="el" href="structrequested__call.html#a5c928486fa8b32b8ff89a672de5b4e2c">requested_call</a>
+</li>
+<li>orphan
+: <a class="el" href="structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08">grpc_winsocket</a>
+</li>
+<li>out
+: <a class="el" href="structhuff__out.html#a2d501bd162d6a335c51b2250e3f1bfef">huff_out</a>
+</li>
+<li>outbuf
+: <a class="el" href="structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0">grpc_chttp2_transport_writing</a>
+</li>
+<li>outgoing
+: <a class="el" href="structtsi__fake__handshaker.html#aa25567cc12e88a59cbf9ba3b51d90223">tsi_fake_handshaker</a>
+</li>
+<li>outgoing_sopb
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d">grpc_chttp2_stream_global</a>
+</li>
+<li>outgoing_window
+: <a class="el" href="structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec">grpc_chttp2_stream_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7">grpc_chttp2_transport_global</a>
+</li>
+<li>outgoing_window_update
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196">grpc_chttp2_stream_parsing</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a">grpc_chttp2_transport_parsing</a>
+</li>
+<li>output
+: <a class="el" href="structframer__state.html#ac6ebee785ebffe4a16a2ccd010ad08d6">framer_state</a>
+, <a class="el" href="structjson__writer__userdata.html#a1f55aaf048a0ff4414110e154133867d">json_writer_userdata</a>
+</li>
+<li>output_buffer
+: <a class="el" href="structsecure__endpoint.html#a901c720fdbd311bbaea1e91b441a0d61">secure_endpoint</a>
+</li>
+<li>output_char
+: <a class="el" href="structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2">grpc_json_writer_vtable</a>
+</li>
+<li>output_length_at_start_of_frame
+: <a class="el" href="structframer__state.html#a268504b075ec06de3ff0abb7ee7e589b">framer_state</a>
+</li>
+<li>output_string
+: <a class="el" href="structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e">grpc_json_writer_vtable</a>
+</li>
+<li>output_string_with_len
+: <a class="el" href="structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd">grpc_json_writer_vtable</a>
+</li>
+<li>outstanding
+: <a class="el" href="structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc">grpc_winsocket_callback_info</a>
+</li>
+<li>outstanding_metadata
+: <a class="el" href="structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0">grpc_chttp2_stream_global</a>
+</li>
+<li>overlapped
+: <a class="el" href="structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09">grpc_winsocket_callback_info</a>
+</li>
+<li>overridden_target_name
+: <a class="el" href="structgrpc__ssl__channel__security__connector.html#aaa9e644fdf517be178f1543922ddbe9a">grpc_ssl_channel_security_connector</a>
+</li>
+<li>owned_metadata
+: <a class="el" href="structgrpc__call.html#a3d2b2ada096589b52bfafa00be6e25b2">grpc_call</a>
+</li>
+<li>owned_metadata_capacity
+: <a class="el" href="structgrpc__call.html#a34cb5caca97e3b28ed0d321d9d38f6c8">grpc_call</a>
+</li>
+<li>owned_metadata_count
+: <a class="el" href="structgrpc__call.html#acc8804b9c6ee72c862e9eba7518a48ee">grpc_call</a>
+</li>
+<li>owning_refs
+: <a class="el" href="structgrpc__completion__queue.html#aae47cbaaca85ca3f9e7cb2317709f8e6">grpc_completion_queue</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>
diff --git a/doc/ref/core.internal/html/functions_vars_p.html b/doc/ref/core.internal/html/functions_vars_p.html
new file mode 100644
index 0000000000..1fa3484c9f
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_p.html
@@ -0,0 +1,355 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>p
+: <a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">grpc_arg</a>
+</li>
+<li>parent
+: <a class="el" href="structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba">grpc_json</a>
+</li>
+<li>parser
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61">grpc_chttp2_transport_parsing</a>
+, <a class="el" href="structinternal__request.html#a2de0ab3497414fd48d1a180c4473cfab">internal_request</a>
+</li>
+<li>parser_data
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442">grpc_chttp2_transport_parsing</a>
+</li>
+<li>parsing
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9">grpc_chttp2_stream</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c">grpc_chttp2_transport</a>
+</li>
+<li>parsing_active
+: <a class="el" href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3">grpc_chttp2_transport</a>
+</li>
+<li>parsing_stream_map
+: <a class="el" href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937">grpc_chttp2_transport</a>
+</li>
+<li>path
+: <a class="el" href="structcall__data.html#a6bcb3a806a24c9818f835251b97c01f8">call_data</a>
+, <a class="el" href="structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa">grpc_httpcli_request</a>
+, <a class="el" href="structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f">grpc_uri</a>
+, <a class="el" href="structregistered__call.html#a9abf9cadc3985fe0eacd827dcb857ea5">registered_call</a>
+</li>
+<li>path_key
+: <a class="el" href="structchannel__data.html#ad664631571a7160913f62e95368bbb2d">channel_data</a>
+</li>
+<li>path_string
+: <a class="el" href="structchannel__data.html#a3b2675d97ec1d95dc4cde4db5b00e0e7">channel_data</a>
+, <a class="el" href="structgrpc__channel.html#ad55dee766f5bae6c7bc00ad07bcb4b04">grpc_channel</a>
+</li>
+<li>peer
+: <a class="el" href="structgrpc__ssl__channel__security__connector.html#a8624078f54a0cf3dfdd47f4a0ac81042">grpc_ssl_channel_security_connector</a>
+</li>
+<li>peer_identity_property_name
+: <a class="el" href="structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33">grpc_auth_context</a>
+</li>
+<li>peer_string
+: <a class="el" href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7">grpc_chttp2_transport</a>
+</li>
+<li>pem_cert_chain
+: <a class="el" href="structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696">grpc_ssl_config</a>
+</li>
+<li>pem_cert_chain_size
+: <a class="el" href="structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03">grpc_ssl_config</a>
+</li>
+<li>pem_cert_chains
+: <a class="el" href="structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270">grpc_ssl_server_config</a>
+</li>
+<li>pem_cert_chains_sizes
+: <a class="el" href="structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0">grpc_ssl_server_config</a>
+</li>
+<li>pem_private_key
+: <a class="el" href="structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a">grpc_ssl_config</a>
+</li>
+<li>pem_private_key_size
+: <a class="el" href="structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820">grpc_ssl_config</a>
+</li>
+<li>pem_private_keys
+: <a class="el" href="structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49">grpc_ssl_server_config</a>
+</li>
+<li>pem_private_keys_sizes
+: <a class="el" href="structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c">grpc_ssl_server_config</a>
+</li>
+<li>pem_root_certs
+: <a class="el" href="structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41">grpc_ssl_config</a>
+, <a class="el" href="structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d">grpc_ssl_server_config</a>
+</li>
+<li>pem_root_certs_size
+: <a class="el" href="structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561">grpc_ssl_config</a>
+, <a class="el" href="structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121">grpc_ssl_server_config</a>
+</li>
+<li>pending_closures_head
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84">grpc_chttp2_transport_global</a>
+</li>
+<li>pending_closures_tail
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf">grpc_chttp2_transport_global</a>
+</li>
+<li>pending_events
+: <a class="el" href="structgrpc__completion__queue.html#a613cc61628fa742f363fb3125e8550db">grpc_completion_queue</a>
+</li>
+<li>pending_head
+: <a class="el" href="structrequest__matcher.html#aa302d9766527338ff4b416b59bbe1db2">request_matcher</a>
+</li>
+<li>pending_next
+: <a class="el" href="structcall__data.html#ad76af7080f636ebaa53a1575af62094e">call_data</a>
+</li>
+<li>pending_picks
+: <a class="el" href="structpick__first__lb__policy.html#a017af289ea4d9b9b392eadec3356ff56">pick_first_lb_policy</a>
+</li>
+<li>pending_tail
+: <a class="el" href="structrequest__matcher.html#a87b7e22827aea02c49a435f8aff3cdfe">request_matcher</a>
+</li>
+<li>perform_op
+: <a class="el" href="structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4">grpc_transport_vtable</a>
+</li>
+<li>perform_stream_op
+: <a class="el" href="structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab">grpc_transport_vtable</a>
+</li>
+<li>persistence_factor
+: <a class="el" href="structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602">grpc_time_averaged_stats</a>
+</li>
+<li>phase
+: <a class="el" href="structstate__watcher.html#a02cd41caaad234931890c2f4740bf345">state_watcher</a>
+</li>
+<li>pick
+: <a class="el" href="structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f">grpc_lb_policy_vtable</a>
+</li>
+<li>picked_channel
+: <a class="el" href="structcall__data.html#a96231ab5cca907d5638687fc2d64cccb">call_data</a>
+</li>
+<li>ping
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30">grpc_chttp2_transport_parsing</a>
+</li>
+<li>ping_counter
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7">grpc_chttp2_transport_global</a>
+</li>
+<li>pings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b">grpc_chttp2_transport_parsing</a>
+</li>
+<li>pointer
+: <a class="el" href="structgrpc__arg.html#a85b5bbfbdec09ae46cff15628096137a">grpc_arg</a>
+</li>
+<li>pollset
+: <a class="el" href="structcall__data.html#ab3a66a414a73ad49d82a87935ec0c08e">call_data</a>
+, <a class="el" href="structcompute__engine__detector.html#aadec91057716658d818c9dd3ead90ccd">compute_engine_detector</a>
+, <a class="el" href="structgrpc__completion__queue.html#aea3ae4f771564833e6082e50c4ebbbdc">grpc_completion_queue</a>
+, <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a826b0b290b5335867fb0299e75006083">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6">grpc_fd_watcher</a>
+, <a class="el" href="structinternal__request.html#aba6c008fc3a067827acf1dea8d88dec7">internal_request</a>
+, <a class="el" href="structpending__pick.html#afcad270e19b4e1e0a709426ca42e01fe">pending_pick</a>
+, <a class="el" href="structverifier__cb__ctx.html#a66c16d6c5a98e27b0bdc901f4f2f010a">verifier_cb_ctx</a>
+, <a class="el" href="structwaiting__for__connect.html#a18622a8e1fc008c3c9e97d0ae72a4369">waiting_for_connect</a>
+</li>
+<li>pollset_capacity
+: <a class="el" href="structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7">grpc_pollset_set</a>
+</li>
+<li>pollset_count
+: <a class="el" href="structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9">grpc_pollset_set</a>
+</li>
+<li>pollset_set
+: <a class="el" href="structchannel__data.html#ac98d4251e7919399dc6504b3ac6d8977">channel_data</a>
+, <a class="el" href="structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2">grpc_httpcli_context</a>
+, <a class="el" href="structgrpc__subchannel.html#a5d4cf69a350aa223319ed1d916ae55d0">grpc_subchannel</a>
+</li>
+<li>pollsets
+: <a class="el" href="structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb">grpc_pollset_set</a>
+, <a class="el" href="structgrpc__server.html#a747c9f6abd58918d40735615ad95e434">grpc_server</a>
+</li>
+<li>prev
+: <a class="el" href="structcall__link.html#abbc2f63926a688bd3fc03f5df8705bc3">call_link</a>
+, <a class="el" href="structchannel__data.html#afbde4416755c3c9a0b7d0021e8e290c5">channel_data</a>
+, <a class="el" href="structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4">gpr_cancellable_list_</a>
+, <a class="el" href="structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97">grpc_alarm</a>
+, <a class="el" href="structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6">grpc_chttp2_outstanding_ping</a>
+, <a class="el" href="structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400">grpc_chttp2_stream_link</a>
+, <a class="el" href="structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465">grpc_fd_watcher</a>
+, <a class="el" href="structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d">grpc_iomgr_object</a>
+, <a class="el" href="structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee">grpc_json</a>
+, <a class="el" href="structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44">grpc_kick_fd_info</a>
+, <a class="el" href="structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0">grpc_linked_mdelem</a>
+</li>
+<li>private_key
+: <a class="el" href="structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2">grpc_auth_json_key</a>
+, <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72">grpc_ssl_pem_key_cert_pair</a>
+</li>
+<li>private_key_id
+: <a class="el" href="structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4">grpc_auth_json_key</a>
+</li>
+<li>process_bytes_from_peer
+: <a class="el" href="structtsi__handshaker__vtable.html#aefed0ec53fa68de5417c720357c50a38">tsi_handshaker_vtable</a>
+</li>
+<li>properties
+: <a class="el" href="structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7">grpc_auth_context</a>
+, <a class="el" href="structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a">tsi_peer</a>
+</li>
+<li>property_count
+: <a class="el" href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b">grpc_auth_context</a>
+, <a class="el" href="structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8">tsi_peer</a>
+</li>
+<li>protect
+: <a class="el" href="structtsi__frame__protector__vtable.html#aa9c6a8a8c0154365f7a62924e1ad458f">tsi_frame_protector_vtable</a>
+</li>
+<li>protect_flush
+: <a class="el" href="structtsi__frame__protector__vtable.html#a4dc40054ebcebc5d9bc87a63adce0614">tsi_frame_protector_vtable</a>
+</li>
+<li>protect_frame
+: <a class="el" href="structtsi__fake__frame__protector.html#a279c6e7620230ba5c790f7063846dbce">tsi_fake_frame_protector</a>
+</li>
+<li>protector
+: <a class="el" href="structsecure__endpoint.html#a43b8ec6db9164ca64be2b1629822d5ec">secure_endpoint</a>
+</li>
+<li>protector_mu
+: <a class="el" href="structsecure__endpoint.html#a4fa8c5008b701606701d1d93c989961e">secure_endpoint</a>
+</li>
+<li>ptr
+: <a class="el" href="structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009">grpc_pollset</a>
+</li>
+<li>publish_sopb
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe">grpc_chttp2_stream_global</a>
+</li>
+<li>publish_state
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3">grpc_chttp2_stream_global</a>
+</li>
+<li>published
+: <a class="el" href="structsockaddr__resolver.html#a38967133a685f7d20effceaaeec54e5e">sockaddr_resolver</a>
+</li>
+<li>published_cancelled
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be">grpc_chttp2_stream_global</a>
+</li>
+<li>published_state
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665">grpc_chttp2_stream_global</a>
+</li>
+<li>published_version
+: <a class="el" href="structdns__resolver.html#aaf1729e3f0480a378eb4689e6105454b">dns_resolver</a>
+</li>
+<li>pushed
+: <a class="el" href="structgpr__stack__lockfree.html#a2e9bcdf7ab0d5eba90feec6754a7884a">gpr_stack_lockfree</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>
diff --git a/doc/ref/core.internal/html/functions_vars_q.html b/doc/ref/core.internal/html/functions_vars_q.html
new file mode 100644
index 0000000000..87f9788b7b
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_q.html
@@ -0,0 +1,136 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_q"></a>- q -</h3><ul>
+<li>qbuf
+: <a class="el" href="structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308">grpc_chttp2_transport_parsing</a>
+</li>
+<li>queue_deadline_cap
+: <a class="el" href="structshard__type.html#a561cd2753aeec34ba62c823ca9471168">shard_type</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>
diff --git a/doc/ref/core.internal/html/functions_vars_r.html b/doc/ref/core.internal/html/functions_vars_r.html
new file mode 100644
index 0000000000..ed8865c034
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_r.html
@@ -0,0 +1,356 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li class="current"><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>r
+: <a class="el" href="structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a">grpc_httpcli_parser</a>
+</li>
+<li>random
+: <a class="el" href="structgrpc__subchannel.html#aaf1f3f4c177860b9b000fea1c67e4af6">grpc_subchannel</a>
+</li>
+<li>raw
+: <a class="el" href="structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6">grpc_byte_buffer</a>
+</li>
+<li>rc
+: <a class="el" href="structnew__slice__refcount.html#ac72a90414d0021e8902d5cd9e5010f1b">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#a059da4cf3d67bbf0f8407872ee4c583b">new_with_len_slice_refcount</a>
+</li>
+<li>read_cb
+: <a class="el" href="structsecure__endpoint.html#a1abae10ca6f256c0ebc655e68f1d5a47">secure_endpoint</a>
+</li>
+<li>read_char
+: <a class="el" href="structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca">grpc_json_reader_vtable</a>
+</li>
+<li>read_closed
+: <a class="el" href="structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a">grpc_chttp2_stream_global</a>
+</li>
+<li>read_fd
+: <a class="el" href="structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86">grpc_wakeup_fd_info</a>
+</li>
+<li>read_info
+: <a class="el" href="structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb">grpc_winsocket</a>
+</li>
+<li>read_staging_buffer
+: <a class="el" href="structsecure__endpoint.html#acb9f223fa1653bb697b63e21226c2915">secure_endpoint</a>
+</li>
+<li>read_state
+: <a class="el" href="structgrpc__call.html#a9f26a9a6519f11d88d97cd0b1f92c440">grpc_call</a>
+</li>
+<li>read_user_data
+: <a class="el" href="structsecure__endpoint.html#ae9adc2f043f1b89821897f926bd95ff5">secure_endpoint</a>
+</li>
+<li>read_watcher
+: <a class="el" href="structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27">grpc_fd</a>
+</li>
+<li>reading_action
+: <a class="el" href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885">grpc_chttp2_transport</a>
+</li>
+<li>reading_message
+: <a class="el" href="structgrpc__call.html#a9db5a5b3f304f49fef8c5ed3ce754761">grpc_call</a>
+</li>
+<li>readst
+: <a class="el" href="structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0">grpc_fd</a>
+</li>
+<li>reason_bytes
+: <a class="el" href="structgrpc__chttp2__rst__stream__parser.html#a254db3891d5bf60dec2f27a5ee6ef496">grpc_chttp2_rst_stream_parser</a>
+</li>
+<li>received_close
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b">grpc_chttp2_stream_parsing</a>
+</li>
+<li>receiving
+: <a class="el" href="structgrpc__call.html#a95e4aaa4d6cd6b6f1568282178ba3682">grpc_call</a>
+</li>
+<li>recv_close_on_server
+: <a class="el" href="structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1">grpc_op</a>
+</li>
+<li>recv_done_closure
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c">grpc_chttp2_stream_global</a>
+</li>
+<li>recv_initial_metadata
+: <a class="el" href="structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749">grpc_op</a>
+</li>
+<li>recv_message
+: <a class="el" href="uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1">grpc_op</a>
+</li>
+<li>recv_metadata
+: <a class="el" href="uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8">grpc_ioreq_data</a>
+</li>
+<li>recv_ops
+: <a class="el" href="structcall__data.html#a5a77f05f0ebe7e2fa851cb29f4175fd2">call_data</a>
+, <a class="el" href="structgrpc__call.html#a77c3749f20284b1a9a836286a470a08e">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991">grpc_transport_stream_op</a>
+</li>
+<li>recv_state
+: <a class="el" href="structcall__data.html#a58e1bd0d7508078f1e2ffae518f284c9">call_data</a>
+, <a class="el" href="structgrpc__call.html#a23a473fb241cc663a16873d18690535b">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc">grpc_transport_stream_op</a>
+</li>
+<li>recv_status
+: <a class="el" href="uniongrpc__ioreq__data.html#ab9788c1a37dea6052f004111bc67d6e7">grpc_ioreq_data</a>
+</li>
+<li>recv_status_details
+: <a class="el" href="uniongrpc__ioreq__data.html#acddc8869b041b695c617cb46e941859e">grpc_ioreq_data</a>
+</li>
+<li>recv_status_on_client
+: <a class="el" href="structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3">grpc_op</a>
+</li>
+<li>ref
+: <a class="el" href="structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7">gpr_slice_refcount</a>
+, <a class="el" href="structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15">grpc_connector_vtable</a>
+, <a class="el" href="structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527">grpc_resolver_factory_vtable</a>
+, <a class="el" href="structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed">grpc_subchannel_factory_vtable</a>
+, <a class="el" href="structsecure__endpoint.html#a02863c0d02a5776bee65747c5553f517">secure_endpoint</a>
+</li>
+<li>refcnt
+: <a class="el" href="structinternal__metadata.html#af658b2849de44285d529f4aa4da956f4">internal_metadata</a>
+</li>
+<li>refcount
+: <a class="el" href="structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24">gpr_slice</a>
+, <a class="el" href="structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae">grpc_auth_context</a>
+, <a class="el" href="structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6">grpc_credentials</a>
+, <a class="el" href="structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694">grpc_credentials_md_store</a>
+, <a class="el" href="structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19">grpc_security_connector</a>
+, <a class="el" href="structgrpc__server__secure__state.html#ae73c249bbe0e5c30a103fe4fa2ec1f13">grpc_server_secure_state</a>
+, <a class="el" href="structinternal__string.html#a9e0174af2b64a5b66e09080c92a0aec2">internal_string</a>
+</li>
+<li>refcounted
+: <a class="el" href="structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102">gpr_slice</a>
+</li>
+<li>refresh_token
+: <a class="el" href="structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12">grpc_auth_refresh_token</a>
+, <a class="el" href="structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb">grpc_refresh_token_credentials</a>
+</li>
+<li>refs
+: <a class="el" href="structconnection.html#a4f45cf20601ceebe1381dc83f1dbf516">connection</a>
+, <a class="el" href="structconnector.html#ab2f6962cb7eff201b6b79655d8bace00">connector</a>
+, <a class="el" href="structdns__resolver.html#ab33e01167cedc1126007318a3c71238e">dns_resolver</a>
+, <a class="el" href="structgrpc__channel.html#acc936d967cd122b7b5300387e8ea0abe">grpc_channel</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__client__config.html#a176869d426cb1799e6eeebeb9cefd7e2">grpc_client_config</a>
+, <a class="el" href="structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485">grpc_lb_policy</a>
+, <a class="el" href="structgrpc__mdctx.html#a2764b3ed2bf9e59845aa9e1f02857d25">grpc_mdctx</a>
+, <a class="el" href="structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233">grpc_resolver</a>
+, <a class="el" href="structgrpc__subchannel.html#ab4a1c366594861d4aa0da8b4ec9a3475">grpc_subchannel</a>
+, <a class="el" href="structgrpc__subchannel__call.html#a74891e108fd0a94a2915e828c2a172c5">grpc_subchannel_call</a>
+, <a class="el" href="structinternal__string.html#a870bec6b963c65fedd1290747c207650">internal_string</a>
+, <a class="el" href="structmalloc__refcount.html#adcdbbc75e835cbf6fc50025880f5e569">malloc_refcount</a>
+, <a class="el" href="structmerge__args__factory.html#aae69ffa567a7a04cf4c0f9f8eba0b852">merge_args_factory</a>
+, <a class="el" href="structnew__slice__refcount.html#a2baa2f77ff0fd04fe3aa6b80c573e8fe">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#ae68449b1a65da5e9561a4762f5601fa3">new_with_len_slice_refcount</a>
+, <a class="el" href="structsockaddr__resolver.html#ae6ff58914bcf9afa2399f39fdd27ad5f">sockaddr_resolver</a>
+, <a class="el" href="structsubchannel__factory.html#a32ce0e8c21b78563576c8a620251a3f5">subchannel_factory</a>
+</li>
+<li>refst
+: <a class="el" href="structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1">grpc_fd</a>
+</li>
+<li>registered
+: <a class="el" href="structrequested__call.html#a7ee06556aae0a6e22ca157a961c484ce">requested_call</a>
+</li>
+<li>registered_call_mu
+: <a class="el" href="structgrpc__channel.html#aa59a21ba43df1a848efbc177cd5725cd">grpc_channel</a>
+</li>
+<li>registered_calls
+: <a class="el" href="structgrpc__channel.html#ac92f7c7b4dd87743f30a16aaaf91f061">grpc_channel</a>
+</li>
+<li>registered_method
+: <a class="el" href="structrequested__call.html#ae210a8bd23019d2008f1eb9ab1320eae">requested_call</a>
+</li>
+<li>registered_method_max_probes
+: <a class="el" href="structchannel__data.html#aa9b814136d8be896321481e78098008b">channel_data</a>
+</li>
+<li>registered_method_slots
+: <a class="el" href="structchannel__data.html#a707bff2830ad502cdd36ec18235f12e1">channel_data</a>
+</li>
+<li>registered_methods
+: <a class="el" href="structchannel__data.html#a0c63e5d9500bc02961af18685479fc89">channel_data</a>
+, <a class="el" href="structgrpc__server.html#addf8e1f57942da0e5f7235668c0968bd">grpc_server</a>
+</li>
+<li>regress_weight
+: <a class="el" href="structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d">grpc_time_averaged_stats</a>
+</li>
+<li>remaining_input
+: <a class="el" href="structjson__reader__userdata.html#a3535b10b322fe1063463bbddadcbad61">json_reader_userdata</a>
+</li>
+<li>remaining_slice_bytes
+: <a class="el" href="structcall__data.html#a69fca2329317c8cf3d9c215334b2aa40">call_data</a>
+</li>
+<li>request_data
+: <a class="el" href="structgrpc__call.html#a7d8e4ea86a2539b59f762ba97652bd8d">grpc_call</a>
+</li>
+<li>request_flags
+: <a class="el" href="structgrpc__call.html#a43f9cd5720841b99ea69fd94aed0ee13">grpc_call</a>
+</li>
+<li>request_freelist
+: <a class="el" href="structgrpc__server.html#a70a23bf1b0e885d055f0c45382e7110a">grpc_server</a>
+</li>
+<li>request_matcher
+: <a class="el" href="structregistered__method.html#af4a01615a9970b99e38cacf58ed49da0">registered_method</a>
+</li>
+<li>request_metadata_creds
+: <a class="el" href="structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d">grpc_channel_security_connector</a>
+</li>
+<li>request_set
+: <a class="el" href="structgrpc__call.html#adace21c70dcd672521c08f0465e33c95">grpc_call</a>
+</li>
+<li>request_text
+: <a class="el" href="structinternal__request.html#a17b242a8f7682f8438f357c5c7f05f67">internal_request</a>
+</li>
+<li>requested_calls
+: <a class="el" href="structgrpc__server.html#ac582d8e154ce4f8a326bcf3a76f235e6">grpc_server</a>
+</li>
+<li>requests
+: <a class="el" href="structrequest__killer.html#ae9c50f145796c60343bdc4100a79c231">request_killer</a>
+, <a class="el" href="structrequest__matcher.html#a5f69adf001614b2fda3756100b3ba60d">request_matcher</a>
+</li>
+<li>resolved_config
+: <a class="el" href="structdns__resolver.html#a368c90c0b364fd6b3459ca6ef25cfd6d">dns_resolver</a>
+</li>
+<li>resolved_version
+: <a class="el" href="structdns__resolver.html#aee7098ec311fd223ceb6e57e8bfdd2fc">dns_resolver</a>
+</li>
+<li>resolver
+: <a class="el" href="structchannel__data.html#a8cf393ab5da1a500d6c6f8543c408682">channel_data</a>
+</li>
+<li>resolving
+: <a class="el" href="structdns__resolver.html#abc4a241cfa112a6b430d39749a2f6faf">dns_resolver</a>
+</li>
+<li>result
+: <a class="el" href="structconnector.html#a9b15773040e783143121ad19ad3582d8">connector</a>
+, <a class="el" href="structtsi__fake__handshaker.html#a7dc6f4f013c03d3aa669c3a2fb9a761c">tsi_fake_handshaker</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a12ec1007039ee18e12dee8b2fd2670b7">tsi_ssl_handshaker</a>
+</li>
+<li>root_channel_data
+: <a class="el" href="structgrpc__server.html#ab9a64dbadf2655aa804caae0fbefe47d">grpc_server</a>
+</li>
+<li>rst_stream
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04">grpc_chttp2_transport_parsing</a>
+</li>
+<li>rst_stream_reason
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2">grpc_chttp2_stream_parsing</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>
diff --git a/doc/ref/core.internal/html/functions_vars_s.html b/doc/ref/core.internal/html/functions_vars_s.html
new file mode 100644
index 0000000000..e2e25a133c
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_s.html
@@ -0,0 +1,533 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>saw_rst_stream
+: <a class="el" href="structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b">grpc_chttp2_stream_parsing</a>
+</li>
+<li>sc
+: <a class="el" href="structgrpc__server__secure__state.html#ad912fd9fa1531a5f016f83e49c768512">grpc_server_secure_state</a>
+</li>
+<li>scheme
+: <a class="el" href="structcall__data.html#aa63048a662dd766734726542dba0f27a">call_data</a>
+, <a class="el" href="structchannel__data.html#ac7a621172aad5d1876691fb987a670e6">channel_data</a>
+, <a class="el" href="structgrpc__uri.html#a6163de89ece765552254810174fdfc32">grpc_uri</a>
+, <a class="el" href="structregistered__resolver.html#a8b53ba24e4ee032d66224f3588bceaba">registered_resolver</a>
+</li>
+<li>scope
+: <a class="el" href="structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f">grpc_service_account_credentials</a>
+</li>
+<li>secure_endpoint
+: <a class="el" href="structgrpc__secure__transport__setup.html#ae7e2e65bef91a9804fe95a47c4bfb8cb">grpc_secure_transport_setup</a>
+</li>
+<li>secure_peer_name
+: <a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a12192010723cff00bb4e87c9704ad768">grpc_httpcli_ssl_channel_security_connector</a>
+</li>
+<li>security_connector
+: <a class="el" href="structchannel__data.html#a78473c478d6fbbb716fb77864c94efd6">channel_data</a>
+, <a class="el" href="structconnector.html#a83d8a5c7e3b72cdee46c36cca81d5cb0">connector</a>
+, <a class="el" href="structsubchannel__factory.html#a9b700fff25d9d9c6739dfbed18ce5e2b">subchannel_factory</a>
+</li>
+<li>security_context_set
+: <a class="el" href="structcall__data.html#a74f306e56988bd7e20d0116829ce4128">call_data</a>
+</li>
+<li>seen_authority
+: <a class="el" href="structcall__data.html#a5f3505d88df4cba5a1ed776c46b88b7e">call_data</a>
+</li>
+<li>seen_goaway
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829">grpc_chttp2_transport_global</a>
+</li>
+<li>seen_path
+: <a class="el" href="structcall__data.html#acb1130d03f1fd0db1cf0d8d1fc10866e">call_data</a>
+</li>
+<li>seen_post
+: <a class="el" href="structcall__data.html#aea6244f4fd9d2e7ccb5615b9f5ea5fe0">call_data</a>
+</li>
+<li>seen_scheme
+: <a class="el" href="structcall__data.html#a502cf8ae568f38ae501877458e399796">call_data</a>
+</li>
+<li>seen_te_trailers
+: <a class="el" href="structcall__data.html#a54d050afd0c9cc8d05a561034602f280">call_data</a>
+</li>
+<li>selected
+: <a class="el" href="structpick__first__lb__policy.html#ad4fd8d1ef626d9c42f631317921634ef">pick_first_lb_policy</a>
+</li>
+<li>send_closed
+: <a class="el" href="structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0">grpc_chttp2_stream_writing</a>
+</li>
+<li>send_deadline
+: <a class="el" href="structgrpc__call.html#a5de7c68ffa6939ff2e1c43c4cd418315">grpc_call</a>
+</li>
+<li>send_done_closure
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905">grpc_chttp2_stream_global</a>
+</li>
+<li>send_goaway
+: <a class="el" href="structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704">grpc_transport_op</a>
+</li>
+<li>send_initial_metadata
+: <a class="el" href="structgrpc__call.html#a96ac69dc425de5924edd871f93338112">grpc_call</a>
+, <a class="el" href="structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83">grpc_op</a>
+</li>
+<li>send_initial_metadata_count
+: <a class="el" href="structgrpc__call.html#abb6adc9d5f666a056c89172f506fcc3d">grpc_call</a>
+</li>
+<li>send_message
+: <a class="el" href="uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434">grpc_op</a>
+</li>
+<li>send_metadata
+: <a class="el" href="uniongrpc__ioreq__data.html#a4b9337cc24e8b42caa5c1502be083952">grpc_ioreq_data</a>
+</li>
+<li>send_ops
+: <a class="el" href="structgrpc__call.html#ab17467642afa4f6c1c27bb9013093592">grpc_call</a>
+, <a class="el" href="structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691">grpc_transport_stream_op</a>
+</li>
+<li>send_ping
+: <a class="el" href="structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286">grpc_transport_op</a>
+</li>
+<li>send_status
+: <a class="el" href="uniongrpc__ioreq__data.html#a3711b0c39c293284a4e4897f74c974ab">grpc_ioreq_data</a>
+</li>
+<li>send_status_from_server
+: <a class="el" href="structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb">grpc_op</a>
+</li>
+<li>sending
+: <a class="el" href="structgrpc__call.html#a7d64e836e0421c8129ac75e477271ef8">grpc_call</a>
+</li>
+<li>sent_authority
+: <a class="el" href="structcall__data.html#aab616ade799853e16e5e35ee3a16ffbc">call_data</a>
+</li>
+<li>sent_goaway
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8">grpc_chttp2_transport_global</a>
+</li>
+<li>sent_initial_metadata
+: <a class="el" href="structcall__data.html#aded44c7ecaa861e2a4a39380b172368a">call_data</a>
+</li>
+<li>sent_local_settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d">grpc_chttp2_transport_global</a>
+</li>
+<li>sent_status
+: <a class="el" href="structcall__data.html#a8b65de65391e41536ccf959f6b6a751d">call_data</a>
+</li>
+<li>server
+: <a class="el" href="structchannel__data.html#a52e6bd3f94f7bc6b7a5696532f747d8c">channel_data</a>
+, <a class="el" href="structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2">grpc_endpoint_pair</a>
+, <a class="el" href="structgrpc__server__secure__state.html#a81df8ea928391a76a30197cce0235455">grpc_server_secure_state</a>
+, <a class="el" href="structrequested__call.html#ad3fbf352005312d002348e26038d8fb0">requested_call</a>
+</li>
+<li>server_on_recv
+: <a class="el" href="structcall__data.html#aa02e9d60f24965068bc073ec4870bcb4">call_data</a>
+</li>
+<li>server_registered_method
+: <a class="el" href="structchannel__registered__method.html#a3d7e5ca9b211c76e489ddc6602da3509">channel_registered_method</a>
+</li>
+<li>service_url
+: <a class="el" href="structgrpc__composite__credentials__metadata__context.html#a7041c3ef3e78168d24699294470422e4">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb">grpc_service_account_jwt_access_credentials</a>
+</li>
+<li>set_accept_stream
+: <a class="el" href="structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8">grpc_transport_op</a>
+</li>
+<li>set_accept_stream_user_data
+: <a class="el" href="structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f">grpc_transport_op</a>
+</li>
+<li>set_false
+: <a class="el" href="structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6">grpc_json_reader_vtable</a>
+</li>
+<li>set_key
+: <a class="el" href="structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7">grpc_json_reader_vtable</a>
+</li>
+<li>set_null
+: <a class="el" href="structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff">grpc_json_reader_vtable</a>
+</li>
+<li>set_number
+: <a class="el" href="structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596">grpc_json_reader_vtable</a>
+</li>
+<li>set_state_mu
+: <a class="el" href="structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30">grpc_fd</a>
+</li>
+<li>set_string
+: <a class="el" href="structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4">grpc_json_reader_vtable</a>
+</li>
+<li>set_true
+: <a class="el" href="structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e">grpc_json_reader_vtable</a>
+</li>
+<li>set_value
+: <a class="el" href="uniongrpc__ioreq__data.html#aedb6839ded1488cf3bd6905345fba0d2">grpc_ioreq_data</a>
+</li>
+<li>settings
+: <a class="el" href="structgrpc__chttp2__transport__global.html#ab25f0c4b45d1c12d29eaf856e7b1b4a7">grpc_chttp2_transport_global</a>
+, <a class="el" href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31">grpc_chttp2_transport_parsing</a>
+</li>
+<li>settings_ack_received
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586">grpc_chttp2_transport_parsing</a>
+</li>
+<li>settings_updated
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013">grpc_chttp2_transport_parsing</a>
+</li>
+<li>severity
+: <a class="el" href="structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc">gpr_log_func_args</a>
+</li>
+<li>shard_queue_index
+: <a class="el" href="structshard__type.html#a2024ca8c92ce9d378aa5aa551126a9c1">shard_type</a>
+</li>
+<li>shutdown
+: <a class="el" href="structgrpc__completion__queue.html#a4d6f10502b79874124dc63169f4366d6">grpc_completion_queue</a>
+, <a class="el" href="structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6">grpc_endpoint_vtable</a>
+, <a class="el" href="structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a">grpc_fd</a>
+, <a class="el" href="structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6">grpc_lb_policy_vtable</a>
+, <a class="el" href="structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae">grpc_resolver_vtable</a>
+, <a class="el" href="structpick__first__lb__policy.html#a2818821a8daa60e92637357811aea7d4">pick_first_lb_policy</a>
+</li>
+<li>shutdown_called
+: <a class="el" href="structgrpc__completion__queue.html#a81ae0a3f77b40e2a21370e641e9f73e4">grpc_completion_queue</a>
+</li>
+<li>shutdown_closure
+: <a class="el" href="structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a">grpc_winsocket</a>
+</li>
+<li>shutdown_closures
+: <a class="el" href="structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa">grpc_fd</a>
+</li>
+<li>shutdown_done_arg
+: <a class="el" href="structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d">grpc_pollset</a>
+</li>
+<li>shutdown_done_cb
+: <a class="el" href="structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7">grpc_pollset</a>
+</li>
+<li>shutdown_flag
+: <a class="el" href="structgrpc__server.html#aac6a14f451724678ba63c9f9a153dc33">grpc_server</a>
+</li>
+<li>shutdown_published
+: <a class="el" href="structgrpc__server.html#a6d04ab898c0d58f111975211c8d202ba">grpc_server</a>
+</li>
+<li>shutdown_tags
+: <a class="el" href="structgrpc__server.html#ab0ca72c038ccce56c33539dc5f321864">grpc_server</a>
+</li>
+<li>shutting_down
+: <a class="el" href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">grpc_pollset</a>
+</li>
+<li>signature
+: <a class="el" href="structverifier__cb__ctx.html#a78cd1bf7eb4ac6484ceeaf778ad6e2df">verifier_cb_ctx</a>
+</li>
+<li>signed_data
+: <a class="el" href="structverifier__cb__ctx.html#a65de5acf17b58f8a142466750e1b558b">verifier_cb_ctx</a>
+</li>
+<li>simple
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f">grpc_chttp2_transport_parsing</a>
+</li>
+<li>size
+: <a class="el" href="structtsi__fake__frame.html#a59d8fa5e8e076fca91b8c1fa1572d9cf">tsi_fake_frame</a>
+</li>
+<li>sizeof_call_data
+: <a class="el" href="structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc">grpc_channel_filter</a>
+</li>
+<li>sizeof_channel_data
+: <a class="el" href="structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4">grpc_channel_filter</a>
+</li>
+<li>sizeof_stream
+: <a class="el" href="structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f">grpc_transport_vtable</a>
+</li>
+<li>slice
+: <a class="el" href="structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e">grpc_mdstr</a>
+, <a class="el" href="structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee">grpc_stream_op</a>
+, <a class="el" href="structinternal__string.html#aafd8da96270b4377198d99bc51f2ac9b">internal_string</a>
+, <a class="el" href="structshutdown__cleanup__args.html#ac171669ceb843c70885925c549867e5c">shutdown_cleanup_args</a>
+</li>
+<li>slice_buffer
+: <a class="el" href="structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae">grpc_byte_buffer</a>
+</li>
+<li>slices
+: <a class="el" href="structcall__data.html#a765c539d2737d435cf434241edda82f9">call_data</a>
+, <a class="el" href="structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba">gpr_slice_buffer</a>
+</li>
+<li>socket
+: <a class="el" href="structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d">grpc_winsocket</a>
+</li>
+<li>sopb
+: <a class="el" href="structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120">grpc_chttp2_stream_writing</a>
+</li>
+<li>ssl
+: <a class="el" href="structtsi__ssl__frame__protector.html#a64129d003fe330c56c39496361bd9e5f">tsi_ssl_frame_protector</a>
+, <a class="el" href="structtsi__ssl__handshaker.html#a1dbdafd7f92dad04fe09c4648e5ee952">tsi_ssl_handshaker</a>
+</li>
+<li>ssl_context
+: <a class="el" href="structtsi__ssl__client__handshaker__factory.html#a455d6ff556cd36c93ab91a0ef013ed9a">tsi_ssl_client_handshaker_factory</a>
+</li>
+<li>ssl_context_count
+: <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a6aa4d962f3466b7cb16abd04b0266c2c">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>ssl_context_x509_subject_names
+: <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a9877f06340c6acaa2db8deb38ac03209">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>ssl_contexts
+: <a class="el" href="structtsi__ssl__server__handshaker__factory.html#a31163c22828f9e7467a4cf8ec6e79244">tsi_ssl_server_handshaker_factory</a>
+</li>
+<li>start
+: <a class="el" href="structlistener.html#a5fb6be7cbe102bcb09c1d26db4a26fb2">listener</a>
+</li>
+<li>start_transport_op
+: <a class="el" href="structgrpc__channel__filter.html#aa3508daf2442c8bc11529d0295798819">grpc_channel_filter</a>
+</li>
+<li>start_transport_stream_op
+: <a class="el" href="structgrpc__channel__filter.html#a089c1e5997b329703ccaaf633722a6c5">grpc_channel_filter</a>
+</li>
+<li>started_picking
+: <a class="el" href="structpick__first__lb__policy.html#a8eff3397ca43852b04a3be5b5e03a6ce">pick_first_lb_policy</a>
+</li>
+<li>state
+: <a class="el" href="structcall__data.html#a394da9a4876df32b91b8891303695a5d">call_data</a>
+, <a class="el" href="structgpr__cmdline.html#acb165b9b6f98c942dd65d66f1c95a806">gpr_cmdline</a>
+, <a class="el" href="structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9">gpr_event</a>
+, <a class="el" href="structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab">grpc_chttp2_data_parser</a>
+, <a class="el" href="structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589">grpc_chttp2_goaway_parser</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4">grpc_chttp2_settings_parser</a>
+, <a class="el" href="structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305">grpc_httpcli_parser</a>
+, <a class="el" href="structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245">grpc_json_reader</a>
+, <a class="el" href="structlb__policy__connectivity__watcher.html#ac37e7a5f39e7f99381837601b8d0d7d5">lb_policy_connectivity_watcher</a>
+, <a class="el" href="structstate__watcher.html#a3a1c09d1740e9cc49f81e4ac4f8bf4bd">state_watcher</a>
+</li>
+<li>state_mu
+: <a class="el" href="structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551">grpc_winsocket</a>
+</li>
+<li>state_tracker
+: <a class="el" href="structchannel__data.html#ab56a403060ce2596d204cc024baea99d">channel_data</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857">grpc_chttp2_transport</a>
+, <a class="el" href="structgrpc__subchannel.html#af9e337eebe13100918b0c1178233d64d">grpc_subchannel</a>
+, <a class="el" href="structpick__first__lb__policy.html#a4b686da7cdddd0893e3d36c213bd274a">pick_first_lb_policy</a>
+</li>
+<li>static_ents
+: <a class="el" href="structgrpc__chttp2__hptbl.html#afe1cceb7c0988d6c29df983ad3764344">grpc_chttp2_hptbl</a>
+</li>
+<li>stats
+: <a class="el" href="structshard__type.html#a700e0afbcbed737607bac82970c61601">shard_type</a>
+</li>
+<li>status
+: <a class="el" href="structcall__data.html#af1e73bf35274521a98f39316fddf3deb">call_data</a>
+, <a class="el" href="structchannel__data.html#aed19c41ead3b51daafdbf78a983c1877">channel_data</a>
+, <a class="el" href="structgrpc__call.html#ac4f49d27f54bd1436da3ad7cfe662639">grpc_call</a>
+, <a class="el" href="structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243">grpc_httpcli_response</a>
+, <a class="el" href="structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4">grpc_op</a>
+</li>
+<li>status_details
+: <a class="el" href="structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6">grpc_op</a>
+</li>
+<li>status_details_capacity
+: <a class="el" href="structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9">grpc_op</a>
+</li>
+<li>status_key
+: <a class="el" href="structchannel__data.html#aa193724e83bed60e8f8f1a7a1cb0ca0f">channel_data</a>
+</li>
+<li>status_link
+: <a class="el" href="structgrpc__call.html#acb6f13c9a524b29da7f4a760332dea6d">grpc_call</a>
+</li>
+<li>status_not_found
+: <a class="el" href="structchannel__data.html#aa61798f024b686a60598011b688a5302">channel_data</a>
+</li>
+<li>status_ok
+: <a class="el" href="structchannel__data.html#a5d2922163981387d63fcc086acc40bc1">channel_data</a>
+</li>
+<li>str
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c">grpc_chttp2_hpack_parser_string</a>
+</li>
+<li>str_grpc_timeout
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c">grpc_chttp2_transport_parsing</a>
+</li>
+<li>stream_id
+: <a class="el" href="structframer__state.html#a568da28436bbdcbf1a1eb321cf064651">framer_state</a>
+</li>
+<li>strgot
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6">grpc_chttp2_hpack_parser</a>
+</li>
+<li>string
+: <a class="el" href="structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8">grpc_arg</a>
+, <a class="el" href="structjson__reader__userdata.html#aab7c5997934c699371c79b5a613a877e">json_reader_userdata</a>
+</li>
+<li>string_add_char
+: <a class="el" href="structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19">grpc_json_reader_vtable</a>
+</li>
+<li>string_add_utf32
+: <a class="el" href="structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612">grpc_json_reader_vtable</a>
+</li>
+<li>string_clear
+: <a class="el" href="structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303">grpc_json_reader_vtable</a>
+</li>
+<li>string_len
+: <a class="el" href="structjson__writer__userdata.html#a321162f4c1f6c7cb60676fa6a1eb3c18">json_writer_userdata</a>
+</li>
+<li>string_ptr
+: <a class="el" href="structjson__reader__userdata.html#a6afccb66b4dac7cb2db6ef4c8d0e073b">json_reader_userdata</a>
+</li>
+<li>strlen
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab">grpc_chttp2_hpack_parser</a>
+</li>
+<li>strs
+: <a class="el" href="structgpr__strvec.html#a6c928c402061e0a51346155669029795">gpr_strvec</a>
+</li>
+<li>strtab
+: <a class="el" href="structgrpc__mdctx.html#ad2eeb34c05c392c75ca79c62e0a91644">grpc_mdctx</a>
+</li>
+<li>strtab_capacity
+: <a class="el" href="structgrpc__mdctx.html#a1ac53c8c3069ff245cd33243094b21af">grpc_mdctx</a>
+</li>
+<li>strtab_count
+: <a class="el" href="structgrpc__mdctx.html#a19a486374bb3cc0c61ad53868423bce5">grpc_mdctx</a>
+</li>
+<li>sub
+: <a class="el" href="structgrpc__jwt__claims.html#a298ff2d584fdee85bd9de0b52c72a1bd">grpc_jwt_claims</a>
+</li>
+<li>subchannel
+: <a class="el" href="structconnection.html#ac46b9b593d187793cf2685550b615dc7">connection</a>
+, <a class="el" href="structstate__watcher.html#ab1de71efe9c462d4692acedd9da69db3">state_watcher</a>
+, <a class="el" href="structwaiting__for__connect.html#a6992a59790cdc05659227b1ea7b8650d">waiting_for_connect</a>
+</li>
+<li>subchannel_call
+: <a class="el" href="structcall__data.html#a68077448625c53fa5dab0a717c0a77b2">call_data</a>
+</li>
+<li>subchannel_factory
+: <a class="el" href="structdns__resolver.html#ad80a689714c3c2d68bba566d1c5ae236">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#ae68e3b93926c4d132ca5c05a752b1e59">sockaddr_resolver</a>
+</li>
+<li>subchannels
+: <a class="el" href="structpick__first__lb__policy.html#a359affbda6360c97745389a1c036afbf">pick_first_lb_policy</a>
+</li>
+<li>success
+: <a class="el" href="structcompleted__request.html#a5512a2663c0d87f40b1e493b0bf9dd6b">completed_request</a>
+, <a class="el" href="structcompute__engine__detector.html#a952441665ae667415c4eed612ec5f25b">compute_engine_detector</a>
+, <a class="el" href="structgrpc__event.html#a99d4215e5df50869af320b1cca5540db">grpc_event</a>
+, <a class="el" href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0">grpc_iomgr_closure</a>
+, <a class="el" href="structreqinfo__master.html#a638b15223a3d12acea6adf081d2a43a9">reqinfo_master</a>
+, <a class="el" href="structstate__watcher.html#a0e2c034f2582615aa9c6949879289cc2">state_watcher</a>
+</li>
+<li>sum
+: <a class="el" href="structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a">gpr_histogram</a>
+</li>
+<li>sum_of_squares
+: <a class="el" href="structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1">gpr_histogram</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>
diff --git a/doc/ref/core.internal/html/functions_vars_t.html b/doc/ref/core.internal/html/functions_vars_t.html
new file mode 100644
index 0000000000..342f070a38
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_t.html
@@ -0,0 +1,236 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>table
+: <a class="el" href="structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17">grpc_chttp2_hpack_parser</a>
+</li>
+<li>table_elem_size
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a067f49c14e2c169678f44c10a7e4ee2e">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>table_elems
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>table_size
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>tag
+: <a class="el" href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e">grpc_cq_completion</a>
+, <a class="el" href="structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201">grpc_event</a>
+, <a class="el" href="structrequested__call.html#abcebc67ebdd3f7230b72cbb324049ff4">requested_call</a>
+, <a class="el" href="structshutdown__tag.html#a632bfe333648e7440bf13caa5eaa48c0">shutdown_tag</a>
+, <a class="el" href="structstate__watcher.html#a67d44afd79ad20ec97e2e43f538f6d77">state_watcher</a>
+</li>
+<li>tail
+: <a class="el" href="structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620">grpc_chttp2_stream_list</a>
+, <a class="el" href="structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193">grpc_mdelem_list</a>
+</li>
+<li>tail_remote_index
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>target
+: <a class="el" href="structgrpc__channel.html#ac84ed7ccb6f221068ee55b5e6c073543">grpc_channel</a>
+, <a class="el" href="structpending__pick.html#aa395cbb07c193eaa41d0463f46067fec">pending_pick</a>
+, <a class="el" href="structwaiting__for__connect.html#afa5ba6604f746da394b505f116e764f6">waiting_for_connect</a>
+</li>
+<li>target_config
+: <a class="el" href="structdns__resolver.html#a757b9b42d89d961103798397c2cddefb">dns_resolver</a>
+, <a class="el" href="structsockaddr__resolver.html#ad9d11ab81955963bff8db90903241efa">sockaddr_resolver</a>
+</li>
+<li>target_name
+: <a class="el" href="structgrpc__ssl__channel__security__connector.html#ac86e0e283bad7b35d30cec32ed042a5b">grpc_ssl_channel_security_connector</a>
+</li>
+<li>target_settings
+: <a class="el" href="structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528">grpc_chttp2_settings_parser</a>
+</li>
+<li>tcp
+: <a class="el" href="structgrpc__server__secure__state.html#a8c4788f633b14cc2d49c26d9172b0b69">grpc_server_secure_state</a>
+</li>
+<li>tcp_endpoint
+: <a class="el" href="structtcp__endpoint__list.html#a1de9aaa649c6d84c81c676171676b862">tcp_endpoint_list</a>
+</li>
+<li>te_trailers
+: <a class="el" href="structcall__data.html#a8cfc1a2d2dab43a5bddc26df4801721b">call_data</a>
+, <a class="el" href="structchannel__data.html#a141ad0e139c47b491a219ad68b263c2b">channel_data</a>
+</li>
+<li>temp
+: <a class="el" href="structhuff__out.html#a29fa27e52be848917a68702c97e75d3b">huff_out</a>
+</li>
+<li>temp_length
+: <a class="el" href="structhuff__out.html#a47f24dd352a07a9a7124319d8222090e">huff_out</a>
+</li>
+<li>timeout_key_str
+: <a class="el" href="structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1">grpc_chttp2_hpack_compressor</a>
+</li>
+<li>token_expiration
+: <a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13">grpc_oauth2_token_fetcher_credentials</a>
+</li>
+<li>token_lifetime
+: <a class="el" href="structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae">grpc_service_account_credentials</a>
+</li>
+<li>top
+: <a class="el" href="structjson__reader__userdata.html#ac4f75823aab9f46c2541424046742c13">json_reader_userdata</a>
+</li>
+<li>trace_id
+: <a class="el" href="structcensus__context.html#af2f543e5253035ca31b883c23453c918">census_context</a>
+</li>
+<li>trailing_metadata
+: <a class="el" href="structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1">grpc_op</a>
+</li>
+<li>trailing_metadata_count
+: <a class="el" href="structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab">grpc_op</a>
+</li>
+<li>transport
+: <a class="el" href="structconnected__channel__channel__data.html#a7f95ecc760083ad9d72bada84f33ca6b">connected_channel_channel_data</a>
+, <a class="el" href="structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9">grpc_connect_out_args</a>
+</li>
+<li>triggered
+: <a class="el" href="structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f">grpc_alarm</a>
+</li>
+<li>tv_nsec
+: <a class="el" href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">gpr_timespec</a>
+</li>
+<li>tv_sec
+: <a class="el" href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">gpr_timespec</a>
+</li>
+<li>typ
+: <a class="el" href="structjose__header.html#a62661b991df1e33a832d0bf7449ab2d4">jose_header</a>
+</li>
+<li>type
+: <a class="el" href="structarg.html#ac42f6b11ab4ceee17be7871636e06dca">arg</a>
+, <a class="el" href="structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4">grpc_arg</a>
+, <a class="el" href="structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52">grpc_auth_json_key</a>
+, <a class="el" href="structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e">grpc_auth_refresh_token</a>
+, <a class="el" href="structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8">grpc_byte_buffer</a>
+, <a class="el" href="structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b">grpc_credentials</a>
+, <a class="el" href="structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7">grpc_event</a>
+, <a class="el" href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e">grpc_json</a>
+, <a class="el" href="structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c">grpc_server_credentials</a>
+, <a class="el" href="structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580">grpc_stream_op</a>
+, <a class="el" href="structrequested__call.html#a45da072fe9d7a970fe7880d9d2671e4c">requested_call</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>
diff --git a/doc/ref/core.internal/html/functions_vars_u.html b/doc/ref/core.internal/html/functions_vars_u.html
new file mode 100644
index 0000000000..719f6d871f
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_u.html
@@ -0,0 +1,197 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>unannounced_incoming_window
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9">grpc_chttp2_stream_global</a>
+</li>
+<li>unicode_char
+: <a class="el" href="structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562">grpc_json_reader</a>
+</li>
+<li>unicode_high_surrogate
+: <a class="el" href="structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1">grpc_json_reader</a>
+</li>
+<li>unprotect
+: <a class="el" href="structtsi__frame__protector__vtable.html#aa4c1c5ad2e0299585050a3d11247e91e">tsi_frame_protector_vtable</a>
+</li>
+<li>unprotect_frame
+: <a class="el" href="structtsi__fake__frame__protector.html#ac3e7c2d5e9b3f81c75772f328243db00">tsi_fake_frame_protector</a>
+</li>
+<li>unref
+: <a class="el" href="structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00">gpr_slice_refcount</a>
+, <a class="el" href="structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9">grpc_connector_vtable</a>
+, <a class="el" href="structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e">grpc_resolver_factory_vtable</a>
+, <a class="el" href="structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a">grpc_subchannel_factory_vtable</a>
+</li>
+<li>unregistered_request_matcher
+: <a class="el" href="structgrpc__server.html#a8114e3dda6d6f5ec9257b5a5343b9821">grpc_server</a>
+</li>
+<li>unused
+: <a class="el" href="structcall__data.html#ab6ed893c5caa5b86338edf8b97bd77d8">call_data</a>
+, <a class="el" href="structchannel__data.html#af5333a0c2b420d203cbe8a1a5e270efb">channel_data</a>
+, <a class="el" href="structconnected__channel__call__data.html#ab7364ac5f5abf2c67075fd09e829cffd">connected_channel_call_data</a>
+, <a class="el" href="structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c">grpc_pollset_set</a>
+</li>
+<li>url_scheme
+: <a class="el" href="structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca">grpc_security_connector</a>
+</li>
+<li>use_ssl
+: <a class="el" href="structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3">grpc_httpcli_request</a>
+, <a class="el" href="structinternal__request.html#a0d17604038fc0b611296561b66cb46c5">internal_request</a>
+</li>
+<li>user_agent
+: <a class="el" href="structcall__data.html#ab58bbaa2f8f054f606d919abce3f4716">call_data</a>
+, <a class="el" href="structchannel__data.html#a9fd48ef186ac5f36381e9e873a1e2602">channel_data</a>
+</li>
+<li>user_cb
+: <a class="el" href="structverifier__cb__ctx.html#acb4e5c28f3b0d9270a28dc0c730123fa">verifier_cb_ctx</a>
+</li>
+<li>user_data
+: <a class="el" href="structcompleted__request.html#a0f293e59a3e7c87f6cc59694a9b567ac">completed_request</a>
+, <a class="el" href="structgrpc__composite__credentials__metadata__context.html#aa7ca5d9fca93b8a99acc2119f36b8ce6">grpc_composite_credentials_metadata_context</a>
+, <a class="el" href="structgrpc__credentials__metadata__request.html#afba92ff6e76a2b87d1b4b6e0d8531b87">grpc_credentials_metadata_request</a>
+, <a class="el" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">grpc_ioreq_data</a>
+, <a class="el" href="structgrpc__secure__transport__setup.html#a8c39ff96c74f4adc29fc0ba7e79f849c">grpc_secure_transport_setup</a>
+, <a class="el" href="structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef">internal_metadata</a>
+, <a class="el" href="structinternal__request.html#aa47b4bb5697930b25831fbc2fc9ae16e">internal_request</a>
+, <a class="el" href="structnew__slice__refcount.html#a0476a0932ddf32f1cdd04cdd585fda68">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#a47821f141ea3ddf0c13dd7d5bed35dda">new_with_len_slice_refcount</a>
+, <a class="el" href="structreqinfo__master.html#aeaa50a715a0fc681a87daae3e3b72c9d">reqinfo_master</a>
+, <a class="el" href="structverifier__cb__ctx.html#a9ceed8c4de3dcf252fdaf7347c0b93a8">verifier_cb_ctx</a>
+</li>
+<li>user_destroy
+: <a class="el" href="structnew__slice__refcount.html#abe796cd680fb136eff9fa49f96bbd3e8">new_slice_refcount</a>
+, <a class="el" href="structnew__with__len__slice__refcount.html#ac8dc1c24ebd5fee4f034679b05177755">new_with_len_slice_refcount</a>
+</li>
+<li>user_length
+: <a class="el" href="structnew__with__len__slice__refcount.html#ab9f2fc163ee3e185eda913129ffb4546">new_with_len_slice_refcount</a>
+</li>
+<li>userdata
+: <a class="el" href="structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc">grpc_json_reader</a>
+, <a class="el" href="structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31">grpc_json_writer</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>
diff --git a/doc/ref/core.internal/html/functions_vars_v.html b/doc/ref/core.internal/html/functions_vars_v.html
new file mode 100644
index 0000000000..00e30119ce
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_v.html
@@ -0,0 +1,178 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li class="current"><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>value
+: <a class="el" href="structarg.html#a688d0385c96e5d5d7cb1a7342f9b4497">arg</a>
+, <a class="el" href="structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179">census_stat</a>
+, <a class="el" href="structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1">gpr_gcc_thread_local</a>
+, <a class="el" href="structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798">gpr_msvc_thread_local</a>
+, <a class="el" href="structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a">gpr_stats_counter</a>
+, <a class="el" href="structgrpc__arg.html#ad2be4ee606c82fc084af1661d30f6f7f">grpc_arg</a>
+, <a class="el" href="structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e">grpc_auth_property</a>
+, <a class="el" href="structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4">grpc_call_context_element</a>
+, <a class="el" href="structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e">grpc_chttp2_hpack_parser</a>
+, <a class="el" href="structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327">grpc_chttp2_settings_parser</a>
+, <a class="el" href="structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841">grpc_credentials_md</a>
+, <a class="el" href="structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa">grpc_httpcli_header</a>
+, <a class="el" href="structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44">grpc_json</a>
+, <a class="el" href="structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1">grpc_mdelem</a>
+, <a class="el" href="structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36">grpc_metadata</a>
+, <a class="el" href="structinternal__metadata.html#abef02b106cd8bcee80c9d5ee375fe537">internal_metadata</a>
+, <a class="el" href="structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6">tsi_peer_property</a>
+</li>
+<li>value_length
+: <a class="el" href="structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101">grpc_auth_property</a>
+, <a class="el" href="structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f">grpc_metadata</a>
+</li>
+<li>values
+: <a class="el" href="structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824">grpc_chttp2_stream_map</a>
+</li>
+<li>verifier
+: <a class="el" href="structverifier__cb__ctx.html#ac60d07b1cc9322f01f2f76f462188737">verifier_cb_ctx</a>
+</li>
+<li>version
+: <a class="el" href="structstate__watcher.html#adb6d0b4ffa782421e6f0898f8b13d4e8">state_watcher</a>
+</li>
+<li>vtable
+: <a class="el" href="structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec">grpc_connector</a>
+, <a class="el" href="structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e">grpc_credentials</a>
+, <a class="el" href="structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7">grpc_endpoint</a>
+, <a class="el" href="structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5">grpc_json_reader</a>
+, <a class="el" href="structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b">grpc_json_writer</a>
+, <a class="el" href="structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a">grpc_lb_policy</a>
+, <a class="el" href="structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887">grpc_pollset</a>
+, <a class="el" href="structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386">grpc_resolver</a>
+, <a class="el" href="structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3">grpc_resolver_factory</a>
+, <a class="el" href="structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1">grpc_security_connector</a>
+, <a class="el" href="structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63">grpc_server_credentials</a>
+, <a class="el" href="structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51">grpc_subchannel_factory</a>
+, <a class="el" href="structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007">grpc_transport</a>
+, <a class="el" href="structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619">tsi_frame_protector</a>
+, <a class="el" href="structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958">tsi_handshaker</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>
diff --git a/doc/ref/core.internal/html/functions_vars_w.html b/doc/ref/core.internal/html/functions_vars_w.html
new file mode 100644
index 0000000000..0b7e85eaf6
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_vars_w.html
@@ -0,0 +1,212 @@
+<!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: Data Fields - Variables</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_vars.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_vars_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_vars_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_vars_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_vars_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_vars_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_vars_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_vars_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_vars_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_vars_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_vars_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_vars_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_vars_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_vars_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_vars_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_vars_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_vars_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_vars_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_vars_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_vars_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_vars_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_vars_v.html#index_v"><span>v</span></a></li>
+ <li class="current"><a href="functions_vars_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>waiters
+: <a class="el" href="structgpr__cancellable.html#a99dfebf899cae60307fb8b83e8cfdb43">gpr_cancellable</a>
+</li>
+<li>waiting
+: <a class="el" href="structgrpc__subchannel.html#a86222e4f70c6a36a9345ce2388f94e22">grpc_subchannel</a>
+</li>
+<li>waiting_for_config_closures
+: <a class="el" href="structchannel__data.html#ac701a31115f0dcb435265a106baf619f">channel_data</a>
+</li>
+<li>waiting_op
+: <a class="el" href="structcall__data.html#a95c7079af1a663431de6bfe8e919cff7">call_data</a>
+</li>
+<li>wakeup
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f">grpc_wakeup_fd_vtable</a>
+</li>
+<li>wakeup_fd
+: <a class="el" href="structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479">grpc_kick_fd_info</a>
+</li>
+<li>watcher_mu
+: <a class="el" href="structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b">grpc_fd</a>
+</li>
+<li>watchers
+: <a class="el" href="structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd">grpc_connectivity_state_tracker</a>
+</li>
+<li>window_update
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d">grpc_chttp2_transport_parsing</a>
+</li>
+<li>wrapped
+: <a class="el" href="structmerge__args__factory.html#aecaa1e5ad4e5838355a2f1515943e378">merge_args_factory</a>
+</li>
+<li>wrapped_endpoint
+: <a class="el" href="structgrpc__secure__transport__setup.html#a6718bd343a57770498f8bfcfeefbaf9a">grpc_secure_transport_setup</a>
+</li>
+<li>wrapped_ep
+: <a class="el" href="structsecure__endpoint.html#aee294803f06c5d38dac97d2933d52e94">secure_endpoint</a>
+</li>
+<li>write
+: <a class="el" href="structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739">grpc_endpoint_vtable</a>
+</li>
+<li>write_cb
+: <a class="el" href="structsecure__endpoint.html#a0d57c837c3b9281454f2629845162de0">secure_endpoint</a>
+</li>
+<li>write_fd
+: <a class="el" href="structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f">grpc_wakeup_fd_info</a>
+</li>
+<li>write_info
+: <a class="el" href="structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6">grpc_winsocket</a>
+</li>
+<li>write_staging_buffer
+: <a class="el" href="structsecure__endpoint.html#a9349d713abd0f17c41579a9c149629c2">secure_endpoint</a>
+</li>
+<li>write_state
+: <a class="el" href="structgrpc__call.html#a9a08d62d6d129d629c2cbe25511983ac">grpc_call</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9">grpc_chttp2_stream_global</a>
+</li>
+<li>write_user_data
+: <a class="el" href="structsecure__endpoint.html#ae444fbf4226a8118b5cac6f71d043124">secure_endpoint</a>
+</li>
+<li>write_watcher
+: <a class="el" href="structgrpc__fd.html#ae2395965de88538f112be69c21307d01">grpc_fd</a>
+</li>
+<li>writest
+: <a class="el" href="structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676">grpc_fd</a>
+</li>
+<li>writing
+: <a class="el" href="structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e">grpc_chttp2_stream</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf">grpc_chttp2_transport</a>
+</li>
+<li>writing_action
+: <a class="el" href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224">grpc_chttp2_transport</a>
+</li>
+<li>writing_active
+: <a class="el" href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b">grpc_chttp2_transport</a>
+</li>
+<li>writing_now
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c">grpc_chttp2_stream_global</a>
+</li>
+<li>written_initial_metadata
+: <a class="el" href="structcall__data.html#a5fccfa4c3448bcfd28f80b2caad5485b">call_data</a>
+</li>
+<li>wsa_error
+: <a class="el" href="structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29">grpc_winsocket_callback_info</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>
diff --git a/doc/ref/core.internal/html/functions_w.html b/doc/ref/core.internal/html/functions_w.html
new file mode 100644
index 0000000000..276aad8ae6
--- /dev/null
+++ b/doc/ref/core.internal/html/functions_w.html
@@ -0,0 +1,212 @@
+<!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: Data Fields</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 class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_k.html#index_k"><span>k</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_q.html#index_q"><span>q</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_v.html#index_v"><span>v</span></a></li>
+ <li class="current"><a href="functions_w.html#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>waiters
+: <a class="el" href="structgpr__cancellable.html#a99dfebf899cae60307fb8b83e8cfdb43">gpr_cancellable</a>
+</li>
+<li>waiting
+: <a class="el" href="structgrpc__subchannel.html#a86222e4f70c6a36a9345ce2388f94e22">grpc_subchannel</a>
+</li>
+<li>waiting_for_config_closures
+: <a class="el" href="structchannel__data.html#ac701a31115f0dcb435265a106baf619f">channel_data</a>
+</li>
+<li>waiting_op
+: <a class="el" href="structcall__data.html#a95c7079af1a663431de6bfe8e919cff7">call_data</a>
+</li>
+<li>wakeup
+: <a class="el" href="structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f">grpc_wakeup_fd_vtable</a>
+</li>
+<li>wakeup_fd
+: <a class="el" href="structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479">grpc_kick_fd_info</a>
+</li>
+<li>watcher_mu
+: <a class="el" href="structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b">grpc_fd</a>
+</li>
+<li>watchers
+: <a class="el" href="structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd">grpc_connectivity_state_tracker</a>
+</li>
+<li>window_update
+: <a class="el" href="structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d">grpc_chttp2_transport_parsing</a>
+</li>
+<li>wrapped
+: <a class="el" href="structmerge__args__factory.html#aecaa1e5ad4e5838355a2f1515943e378">merge_args_factory</a>
+</li>
+<li>wrapped_endpoint
+: <a class="el" href="structgrpc__secure__transport__setup.html#a6718bd343a57770498f8bfcfeefbaf9a">grpc_secure_transport_setup</a>
+</li>
+<li>wrapped_ep
+: <a class="el" href="structsecure__endpoint.html#aee294803f06c5d38dac97d2933d52e94">secure_endpoint</a>
+</li>
+<li>write
+: <a class="el" href="structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739">grpc_endpoint_vtable</a>
+</li>
+<li>write_cb
+: <a class="el" href="structsecure__endpoint.html#a0d57c837c3b9281454f2629845162de0">secure_endpoint</a>
+</li>
+<li>write_fd
+: <a class="el" href="structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f">grpc_wakeup_fd_info</a>
+</li>
+<li>write_info
+: <a class="el" href="structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6">grpc_winsocket</a>
+</li>
+<li>write_staging_buffer
+: <a class="el" href="structsecure__endpoint.html#a9349d713abd0f17c41579a9c149629c2">secure_endpoint</a>
+</li>
+<li>write_state
+: <a class="el" href="structgrpc__call.html#a9a08d62d6d129d629c2cbe25511983ac">grpc_call</a>
+, <a class="el" href="structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9">grpc_chttp2_stream_global</a>
+</li>
+<li>write_user_data
+: <a class="el" href="structsecure__endpoint.html#ae444fbf4226a8118b5cac6f71d043124">secure_endpoint</a>
+</li>
+<li>write_watcher
+: <a class="el" href="structgrpc__fd.html#ae2395965de88538f112be69c21307d01">grpc_fd</a>
+</li>
+<li>writest
+: <a class="el" href="structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676">grpc_fd</a>
+</li>
+<li>writing
+: <a class="el" href="structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e">grpc_chttp2_stream</a>
+, <a class="el" href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf">grpc_chttp2_transport</a>
+</li>
+<li>writing_action
+: <a class="el" href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224">grpc_chttp2_transport</a>
+</li>
+<li>writing_active
+: <a class="el" href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b">grpc_chttp2_transport</a>
+</li>
+<li>writing_now
+: <a class="el" href="structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c">grpc_chttp2_stream_global</a>
+</li>
+<li>written_initial_metadata
+: <a class="el" href="structcall__data.html#a5fccfa4c3448bcfd28f80b2caad5485b">call_data</a>
+</li>
+<li>wsa_error
+: <a class="el" href="structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29">grpc_winsocket_callback_info</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>
diff --git a/doc/ref/core.internal/html/globals.html b/doc/ref/core.internal/html/globals.html
new file mode 100644
index 0000000000..08a0865d41
--- /dev/null
+++ b/doc/ref/core.internal/html/globals.html
@@ -0,0 +1,142 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index__"></a>- _ -</h3><ul>
+<li>_GNU_SOURCE
+: <a class="el" href="tcp__server__posix_8c.html#a369266c24eacffb87046522897a570d5">tcp_server_posix.c</a>
+, <a class="el" href="cpu__linux_8c.html#a369266c24eacffb87046522897a570d5">cpu_linux.c</a>
+, <a class="el" href="log__linux_8c.html#a369266c24eacffb87046522897a570d5">log_linux.c</a>
+, <a class="el" href="env__linux_8c.html#a369266c24eacffb87046522897a570d5">env_linux.c</a>
+</li>
+<li>_POSIX_SOURCE
+: <a class="el" href="log__linux_8c.html#ac3d144aa01e765a1fae62ab5491c7cc1">log_linux.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_a.html b/doc/ref/core.internal/html/globals_a.html
new file mode 100644
index 0000000000..d57c3ab07f
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_a.html
@@ -0,0 +1,154 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li class="current"><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>ACTIVATED
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d">server.c</a>
+</li>
+<li>ADD_DEADLINE_SCALE
+: <a class="el" href="alarm_8c.html#a27a820068e725cd087726fc5d913a5b6">alarm.c</a>
+</li>
+<li>arg
+: <a class="el" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">cmdline.c</a>
+</li>
+<li>argtype
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4">cmdline.c</a>
+</li>
+<li>ARGTYPE_BOOL
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4ad141b51bee7ccb14e0c83871f0e3ee0d">cmdline.c</a>
+</li>
+<li>ARGTYPE_INT
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4a620547b20bcf630ba7f4d727fdb22521">cmdline.c</a>
+</li>
+<li>ARGTYPE_STRING
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4a50a996a2423b2fd5397a14b362fa23ab">cmdline.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_b.html b/doc/ref/core.internal/html/globals_b.html
new file mode 100644
index 0000000000..be3efddaa8
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_b.html
@@ -0,0 +1,154 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>B64_BYTE0
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a500a293aa7eb4d4757a1f8c68e6130a2">hpack_parser.c</a>
+</li>
+<li>B64_BYTE1
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a55a85d993feb4d0602aa7321264b6803">hpack_parser.c</a>
+</li>
+<li>B64_BYTE2
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a67574c0700ab2dd5156af220443386d2">hpack_parser.c</a>
+</li>
+<li>B64_BYTE3
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2aabf8c05acae26139d5ba70316b749524">hpack_parser.c</a>
+</li>
+<li>BATCH_CALL
+: <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa38d2782a64b3bf4a845e9795b295b685">server.c</a>
+</li>
+<li>BINARY_HEADER
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea4940041097c06eed1076f5dc2de17d9a">hpack_parser.c</a>
+</li>
+<li>binary_state
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_c.html b/doc/ref/core.internal/html/globals_c.html
new file mode 100644
index 0000000000..6e6f5fb903
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_c.html
@@ -0,0 +1,314 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li class="current"><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>CALL_ACTIVE
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9">client_channel.c</a>
+</li>
+<li>CALL_CANCELLED
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d">client_channel.c</a>
+</li>
+<li>CALL_CREATED
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8">client_channel.c</a>
+</li>
+<li>call_data
+: <a class="el" href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">server_auth_filter.c</a>
+, <a class="el" href="http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">http_client_filter.c</a>
+, <a class="el" href="http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">http_server_filter.c</a>
+, <a class="el" href="client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">client_channel.c</a>
+, <a class="el" href="noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">noop_filter.c</a>
+, <a class="el" href="server_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">server.c</a>
+, <a class="el" href="compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">compress_filter.c</a>
+, <a class="el" href="connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889">connected_channel.c</a>
+</li>
+<li>CALL_DATA_FROM_TRANSPORT_STREAM
+: <a class="el" href="connected__channel_8c.html#adc89e1ee71e626f5adc6ceb2de12935a">connected_channel.c</a>
+</li>
+<li>CALL_ELEM_FROM_CALL
+: <a class="el" href="call_8c.html#acd274f346b0ea7fc3235481cb7726c25">call.c</a>
+</li>
+<li>CALL_ELEMS_FROM_STACK
+: <a class="el" href="channel__stack_8c.html#a604f63dd1fea052b4285b1437c100610">channel_stack.c</a>
+</li>
+<li>CALL_FROM_CALL_STACK
+: <a class="el" href="call_8c.html#a5e0acdef58012600d44f7978256c82d9">call.c</a>
+</li>
+<li>CALL_FROM_TOP_ELEM
+: <a class="el" href="call_8c.html#a195c2e9b9e6551cf5973560eec7a97fa">call.c</a>
+</li>
+<li>CALL_STACK_FROM_CALL
+: <a class="el" href="call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b">call.c</a>
+</li>
+<li>call_state
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">client_channel.c</a>
+, <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">server.c</a>
+</li>
+<li>CALL_WAITING_FOR_CALL
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_CONFIG
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_PICK
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_SEND
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c">client_channel.c</a>
+</li>
+<li>callback_phase
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c">channel_connectivity.c</a>
+</li>
+<li>CALLED_BACK
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca7cf5434be93040e9946cc788465d3b3a">channel_connectivity.c</a>
+</li>
+<li>CALLING_BACK
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845cab5a94c295540046002de0f889519c275">channel_connectivity.c</a>
+</li>
+<li>CALLING_BACK_AND_FINISHED
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca4ed55db80fc1cf98cb8fc633fd59d68d">channel_connectivity.c</a>
+</li>
+<li>census_context
+: <a class="el" href="census_8h.html#a27fc8788690179599713226f1f054736">census.h</a>
+</li>
+<li>census_context_deserialize()
+: <a class="el" href="census_8h.html#ad9daab242b41571299ac5b3bca71fc0d">census.h</a>
+, <a class="el" href="context_8c.html#ad9daab242b41571299ac5b3bca71fc0d">context.c</a>
+</li>
+<li>census_context_destroy()
+: <a class="el" href="context_8c.html#a5bfcd1edc546eeacf111c3316ae7785d">context.c</a>
+, <a class="el" href="census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d">census.h</a>
+</li>
+<li>census_context_serialize()
+: <a class="el" href="census_8h.html#ad9a7d3170ecf720e1b22a4f255605748">census.h</a>
+, <a class="el" href="context_8c.html#ad9a7d3170ecf720e1b22a4f255605748">context.c</a>
+</li>
+<li>census_enabled()
+: <a class="el" href="census_8h.html#a742616973e78aaf969389cea20feea9f">census.h</a>
+, <a class="el" href="initialize_8c.html#a742616973e78aaf969389cea20feea9f">initialize.c</a>
+</li>
+<li>CENSUS_FEATURE_ALL
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c">census.h</a>
+</li>
+<li>CENSUS_FEATURE_CPU
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5">census.h</a>
+</li>
+<li>CENSUS_FEATURE_NONE
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab">census.h</a>
+</li>
+<li>CENSUS_FEATURE_STATS
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a">census.h</a>
+</li>
+<li>CENSUS_FEATURE_TRACING
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718">census.h</a>
+</li>
+<li>census_features
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8">census.h</a>
+</li>
+<li>census_initialize()
+: <a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6">census.h</a>
+, <a class="el" href="initialize_8c.html#a4cea92157f3de215724f6bf4aeaee1b6">initialize.c</a>
+</li>
+<li>CENSUS_INVALID_STAT_ID
+: <a class="el" href="rpc__stat__id_8h.html#a59e5e9d32ec60d7d202ebd834117c7b6">rpc_stat_id.h</a>
+</li>
+<li>census_record_stat()
+: <a class="el" href="census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">census.h</a>
+, <a class="el" href="record__stat_8c.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">record_stat.c</a>
+</li>
+<li>CENSUS_RPC_CLIENT_ERRORS
+: <a class="el" href="rpc__stat__id_8h.html#ab98fe10ab9da977ff1ab146fb47c25c6">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_CLIENT_LATENCY
+: <a class="el" href="rpc__stat__id_8h.html#a18893b8a61bb96d779e5f3e1c6384fe2">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_CLIENT_REQUESTS
+: <a class="el" href="rpc__stat__id_8h.html#aeaec3ab6b88faa6f3d17df39886839b4">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_SERVER_ERRORS
+: <a class="el" href="rpc__stat__id_8h.html#a653739d1d6b9c46c169dd40023e883c3">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_SERVER_LATENCY
+: <a class="el" href="rpc__stat__id_8h.html#ab30ee75f97d6c9361d8667d62349f49e">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_SERVER_REQUESTS
+: <a class="el" href="rpc__stat__id_8h.html#abdbb1e62656b892c48ef4b5123be59e2">rpc_stat_id.h</a>
+</li>
+<li>census_shutdown()
+: <a class="el" href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census.h</a>
+, <a class="el" href="initialize_8c.html#aa792b067548ecdd987d560b492c83d85">initialize.c</a>
+</li>
+<li>census_supported()
+: <a class="el" href="initialize_8c.html#ad5f627a64ac4febbc61d2b89801d40e9">initialize.c</a>
+, <a class="el" href="census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9">census.h</a>
+</li>
+<li>channel_data
+: <a class="el" href="http__client__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">http_client_filter.c</a>
+, <a class="el" href="http__server__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">http_server_filter.c</a>
+, <a class="el" href="compress__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">compress_filter.c</a>
+, <a class="el" href="server__auth__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">server_auth_filter.c</a>
+, <a class="el" href="server_8c.html#a663530098451ca6ac5dd8381e470b512">server.c</a>
+, <a class="el" href="noop__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">noop_filter.c</a>
+, <a class="el" href="connected__channel_8c.html#a43362118345c9bbd8b75103f9854a69d">connected_channel.c</a>
+</li>
+<li>CHANNEL_ELEMS_FROM_STACK
+: <a class="el" href="channel__stack_8c.html#ada2431407a0c579217e6b33534dc4b68">channel_stack.c</a>
+</li>
+<li>CHANNEL_FROM_CHANNEL_STACK
+: <a class="el" href="channel_8c.html#ae9cf519e646bc07f4b32920f39fba049">channel.c</a>
+</li>
+<li>CHANNEL_FROM_TOP_ELEM
+: <a class="el" href="channel_8c.html#a79c20e305865805bbe3e21adc8da9e72">channel.c</a>
+</li>
+<li>channel_registered_method
+: <a class="el" href="server_8c.html#a47b693eb517ae870b0243f6c7be3541f">server.c</a>
+</li>
+<li>CHANNEL_STACK_FROM_CHANNEL
+: <a class="el" href="channel_8c.html#a66dde7aaec84b22bf4ddfa999a2201ed">channel.c</a>
+</li>
+<li>CHANNEL_STACK_FROM_CONNECTION
+: <a class="el" href="subchannel_8c.html#a004980d48eea483363d061723e95834e">subchannel.c</a>
+</li>
+<li>compress_inner()
+: <a class="el" href="message__compress_8c.html#a703e3d8f4ace9e8b102552c527b879d8">message_compress.c</a>
+</li>
+<li>COMPRESS_OFFSET
+: <a class="el" href="call_8c.html#a94d05fca53ff43502691278ac008b36c">call.c</a>
+</li>
+<li>compute_and_encode_signature()
+: <a class="el" href="json__token_8c.html#a08e7b0b2b3e6352e92cc7ae87328a480">json_token.c</a>
+</li>
+<li>CONNECTION_REF_LOCKED
+: <a class="el" href="subchannel_8c.html#a5a6df9d57aa14df8c30325f7b403a6ba">subchannel.c</a>
+</li>
+<li>CONNECTION_UNREF_LOCKED
+: <a class="el" href="subchannel_8c.html#a7511e39882d77270a0e73a6ea6bdbf22">subchannel.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_d.html b/doc/ref/core.internal/html/globals_d.html
new file mode 100644
index 0000000000..58f1e72a6f
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_d.html
@@ -0,0 +1,151 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>DATA
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa9d7d6f31868d66330397c967c4afd2d2">stream_encoder.c</a>
+</li>
+<li>DEBUG_ARGS
+: <a class="el" href="metadata_8c.html#a74ccabb9eadfe99a2fa8e5004fdf7cfc">metadata.c</a>
+</li>
+<li>DECL_FACTORY
+: <a class="el" href="sockaddr__resolver_8c.html#ae666b8dfe7a65b7719adcc22034160e6">sockaddr_resolver.c</a>
+</li>
+<li>DEFAULT_CONNECTION_WINDOW_TARGET
+: <a class="el" href="chttp2__transport_8c.html#a609f239b676101bc4e1358eeac253916">chttp2_transport.c</a>
+</li>
+<li>DEFAULT_MAX_MESSAGE_LENGTH
+: <a class="el" href="channel_8c.html#ac48c5c1b1a6288d82d88bad6aa306d56">channel.c</a>
+</li>
+<li>DEFAULT_WINDOW
+: <a class="el" href="chttp2__transport_8c.html#af9edf0dca12d746c6cf6c6852f4398ae">chttp2_transport.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs.html b/doc/ref/core.internal/html/globals_defs.html
new file mode 100644
index 0000000000..6fced70135
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs.html
@@ -0,0 +1,136 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index__"></a>- _ -</h3><ul>
+<li>_GNU_SOURCE
+: <a class="el" href="tcp__server__posix_8c.html#a369266c24eacffb87046522897a570d5">tcp_server_posix.c</a>
+, <a class="el" href="cpu__linux_8c.html#a369266c24eacffb87046522897a570d5">cpu_linux.c</a>
+, <a class="el" href="log__linux_8c.html#a369266c24eacffb87046522897a570d5">log_linux.c</a>
+, <a class="el" href="env__linux_8c.html#a369266c24eacffb87046522897a570d5">env_linux.c</a>
+</li>
+<li>_POSIX_SOURCE
+: <a class="el" href="log__linux_8c.html#ac3d144aa01e765a1fae62ab5491c7cc1">log_linux.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_a.html b/doc/ref/core.internal/html/globals_defs_a.html
new file mode 100644
index 0000000000..80b0aefa7e
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_a.html
@@ -0,0 +1,130 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li class="current"><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>ADD_DEADLINE_SCALE
+: <a class="el" href="alarm_8c.html#a27a820068e725cd087726fc5d913a5b6">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_c.html b/doc/ref/core.internal/html/globals_defs_c.html
new file mode 100644
index 0000000000..c6d2a7e4f5
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_c.html
@@ -0,0 +1,190 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>CALL_DATA_FROM_TRANSPORT_STREAM
+: <a class="el" href="connected__channel_8c.html#adc89e1ee71e626f5adc6ceb2de12935a">connected_channel.c</a>
+</li>
+<li>CALL_ELEM_FROM_CALL
+: <a class="el" href="call_8c.html#acd274f346b0ea7fc3235481cb7726c25">call.c</a>
+</li>
+<li>CALL_ELEMS_FROM_STACK
+: <a class="el" href="channel__stack_8c.html#a604f63dd1fea052b4285b1437c100610">channel_stack.c</a>
+</li>
+<li>CALL_FROM_CALL_STACK
+: <a class="el" href="call_8c.html#a5e0acdef58012600d44f7978256c82d9">call.c</a>
+</li>
+<li>CALL_FROM_TOP_ELEM
+: <a class="el" href="call_8c.html#a195c2e9b9e6551cf5973560eec7a97fa">call.c</a>
+</li>
+<li>CALL_STACK_FROM_CALL
+: <a class="el" href="call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b">call.c</a>
+</li>
+<li>CENSUS_INVALID_STAT_ID
+: <a class="el" href="rpc__stat__id_8h.html#a59e5e9d32ec60d7d202ebd834117c7b6">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_CLIENT_ERRORS
+: <a class="el" href="rpc__stat__id_8h.html#ab98fe10ab9da977ff1ab146fb47c25c6">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_CLIENT_LATENCY
+: <a class="el" href="rpc__stat__id_8h.html#a18893b8a61bb96d779e5f3e1c6384fe2">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_CLIENT_REQUESTS
+: <a class="el" href="rpc__stat__id_8h.html#aeaec3ab6b88faa6f3d17df39886839b4">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_SERVER_ERRORS
+: <a class="el" href="rpc__stat__id_8h.html#a653739d1d6b9c46c169dd40023e883c3">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_SERVER_LATENCY
+: <a class="el" href="rpc__stat__id_8h.html#ab30ee75f97d6c9361d8667d62349f49e">rpc_stat_id.h</a>
+</li>
+<li>CENSUS_RPC_SERVER_REQUESTS
+: <a class="el" href="rpc__stat__id_8h.html#abdbb1e62656b892c48ef4b5123be59e2">rpc_stat_id.h</a>
+</li>
+<li>CHANNEL_ELEMS_FROM_STACK
+: <a class="el" href="channel__stack_8c.html#ada2431407a0c579217e6b33534dc4b68">channel_stack.c</a>
+</li>
+<li>CHANNEL_FROM_CHANNEL_STACK
+: <a class="el" href="channel_8c.html#ae9cf519e646bc07f4b32920f39fba049">channel.c</a>
+</li>
+<li>CHANNEL_FROM_TOP_ELEM
+: <a class="el" href="channel_8c.html#a79c20e305865805bbe3e21adc8da9e72">channel.c</a>
+</li>
+<li>CHANNEL_STACK_FROM_CHANNEL
+: <a class="el" href="channel_8c.html#a66dde7aaec84b22bf4ddfa999a2201ed">channel.c</a>
+</li>
+<li>CHANNEL_STACK_FROM_CONNECTION
+: <a class="el" href="subchannel_8c.html#a004980d48eea483363d061723e95834e">subchannel.c</a>
+</li>
+<li>COMPRESS_OFFSET
+: <a class="el" href="call_8c.html#a94d05fca53ff43502691278ac008b36c">call.c</a>
+</li>
+<li>CONNECTION_REF_LOCKED
+: <a class="el" href="subchannel_8c.html#a5a6df9d57aa14df8c30325f7b403a6ba">subchannel.c</a>
+</li>
+<li>CONNECTION_UNREF_LOCKED
+: <a class="el" href="subchannel_8c.html#a7511e39882d77270a0e73a6ea6bdbf22">subchannel.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_d.html b/doc/ref/core.internal/html/globals_defs_d.html
new file mode 100644
index 0000000000..3517a7f082
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_d.html
@@ -0,0 +1,142 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>DEBUG_ARGS
+: <a class="el" href="metadata_8c.html#a74ccabb9eadfe99a2fa8e5004fdf7cfc">metadata.c</a>
+</li>
+<li>DECL_FACTORY
+: <a class="el" href="sockaddr__resolver_8c.html#ae666b8dfe7a65b7719adcc22034160e6">sockaddr_resolver.c</a>
+</li>
+<li>DEFAULT_CONNECTION_WINDOW_TARGET
+: <a class="el" href="chttp2__transport_8c.html#a609f239b676101bc4e1358eeac253916">chttp2_transport.c</a>
+</li>
+<li>DEFAULT_MAX_MESSAGE_LENGTH
+: <a class="el" href="channel_8c.html#ac48c5c1b1a6288d82d88bad6aa306d56">channel.c</a>
+</li>
+<li>DEFAULT_WINDOW
+: <a class="el" href="chttp2__transport_8c.html#af9edf0dca12d746c6cf6c6852f4398ae">chttp2_transport.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_e.html b/doc/ref/core.internal/html/globals_defs_e.html
new file mode 100644
index 0000000000..aea2420c22
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_e.html
@@ -0,0 +1,130 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>ENTRY_ALIGNMENT_BITS
+: <a class="el" href="stack__lockfree_8c.html#a8644da45b827e108bca857053cbf48af">stack_lockfree.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_f.html b/doc/ref/core.internal/html/globals_defs_f.html
new file mode 100644
index 0000000000..4747f3d40e
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_f.html
@@ -0,0 +1,133 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>FMIX32
+: <a class="el" href="murmur__hash_8c.html#a35851ba6b08c118345278effc46695e6">murmur_hash.c</a>
+</li>
+<li>FWD_DEBUG_ARGS
+: <a class="el" href="metadata_8c.html#a3cfab2da250dee51694faff7226974a6">metadata.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_g.html b/doc/ref/core.internal/html/globals_defs_g.html
new file mode 100644
index 0000000000..2f78b28546
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_g.html
@@ -0,0 +1,752 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li class="current"><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>GETBLOCK32
+: <a class="el" href="murmur__hash_8c.html#aaaaac568919d152a24bbff8d8c1bc194">murmur_hash.c</a>
+</li>
+<li>GPR_ARRAY_SIZE
+: <a class="el" href="useful_8h.html#a0e411d4f81a169c97c319d4e84df5747">useful.h</a>
+</li>
+<li>GPR_ASSERT
+: <a class="el" href="log_8h.html#a6ccf52ff690655cc22cd9d053650876f">log.h</a>
+</li>
+<li>gpr_atm_acq_cas
+: <a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_acq_load
+: <a class="el" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">atm_gcc_atomic.h</a>
+</li>
+<li>GPR_ATM_COMPILE_BARRIER_
+: <a class="el" href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_full_barrier
+: <a class="el" href="atm__gcc__sync_8h.html#a95f86e51ae9a479026bd237cb792193e">atm_gcc_sync.h</a>
+, <a class="el" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">atm_win32.h</a>
+, <a class="el" href="atm__gcc__atomic_8h.html#a95f86e51ae9a479026bd237cb792193e">atm_gcc_atomic.h</a>
+</li>
+<li>gpr_atm_full_fetch_add
+: <a class="el" href="atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c">atm_gcc_sync.h</a>
+</li>
+<li>GPR_ATM_LS_BARRIER_
+: <a class="el" href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_no_barrier_cas
+: <a class="el" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_no_barrier_fetch_add
+: <a class="el" href="atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_no_barrier_load
+: <a class="el" href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">atm_gcc_atomic.h</a>
+</li>
+<li>gpr_atm_no_barrier_store
+: <a class="el" href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">atm_gcc_atomic.h</a>
+</li>
+<li>gpr_atm_rel_cas
+: <a class="el" href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_rel_store
+: <a class="el" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">atm_gcc_atomic.h</a>
+</li>
+<li>GPR_BITCLEAR
+: <a class="el" href="useful_8h.html#af797bf1803f9809b3ccceaa619078c89">useful.h</a>
+</li>
+<li>GPR_BITCOUNT
+: <a class="el" href="useful_8h.html#a8f51444fe97eb3f83184b98035e3357f">useful.h</a>
+</li>
+<li>GPR_BITGET
+: <a class="el" href="useful_8h.html#a7c54bb2fffdaae24ba38ca5e5c53ab41">useful.h</a>
+</li>
+<li>GPR_BITSET
+: <a class="el" href="useful_8h.html#a28de4ed955bfc2bff309061b7820a37a">useful.h</a>
+</li>
+<li>GPR_CACHELINE_SIZE
+: <a class="el" href="port__platform_8h.html#ad9b7cc620233bbab0bc57cfbbe9519ad">port_platform.h</a>
+</li>
+<li>GPR_CACHELINE_SIZE_LOG
+: <a class="el" href="port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576">port_platform.h</a>
+</li>
+<li>GPR_CLAMP
+: <a class="el" href="useful_8h.html#ac974b8c13ee716193e0ee30d9513672c">useful.h</a>
+</li>
+<li>GPR_DEBUG
+: <a class="el" href="log_8h.html#a3e793245091f13bb7318a18b1166a773">log.h</a>
+</li>
+<li>GPR_DUMP_ASCII
+: <a class="el" href="string_8h.html#ac0676a68b67df2660352db8168c6c180">string.h</a>
+</li>
+<li>GPR_DUMP_HEX
+: <a class="el" href="string_8h.html#a2d592b56804af1c0d0e5237c37ce0313">string.h</a>
+</li>
+<li>GPR_ERROR
+: <a class="el" href="log_8h.html#a63faedb3eefd93d1c0e79974be80cc36">log.h</a>
+</li>
+<li>GPR_EVENT_INIT
+: <a class="el" href="sync__generic_8h.html#a6f38fe7692eaa6663c1f79ff5847c050">sync_generic.h</a>
+</li>
+<li>GPR_INFO
+: <a class="el" href="log_8h.html#af0d0d75690f79edc9294498c88f96703">log.h</a>
+</li>
+<li>GPR_INT64_MAX
+: <a class="el" href="port__platform_8h.html#aaff7a6a2f0868f8b0648b74828ef0e4f">port_platform.h</a>
+</li>
+<li>GPR_INTERNAL_HEXDIGIT_BITCOUNT
+: <a class="el" href="useful_8h.html#a601e1be692fe7922b52991a5d410b945">useful.h</a>
+</li>
+<li>GPR_LTOA_MIN_BUFSIZE
+: <a class="el" href="string_8h.html#a21406aaed4e32e895145541eabbad527">string.h</a>
+</li>
+<li>GPR_MAX
+: <a class="el" href="useful_8h.html#af50c518bb1183da84adb7d8a86cd568a">useful.h</a>
+</li>
+<li>GPR_MAX_ALIGNMENT
+: <a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">port_platform.h</a>
+</li>
+<li>GPR_MIN
+: <a class="el" href="useful_8h.html#a298322c952526928cf8dbc7aaba7b84d">useful.h</a>
+</li>
+<li>GPR_MS_PER_SEC
+: <a class="el" href="time_8h.html#af2c8091db4e2a3133b93131f64db859e">time.h</a>
+</li>
+<li>GPR_NS_PER_MS
+: <a class="el" href="time_8h.html#a3c63ee76f91a122abf3a0806b64318eb">time.h</a>
+</li>
+<li>GPR_NS_PER_SEC
+: <a class="el" href="time_8h.html#a447d0913b0cfdc943df51585f0e2785e">time.h</a>
+</li>
+<li>GPR_NS_PER_US
+: <a class="el" href="time_8h.html#adc295bf07c72edae8a2ad49e24da2f32">time.h</a>
+</li>
+<li>GPR_ONCE_INIT
+: <a class="el" href="sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666">sync_posix.h</a>
+, <a class="el" href="sync__win32_8h.html#a8edd7eb4f6860a4f79defbad49c35666">sync_win32.h</a>
+</li>
+<li>GPR_PLATFORM_STRING
+: <a class="el" href="port__platform_8h.html#a99f34e9b119908109486e91abedc933e">port_platform.h</a>
+</li>
+<li>GPR_ROTL
+: <a class="el" href="useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85">useful.h</a>
+</li>
+<li>GPR_ROTR
+: <a class="el" href="useful_8h.html#a5ff4b278972e799dc134963a0249f316">useful.h</a>
+</li>
+<li>GPR_SLICE_END_PTR
+: <a class="el" href="slice_8h.html#a9b7e9acd0eb92039a9bc897712a62a14">slice.h</a>
+</li>
+<li>GPR_SLICE_INLINED_SIZE
+: <a class="el" href="slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31">slice.h</a>
+</li>
+<li>GPR_SLICE_IS_EMPTY
+: <a class="el" href="slice_8h.html#ad4fe3efa7a8938045ce79271d79f79ef">slice.h</a>
+</li>
+<li>GPR_SLICE_LENGTH
+: <a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">slice.h</a>
+</li>
+<li>GPR_SLICE_SET_LENGTH
+: <a class="el" href="slice_8h.html#a1f5333a1260aef2efe086d4e2188e613">slice.h</a>
+</li>
+<li>GPR_SLICE_START_PTR
+: <a class="el" href="slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15">slice.h</a>
+</li>
+<li>GPR_STATS_INIT
+: <a class="el" href="sync__generic_8h.html#ada230498c8e2aca51e9349709e70e1ef">sync_generic.h</a>
+</li>
+<li>GPR_SWAP
+: <a class="el" href="useful_8h.html#a9f884f8218a97ed9739e2dac467f0719">useful.h</a>
+</li>
+<li>GPR_TLS_DECL
+: <a class="el" href="tls__gcc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">tls_pthread.h</a>
+</li>
+<li>gpr_tls_destroy
+: <a class="el" href="tls__gcc_8h.html#a187108e1078d2ce05388cb17bc59ce74">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#a187108e1078d2ce05388cb17bc59ce74">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#a187108e1078d2ce05388cb17bc59ce74">tls_pthread.h</a>
+</li>
+<li>gpr_tls_get
+: <a class="el" href="tls__pthread_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">tls_pthread.h</a>
+, <a class="el" href="tls__gcc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">tls_msvc.h</a>
+</li>
+<li>gpr_tls_init
+: <a class="el" href="tls__gcc_8h.html#a43768a42ff705cc028b4a483dc3b65c5">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#a43768a42ff705cc028b4a483dc3b65c5">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#a43768a42ff705cc028b4a483dc3b65c5">tls_pthread.h</a>
+</li>
+<li>gpr_tls_set
+: <a class="el" href="tls__gcc_8h.html#aa8f01b3e40178b80d098650f42c529e7">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#aa8f01b3e40178b80d098650f42c529e7">tls_msvc.h</a>
+</li>
+<li>GPR_US_PER_MS
+: <a class="el" href="time_8h.html#a33dba9a222266cf2270c9b09c1f64336">time.h</a>
+</li>
+<li>GPR_US_PER_SEC
+: <a class="el" href="time_8h.html#a48433e202646afa00d9694585b05b9e3">time.h</a>
+</li>
+<li>GROW
+: <a class="el" href="stream__op_8c.html#a886cd1bc8d999f1eca35adda926045dc">stream_op.c</a>
+, <a class="el" href="slice__buffer_8c.html#a886cd1bc8d999f1eca35adda926045dc">slice_buffer.c</a>
+</li>
+<li>GRPC_ARG_DEFAULT_AUTHORITY
+: <a class="el" href="grpc_8h.html#add42f97666fbfc66b7dac253ac3b73ae">grpc.h</a>
+</li>
+<li>GRPC_ARG_ENABLE_CENSUS
+: <a class="el" href="grpc_8h.html#ae498934a02de89ce29cec570b02a2037">grpc.h</a>
+</li>
+<li>GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER
+: <a class="el" href="grpc_8h.html#aecc45a63163796ca1bc5453938bdfb36">grpc.h</a>
+</li>
+<li>GRPC_ARG_HTTP2_SCHEME
+: <a class="el" href="http__client__filter_8h.html#a7797da9f3f5a1381484b2cabca1920fc">http_client_filter.h</a>
+</li>
+<li>GRPC_ARG_MAX_CONCURRENT_STREAMS
+: <a class="el" href="grpc_8h.html#a5bb9256d0b457cab219f4d9d765148b6">grpc.h</a>
+</li>
+<li>GRPC_ARG_MAX_MESSAGE_LENGTH
+: <a class="el" href="grpc_8h.html#a50f37feb7c000a23b3b0edf4c31d4367">grpc.h</a>
+</li>
+<li>GRPC_ARG_PRIMARY_USER_AGENT_STRING
+: <a class="el" href="grpc_8h.html#a0732df2d9003e9ee1c01e50e41b5a8e2">grpc.h</a>
+</li>
+<li>GRPC_ARG_SECONDARY_USER_AGENT_STRING
+: <a class="el" href="grpc_8h.html#af47b4048c11e4f8f4162f12c135c2da4">grpc.h</a>
+</li>
+<li>GRPC_AUTH_CONTEXT_REF
+: <a class="el" href="security__context_8h.html#a3df5d42b28934cbeb932f18d61a8fe77">security_context.h</a>
+</li>
+<li>GRPC_AUTH_CONTEXT_UNREF
+: <a class="el" href="security__context_8h.html#ae6b74ab5e3a697c5a93529609bdb2668">security_context.h</a>
+</li>
+<li>GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER
+: <a class="el" href="json__token_8h.html#af371d9efcf5a20784bfeae73e3369fd3">json_token.h</a>
+</li>
+<li>GRPC_AUTH_JSON_TYPE_INVALID
+: <a class="el" href="json__token_8h.html#af5c8010a33e3a9b7b23f88cc87c1149e">json_token.h</a>
+</li>
+<li>GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT
+: <a class="el" href="json__token_8h.html#ae7dd581751d41c6ea4d8dd5af295d495">json_token.h</a>
+</li>
+<li>GRPC_AUTHORIZATION_METADATA_KEY
+: <a class="el" href="credentials_8h.html#ae5d55c31d952d739f5be7de47ad425a3">credentials.h</a>
+</li>
+<li>GRPC_BASE64_MULTILINE_LINE_LEN
+: <a class="el" href="base64_8c.html#a044b2c792f69cf3efaad0895e38122a7">base64.c</a>
+</li>
+<li>GRPC_BASE64_MULTILINE_NUM_BLOCKS
+: <a class="el" href="base64_8c.html#abf98a03e292b4943e5d9df3314a91d2e">base64.c</a>
+</li>
+<li>GRPC_BASE64_PAD_BYTE
+: <a class="el" href="base64_8c.html#a74d467f02f0a2a5e88cc0231ea2d3603">base64.c</a>
+</li>
+<li>GRPC_BASE64_PAD_CHAR
+: <a class="el" href="base64_8c.html#a6ccc23e3f23a06fd1e83f07fc80a36f5">base64.c</a>
+</li>
+<li>GRPC_CALL_INTERNAL_REF
+: <a class="el" href="call_8h.html#a8096750f0a0c7cb97a4c38df49242f8b">call.h</a>
+</li>
+<li>GRPC_CALL_INTERNAL_UNREF
+: <a class="el" href="call_8h.html#a88a83bb312e007ce3b253c97a567383b">call.h</a>
+</li>
+<li>GRPC_CALL_LOG_BATCH
+: <a class="el" href="call_8h.html#afb66440381d35f27f8a59ce496970c8a">call.h</a>
+</li>
+<li>GRPC_CALL_LOG_OP
+: <a class="el" href="channel__stack_8h.html#a933b113b310801b8f916dade1569dbc3">channel_stack.h</a>
+</li>
+<li>GRPC_CHANNEL_INTERNAL_REF
+: <a class="el" href="channel_8h.html#aa19087be931208174c3f30c983b0061c">channel.h</a>
+</li>
+<li>GRPC_CHANNEL_INTERNAL_UNREF
+: <a class="el" href="channel_8h.html#a8391477c21b23ffe97f2e6327c74e77e">channel.h</a>
+</li>
+<li>GRPC_CHTTP2_CLIENT_CONNECT_STRING
+: <a class="el" href="internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_CLIENT_CONNECT_STRLEN
+: <a class="el" href="internal_8h.html#a5fd119b62e9b3648496dbb7c2f2a0025">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FLAG_END_HEADERS
+: <a class="el" href="frame_8h.html#a9e28337a838f07e06987f344a01f7f0f">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FLAG_END_STREAM
+: <a class="el" href="frame_8h.html#aebe712016c70bba5c7fc0cbc7f372681">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FLAG_PADDED
+: <a class="el" href="frame_8h.html#ab01d61cf6f1abddae8031ebcf6e34e09">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FLAG_ACK
+: <a class="el" href="frame_8h.html#ae399b812927e4ccfa1836814e719bec6">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FLAG_HAS_PRIORITY
+: <a class="el" href="frame_8h.html#a8fbbbbd20f7217de2249fb8597b48c36">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FLOWCTL_TRACE_STREAM
+: <a class="el" href="internal_8h.html#a927cb1449b541fcb1812761184135ca1">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT
+: <a class="el" href="internal_8h.html#ad6d86669b104a248fbee4d8f63237a06">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_CONTINUATION
+: <a class="el" href="frame_8h.html#ae8ffe7f9a02584c5eed5876f6d8e497b">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_DATA
+: <a class="el" href="frame_8h.html#af475a6ee5b3fc2b9c8b835d927521bee">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_GOAWAY
+: <a class="el" href="frame_8h.html#a624f289bc52602a8c3340ad747075130">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_HEADER
+: <a class="el" href="frame_8h.html#ab82e94b9ff60e4ef29301db9b4022805">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_PING
+: <a class="el" href="frame_8h.html#a9a92c84ae932e1b9a79af8f099516ece">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_RST_STREAM
+: <a class="el" href="frame_8h.html#a0e6ad3bb0bc03b02cd2791f34014c933">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_SETTINGS
+: <a class="el" href="frame_8h.html#aa030a067f1b4cbb8d34c28fbb43e8046">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_WINDOW_UPDATE
+: <a class="el" href="frame_8h.html#ac9af6484a80a10f0213465fa5dc14031">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD
+: <a class="el" href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS
+: <a class="el" href="stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4">stream_encoder.h</a>
+</li>
+<li>GRPC_CHTTP2_HPACKC_NUM_FILTERS
+: <a class="el" href="stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6">stream_encoder.h</a>
+</li>
+<li>GRPC_CHTTP2_HPACKC_NUM_VALUES
+: <a class="el" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">stream_encoder.h</a>
+</li>
+<li>GRPC_CHTTP2_IF_TRACING
+: <a class="el" href="internal_8h.html#ab4ecd954e779c49a6159f842dc5a2ab4">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE
+: <a class="el" href="hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_LAST_STATIC_ENTRY
+: <a class="el" href="hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE
+: <a class="el" href="hpack__table_8h.html#a376305051742470529655dacf911329e">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_IN_PREFIX
+: <a class="el" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">varint.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_PAYLOAD_LENGTH
+: <a class="el" href="frame_8h.html#a461cf678ffd9272c8a10f133c058124e">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_TABLE_COUNT
+: <a class="el" href="hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_NUM_HUFFSYMS
+: <a class="el" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">huffsyms.h</a>
+</li>
+<li>GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE
+: <a class="el" href="timeout__encoding_8h.html#a774d4de6aaa65433d6a318f611c00939">timeout_encoding.h</a>
+</li>
+<li>GRPC_CHTTP2_VARINT_LENGTH
+: <a class="el" href="varint_8h.html#af09078f363c97757f6e7bfa3953cb93d">varint.h</a>
+</li>
+<li>GRPC_CHTTP2_WRITE_VARINT
+: <a class="el" href="varint_8h.html#a6f5350a7ba20095c1c903463e74b8e54">varint.h</a>
+</li>
+<li>GRPC_COMPRESS_REQUEST_ALGORITHM_KEY
+: <a class="el" href="compress__filter_8h.html#a501a03bf06f05a5d19c3e2c3b8143124">compress_filter.h</a>
+</li>
+<li>GRPC_COMPRESSION_ALGORITHM_ARG
+: <a class="el" href="compression_8h.html#a9340488e193921e62bb1f240f9016a9b">compression.h</a>
+</li>
+<li>GRPC_COMPUTE_ENGINE_DETECTION_HOST
+: <a class="el" href="google__default__credentials_8c.html#a4c79e7c2c581744d4fcb3518b2fccf39">google_default_credentials.c</a>
+</li>
+<li>GRPC_COMPUTE_ENGINE_METADATA_HOST
+: <a class="el" href="credentials_8h.html#af2ca22068add36d00ce70643802ff647">credentials.h</a>
+</li>
+<li>GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH
+: <a class="el" href="credentials_8h.html#aca8e8738c2c829c3cf48f49454f7188f">credentials.h</a>
+</li>
+<li>GRPC_CQ_INTERNAL_REF
+: <a class="el" href="completion__queue_8h.html#abb132fe2e37bc87bfcc83eb3cd8d3101">completion_queue.h</a>
+</li>
+<li>GRPC_CQ_INTERNAL_UNREF
+: <a class="el" href="completion__queue_8h.html#aaceb3ef8959e5c43f6954c19a1975f63">completion_queue.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_COMPOSITE
+: <a class="el" href="credentials_8h.html#a0712aea16b41a6d8c65dafcd9d12f599">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY
+: <a class="el" href="credentials_8h.html#a30ae5fa2e94aeeca90b31d0fd7c416d4">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_IAM
+: <a class="el" href="credentials_8h.html#a2921973fe6094cad4b3aa94b20d8e254">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_JWT
+: <a class="el" href="credentials_8h.html#a94b9c6715bdb2a6469fe0db959358d2c">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_OAUTH2
+: <a class="el" href="credentials_8h.html#ad1d383b3414af259ebc165ac21febd04">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_SSL
+: <a class="el" href="credentials_8h.html#ae74910f24a7fe0d54c326a1ed9e5e127">credentials.h</a>
+</li>
+<li>GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR
+: <a class="el" href="grpc__security_8h.html#a48565da473b7c82fa2453798f620fd59">grpc_security.h</a>
+</li>
+<li>GRPC_FAKE_SECURITY_URL_SCHEME
+: <a class="el" href="security__connector_8h.html#aac2af4901dde1db04846ccc7bde22272">security_connector.h</a>
+</li>
+<li>GRPC_FAKE_TRANSPORT_SECURITY_TYPE
+: <a class="el" href="credentials_8h.html#a2f398e72138c69b2928abb30e54ce4ce">credentials.h</a>
+</li>
+<li>GRPC_FD_REF
+: <a class="el" href="fd__posix_8h.html#a4ad3cc6c9405aa0f94d03257238fe297">fd_posix.h</a>
+</li>
+<li>GRPC_FD_UNREF
+: <a class="el" href="fd__posix_8h.html#a3672f89aa33819921430074f7eb96267">fd_posix.h</a>
+</li>
+<li>GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY
+: <a class="el" href="credentials_8h.html#ac6142eafe5116c797b860449a2fbb7bf">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_CREDENTIALS_ENV_VAR
+: <a class="el" href="grpc__security_8h.html#a3874f70577fc9fe15fd2c4ce68a36ecd">grpc_security.h</a>
+</li>
+<li>GRPC_GOOGLE_OAUTH2_SERVICE_HOST
+: <a class="el" href="credentials_8h.html#a61dc5d4843d2e4b26aa48694efd08cd3">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH
+: <a class="el" href="credentials_8h.html#aa9cf32ba20b7ce3e171c87ab1c08b20c">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN
+: <a class="el" href="jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73">jwt_verifier.h</a>
+</li>
+<li>GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX
+: <a class="el" href="jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98">jwt_verifier.h</a>
+</li>
+<li>GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE
+: <a class="el" href="credentials_8h.html#a95d64473b3915a6a65e99ac283326e78">credentials.h</a>
+</li>
+<li>GRPC_HTTPCLI_MAX_HEADER_LENGTH
+: <a class="el" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">httpcli.h</a>
+</li>
+<li>GRPC_HTTPCLI_USER_AGENT
+: <a class="el" href="httpcli_8h.html#aad8b996f269fd3671a7c6fa829bdec95">httpcli.h</a>
+</li>
+<li>GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY
+: <a class="el" href="credentials_8h.html#ada8ea1fc7b28fb63283af76ad27761dd">credentials.h</a>
+</li>
+<li>GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY
+: <a class="el" href="credentials_8h.html#ac952f285c5ca94edcff909e37ae68402">credentials.h</a>
+</li>
+<li>GRPC_INITIAL_HANDSHAKE_BUFFER_SIZE
+: <a class="el" href="secure__transport__setup_8c.html#a7faeebb3ced4358f4e7db1428923b013">secure_transport_setup.c</a>
+</li>
+<li>GRPC_JWT_OAUTH2_AUDIENCE
+: <a class="el" href="json__token_8h.html#aa786d993b153687864544b028ab81d57">json_token.h</a>
+</li>
+<li>GRPC_JWT_RSA_SHA256_ALGORITHM
+: <a class="el" href="json__token_8c.html#a152047e25145985b1aec6a0945d09553">json_token.c</a>
+</li>
+<li>GRPC_JWT_TYPE
+: <a class="el" href="json__token_8c.html#a6ee6f733ee72e89c478c9041176a3836">json_token.c</a>
+</li>
+<li>GRPC_LB_POLICY_REF
+: <a class="el" href="lb__policy_8h.html#aee5c1071728e588a3875f2338d4a5526">lb_policy.h</a>
+</li>
+<li>GRPC_LB_POLICY_UNREF
+: <a class="el" href="lb__policy_8h.html#a376467589c9ff6e1d597ae21b44295c9">lb_policy.h</a>
+</li>
+<li>GRPC_MAX_SOCKADDR_SIZE
+: <a class="el" href="resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6">resolve_address.h</a>
+</li>
+<li>GRPC_MDCTX_LOCKED_MDELEM_UNREF
+: <a class="el" href="metadata_8h.html#af96c346c98e982e5c0086467dd11e714">metadata.h</a>
+</li>
+<li>GRPC_MDELEM_REF
+: <a class="el" href="metadata_8h.html#af5a6d4b7c327b66f0902c683ab007618">metadata.h</a>
+</li>
+<li>GRPC_MDELEM_UNREF
+: <a class="el" href="metadata_8h.html#ab01db7c946e0962da8888f19cb870afb">metadata.h</a>
+</li>
+<li>GRPC_MDSTR_KV_HASH
+: <a class="el" href="metadata_8h.html#a385838d339c97b956529499c1da41e1f">metadata.h</a>
+</li>
+<li>GRPC_MDSTR_REF
+: <a class="el" href="metadata_8h.html#ab07dbb900f15b2fe28ea24451c5cfa3d">metadata.h</a>
+</li>
+<li>GRPC_MDSTR_UNREF
+: <a class="el" href="metadata_8h.html#ab6dceed9dacb076aa33c15323f6e823c">metadata.h</a>
+</li>
+<li>GRPC_MUST_USE_RESULT
+: <a class="el" href="port__platform_8h.html#aef49047a3be38448a61332117b306686">port_platform.h</a>
+</li>
+<li>GRPC_OPENID_CONFIG_URL_SUFFIX
+: <a class="el" href="jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef">jwt_verifier.h</a>
+</li>
+<li>GRPC_POLLSET_KICK_GET_FD
+: <a class="el" href="pollset__kick__posix_8h.html#a595cfb6b4cc1f48dbd015821541df959">pollset_kick_posix.h</a>
+</li>
+<li>GRPC_POLLSET_MU
+: <a class="el" href="pollset__windows_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f">pollset_windows.h</a>
+, <a class="el" href="pollset__posix_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f">pollset_posix.h</a>
+</li>
+<li>GRPC_PRECISE_CLOCK_FORMAT
+: <a class="el" href="timers__preciseclock_8h.html#a8cbb7d29a1f4fcded6337c7d9c61598d">timers_preciseclock.h</a>
+</li>
+<li>GRPC_PRECISE_CLOCK_PRINTF_ARGS
+: <a class="el" href="timers__preciseclock_8h.html#ad8cb0fe2236a54829f5c38cd508305c5">timers_preciseclock.h</a>
+</li>
+<li>GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING
+: <a class="el" href="credentials_8h.html#adeaf95d65b517e001c71d1fb5e47c97a">credentials.h</a>
+</li>
+<li>GRPC_RESOLVER_REF
+: <a class="el" href="resolver_8h.html#a98d15570db72446a0c175bc3ad316db9">resolver.h</a>
+</li>
+<li>GRPC_RESOLVER_UNREF
+: <a class="el" href="resolver_8h.html#a54ccbaf14bf8c38ad785e95d705bfe4d">resolver.h</a>
+</li>
+<li>GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS
+: <a class="el" href="credentials_8h.html#a63b03c9e9e071d5b7f2276c0ae196aeb">credentials.h</a>
+</li>
+<li>GRPC_SECURITY_CONNECTOR_ARG
+: <a class="el" href="security__connector_8h.html#a047c420294c8769e4512f17d0573e353">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_CONNECTOR_REF
+: <a class="el" href="security__connector_8h.html#a5bb32899b45edd908bb61e45db59c460">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_CONNECTOR_UNREF
+: <a class="el" href="security__connector_8h.html#a1950bc24ce082a50d66b0cd505c069ee">security_connector.h</a>
+</li>
+<li>GRPC_SERVER_LOG_REQUEST_CALL
+: <a class="el" href="call_8h.html#a2248e590ae0f4d7aba76fbf76110db6c">call.h</a>
+</li>
+<li>GRPC_SERVER_LOG_SHUTDOWN
+: <a class="el" href="call_8h.html#a0b82c07496b462c41ce400559c5219e7">call.h</a>
+</li>
+<li>GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX
+: <a class="el" href="credentials_8h.html#a5c5761f3829eca7ec24d5aa68272cad2">credentials.h</a>
+</li>
+<li>GRPC_SLICE_BUFFER_INLINE_ELEMENTS
+: <a class="el" href="slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809">slice_buffer.h</a>
+</li>
+<li>GRPC_SOPB_INLINE_ELEMENTS
+: <a class="el" href="stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca">stream_op.h</a>
+</li>
+<li>GRPC_SSL_CIPHER_SUITES
+: <a class="el" href="security__connector_8c.html#ab67f630ea3179d8d418fddcdc0deef5c">security_connector.c</a>
+</li>
+<li>GRPC_SSL_TARGET_NAME_OVERRIDE_ARG
+: <a class="el" href="grpc__security_8h.html#a218bf55b665134a11baf07ada5980825">grpc_security.h</a>
+</li>
+<li>GRPC_SSL_TRANSPORT_SECURITY_TYPE
+: <a class="el" href="grpc__security_8h.html#a35a35c597b7090b8ac7e2d854c9bcc7a">grpc_security.h</a>
+</li>
+<li>GRPC_SSL_URL_SCHEME
+: <a class="el" href="security__connector_8h.html#a9e0af76d139286bef4c720bde3a7a6c0">security_connector.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_CALL_REF
+: <a class="el" href="subchannel_8h.html#aa0f8df565952fc5504c9658b426c64a7">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_CALL_UNREF
+: <a class="el" href="subchannel_8h.html#a5d26bb43a6c7a1d40d130c7dd08b4ca8">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_INITIAL_CONNECT_BACKOFF_SECONDS
+: <a class="el" href="subchannel_8c.html#ab2916ffabb6e97931795c0cb17d5b1a0">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_MIN_CONNECT_TIMEOUT_SECONDS
+: <a class="el" href="subchannel_8c.html#a4a297a5d3477460e802c804a945cfb4e">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_RECONNECT_BACKOFF_MULTIPLIER
+: <a class="el" href="subchannel_8c.html#ad1761b478eb46b24379e6d5a9edd30af">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_RECONNECT_JITTER
+: <a class="el" href="subchannel_8c.html#a9775a74d61f54cd0537630b9b7118802">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_RECONNECT_MAX_BACKOFF_SECONDS
+: <a class="el" href="subchannel_8c.html#ad021f6795743d8163fff68703ffb663b">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_REF
+: <a class="el" href="subchannel_8h.html#a7a3f5a07d6d6ca7864d0b571a2675d15">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_REF_EXTRA_ARGS
+: <a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_UNREF
+: <a class="el" href="subchannel_8h.html#accf1481a1fe9acf1537f665705a60d4c">subchannel.h</a>
+</li>
+<li>GRPC_SURFACE_TRACE_RETURNED_EVENT
+: <a class="el" href="surface__trace_8h.html#ab6bd5be00afe2369bd1b63e13ab6197d">surface_trace.h</a>
+</li>
+<li>GRPC_TCP_DEFAULT_READ_SLICE_SIZE
+: <a class="el" href="tcp__posix_8h.html#a1f91c3aec64a436d29051c8d415b1053">tcp_posix.h</a>
+</li>
+<li>GRPC_TIMER_BEGIN
+: <a class="el" href="timers_8h.html#abf4cfef22d1c79525994ba224ac13dba">timers.h</a>
+</li>
+<li>GRPC_TIMER_END
+: <a class="el" href="timers_8h.html#ada806da3afa32376e244dfeb65ec467b">timers.h</a>
+</li>
+<li>GRPC_TIMER_IMPORTANT_MARK
+: <a class="el" href="timers_8h.html#a4de2bf5918f608b72f3c426e4a43e7c8">timers.h</a>
+</li>
+<li>GRPC_TIMER_MARK
+: <a class="el" href="timers_8h.html#acafc06612d7b046547ed80c18d519608">timers.h</a>
+</li>
+<li>GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME
+: <a class="el" href="grpc__security_8h.html#aff82fdff9e7c40c4dd4bdc650e38e25a">grpc_security.h</a>
+</li>
+<li>GRPC_WAKEUP_FD_GET_READ_FD
+: <a class="el" href="wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff">wakeup_fd_posix.h</a>
+</li>
+<li>GRPC_WRITE_BUFFER_HINT
+: <a class="el" href="grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0">grpc.h</a>
+</li>
+<li>GRPC_WRITE_INTERNAL_COMPRESS
+: <a class="el" href="stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35">stream_op.h</a>
+</li>
+<li>GRPC_WRITE_INTERNAL_USED_MASK
+: <a class="el" href="stream__op_8h.html#a7acab698fedc01eca6138c3e30056ff1">stream_op.h</a>
+</li>
+<li>GRPC_WRITE_NO_COMPRESS
+: <a class="el" href="grpc_8h.html#ae09000181671f031ed0e319ed557da4e">grpc.h</a>
+</li>
+<li>GRPC_WRITE_USED_MASK
+: <a class="el" href="grpc_8h.html#a3317259e1098b2b6f49982d6997bbf6a">grpc.h</a>
+</li>
+<li>GRPC_X509_CN_PROPERTY_NAME
+: <a class="el" href="grpc__security_8h.html#afee5e0fade6e0af1954529f1f08afe0c">grpc_security.h</a>
+</li>
+<li>GRPC_X509_SAN_PROPERTY_NAME
+: <a class="el" href="grpc__security_8h.html#a1412421653b7999544296f56025a0f36">grpc_security.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_h.html b/doc/ref/core.internal/html/globals_defs_h.html
new file mode 100644
index 0000000000..6cc5ce5b2b
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_h.html
@@ -0,0 +1,139 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>HASH_FRAGMENT_1
+: <a class="el" href="stream__encoder_8c.html#a0551b7ff01539c9139e682053301b58b">stream_encoder.c</a>
+</li>
+<li>HASH_FRAGMENT_2
+: <a class="el" href="stream__encoder_8c.html#a00bb8310d47f7c0b6d5b9e86fdfbc043">stream_encoder.c</a>
+</li>
+<li>HASH_FRAGMENT_3
+: <a class="el" href="stream__encoder_8c.html#ac6a3339f7cdc67827f51d6f7162271fa">stream_encoder.c</a>
+</li>
+<li>HASH_FRAGMENT_4
+: <a class="el" href="stream__encoder_8c.html#a1aa06e441caa39deff8ee0dddaa18916">stream_encoder.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_i.html b/doc/ref/core.internal/html/globals_defs_i.html
new file mode 100644
index 0000000000..55c751ba24
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_i.html
@@ -0,0 +1,145 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>INITIAL_MDTAB_CAPACITY
+: <a class="el" href="metadata_8c.html#a79df755ba4db91d4b3ab5d375eb18364">metadata.c</a>
+</li>
+<li>INITIAL_STRTAB_CAPACITY
+: <a class="el" href="metadata_8c.html#a6e712d615b691c6a9f5daf410b8850ad">metadata.c</a>
+</li>
+<li>INTERNAL_STRING_REF
+: <a class="el" href="metadata_8c.html#a83513324a061c9ec72f186425ccdb78b">metadata.c</a>
+</li>
+<li>INTERNAL_STRING_UNREF
+: <a class="el" href="metadata_8c.html#a54692508d43c5445088e92d06a5665db">metadata.c</a>
+</li>
+<li>INVALID_ENTRY_INDEX
+: <a class="el" href="stack__lockfree_8c.html#a6c03a49143863f3e267ce5a21ac6121c">stack_lockfree.c</a>
+</li>
+<li>INVALID_HEAP_INDEX
+: <a class="el" href="alarm_8c.html#ab10c095adee8fff29f7d8e4209b70c66">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_l.html b/doc/ref/core.internal/html/globals_defs_l.html
new file mode 100644
index 0000000000..085cb02e18
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_l.html
@@ -0,0 +1,130 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>LOG2_NUM_SHARDS
+: <a class="el" href="alarm_8c.html#ae48da0bb5039d191e6de667c888624c1">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_m.html b/doc/ref/core.internal/html/globals_defs_m.html
new file mode 100644
index 0000000000..c190469efb
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_m.html
@@ -0,0 +1,164 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>MAX_ALARMS_PER_CHECK
+: <a class="el" href="alarm_8c.html#a035d5ac078d2c49bd8bc08a56eaeb7bb">alarm.c</a>
+</li>
+<li>MAX_BUFFER_LENGTH
+: <a class="el" href="connected__channel_8c.html#aa8a8ed5c9e057542ff818fde39a94f07">connected_channel.c</a>
+</li>
+<li>MAX_CLIENT_STREAM_ID
+: <a class="el" href="chttp2__transport_8c.html#afdde497df8d499ae838ff389ab262ab5">chttp2_transport.c</a>
+</li>
+<li>MAX_CONCURRENT_COMPLETIONS
+: <a class="el" href="call_8c.html#adc0473bd2ea598bc8b0d09c6f43b3a89">call.c</a>
+</li>
+<li>MAX_CREDENTIALS_METADATA_COUNT
+: <a class="el" href="client__auth__filter_8c.html#a0e5b323dfbc6ab0f070bf6c5a2a9be55">client_auth_filter.c</a>
+</li>
+<li>MAX_DECODER_SPACE_USAGE
+: <a class="el" href="stream__encoder_8c.html#a7216827b7f9b1ea6a0b108518cde0a7a">stream_encoder.c</a>
+</li>
+<li>MAX_FILTERS
+: <a class="el" href="channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2">channel_create.c</a>
+, <a class="el" href="secure__channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2">secure_channel_create.c</a>
+</li>
+<li>MAX_QUEUE_WINDOW_DURATION
+: <a class="el" href="alarm_8c.html#aa7820b33745be59861679298b76d9a95">alarm.c</a>
+</li>
+<li>MAX_RESOLVERS
+: <a class="el" href="resolver__registry_8c.html#af575a6a4adada94cfdb731c84e327ed2">resolver_registry.c</a>
+</li>
+<li>MAX_SEND_INITIAL_METADATA_COUNT
+: <a class="el" href="call_8c.html#ab0c91da8d11c6964aded3fbecff4a15c">call.c</a>
+</li>
+<li>MAX_WINDOW
+: <a class="el" href="chttp2__transport_8c.html#a33445af5cbee6560efd1a891e4c01067">chttp2_transport.c</a>
+</li>
+<li>MIN_QUEUE_WINDOW_DURATION
+: <a class="el" href="alarm_8c.html#a1998a9b10fbd17ad50ff85991aeaa645">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_n.html b/doc/ref/core.internal/html/globals_defs_n.html
new file mode 100644
index 0000000000..757b098c47
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_n.html
@@ -0,0 +1,133 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>NUM_CACHED_STATUS_ELEMS
+: <a class="el" href="channel_8c.html#a30ddfda40b473a077ff7c70a7687ddb1">channel.c</a>
+</li>
+<li>NUM_SHARDS
+: <a class="el" href="alarm_8c.html#abc8b3b06fc834d57a69ca6ed5e3dfe3e">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_o.html b/doc/ref/core.internal/html/globals_defs_o.html
new file mode 100644
index 0000000000..4c06d74e7c
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_o.html
@@ -0,0 +1,133 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>ONE_ON_ADD_PROBABILITY
+: <a class="el" href="stream__encoder_8c.html#ad7f6bdf9db2a15a5e00cf3a6825d9957">stream_encoder.c</a>
+</li>
+<li>OUTPUT_BLOCK_SIZE
+: <a class="el" href="message__compress_8c.html#a64fcbb2644c2b3d0dcdc23ac148dd553">message_compress.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_r.html b/doc/ref/core.internal/html/globals_defs_r.html
new file mode 100644
index 0000000000..f62ab46972
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_r.html
@@ -0,0 +1,151 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>REF_LOG
+: <a class="el" href="subchannel_8c.html#a12a25b2a728caf10ef93487e8a41896c">subchannel.c</a>
+</li>
+<li>REF_MD_LOCKED
+: <a class="el" href="metadata_8c.html#a5456b7d52304a8749ca71440bc7c2a0f">metadata.c</a>
+</li>
+<li>REF_PASS_ARGS
+: <a class="el" href="subchannel_8c.html#a8b6e7b7a1e9f2434b354c7bae2760ab0">subchannel.c</a>
+</li>
+<li>REF_TRANSPORT
+: <a class="el" href="chttp2__transport_8c.html#a14b095839f9792316e7aea2ab7a68bdc">chttp2_transport.c</a>
+</li>
+<li>REQSET_DONE
+: <a class="el" href="call_8c.html#afa1b821bc0571d94c462688e3deeeafd">call.c</a>
+</li>
+<li>REQSET_EMPTY
+: <a class="el" href="call_8c.html#a7810380d8811f64f6167a7427f22beb4">call.c</a>
+</li>
+<li>ROTL32
+: <a class="el" href="murmur__hash_8c.html#aff6ce4cae0564b039bbb4ef0cbdc0032">murmur_hash.c</a>
+</li>
+<li>ROUND_UP_TO_ALIGNMENT_SIZE
+: <a class="el" href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">channel_stack.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_s.html b/doc/ref/core.internal/html/globals_defs_s.html
new file mode 100644
index 0000000000..2420aa991b
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_s.html
@@ -0,0 +1,164 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>SERVER_FROM_CALL_ELEM
+: <a class="el" href="server_8c.html#ad74e7a97d516828e54c49eb3e4878da3">server.c</a>
+</li>
+<li>SHRINK_FULLNESS_FACTOR
+: <a class="el" href="alarm__heap_8c.html#ac5064e56882ef0a36524cae10ac800ce">alarm_heap.c</a>
+</li>
+<li>SHRINK_MIN_ELEMS
+: <a class="el" href="alarm__heap_8c.html#acea3d7e412eaa9246638bc218372f55e">alarm_heap.c</a>
+</li>
+<li>STAGING_BUFFER_SIZE
+: <a class="el" href="secure__endpoint_8c.html#a323532623f3183502482bb853c503353">secure_endpoint.c</a>
+</li>
+<li>STATUS_OFFSET
+: <a class="el" href="call_8c.html#ac3959778b8b4ee593c16fa33a06d844c">call.c</a>
+</li>
+<li>STREAM_FROM_GLOBAL
+: <a class="el" href="stream__lists_8c.html#ad226604f0f25167ab63b83fb504925ed">stream_lists.c</a>
+, <a class="el" href="chttp2__transport_8c.html#ad226604f0f25167ab63b83fb504925ed">chttp2_transport.c</a>
+</li>
+<li>STREAM_FROM_PARSING
+: <a class="el" href="stream__lists_8c.html#af36e6925c4b86e9bdea0abf8824d521e">stream_lists.c</a>
+</li>
+<li>STREAM_FROM_WRITING
+: <a class="el" href="stream__lists_8c.html#a168549253d875995f6454b6ac5f9250f">stream_lists.c</a>
+</li>
+<li>STRLEN_LIT
+: <a class="el" href="stream__encoder_8c.html#a4adf5996646225c1109095f57e5054c1">stream_encoder.c</a>
+</li>
+<li>SUBCHANNEL_CALL_TO_CALL_STACK
+: <a class="el" href="subchannel_8c.html#a6f8f2e93f13638c3344bed1c0a810a90">subchannel.c</a>
+</li>
+<li>SUBCHANNEL_REF_LOCKED
+: <a class="el" href="subchannel_8c.html#ad1c3bb13282f81c8384752ae3e2d74ad">subchannel.c</a>
+</li>
+<li>SUBCHANNEL_UNREF_LOCKED
+: <a class="el" href="subchannel_8c.html#ac827935703a637a3a74cb54936a49f25">subchannel.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_t.html b/doc/ref/core.internal/html/globals_defs_t.html
new file mode 100644
index 0000000000..098385dd18
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_t.html
@@ -0,0 +1,199 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>TIMEOUT_KEY
+: <a class="el" href="stream__encoder_8c.html#a730f13257408fd7a5a3d734f5399cba7">stream_encoder.c</a>
+</li>
+<li>TOP_BIT_OF_TYPE
+: <a class="el" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">time.c</a>
+</li>
+<li>TRANSPORT_FROM_GLOBAL
+: <a class="el" href="chttp2__transport_8c.html#a029ef12f8edec2cce810fc244777f39e">chttp2_transport.c</a>
+, <a class="el" href="stream__lists_8c.html#a029ef12f8edec2cce810fc244777f39e">stream_lists.c</a>
+</li>
+<li>TRANSPORT_FROM_PARSING
+: <a class="el" href="stream__lists_8c.html#a5d41409974a115e2721fe32cd1c1b8eb">stream_lists.c</a>
+, <a class="el" href="chttp2__transport_8c.html#a720ba3d4f39bd3a50eef94f3af02df26">chttp2_transport.c</a>
+</li>
+<li>TRANSPORT_FROM_WRITING
+: <a class="el" href="chttp2__transport_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba">chttp2_transport.c</a>
+, <a class="el" href="stream__lists_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba">stream_lists.c</a>
+</li>
+<li>TRANSPORT_STREAM_FROM_CALL_DATA
+: <a class="el" href="connected__channel_8c.html#a20fccb78f707f86985ab8dccc8f9ff68">connected_channel.c</a>
+</li>
+<li>TSI_CERTIFICATE_TYPE_PEER_PROPERTY
+: <a class="el" href="transport__security__interface_8h.html#ac1c4704b4f46d8db67be7d79cf9abee4">transport_security_interface.h</a>
+</li>
+<li>TSI_FAKE_CERTIFICATE_TYPE
+: <a class="el" href="fake__transport__security_8h.html#ae0392587ca3b2c370e2d0b23bd3567dc">fake_transport_security.h</a>
+</li>
+<li>TSI_FAKE_DEFAULT_FRAME_SIZE
+: <a class="el" href="fake__transport__security_8c.html#a5e80c442eaaca03f86cd1b2a1beea9f3">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_FRAME_HEADER_SIZE
+: <a class="el" href="fake__transport__security_8c.html#ad4e1e451d3d99c6805c489641d4934df">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_FRAME_INITIAL_ALLOCATED_SIZE
+: <a class="el" href="fake__transport__security_8c.html#a4faca44775d659e16993c11482a4a80e">fake_transport_security.c</a>
+</li>
+<li>tsi_handshaker_is_in_progress
+: <a class="el" href="transport__security__interface_8h.html#a08a4eb400e7769528cf47bf38542010c">transport_security_interface.h</a>
+</li>
+<li>TSI_OPENSSL_ALPN_SUPPORT
+: <a class="el" href="ssl__transport__security_8c.html#a6ddfac76c84308f6f7525adccea25b50">ssl_transport_security.c</a>
+</li>
+<li>TSI_SSL_ALPN_SELECTED_PROTOCOL
+: <a class="el" href="ssl__transport__security_8h.html#a7772b205a40f5d0e6bf613f666df70fa">ssl_transport_security.h</a>
+</li>
+<li>TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND
+: <a class="el" href="ssl__transport__security_8c.html#a57f67839c0d50a95afa6b14b8917b7ba">ssl_transport_security.c</a>
+</li>
+<li>TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND
+: <a class="el" href="ssl__transport__security_8c.html#afce1f5cc8a28bd1d4cea273bb2b5f5d8">ssl_transport_security.c</a>
+</li>
+<li>TSI_SSL_MAX_PROTECTION_OVERHEAD
+: <a class="el" href="ssl__transport__security_8c.html#ac62522a33798b7b5bb434e1b8e49974f">ssl_transport_security.c</a>
+</li>
+<li>TSI_X509_CERTIFICATE_TYPE
+: <a class="el" href="ssl__transport__security_8h.html#a394dce2eccd1a35e54ea94ed19b95a7c">ssl_transport_security.h</a>
+</li>
+<li>TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY
+: <a class="el" href="ssl__transport__security_8h.html#a64e0648b7d1eec9671f01aa79f508c0f">ssl_transport_security.h</a>
+</li>
+<li>TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY
+: <a class="el" href="ssl__transport__security_8h.html#a3015d52d16728b0e28f354217fbb6296">ssl_transport_security.h</a>
+</li>
+<li>TYPE_IS_SIGNED
+: <a class="el" href="time_8c.html#aee5df4784512f172739646babf8fa13d">time.c</a>
+</li>
+<li>TYPE_MAX
+: <a class="el" href="time_8c.html#a87353338032e1f56c958d981731f8378">time.c</a>
+</li>
+<li>TYPE_MIN
+: <a class="el" href="time_8c.html#ad5b4c36b3633abe2c68f8b4ab3c7de8c">time.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_defs_u.html b/doc/ref/core.internal/html/globals_defs_u.html
new file mode 100644
index 0000000000..835ef2b4fe
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_defs_u.html
@@ -0,0 +1,136 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_defs.html#index__"><span>_</span></a></li>
+ <li><a href="globals_defs_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_defs_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_defs_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_defs_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_defs_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_defs_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_defs_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_defs_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_defs_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_defs_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_defs_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_defs_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_defs_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_defs_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_defs_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="globals_defs_u.html#index_u"><span>u</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>UNBOUND_JSON_STRING_LENGTH
+: <a class="el" href="json__string_8c.html#a1cb2ee1031195d596402be8c2c7e8065">json_string.c</a>
+</li>
+<li>UNREF_LOG
+: <a class="el" href="subchannel_8c.html#a113001b9e3c0ff95ddc62508d3abddaa">subchannel.c</a>
+</li>
+<li>UNREF_TRANSPORT
+: <a class="el" href="chttp2__transport_8c.html#a2a872dae5a8d3799232cbae46e1ed133">chttp2_transport.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_e.html b/doc/ref/core.internal/html/globals_e.html
new file mode 100644
index 0000000000..06d33fd904
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_e.html
@@ -0,0 +1,142 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>ENTRY_ALIGNMENT_BITS
+: <a class="el" href="stack__lockfree_8c.html#a8644da45b827e108bca857053cbf48af">stack_lockfree.c</a>
+</li>
+<li>ERROR_HEADER
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea57e2b3994258d7216de08793daaa2b35">hpack_parser.c</a>
+</li>
+<li>event_sync_partitions
+: <a class="el" href="sync_8c.html#a0ed680fdb405e7195d9f14032851eebba036372fdae4f52140a8f27482b729753">sync.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_enum.html b/doc/ref/core.internal/html/globals_enum.html
new file mode 100644
index 0000000000..a190eb17b8
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_enum.html
@@ -0,0 +1,319 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li class="current"><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="#index_a"><span>a</span></a></li>
+ <li><a href="#index_b"><span>b</span></a></li>
+ <li><a href="#index_c"><span>c</span></a></li>
+ <li><a href="#index_f"><span>f</span></a></li>
+ <li><a href="#index_g"><span>g</span></a></li>
+ <li><a href="#index_i"><span>i</span></a></li>
+ <li><a href="#index_r"><span>r</span></a></li>
+ <li><a href="#index_s"><span>s</span></a></li>
+ <li><a href="#index_t"><span>t</span></a></li>
+ <li class="current"><a href="#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>argtype
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4">cmdline.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>binary_state
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2">hpack_parser.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>call_state
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">client_channel.c</a>
+, <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">server.c</a>
+</li>
+<li>callback_phase
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c">channel_connectivity.c</a>
+</li>
+<li>census_features
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8">census.h</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>first_byte_type
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918">hpack_parser.c</a>
+</li>
+<li>frame_type
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f">stream_encoder.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>gpr_clock_type
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">time.h</a>
+</li>
+<li>gpr_log_severity
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">log.h</a>
+</li>
+<li>grpc_arg_type
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc.h</a>
+</li>
+<li>grpc_byte_buffer_type
+: <a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">byte_buffer.h</a>
+</li>
+<li>grpc_call_error
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc.h</a>
+</li>
+<li>grpc_chttp2_deframe_transport_state
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">internal.h</a>
+</li>
+<li>grpc_chttp2_error_code
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_goaway_parse_state
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">frame_goaway.h</a>
+</li>
+<li>grpc_chttp2_invalid_value_behavior
+: <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_parse_error
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">frame.h</a>
+</li>
+<li>grpc_chttp2_send_closed
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">internal.h</a>
+</li>
+<li>grpc_chttp2_setting_id
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_setting_set
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad">internal.h</a>
+</li>
+<li>grpc_chttp2_settings_parse_state
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_stream_list_id
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539">internal.h</a>
+</li>
+<li>grpc_chttp2_stream_state
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">frame_data.h</a>
+</li>
+<li>grpc_chttp2_write_state
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">internal.h</a>
+</li>
+<li>grpc_completion_type
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc.h</a>
+</li>
+<li>grpc_compression_algorithm
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">compression.h</a>
+</li>
+<li>grpc_compression_level
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">compression.h</a>
+</li>
+<li>grpc_connectivity_state
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc.h</a>
+</li>
+<li>grpc_context_index
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">context.h</a>
+</li>
+<li>grpc_credentials_status
+: <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">credentials.h</a>
+</li>
+<li>grpc_dualstack_mode
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">socket_utils_posix.h</a>
+</li>
+<li>grpc_endpoint_cb_status
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">endpoint.h</a>
+</li>
+<li>grpc_endpoint_write_status
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">endpoint.h</a>
+</li>
+<li>grpc_httpcli_parser_state
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">parser.h</a>
+</li>
+<li>grpc_ioreq_op
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">call.h</a>
+</li>
+<li>grpc_json_reader_state
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">json_reader.h</a>
+</li>
+<li>grpc_json_reader_status
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">json_reader.h</a>
+</li>
+<li>grpc_json_type
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">json_common.h</a>
+</li>
+<li>grpc_jwt_verifier_status
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">jwt_verifier.h</a>
+</li>
+<li>grpc_op_type
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc.h</a>
+</li>
+<li>grpc_profiling_tags
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3">timers.h</a>
+</li>
+<li>grpc_security_status
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">security_connector.h</a>
+</li>
+<li>grpc_status_code
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">status.h</a>
+</li>
+<li>grpc_stream_op_code
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">stream_op.h</a>
+</li>
+<li>grpc_stream_state
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">transport.h</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>is_binary_header
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35ee">hpack_parser.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>read_state
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17">call.c</a>
+</li>
+<li>req_state
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17">call.c</a>
+</li>
+<li>requested_call_type
+: <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a">server.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>send_action
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819">call.c</a>
+</li>
+<li>status_source
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271">call.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>tsi_fake_handshake_message
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52">fake_transport_security.c</a>
+</li>
+<li>tsi_result
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">transport_security_interface.h</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>write_state
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688d">call.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval.html b/doc/ref/core.internal/html/globals_eval.html
new file mode 100644
index 0000000000..01c832803f
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval.html
@@ -0,0 +1,139 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>ACTIVATED
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d">server.c</a>
+</li>
+<li>ARGTYPE_BOOL
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4ad141b51bee7ccb14e0c83871f0e3ee0d">cmdline.c</a>
+</li>
+<li>ARGTYPE_INT
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4a620547b20bcf630ba7f4d727fdb22521">cmdline.c</a>
+</li>
+<li>ARGTYPE_STRING
+: <a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4a50a996a2423b2fd5397a14b362fa23ab">cmdline.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_b.html b/doc/ref/core.internal/html/globals_eval_b.html
new file mode 100644
index 0000000000..8b6d6ae7bf
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_b.html
@@ -0,0 +1,145 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>B64_BYTE0
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a500a293aa7eb4d4757a1f8c68e6130a2">hpack_parser.c</a>
+</li>
+<li>B64_BYTE1
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a55a85d993feb4d0602aa7321264b6803">hpack_parser.c</a>
+</li>
+<li>B64_BYTE2
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a67574c0700ab2dd5156af220443386d2">hpack_parser.c</a>
+</li>
+<li>B64_BYTE3
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2aabf8c05acae26139d5ba70316b749524">hpack_parser.c</a>
+</li>
+<li>BATCH_CALL
+: <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa38d2782a64b3bf4a845e9795b295b685">server.c</a>
+</li>
+<li>BINARY_HEADER
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea4940041097c06eed1076f5dc2de17d9a">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_c.html b/doc/ref/core.internal/html/globals_eval_c.html
new file mode 100644
index 0000000000..1982599bb1
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_c.html
@@ -0,0 +1,172 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li class="current"><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>CALL_ACTIVE
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9">client_channel.c</a>
+</li>
+<li>CALL_CANCELLED
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d">client_channel.c</a>
+</li>
+<li>CALL_CREATED
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_CALL
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_CONFIG
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_PICK
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad">client_channel.c</a>
+</li>
+<li>CALL_WAITING_FOR_SEND
+: <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c">client_channel.c</a>
+</li>
+<li>CALLED_BACK
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca7cf5434be93040e9946cc788465d3b3a">channel_connectivity.c</a>
+</li>
+<li>CALLING_BACK
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845cab5a94c295540046002de0f889519c275">channel_connectivity.c</a>
+</li>
+<li>CALLING_BACK_AND_FINISHED
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca4ed55db80fc1cf98cb8fc633fd59d68d">channel_connectivity.c</a>
+</li>
+<li>CENSUS_FEATURE_ALL
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c">census.h</a>
+</li>
+<li>CENSUS_FEATURE_CPU
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5">census.h</a>
+</li>
+<li>CENSUS_FEATURE_NONE
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab">census.h</a>
+</li>
+<li>CENSUS_FEATURE_STATS
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a">census.h</a>
+</li>
+<li>CENSUS_FEATURE_TRACING
+: <a class="el" href="census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718">census.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_d.html b/doc/ref/core.internal/html/globals_eval_d.html
new file mode 100644
index 0000000000..8fceba527a
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_d.html
@@ -0,0 +1,130 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>DATA
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa9d7d6f31868d66330397c967c4afd2d2">stream_encoder.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_e.html b/doc/ref/core.internal/html/globals_eval_e.html
new file mode 100644
index 0000000000..4b63de2738
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_e.html
@@ -0,0 +1,133 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>ERROR_HEADER
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea57e2b3994258d7216de08793daaa2b35">hpack_parser.c</a>
+</li>
+<li>event_sync_partitions
+: <a class="el" href="sync_8c.html#a0ed680fdb405e7195d9f14032851eebba036372fdae4f52140a8f27482b729753">sync.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_g.html b/doc/ref/core.internal/html/globals_eval_g.html
new file mode 100644
index 0000000000..2f30afb177
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_g.html
@@ -0,0 +1,955 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>GPR_CLOCK_MONOTONIC
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c">time.h</a>
+</li>
+<li>GPR_CLOCK_REALTIME
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">time.h</a>
+</li>
+<li>GPR_LOG_SEVERITY_DEBUG
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">log.h</a>
+</li>
+<li>GPR_LOG_SEVERITY_ERROR
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">log.h</a>
+</li>
+<li>GPR_LOG_SEVERITY_INFO
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">log.h</a>
+</li>
+<li>GPR_THD_JOINABLE
+: <a class="el" href="thd_8c.html#a0944a4353780132eeab7b06e3e42291da228d343354c0f2bb16c0fb1f79e71dbc">thd.c</a>
+</li>
+<li>GPR_TIMESPAN
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">time.h</a>
+</li>
+<li>GRPC_ACKED_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42">internal.h</a>
+</li>
+<li>GRPC_ARG_INTEGER
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689">grpc.h</a>
+</li>
+<li>GRPC_ARG_POINTER
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b">grpc.h</a>
+</li>
+<li>GRPC_ARG_STRING
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d">grpc.h</a>
+</li>
+<li>GRPC_BB_RAW
+: <a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636">byte_buffer.h</a>
+</li>
+<li>GRPC_CALL_ERROR
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_ALREADY_ACCEPTED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_ALREADY_FINISHED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_ALREADY_INVOKED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_INVALID_FLAGS
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_INVALID_METADATA
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_INVOKED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_ON_CLIENT
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_ON_SERVER
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_TOO_MANY_OPERATIONS
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454">grpc.h</a>
+</li>
+<li>GRPC_CALL_OK
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8">grpc.h</a>
+</li>
+<li>GRPC_CHANNEL_CONNECTING
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299">grpc.h</a>
+</li>
+<li>GRPC_CHANNEL_FATAL_FAILURE
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6">grpc.h</a>
+</li>
+<li>GRPC_CHANNEL_IDLE
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77">grpc.h</a>
+</li>
+<li>GRPC_CHANNEL_READY
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea">grpc.h</a>
+</li>
+<li>GRPC_CHANNEL_TRANSIENT_FAILURE
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6">grpc.h</a>
+</li>
+<li>GRPC_CHTTP2__ERROR_DO_NOT_USE
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CANCEL
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CLAMP_INVALID_VALUE
+: <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_COMPRESSION_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CONNECT_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CONNECTION_ERROR
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_0
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_1
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_2
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_3
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_4
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FRAME
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE
+: <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_ENHANCE_YOUR_CALM
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_FLOW_CONTROL_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_SIZE_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_DEBUG
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR0
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR1
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR2
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR3
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI0
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI1
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI2
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI3
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_INADEQUATE_SECURITY
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_INTERNAL_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_ALL_STREAMS
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_PARSING_SEEN
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WRITABLE
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WRITING
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WRITTEN
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_NO_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_NUM_SETTINGS
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_PARSE_OK
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_PROTOCOL_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_REFUSED_STREAM
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_ENABLE_PUSH
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_TIMEOUT
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_ID0
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_ID1
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL0
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL1
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL2
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL3
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_STREAM_CLOSED
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_STREAM_ERROR
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4">frame.h</a>
+</li>
+<li>GRPC_COMPRESS_ALGORITHMS_COUNT
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_DEFLATE
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_GZIP
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_COUNT
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_HIGH
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_LOW
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_MED
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_NONE
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_NONE
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8">compression.h</a>
+</li>
+<li>GRPC_CONTEXT_COUNT
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">context.h</a>
+</li>
+<li>GRPC_CONTEXT_SECURITY
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b">context.h</a>
+</li>
+<li>GRPC_CONTEXT_TRACING
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80">context.h</a>
+</li>
+<li>GRPC_CREDENTIALS_ERROR
+: <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_OK
+: <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15">credentials.h</a>
+</li>
+<li>GRPC_DONT_SEND_CLOSED
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c">internal.h</a>
+</li>
+<li>GRPC_DSMODE_DUALSTACK
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DSMODE_IPV4
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DSMODE_IPV6
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DSMODE_NONE
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_0
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_1
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_10
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_11
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_12
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_13
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_14
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_15
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_16
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_17
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_18
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_19
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_2
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_20
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_21
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_22
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_23
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_3
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_4
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_5
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_6
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_7
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_8
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_9
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_0
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_1
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_2
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_3
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_4
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_5
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_6
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_7
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_8
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a">internal.h</a>
+</li>
+<li>GRPC_DTS_FRAME
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586">internal.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_EOF
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_ERROR
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_OK
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_SHUTDOWN
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_WRITE_DONE
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_WRITE_ERROR
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_WRITE_PENDING
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09">endpoint.h</a>
+</li>
+<li>GRPC_HTTPCLI_BODY
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0">parser.h</a>
+</li>
+<li>GRPC_HTTPCLI_HEADERS
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8">parser.h</a>
+</li>
+<li>GRPC_HTTPCLI_INITIAL_RESPONSE
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a">parser.h</a>
+</li>
+<li>GRPC_IOREQ_OP_COUNT
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_CLOSE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_INITIAL_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_MESSAGE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_STATUS
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_STATUS_DETAILS
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_TRAILING_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_CLOSE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_INITIAL_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_MESSAGE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_STATUS
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_TRAILING_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522">call.h</a>
+</li>
+<li>GRPC_JSON_ARRAY
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877">json_common.h</a>
+</li>
+<li>GRPC_JSON_DONE
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7">json_reader.h</a>
+</li>
+<li>GRPC_JSON_EAGAIN
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0">json_reader.h</a>
+</li>
+<li>GRPC_JSON_FALSE
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe">json_common.h</a>
+</li>
+<li>GRPC_JSON_INTERNAL_ERROR
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8">json_reader.h</a>
+</li>
+<li>GRPC_JSON_NULL
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880">json_common.h</a>
+</li>
+<li>GRPC_JSON_NUMBER
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44">json_common.h</a>
+</li>
+<li>GRPC_JSON_OBJECT
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1">json_common.h</a>
+</li>
+<li>GRPC_JSON_PARSE_ERROR
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_CHAR_EAGAIN
+: <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_CHAR_EOF
+: <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_CHAR_ERROR
+: <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_ERROR
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_END
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_OBJECT_KEY_BEGIN
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_OBJECT_KEY_END
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_OBJECT_KEY_STRING
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U1
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U2
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U3
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U4
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_BEGIN
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_END
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_A
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_E
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_L
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_S
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NULL_L1
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NULL_L2
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NULL_U
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_DOT
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_E
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_EPM
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_ZERO
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_STRING
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_TRUE_E
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_TRUE_R
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_TRUE_U
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STRING
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79">json_common.h</a>
+</li>
+<li>GRPC_JSON_TOP_LEVEL
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63">json_common.h</a>
+</li>
+<li>GRPC_JSON_TRUE
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b">json_common.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_BAD_AUDIENCE
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_BAD_FORMAT
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_BAD_SIGNATURE
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_GENERIC_ERROR
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_OK
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f">jwt_verifier.h</a>
+</li>
+<li>GRPC_LOCAL_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0">internal.h</a>
+</li>
+<li>GRPC_NO_OP
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c">stream_op.h</a>
+</li>
+<li>GRPC_NUM_SETTING_SETS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">internal.h</a>
+</li>
+<li>GRPC_OP_BEGIN_MESSAGE
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31">stream_op.h</a>
+</li>
+<li>GRPC_OP_COMPLETE
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297">grpc.h</a>
+</li>
+<li>GRPC_OP_METADATA
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317">stream_op.h</a>
+</li>
+<li>GRPC_OP_RECV_CLOSE_ON_SERVER
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6">grpc.h</a>
+</li>
+<li>GRPC_OP_RECV_INITIAL_METADATA
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078">grpc.h</a>
+</li>
+<li>GRPC_OP_RECV_MESSAGE
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5">grpc.h</a>
+</li>
+<li>GRPC_OP_RECV_STATUS_ON_CLIENT
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_CLOSE_FROM_CLIENT
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_INITIAL_METADATA
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_MESSAGE
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_STATUS_FROM_SERVER
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64">grpc.h</a>
+</li>
+<li>GRPC_OP_SLICE
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6">stream_op.h</a>
+</li>
+<li>GRPC_PEER_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572">internal.h</a>
+</li>
+<li>GRPC_PTAG_CALL_ON_DONE_RECV
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a">timers.h</a>
+</li>
+<li>GRPC_PTAG_CPP_CALL_CREATED
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61">timers.h</a>
+</li>
+<li>GRPC_PTAG_CPP_PERFORM_OPS
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e">timers.h</a>
+</li>
+<li>GRPC_PTAG_HANDLE_READ
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129">timers.h</a>
+</li>
+<li>GRPC_PTAG_HTTP2_UNLOCK
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d">timers.h</a>
+</li>
+<li>GRPC_PTAG_HTTP2_UNLOCK_CLEANUP
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a">timers.h</a>
+</li>
+<li>GRPC_PTAG_IGNORE_THRESHOLD
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">timers.h</a>
+</li>
+<li>GRPC_PTAG_OTHER_BASE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b">timers.h</a>
+</li>
+<li>GRPC_PTAG_POLL_FINISHED
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627">timers.h</a>
+</li>
+<li>GRPC_PTAG_PROTO_DESERIALIZE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b">timers.h</a>
+</li>
+<li>GRPC_PTAG_PROTO_SERIALIZE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8">timers.h</a>
+</li>
+<li>GRPC_PTAG_RECVMSG
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77">timers.h</a>
+</li>
+<li>GRPC_PTAG_SENDMSG
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472">timers.h</a>
+</li>
+<li>GRPC_PTAG_TCP_CB_WRITE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1">timers.h</a>
+</li>
+<li>GRPC_PTAG_TCP_WRITE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f">timers.h</a>
+</li>
+<li>GRPC_QUEUE_SHUTDOWN
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5">grpc.h</a>
+</li>
+<li>GRPC_QUEUE_TIMEOUT
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6">grpc.h</a>
+</li>
+<li>GRPC_SECURITY_ERROR
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_OK
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_PENDING
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8">security_connector.h</a>
+</li>
+<li>GRPC_SEND_CLOSED
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02">internal.h</a>
+</li>
+<li>GRPC_SEND_CLOSED_WITH_RST_STREAM
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508">internal.h</a>
+</li>
+<li>GRPC_SENT_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5">internal.h</a>
+</li>
+<li>GRPC_STATUS__DO_NOT_USE
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96">status.h</a>
+</li>
+<li>GRPC_STATUS_ABORTED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9">status.h</a>
+</li>
+<li>GRPC_STATUS_ALREADY_EXISTS
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b">status.h</a>
+</li>
+<li>GRPC_STATUS_CANCELLED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038">status.h</a>
+</li>
+<li>GRPC_STATUS_DATA_LOSS
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7">status.h</a>
+</li>
+<li>GRPC_STATUS_DEADLINE_EXCEEDED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208">status.h</a>
+</li>
+<li>GRPC_STATUS_FAILED_PRECONDITION
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f">status.h</a>
+</li>
+<li>GRPC_STATUS_INTERNAL
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520">status.h</a>
+</li>
+<li>GRPC_STATUS_INVALID_ARGUMENT
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731">status.h</a>
+</li>
+<li>GRPC_STATUS_NOT_FOUND
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2">status.h</a>
+</li>
+<li>GRPC_STATUS_OK
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201">status.h</a>
+</li>
+<li>GRPC_STATUS_OUT_OF_RANGE
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b">status.h</a>
+</li>
+<li>GRPC_STATUS_PERMISSION_DENIED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4">status.h</a>
+</li>
+<li>GRPC_STATUS_RESOURCE_EXHAUSTED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9">status.h</a>
+</li>
+<li>GRPC_STATUS_UNAUTHENTICATED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb">status.h</a>
+</li>
+<li>GRPC_STATUS_UNAVAILABLE
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79">status.h</a>
+</li>
+<li>GRPC_STATUS_UNIMPLEMENTED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2">status.h</a>
+</li>
+<li>GRPC_STATUS_UNKNOWN
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08">status.h</a>
+</li>
+<li>GRPC_STREAM_CLOSED
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362">transport.h</a>
+</li>
+<li>GRPC_STREAM_OPEN
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76">transport.h</a>
+</li>
+<li>GRPC_STREAM_RECV_CLOSED
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7">transport.h</a>
+</li>
+<li>GRPC_STREAM_SEND_CLOSED
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a">transport.h</a>
+</li>
+<li>GRPC_WRITE_STATE_OPEN
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883">internal.h</a>
+</li>
+<li>GRPC_WRITE_STATE_QUEUED_CLOSE
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633">internal.h</a>
+</li>
+<li>GRPC_WRITE_STATE_SENT_CLOSE
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693">internal.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_h.html b/doc/ref/core.internal/html/globals_eval_h.html
new file mode 100644
index 0000000000..f74b406346
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_h.html
@@ -0,0 +1,130 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>HEADER
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa2e57918a09d25b07a664e505d50a97f6">stream_encoder.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_i.html b/doc/ref/core.internal/html/globals_eval_i.html
new file mode 100644
index 0000000000..902a26a2e3
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_i.html
@@ -0,0 +1,136 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>ILLEGAL
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a64b291c78f4399005e7e6d35274ac792">hpack_parser.c</a>
+</li>
+<li>INDEXED_FIELD
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acf55dbd5b43747a8de2b3475e776b2a9">hpack_parser.c</a>
+</li>
+<li>INDEXED_FIELD_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab2d9a731d5c6871093edecbab8ec1b8a">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_l.html b/doc/ref/core.internal/html/globals_eval_l.html
new file mode 100644
index 0000000000..ea032f804f
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_l.html
@@ -0,0 +1,154 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>LITHDR_INCIDX
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ad521ba7e26b2f29b70f24ebe99a7b6d4">hpack_parser.c</a>
+</li>
+<li>LITHDR_INCIDX_V
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acc616dbc2d6e6d99eb2879bc55a85e8c">hpack_parser.c</a>
+</li>
+<li>LITHDR_INCIDX_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918abc7a5a868dc1b4304662225ded589449">hpack_parser.c</a>
+</li>
+<li>LITHDR_NOTIDX
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a21b8279ee1879c395b696774c516b925">hpack_parser.c</a>
+</li>
+<li>LITHDR_NOTIDX_V
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9108c78104ce0a038a1ee76f9d56ebb4">hpack_parser.c</a>
+</li>
+<li>LITHDR_NOTIDX_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a17dbb369763076fa7714c613ca4778b4">hpack_parser.c</a>
+</li>
+<li>LITHDR_NVRIDX
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918aa4c98da3a42fad37a7eaaa74e76590e2">hpack_parser.c</a>
+</li>
+<li>LITHDR_NVRIDX_V
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab3fbe40c948e7abb4b587700f295c508">hpack_parser.c</a>
+</li>
+<li>LITHDR_NVRIDX_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9e86cc54448658713f683983a377d364">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_m.html b/doc/ref/core.internal/html/globals_eval_m.html
new file mode 100644
index 0000000000..106bb7beac
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_m.html
@@ -0,0 +1,133 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>MAX_TBL_SIZE
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a01c9e4f4b7e8c618841fab7c6fab28d8">hpack_parser.c</a>
+</li>
+<li>MAX_TBL_SIZE_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918adb841f9eb9a97d6b2cbcdbc72ecceca4">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_n.html b/doc/ref/core.internal/html/globals_eval_n.html
new file mode 100644
index 0000000000..f6d92a8757
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_n.html
@@ -0,0 +1,136 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>NONE
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fac157bdf0b85a40d2619cbc8bc1ae5fe2">stream_encoder.c</a>
+</li>
+<li>NOT_BINARY
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a36e0cd08af8b9cec8a5ae17c6a5c5124">hpack_parser.c</a>
+</li>
+<li>NOT_STARTED
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5">server.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_p.html b/doc/ref/core.internal/html/globals_eval_p.html
new file mode 100644
index 0000000000..e1a900c1dd
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_p.html
@@ -0,0 +1,133 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PENDING
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73">server.c</a>
+</li>
+<li>PLAINTEXT_HEADER
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea6b3fea68a44cbdbcd96fbdcf35d98a4c">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_r.html b/doc/ref/core.internal/html/globals_eval_r.html
new file mode 100644
index 0000000000..93b3a84bcd
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_r.html
@@ -0,0 +1,151 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>READ_STATE_GOT_INITIAL_METADATA
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a37370f960213dc0f115eb8495e038b2a">call.c</a>
+</li>
+<li>READ_STATE_INITIAL
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17ad2197f646af67a6d937754c3a1417439">call.c</a>
+</li>
+<li>READ_STATE_READ_CLOSED
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a9c7de87cb383873b75a6de98df2dc445">call.c</a>
+</li>
+<li>READ_STATE_STREAM_CLOSED
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17add056921b7a5dd24d85db716da87594a">call.c</a>
+</li>
+<li>REGISTERED_CALL
+: <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa969f2119db66590473c2fa7f00e21c5a">server.c</a>
+</li>
+<li>REQ_DONE
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a9156fc9ac04c64171f05a5692a1356a9">call.c</a>
+</li>
+<li>REQ_INITIAL
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a6268d672744bde6005590a30c8189779">call.c</a>
+</li>
+<li>REQ_READY
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a99044b02beb639fe667b1a5fcae61a96">call.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_s.html b/doc/ref/core.internal/html/globals_eval_s.html
new file mode 100644
index 0000000000..e51528f174
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_s.html
@@ -0,0 +1,166 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>SEND_BUFFERED_INITIAL_METADATA
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819aa0eea39729a5b7c862262626fbe3d352">call.c</a>
+</li>
+<li>SEND_BUFFERED_MESSAGE
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819ad0b19b54eb40a63af9f7d957ff717f6e">call.c</a>
+</li>
+<li>SEND_FINISH
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819addfb3ce4bfcd50ee7ec74608fb32f8ef">call.c</a>
+</li>
+<li>SEND_INITIAL_METADATA
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a7045eff04495ab507242e5da11bcb4ff">call.c</a>
+</li>
+<li>SEND_MESSAGE
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a5def54f3ec39f74661e1614669603d71">call.c</a>
+</li>
+<li>SEND_NOTHING
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819ad40596b21bcebc4654bb8da5c7469b01">call.c</a>
+</li>
+<li>SEND_TRAILING_METADATA_AND_FINISH
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a69a25d71b99a99c66c39696b038aa486">call.c</a>
+</li>
+<li>STATUS_FROM_API_OVERRIDE
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271afd2f639169b914143f3b412ed1a2ef00">call.c</a>
+</li>
+<li>STATUS_FROM_CORE
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a48a145dfa9c97761d84d36131d27a72e">call.c</a>
+</li>
+<li>STATUS_FROM_SERVER_STATUS
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271aad4663967ed2d5b74e875954573b5c64">call.c</a>
+</li>
+<li>STATUS_FROM_WIRE
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a825b6688b57f66bdb07fef664aa8d569">call.c</a>
+</li>
+<li>STATUS_SOURCE_COUNT
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22">call.c</a>
+</li>
+<li>STREAM_LIST_COUNT
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">internal.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_t.html b/doc/ref/core.internal/html/globals_eval_t.html
new file mode 100644
index 0000000000..dfbad64431
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_t.html
@@ -0,0 +1,181 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>TSI_DATA_CORRUPTED
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54">transport_security_interface.h</a>
+</li>
+<li>TSI_FAILED_PRECONDITION
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe">transport_security_interface.h</a>
+</li>
+<li>TSI_FAKE_CLIENT_FINISHED
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a8449ebdb0b21fe666efe134d8eb5af74">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_CLIENT_INIT
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a3eef9f8827f4892e807c2b0e1a9187f3">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_HANDSHAKE_MESSAGE_MAX
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52adf08f2bf334a78ccee66b203a08b6e7b">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_SERVER_FINISHED
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52abf558a770548cdab6e4716e7f30ac641">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_SERVER_INIT
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a062ff4e0c7cb1b8894dbd5d633f4e5bb">fake_transport_security.c</a>
+</li>
+<li>TSI_HANDSHAKE_IN_PROGRESS
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">transport_security_interface.h</a>
+</li>
+<li>TSI_INCOMPLETE_DATA
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e">transport_security_interface.h</a>
+</li>
+<li>TSI_INTERNAL_ERROR
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34">transport_security_interface.h</a>
+</li>
+<li>TSI_INVALID_ARGUMENT
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada">transport_security_interface.h</a>
+</li>
+<li>TSI_NOT_FOUND
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6">transport_security_interface.h</a>
+</li>
+<li>TSI_OK
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d">transport_security_interface.h</a>
+</li>
+<li>TSI_OUT_OF_RESOURCES
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519">transport_security_interface.h</a>
+</li>
+<li>TSI_PERMISSION_DENIED
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906">transport_security_interface.h</a>
+</li>
+<li>TSI_PROTOCOL_FAILURE
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a">transport_security_interface.h</a>
+</li>
+<li>TSI_UNIMPLEMENTED
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e">transport_security_interface.h</a>
+</li>
+<li>TSI_UNKNOWN_ERROR
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe">transport_security_interface.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_w.html b/doc/ref/core.internal/html/globals_eval_w.html
new file mode 100644
index 0000000000..9060349bb9
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_w.html
@@ -0,0 +1,139 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>WAITING
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca757971c0bc5a1972d5f1b1be2c0e2087">channel_connectivity.c</a>
+</li>
+<li>WRITE_STATE_INITIAL
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688da18e6209a49059c72ae1a0671fbe729f3">call.c</a>
+</li>
+<li>WRITE_STATE_STARTED
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688da26c7fbe66a37088b9bc8f34edd4e2634">call.c</a>
+</li>
+<li>WRITE_STATE_WRITE_CLOSED
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688daa6f0a8cbb946569f2f609e500abbbff4">call.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_eval_z.html b/doc/ref/core.internal/html/globals_eval_z.html
new file mode 100644
index 0000000000..5afbda4302
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_eval_z.html
@@ -0,0 +1,130 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_eval.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_eval_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_eval_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_eval_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_eval_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_eval_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_eval_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_eval_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_eval_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_eval_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_eval_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_eval_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_eval_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_eval_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_eval_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_eval_w.html#index_w"><span>w</span></a></li>
+ <li class="current"><a href="globals_eval_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
+<li>ZOMBIED
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512">server.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_f.html b/doc/ref/core.internal/html/globals_f.html
new file mode 100644
index 0000000000..e6b8c557af
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_f.html
@@ -0,0 +1,145 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>first_byte_type
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918">hpack_parser.c</a>
+</li>
+<li>FMIX32
+: <a class="el" href="murmur__hash_8c.html#a35851ba6b08c118345278effc46695e6">murmur_hash.c</a>
+</li>
+<li>frame_type
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f">stream_encoder.c</a>
+</li>
+<li>FWD_DEBUG_ARGS
+: <a class="el" href="metadata_8c.html#a3cfab2da250dee51694faff7226974a6">metadata.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_func.html b/doc/ref/core.internal/html/globals_func.html
new file mode 100644
index 0000000000..d9d8068035
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_func.html
@@ -0,0 +1,154 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="globals_func.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_func_v.html#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>census_context_deserialize()
+: <a class="el" href="census_8h.html#ad9daab242b41571299ac5b3bca71fc0d">census.h</a>
+, <a class="el" href="context_8c.html#ad9daab242b41571299ac5b3bca71fc0d">context.c</a>
+</li>
+<li>census_context_destroy()
+: <a class="el" href="context_8c.html#a5bfcd1edc546eeacf111c3316ae7785d">context.c</a>
+, <a class="el" href="census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d">census.h</a>
+</li>
+<li>census_context_serialize()
+: <a class="el" href="census_8h.html#ad9a7d3170ecf720e1b22a4f255605748">census.h</a>
+, <a class="el" href="context_8c.html#ad9a7d3170ecf720e1b22a4f255605748">context.c</a>
+</li>
+<li>census_enabled()
+: <a class="el" href="initialize_8c.html#a742616973e78aaf969389cea20feea9f">initialize.c</a>
+, <a class="el" href="census_8h.html#a742616973e78aaf969389cea20feea9f">census.h</a>
+</li>
+<li>census_initialize()
+: <a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6">census.h</a>
+, <a class="el" href="initialize_8c.html#a4cea92157f3de215724f6bf4aeaee1b6">initialize.c</a>
+</li>
+<li>census_record_stat()
+: <a class="el" href="census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">census.h</a>
+, <a class="el" href="record__stat_8c.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">record_stat.c</a>
+</li>
+<li>census_shutdown()
+: <a class="el" href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census.h</a>
+, <a class="el" href="initialize_8c.html#aa792b067548ecdd987d560b492c83d85">initialize.c</a>
+</li>
+<li>census_supported()
+: <a class="el" href="initialize_8c.html#ad5f627a64ac4febbc61d2b89801d40e9">initialize.c</a>
+, <a class="el" href="census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9">census.h</a>
+</li>
+<li>compress_inner()
+: <a class="el" href="message__compress_8c.html#a703e3d8f4ace9e8b102552c527b879d8">message_compress.c</a>
+</li>
+<li>compute_and_encode_signature()
+: <a class="el" href="json__token_8c.html#a08e7b0b2b3e6352e92cc7ae87328a480">json_token.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_func_g.html b/doc/ref/core.internal/html/globals_func_g.html
new file mode 100644
index 0000000000..0bfa4b6574
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_func_g.html
@@ -0,0 +1,3085 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_func.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_func_v.html#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>gpr_asprintf()
+: <a class="el" href="string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0">string_util.h</a>
+</li>
+<li>gpr_cancellable_cancel()
+: <a class="el" href="sync_8h.html#a895fb73161d2dd1fa19be10d5395001c">sync.h</a>
+, <a class="el" href="cancellable_8c.html#a895fb73161d2dd1fa19be10d5395001c">cancellable.c</a>
+</li>
+<li>gpr_cancellable_destroy()
+: <a class="el" href="sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338">sync.h</a>
+, <a class="el" href="cancellable_8c.html#aa82b7172b992bd33bd6fd4b4dc89e338">cancellable.c</a>
+</li>
+<li>gpr_cancellable_init()
+: <a class="el" href="sync_8h.html#aec0b0e9b9f084550cdec300da1f31add">sync.h</a>
+, <a class="el" href="cancellable_8c.html#aec0b0e9b9f084550cdec300da1f31add">cancellable.c</a>
+</li>
+<li>gpr_cancellable_is_cancelled()
+: <a class="el" href="sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b">sync.h</a>
+, <a class="el" href="cancellable_8c.html#a1e53047443e5eb1f9895be0c90bc790b">cancellable.c</a>
+</li>
+<li>gpr_cmdline_add_flag()
+: <a class="el" href="cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#ac5ecfdfc605896c29df846b1e268045e">cmdline.c</a>
+</li>
+<li>gpr_cmdline_add_int()
+: <a class="el" href="cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a0fc8cd330751e9876e8635189a1bc10f">cmdline.c</a>
+</li>
+<li>gpr_cmdline_add_string()
+: <a class="el" href="cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a34568676c089f3284dc8f7d8d706b1d3">cmdline.c</a>
+</li>
+<li>gpr_cmdline_create()
+: <a class="el" href="cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a608f6fbc4edfb4d2c18e3c0660fd8773">cmdline.c</a>
+</li>
+<li>gpr_cmdline_destroy()
+: <a class="el" href="cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a018f826ce313b02d2773ef97b8df5f98">cmdline.c</a>
+</li>
+<li>gpr_cmdline_on_extra_arg()
+: <a class="el" href="cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#afcf023a5eb082034a650a0f0177d1fe9">cmdline.c</a>
+</li>
+<li>gpr_cmdline_parse()
+: <a class="el" href="cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">cmdline.c</a>
+</li>
+<li>gpr_cmdline_usage_string()
+: <a class="el" href="cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a4eac81d047bdc6e679079309bf60f030">cmdline.c</a>
+</li>
+<li>gpr_convert_clock_type()
+: <a class="el" href="time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74">time.h</a>
+, <a class="el" href="time_8c.html#ab265219dd3038a1e89ded09033bada5e">time.c</a>
+</li>
+<li>gpr_cpu_current_cpu()
+: <a class="el" href="cpu_8h.html#ad713326192eea685047b742f1da87c1d">cpu.h</a>
+</li>
+<li>gpr_cpu_num_cores()
+: <a class="el" href="cpu_8h.html#abfe660c6872b008de80de5b39ac2538d">cpu.h</a>
+</li>
+<li>gpr_cv_broadcast()
+: <a class="el" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">sync.h</a>
+</li>
+<li>gpr_cv_cancellable_wait()
+: <a class="el" href="cancellable_8c.html#a5f1df649a9885ff2354dd4ce611017d9">cancellable.c</a>
+, <a class="el" href="sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9">sync.h</a>
+</li>
+<li>gpr_cv_destroy()
+: <a class="el" href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">sync.h</a>
+</li>
+<li>gpr_cv_init()
+: <a class="el" href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">sync.h</a>
+</li>
+<li>gpr_cv_signal()
+: <a class="el" href="sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f">sync.h</a>
+</li>
+<li>gpr_cv_wait()
+: <a class="el" href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">sync.h</a>
+</li>
+<li>gpr_default_log()
+: <a class="el" href="log_8c.html#a620ef16728107bedfa4188786f901ff9">log.c</a>
+</li>
+<li>gpr_dump()
+: <a class="el" href="string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1">string.h</a>
+, <a class="el" href="string_8c.html#a5b9ee77c9f03764e72d7b91a64ef86f1">string.c</a>
+</li>
+<li>gpr_dump_slice()
+: <a class="el" href="string_8h.html#a77bcdd897064702d16e7aaaea2e0e259">string.h</a>
+, <a class="el" href="string_8c.html#a008e053cd53efcf2f606b7414c22ea95">string.c</a>
+</li>
+<li>gpr_empty_slice()
+: <a class="el" href="slice_8h.html#a1a8906400c956fb8c508326a072b0662">slice.h</a>
+, <a class="el" href="slice_8c.html#a1a8906400c956fb8c508326a072b0662">slice.c</a>
+</li>
+<li>gpr_event_cancellable_wait()
+: <a class="el" href="sync_8h.html#ae048c7e762b723821e35a07fd0d85e22">sync.h</a>
+, <a class="el" href="sync_8c.html#ae048c7e762b723821e35a07fd0d85e22">sync.c</a>
+</li>
+<li>gpr_event_get()
+: <a class="el" href="sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161">sync.h</a>
+, <a class="el" href="sync_8c.html#ac0a2305d9e6575cc5a3d92bc3f12c161">sync.c</a>
+</li>
+<li>gpr_event_init()
+: <a class="el" href="sync_8h.html#a93f37cd27964fda51acd4cd8e6737922">sync.h</a>
+, <a class="el" href="sync_8c.html#a93f37cd27964fda51acd4cd8e6737922">sync.c</a>
+</li>
+<li>gpr_event_set()
+: <a class="el" href="sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd">sync.h</a>
+, <a class="el" href="sync_8c.html#a1b1d014640e00512f6789dacc4ff88bd">sync.c</a>
+</li>
+<li>gpr_event_wait()
+: <a class="el" href="sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7">sync.h</a>
+, <a class="el" href="sync_8c.html#a01d442a76ff77f64d9f898b22ea33db7">sync.c</a>
+</li>
+<li>gpr_format_message()
+: <a class="el" href="log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536">log_win32.h</a>
+</li>
+<li>gpr_free()
+: <a class="el" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">alloc.h</a>
+, <a class="el" href="alloc_8c.html#abb8ce294adb033ac54e7a2e28b9bdac6">alloc.c</a>
+</li>
+<li>gpr_free_aligned()
+: <a class="el" href="alloc_8h.html#af9b603aefd33752e1b473856af77cbc9">alloc.h</a>
+, <a class="el" href="alloc_8c.html#af9b603aefd33752e1b473856af77cbc9">alloc.c</a>
+</li>
+<li>gpr_getenv()
+: <a class="el" href="env_8h.html#a56b20a68a421e585a14b92cb9999eafb">env.h</a>
+</li>
+<li>gpr_histogram_add()
+: <a class="el" href="histogram_8h.html#a63815a52b0236626a30480915ff51847">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a63815a52b0236626a30480915ff51847">histogram.c</a>
+</li>
+<li>gpr_histogram_count()
+: <a class="el" href="histogram_8h.html#a242b0541ee25271812d867d8f2734255">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a9789e9d2bfe80302771cb7037ff67109">histogram.c</a>
+</li>
+<li>gpr_histogram_create()
+: <a class="el" href="histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a5da9d3dac4262c5ae1e974a649edbd5c">histogram.c</a>
+</li>
+<li>gpr_histogram_destroy()
+: <a class="el" href="histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a7411a760aa075c1c27eeb9249d951c6c">histogram.c</a>
+</li>
+<li>gpr_histogram_get_contents()
+: <a class="el" href="histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4">histogram.h</a>
+, <a class="el" href="histogram_8c.html#adcd82f9ac3a24d76fa43d6ee38cd03d9">histogram.c</a>
+</li>
+<li>gpr_histogram_maximum()
+: <a class="el" href="histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb">histogram.h</a>
+, <a class="el" href="histogram_8c.html#aede32c052f8cfb6c645773dc02abb269">histogram.c</a>
+</li>
+<li>gpr_histogram_mean()
+: <a class="el" href="histogram_8h.html#a14d68ff71978bda93a07d019d993d83c">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a5fe371014a644b04cb7a3cc10d0c4d54">histogram.c</a>
+</li>
+<li>gpr_histogram_merge()
+: <a class="el" href="histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a41caac8747588e75cf5fed974fcd90f2">histogram.c</a>
+</li>
+<li>gpr_histogram_merge_contents()
+: <a class="el" href="histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a4092227c6ba42490fd0311f5f8223e73">histogram.c</a>
+</li>
+<li>gpr_histogram_minimum()
+: <a class="el" href="histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a02493e2e022e463dcaf0738cc2f57e9e">histogram.c</a>
+</li>
+<li>gpr_histogram_percentile()
+: <a class="el" href="histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a29c6f43aed5d521d17bf7677b2fbee39">histogram.c</a>
+</li>
+<li>gpr_histogram_stddev()
+: <a class="el" href="histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a36846d8c0ae93fa49fb4a1d07d8a2872">histogram.c</a>
+</li>
+<li>gpr_histogram_sum()
+: <a class="el" href="histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a6f5945872847d0d3e460181bb11c8414">histogram.c</a>
+</li>
+<li>gpr_histogram_sum_of_squares()
+: <a class="el" href="histogram_8h.html#a5788652eb5350afcc534f563fd0265d3">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a651cd46647b768e4c7ffceb20d4ac523">histogram.c</a>
+</li>
+<li>gpr_histogram_variance()
+: <a class="el" href="histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a36df07c41d7d9e92e2b7cfce5cba2083">histogram.c</a>
+</li>
+<li>gpr_inf_future()
+: <a class="el" href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">time.h</a>
+, <a class="el" href="time_8c.html#a9324a2b33d5d7686fb14714c59ff026d">time.c</a>
+</li>
+<li>gpr_inf_past()
+: <a class="el" href="time_8h.html#abd2eba8066648fe0d94146d8310b4283">time.h</a>
+, <a class="el" href="time_8c.html#abd2eba8066648fe0d94146d8310b4283">time.c</a>
+</li>
+<li>gpr_join_host_port()
+: <a class="el" href="host__port_8h.html#a75d6ea0faeed039dc132873afce91508">host_port.h</a>
+, <a class="el" href="host__port_8c.html#a75d6ea0faeed039dc132873afce91508">host_port.c</a>
+</li>
+<li>gpr_load_file()
+: <a class="el" href="file_8h.html#aaad6ffe6949461096a99c7d2e8890c59">file.h</a>
+, <a class="el" href="file_8c.html#aaad6ffe6949461096a99c7d2e8890c59">file.c</a>
+</li>
+<li>gpr_log()
+: <a class="el" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">log.h</a>
+</li>
+<li>gpr_log_message()
+: <a class="el" href="log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61">log.h</a>
+, <a class="el" href="log_8c.html#a7a3d59528754f8fbcfe54f6f8a72ec61">log.c</a>
+</li>
+<li>gpr_log_severity_string()
+: <a class="el" href="log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb">log.h</a>
+, <a class="el" href="log_8c.html#a3badccbc5ec4c725eadbc07b8e5706eb">log.c</a>
+</li>
+<li>gpr_ltoa()
+: <a class="el" href="string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24">string.h</a>
+, <a class="el" href="string_8c.html#aa6aa8a10c07a02550542c920a6b1f5f6">string.c</a>
+</li>
+<li>gpr_malloc()
+: <a class="el" href="alloc_8h.html#af5896bb446b6179f35651730357149bb">alloc.h</a>
+, <a class="el" href="alloc_8c.html#af5896bb446b6179f35651730357149bb">alloc.c</a>
+</li>
+<li>gpr_malloc_aligned()
+: <a class="el" href="alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4">alloc.h</a>
+, <a class="el" href="alloc_8c.html#a73551a6249ae9b0a73ad75733c67ead4">alloc.c</a>
+</li>
+<li>gpr_mu_destroy()
+: <a class="el" href="sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e">sync.h</a>
+</li>
+<li>gpr_mu_init()
+: <a class="el" href="sync_8h.html#a16694f755266c254390b041a0f069094">sync.h</a>
+</li>
+<li>gpr_mu_lock()
+: <a class="el" href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">sync.h</a>
+</li>
+<li>gpr_mu_trylock()
+: <a class="el" href="sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777">sync.h</a>
+</li>
+<li>gpr_mu_unlock()
+: <a class="el" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">sync.h</a>
+</li>
+<li>gpr_murmur_hash3()
+: <a class="el" href="murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0">murmur_hash.h</a>
+, <a class="el" href="murmur__hash_8c.html#afd4a38ba55dc020a76c1ec09a4f626d0">murmur_hash.c</a>
+</li>
+<li>gpr_now()
+: <a class="el" href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">time.h</a>
+</li>
+<li>gpr_once_init()
+: <a class="el" href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">sync.h</a>
+</li>
+<li>gpr_parse_bytes_to_uint32()
+: <a class="el" href="string_8h.html#a753cd4bfe9add8476a2797904c4c68c7">string.h</a>
+, <a class="el" href="string_8c.html#ad68355bffdcb8c7f69fc908e60ab9da6">string.c</a>
+</li>
+<li>gpr_realloc()
+: <a class="el" href="alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91">alloc.h</a>
+, <a class="el" href="alloc_8c.html#a25d9a067b093e9c76dbbd77995b1bc91">alloc.c</a>
+</li>
+<li>gpr_ref()
+: <a class="el" href="sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571">sync.h</a>
+, <a class="el" href="sync_8c.html#ac0e52c6bfc7a04ba8a269f3227104571">sync.c</a>
+</li>
+<li>gpr_ref_init()
+: <a class="el" href="sync_8h.html#a235584f36572b5410b042ee63cb0740b">sync.h</a>
+, <a class="el" href="sync_8c.html#a235584f36572b5410b042ee63cb0740b">sync.c</a>
+</li>
+<li>gpr_refn()
+: <a class="el" href="sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25">sync.h</a>
+, <a class="el" href="sync_8c.html#a516e26b66b1aa53fba8f5f52b249cb25">sync.c</a>
+</li>
+<li>gpr_reverse_bytes()
+: <a class="el" href="string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9">string.h</a>
+, <a class="el" href="string_8c.html#ac61f7fa80be757db2d5457e3fe21ffe9">string.c</a>
+</li>
+<li>gpr_set_log_function()
+: <a class="el" href="log_8h.html#a75771a41e3bb2831df8043a57de05330">log.h</a>
+, <a class="el" href="log_8c.html#a4a4590f04f5e003b740b7688014b7be5">log.c</a>
+</li>
+<li>gpr_setenv()
+: <a class="el" href="env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3">env.h</a>
+</li>
+<li>gpr_sleep_until()
+: <a class="el" href="time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7">time.h</a>
+</li>
+<li>gpr_slice_buffer_add()
+: <a class="el" href="slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#ae202c0235646241cf95ffbb2479bada9">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_add_indexed()
+: <a class="el" href="slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a31bc820cee4aae1904d67a9d81fd83b3">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_addn()
+: <a class="el" href="slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#af58c3edcfaf90b364e3977e3bb423e3f">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_destroy()
+: <a class="el" href="slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a60c8b437918c3a81651b5f9a892f6399">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_init()
+: <a class="el" href="slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#aab5ed508480703c7b856e92ef6d7e4c8">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_move_into()
+: <a class="el" href="slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a0289912040151750bbee19ba632a88f1">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_pop()
+: <a class="el" href="slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#ae3bd1bc560aad5b69a6ef0b09286cc79">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_reset_and_unref()
+: <a class="el" href="slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#aa2819a201e9dcf62e31a6dbfc6fe3010">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_swap()
+: <a class="el" href="slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a672b80e16cdabf26c7b558a54edfcd2d">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_tiny_add()
+: <a class="el" href="slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#ae5498f14d7b008d134a3ad32935df4ac">slice_buffer.c</a>
+</li>
+<li>gpr_slice_cmp()
+: <a class="el" href="slice_8h.html#add3c8736c46bea7517991f178c82ba3c">slice.h</a>
+, <a class="el" href="slice_8c.html#add3c8736c46bea7517991f178c82ba3c">slice.c</a>
+</li>
+<li>gpr_slice_from_copied_buffer()
+: <a class="el" href="slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e">slice.h</a>
+, <a class="el" href="slice_8c.html#a54af06d0bea05fa416a85402e3f0d3b4">slice.c</a>
+</li>
+<li>gpr_slice_from_copied_string()
+: <a class="el" href="slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b">slice.h</a>
+, <a class="el" href="slice_8c.html#adf4df32e55b1b09d3f11c39447dcc68b">slice.c</a>
+</li>
+<li>gpr_slice_malloc()
+: <a class="el" href="slice_8h.html#ab57463740ccedc00b50721dce66ebd7b">slice.h</a>
+, <a class="el" href="slice_8c.html#ab57463740ccedc00b50721dce66ebd7b">slice.c</a>
+</li>
+<li>gpr_slice_new()
+: <a class="el" href="slice_8h.html#aea43587a11bfe2e06fb8532035229bb2">slice.h</a>
+, <a class="el" href="slice_8c.html#aea43587a11bfe2e06fb8532035229bb2">slice.c</a>
+</li>
+<li>gpr_slice_new_with_len()
+: <a class="el" href="slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812">slice.h</a>
+, <a class="el" href="slice_8c.html#affd1fef2ffaca67e0b2e7b60923da812">slice.c</a>
+</li>
+<li>gpr_slice_ref()
+: <a class="el" href="slice_8h.html#ad28a2bcca348046cbe660a44180e75ca">slice.h</a>
+, <a class="el" href="slice_8c.html#aa439f1ee94ab61e6ff17647940d29582">slice.c</a>
+</li>
+<li>gpr_slice_split()
+: <a class="el" href="string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">string.h</a>
+, <a class="el" href="string_8c.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">string.c</a>
+</li>
+<li>gpr_slice_split_head()
+: <a class="el" href="slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24">slice.h</a>
+, <a class="el" href="slice_8c.html#a15ea61593682d41ef435b9f7fa44a604">slice.c</a>
+</li>
+<li>gpr_slice_split_tail()
+: <a class="el" href="slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e">slice.h</a>
+, <a class="el" href="slice_8c.html#af592ef63bc65829371d4dacaa4f5eef1">slice.c</a>
+</li>
+<li>gpr_slice_str_cmp()
+: <a class="el" href="slice_8h.html#aef752203db50c932010a74c6845872c2">slice.h</a>
+, <a class="el" href="slice_8c.html#aef752203db50c932010a74c6845872c2">slice.c</a>
+</li>
+<li>gpr_slice_sub()
+: <a class="el" href="slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb">slice.h</a>
+, <a class="el" href="slice_8c.html#a60d9c7c62fdbbd7d4be1ff0f8d357032">slice.c</a>
+</li>
+<li>gpr_slice_sub_no_ref()
+: <a class="el" href="slice_8h.html#accf08ddad530a5f1cca82c834dc70965">slice.h</a>
+, <a class="el" href="slice_8c.html#a03f66bb8343910499215c75f6ad69be4">slice.c</a>
+</li>
+<li>gpr_slice_to_cstring()
+: <a class="el" href="slice_8c.html#a2e5f30a9a0750b8d38100dbfe647438e">slice.c</a>
+</li>
+<li>gpr_slice_unref()
+: <a class="el" href="slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7">slice.h</a>
+, <a class="el" href="slice_8c.html#aaa595344a06d9a17f64f2774a42fe160">slice.c</a>
+</li>
+<li>gpr_split_host_port()
+: <a class="el" href="host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">host_port.h</a>
+, <a class="el" href="host__port_8c.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">host_port.c</a>
+</li>
+<li>gpr_stack_lockfree_create()
+: <a class="el" href="stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#a281add9a8c1bdc0a6715cc168c6f41a9">stack_lockfree.c</a>
+</li>
+<li>gpr_stack_lockfree_destroy()
+: <a class="el" href="stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#a0d082653d002f9849d89f1ac93f21554">stack_lockfree.c</a>
+</li>
+<li>gpr_stack_lockfree_pop()
+: <a class="el" href="stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#ae2548d065e76c3ece34984e43c599d14">stack_lockfree.c</a>
+</li>
+<li>gpr_stack_lockfree_push()
+: <a class="el" href="stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#a0c2fa41e3046d10a9e98416f4d809933">stack_lockfree.c</a>
+</li>
+<li>gpr_stats_inc()
+: <a class="el" href="sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c">sync.h</a>
+, <a class="el" href="sync_8c.html#a8e51ec3b46c7c03602e2279a802daa1c">sync.c</a>
+</li>
+<li>gpr_stats_init()
+: <a class="el" href="sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30">sync.h</a>
+, <a class="el" href="sync_8c.html#a76b8e5de6e1baa4fd66c014417dc0a30">sync.c</a>
+</li>
+<li>gpr_stats_read()
+: <a class="el" href="sync_8h.html#abb2c58da7d0b785887266b3b1890764d">sync.h</a>
+, <a class="el" href="sync_8c.html#abb2c58da7d0b785887266b3b1890764d">sync.c</a>
+</li>
+<li>gpr_strdup()
+: <a class="el" href="string__util_8h.html#a7a021bce444344f0a96cb022038eed93">string_util.h</a>
+, <a class="el" href="string_8c.html#a7a021bce444344f0a96cb022038eed93">string.c</a>
+</li>
+<li>gpr_strjoin()
+: <a class="el" href="string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c">string.h</a>
+, <a class="el" href="string_8c.html#a5de29a3d1854cf2dfa54b501e2793e96">string.c</a>
+</li>
+<li>gpr_strjoin_sep()
+: <a class="el" href="string_8h.html#ac842445695baf5ff8e96a7bf12c6b176">string.h</a>
+, <a class="el" href="string_8c.html#a5b9d1ee9cc94732b728b033649c2d00a">string.c</a>
+</li>
+<li>gpr_strvec_add()
+: <a class="el" href="string_8h.html#a4eaa61df749bed219a09e69837a69a50">string.h</a>
+, <a class="el" href="string_8c.html#a9d91f04f11bc82ed5a562e44878eafde">string.c</a>
+</li>
+<li>gpr_strvec_destroy()
+: <a class="el" href="string_8h.html#af194bff1a43db7ed5be927264bce7f52">string.h</a>
+, <a class="el" href="string_8c.html#a0c7ab5a87b900005d826bdaa8e106b28">string.c</a>
+</li>
+<li>gpr_strvec_flatten()
+: <a class="el" href="string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185">string.h</a>
+, <a class="el" href="string_8c.html#a0145a60ccd4d1e25389f8bad033f1ff5">string.c</a>
+</li>
+<li>gpr_strvec_init()
+: <a class="el" href="string_8h.html#a78cca9fe86b48cf442f80a666b73768f">string.h</a>
+, <a class="el" href="string_8c.html#a751f38e61272bd9626890fa54270b82f">string.c</a>
+</li>
+<li>gpr_subprocess_binary_extension()
+: <a class="el" href="subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3">subprocess.h</a>
+</li>
+<li>gpr_subprocess_create()
+: <a class="el" href="subprocess_8h.html#a761755433d8809a68024b03176341242">subprocess.h</a>
+</li>
+<li>gpr_subprocess_destroy()
+: <a class="el" href="subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b">subprocess.h</a>
+</li>
+<li>gpr_subprocess_interrupt()
+: <a class="el" href="subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d">subprocess.h</a>
+</li>
+<li>gpr_subprocess_join()
+: <a class="el" href="subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5">subprocess.h</a>
+</li>
+<li>gpr_thd_currentid()
+: <a class="el" href="thd_8h.html#a8c875ae5410d10d658cfb7b917909624">thd.h</a>
+</li>
+<li>gpr_thd_join()
+: <a class="el" href="thd_8h.html#a73509f851051b4d5f02ca1982d216776">thd.h</a>
+</li>
+<li>gpr_thd_new()
+: <a class="el" href="thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea">thd.h</a>
+</li>
+<li>gpr_thd_options_default()
+: <a class="el" href="thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862">thd.h</a>
+, <a class="el" href="thd_8c.html#abf8bb34ba7d26ddab0696e24b1fcc862">thd.c</a>
+</li>
+<li>gpr_thd_options_is_detached()
+: <a class="el" href="thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89">thd.h</a>
+, <a class="el" href="thd_8c.html#a1647c2e991d269cdaf146dc33f61ce89">thd.c</a>
+</li>
+<li>gpr_thd_options_is_joinable()
+: <a class="el" href="thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">thd.h</a>
+, <a class="el" href="thd_8c.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">thd.c</a>
+</li>
+<li>gpr_thd_options_set_detached()
+: <a class="el" href="thd_8h.html#a704882e5c65d29c817fae9173085e5ba">thd.h</a>
+, <a class="el" href="thd_8c.html#a704882e5c65d29c817fae9173085e5ba">thd.c</a>
+</li>
+<li>gpr_thd_options_set_joinable()
+: <a class="el" href="thd_8h.html#a87ad3ff4d439450ae1318151c1526745">thd.h</a>
+, <a class="el" href="thd_8c.html#a87ad3ff4d439450ae1318151c1526745">thd.c</a>
+</li>
+<li>gpr_time_0()
+: <a class="el" href="time_8h.html#a4f552f0628cc389dfbe3674a1a978108">time.h</a>
+, <a class="el" href="time_8c.html#a4f552f0628cc389dfbe3674a1a978108">time.c</a>
+</li>
+<li>gpr_time_add()
+: <a class="el" href="time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004">time.h</a>
+, <a class="el" href="time_8c.html#a6f2c6fbc9fef45d74670c446e2bad004">time.c</a>
+</li>
+<li>gpr_time_cmp()
+: <a class="el" href="time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">time.h</a>
+, <a class="el" href="time_8c.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">time.c</a>
+</li>
+<li>gpr_time_from_hours()
+: <a class="el" href="time_8h.html#af7a9aca2af5348cbb8dc835853dc2756">time.h</a>
+, <a class="el" href="time_8c.html#ab8e7ff6a62bcd1fda7ea07ee67ffbacd">time.c</a>
+</li>
+<li>gpr_time_from_micros()
+: <a class="el" href="time_8h.html#a79956c6fba5b660aeee24b09ae026d6c">time.h</a>
+, <a class="el" href="time_8c.html#a4c0445a26d72673e14ea4c403b69ee65">time.c</a>
+</li>
+<li>gpr_time_from_millis()
+: <a class="el" href="time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946">time.h</a>
+, <a class="el" href="time_8c.html#a3b46878435c03a093b01f23b6a23631b">time.c</a>
+</li>
+<li>gpr_time_from_minutes()
+: <a class="el" href="time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba">time.h</a>
+, <a class="el" href="time_8c.html#afd411906dd4100d1a359177eaa8e6d5f">time.c</a>
+</li>
+<li>gpr_time_from_nanos()
+: <a class="el" href="time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a">time.h</a>
+, <a class="el" href="time_8c.html#a7b5437762ab2c7b7b31f7ab8e054eb04">time.c</a>
+</li>
+<li>gpr_time_from_seconds()
+: <a class="el" href="time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916">time.h</a>
+, <a class="el" href="time_8c.html#ac43b8cfb4ba31a567eb77c2dacda57a7">time.c</a>
+</li>
+<li>gpr_time_init()
+: <a class="el" href="time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56">time.h</a>
+</li>
+<li>gpr_time_max()
+: <a class="el" href="time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8">time.h</a>
+, <a class="el" href="time_8c.html#a4e1c94c1e488381e9f01d4318c2a45d8">time.c</a>
+</li>
+<li>gpr_time_min()
+: <a class="el" href="time_8h.html#af15f574932e56662f57bd3573e3cc469">time.h</a>
+, <a class="el" href="time_8c.html#af15f574932e56662f57bd3573e3cc469">time.c</a>
+</li>
+<li>gpr_time_similar()
+: <a class="el" href="time_8h.html#a914f666c6cfe709650d96c986600de15">time.h</a>
+, <a class="el" href="time_8c.html#a914f666c6cfe709650d96c986600de15">time.c</a>
+</li>
+<li>gpr_time_sub()
+: <a class="el" href="time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a">time.h</a>
+, <a class="el" href="time_8c.html#a1eaf8db9ee9e94bd4af005f1049f967a">time.c</a>
+</li>
+<li>gpr_time_to_millis()
+: <a class="el" href="time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df">time.h</a>
+, <a class="el" href="time_8c.html#a0e913ddb6917c82510ff48d34672f6a1">time.c</a>
+</li>
+<li>gpr_timespec_to_micros()
+: <a class="el" href="time_8h.html#a1704f2028070b3c92bd5420864458bac">time.h</a>
+, <a class="el" href="time_8c.html#a1704f2028070b3c92bd5420864458bac">time.c</a>
+</li>
+<li>gpr_tls_set()
+: <a class="el" href="tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea">tls_pthread.h</a>
+</li>
+<li>gpr_tmpfile()
+: <a class="el" href="file_8h.html#abdc37810133df55be624548f00fd177f">file.h</a>
+</li>
+<li>gpr_unref()
+: <a class="el" href="sync_8h.html#a76b570c831b14070c37e708dde91b795">sync.h</a>
+, <a class="el" href="sync_8c.html#a76b570c831b14070c37e708dde91b795">sync.c</a>
+</li>
+<li>grpc_accept4()
+: <a class="el" href="socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060">socket_utils_posix.h</a>
+</li>
+<li>grpc_access_token_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a7ef8e179bb5d15c81dfd363924db0041">credentials.c</a>
+</li>
+<li>grpc_alarm_cancel()
+: <a class="el" href="alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60">alarm.h</a>
+, <a class="el" href="alarm_8c.html#a921e9a2f728d338f42ad586e6d4eaf60">alarm.c</a>
+</li>
+<li>grpc_alarm_check()
+: <a class="el" href="alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a28de65beea264f65e15824cbf866d863">alarm.c</a>
+</li>
+<li>grpc_alarm_heap_add()
+: <a class="el" href="alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a96e6b49b0020da6f3163dfaeac36fed4">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_destroy()
+: <a class="el" href="alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a827cbed1eadd7b307da4f509bb0e4ff9">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_init()
+: <a class="el" href="alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a353a4a1809ac4546d62b3098dda8f674">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_is_empty()
+: <a class="el" href="alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a52d3c052d322cc97ced32a68bd9048cb">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_pop()
+: <a class="el" href="alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a40cf7d2741c1640309682f14cafbb029">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_remove()
+: <a class="el" href="alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a69c5b3ff692b6ca36c48d727acd45e9c">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_top()
+: <a class="el" href="alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a1c81a64c942586da4313547cc8d259ea">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_init()
+: <a class="el" href="alarm_8h.html#a50483486a229b573a29ed9fa30807999">alarm.h</a>
+, <a class="el" href="alarm_8c.html#a50483486a229b573a29ed9fa30807999">alarm.c</a>
+</li>
+<li>grpc_alarm_list_init()
+: <a class="el" href="alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a7f76e290e84d187382a25d0d6999067e">alarm.c</a>
+</li>
+<li>grpc_alarm_list_next_timeout()
+: <a class="el" href="alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a257c1eaf2f1c2f352893dcc0af034dfa">alarm.c</a>
+</li>
+<li>grpc_alarm_list_shutdown()
+: <a class="el" href="alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a768994cd3fff1f9b3ca7805dee7b3831">alarm.c</a>
+</li>
+<li>grpc_auth_context_create()
+: <a class="el" href="security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25">security_context.h</a>
+, <a class="el" href="security__context_8c.html#ab81f0d925a8aefc04349a849e63d9d25">security_context.c</a>
+</li>
+<li>grpc_auth_context_find_properties_by_name()
+: <a class="el" href="grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a5298ac64614986581fc314f63fa9afd7">security_context.c</a>
+</li>
+<li>grpc_auth_context_peer_identity()
+: <a class="el" href="grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a144c6f3a56c8592489b3978e0c5caced">security_context.c</a>
+</li>
+<li>grpc_auth_context_peer_identity_property_name()
+: <a class="el" href="grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#ac05022ccd5b972ba089950437727ff23">security_context.c</a>
+</li>
+<li>grpc_auth_context_peer_is_authenticated()
+: <a class="el" href="grpc__security_8h.html#af33fe6681dedb389edbf708020680093">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#af33fe6681dedb389edbf708020680093">security_context.c</a>
+</li>
+<li>grpc_auth_context_property_iterator()
+: <a class="el" href="grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#aaad9fed074f7aebed63ed075bb6ff780">security_context.c</a>
+</li>
+<li>grpc_auth_context_ref()
+: <a class="el" href="security__context_8h.html#aafcd59997402fd705818b3ce8e374623">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a449824176a9f6c79ee461e476f409aec">security_context.c</a>
+</li>
+<li>grpc_auth_context_release()
+: <a class="el" href="grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a2eea99f76030b21ad58afdf615f4d2b9">security_context.c</a>
+</li>
+<li>grpc_auth_context_unref()
+: <a class="el" href="security__context_8h.html#a19e637927ac80502fe6093a2669674da">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33">security_context.c</a>
+</li>
+<li>grpc_auth_json_key_create_from_json()
+: <a class="el" href="json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a99327b0fd2f13d8c98ebb68aecde0194">json_token.c</a>
+</li>
+<li>grpc_auth_json_key_create_from_string()
+: <a class="el" href="json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462">json_token.h</a>
+, <a class="el" href="json__token_8c.html#aed79d1eb6161019cd427d7dc4bdc8462">json_token.c</a>
+</li>
+<li>grpc_auth_json_key_destruct()
+: <a class="el" href="json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a0be195f2d8dad589b59befaaf379deb7">json_token.c</a>
+</li>
+<li>grpc_auth_json_key_is_valid()
+: <a class="el" href="json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689">json_token.h</a>
+, <a class="el" href="json__token_8c.html#ac4a86a67c8b9cd4b8b142fe880099689">json_token.c</a>
+</li>
+<li>grpc_auth_property_init()
+: <a class="el" href="security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a816adda9cd16c9f8087a1f11b1f7154a">security_context.c</a>
+</li>
+<li>grpc_auth_property_init_from_cstring()
+: <a class="el" href="security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a9ffe10ffd7c0397eb9656a5017ba0e58">security_context.c</a>
+</li>
+<li>grpc_auth_property_iterator_next()
+: <a class="el" href="grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">security_context.c</a>
+</li>
+<li>grpc_auth_property_reset()
+: <a class="el" href="security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a9721c8f46ab15103ee4f69cf49c04195">security_context.c</a>
+</li>
+<li>grpc_auth_refresh_token_create_from_json()
+: <a class="el" href="json__token_8h.html#a31e46f408f67e61eb59471816d7394d9">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a31e46f408f67e61eb59471816d7394d9">json_token.c</a>
+</li>
+<li>grpc_auth_refresh_token_create_from_string()
+: <a class="el" href="json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06">json_token.h</a>
+, <a class="el" href="json__token_8c.html#aa8602827c182047ae58ff6f8d55fcf06">json_token.c</a>
+</li>
+<li>grpc_auth_refresh_token_destruct()
+: <a class="el" href="json__token_8h.html#a14f7331e37fa96ee4652780610e1b773">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a14f7331e37fa96ee4652780610e1b773">json_token.c</a>
+</li>
+<li>grpc_auth_refresh_token_is_valid()
+: <a class="el" href="json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a9b1a8c0e0fda0b36dc2ad142f276002f">json_token.c</a>
+</li>
+<li>grpc_base64_decode()
+: <a class="el" href="base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96">base64.h</a>
+, <a class="el" href="base64_8c.html#a81bf1bd8387f2d69d6fe48e463a40c96">base64.c</a>
+</li>
+<li>grpc_base64_decode_with_len()
+: <a class="el" href="base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f">base64.h</a>
+, <a class="el" href="base64_8c.html#a2d9a616e303d93f4cb0733fe96a0f28f">base64.c</a>
+</li>
+<li>grpc_base64_encode()
+: <a class="el" href="base64_8h.html#af3751ba76aa864e4983cea879fb437d8">base64.h</a>
+, <a class="el" href="base64_8c.html#a52b0da4b71404bafb66d7cd2d6bc898a">base64.c</a>
+</li>
+<li>grpc_bbq_bytes()
+: <a class="el" href="byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a86c63b57cc95e136b8de2592e4dedf28">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_destroy()
+: <a class="el" href="byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#ae1f26933a5e6e643c3c31de676804edb">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_empty()
+: <a class="el" href="byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#aaa5f8cf8f94340a6e2f6c803a8001c15">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_flush()
+: <a class="el" href="byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a8308c0116008c7abd4554a34a549e94a">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_pop()
+: <a class="el" href="byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a0539ad1d8c25d3060475370bcc9d37c5">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_push()
+: <a class="el" href="byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a34702570a1438c8cf7a4dcdcc65a5891">byte_buffer_queue.c</a>
+</li>
+<li>grpc_blocking_resolve_address()
+: <a class="el" href="resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c">resolve_address.h</a>
+</li>
+<li>grpc_byte_buffer_copy()
+: <a class="el" href="byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#aac8a5605c5de93a78da7e8ca06a80efb">byte_buffer.c</a>
+</li>
+<li>grpc_byte_buffer_destroy()
+: <a class="el" href="byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a0099fc01264d8aeb7cd56dfb58652d22">byte_buffer.c</a>
+</li>
+<li>grpc_byte_buffer_length()
+: <a class="el" href="byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a61b6ac03d6a50664786e45d616ba435d">byte_buffer.c</a>
+</li>
+<li>grpc_byte_buffer_reader_destroy()
+: <a class="el" href="byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778">byte_buffer.h</a>
+, <a class="el" href="byte__buffer__reader_8c.html#aed5f40a76941741b7672c14f15be0778">byte_buffer_reader.c</a>
+</li>
+<li>grpc_byte_buffer_reader_init()
+: <a class="el" href="byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268">byte_buffer.h</a>
+, <a class="el" href="byte__buffer__reader_8c.html#a71016674849f4f57c1a4319d7964d268">byte_buffer_reader.c</a>
+</li>
+<li>grpc_byte_buffer_reader_next()
+: <a class="el" href="byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9">byte_buffer.h</a>
+, <a class="el" href="byte__buffer__reader_8c.html#aff713900a0177997a0be49a40781bcc9">byte_buffer_reader.c</a>
+</li>
+<li>grpc_call_auth_context()
+: <a class="el" href="grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a0b439e6d2875c8b5e2e901a959f6a2fe">security_context.c</a>
+</li>
+<li>grpc_call_cancel()
+: <a class="el" href="grpc_8h.html#adce32a3168cfc0048423af94a3961878">grpc.h</a>
+, <a class="el" href="call_8c.html#adce32a3168cfc0048423af94a3961878">call.c</a>
+</li>
+<li>grpc_call_cancel_with_status()
+: <a class="el" href="grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2">grpc.h</a>
+, <a class="el" href="call_8c.html#a1adb0f85dd491cc47dd8da655c4e30a6">call.c</a>
+</li>
+<li>grpc_call_context_get()
+: <a class="el" href="call_8h.html#a039322642b1682808002d1302c248c5f">call.h</a>
+, <a class="el" href="call_8c.html#a039322642b1682808002d1302c248c5f">call.c</a>
+</li>
+<li>grpc_call_context_set()
+: <a class="el" href="call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9">call.h</a>
+, <a class="el" href="call_8c.html#adad531b2cfc5574dbc4bebaafe0db1e9">call.c</a>
+</li>
+<li>grpc_call_create()
+: <a class="el" href="call_8h.html#a0199bd70012c6e2dfa8667dd1d280109">call.h</a>
+, <a class="el" href="call_8c.html#a0199bd70012c6e2dfa8667dd1d280109">call.c</a>
+</li>
+<li>grpc_call_destroy()
+: <a class="el" href="grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125">grpc.h</a>
+, <a class="el" href="call_8c.html#a456f491fd120a1561aa8cd1178ddb4c7">call.c</a>
+</li>
+<li>grpc_call_details_destroy()
+: <a class="el" href="grpc_8h.html#a436819189c9155a0761db7667f9078f9">grpc.h</a>
+, <a class="el" href="call__details_8c.html#a8ac75052ac470570689777a7a2684012">call_details.c</a>
+</li>
+<li>grpc_call_details_init()
+: <a class="el" href="grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5">grpc.h</a>
+, <a class="el" href="call__details_8c.html#aec87c14a6d7452bfb029af6a317a6cff">call_details.c</a>
+</li>
+<li>grpc_call_element_send_cancel()
+: <a class="el" href="channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a7127b6c0b4d14c70e23e65875c7b6bc5">channel_stack.c</a>
+</li>
+<li>grpc_call_from_top_element()
+: <a class="el" href="call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e">call.h</a>
+, <a class="el" href="call_8c.html#a92d6bdbeddb5e6918e118bc0979a1a9b">call.c</a>
+</li>
+<li>grpc_call_get_call_stack()
+: <a class="el" href="call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f">call.h</a>
+, <a class="el" href="call_8c.html#a089e0677c51d9a5d4a4a7e582f86b27f">call.c</a>
+</li>
+<li>grpc_call_get_completion_queue()
+: <a class="el" href="call_8h.html#a383950ef84646c0f3cb3cb38807503db">call.h</a>
+, <a class="el" href="call_8c.html#a383950ef84646c0f3cb3cb38807503db">call.c</a>
+</li>
+<li>grpc_call_get_compression_algorithm()
+: <a class="el" href="call_8c.html#a5128cbee3e5ed3cd97b4043c0f6d7d04">call.c</a>
+</li>
+<li>grpc_call_get_peer()
+: <a class="el" href="grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada">grpc.h</a>
+, <a class="el" href="call_8c.html#adf4ac8b78da7b957ce05dc0f62719ada">call.c</a>
+</li>
+<li>grpc_call_internal_ref()
+: <a class="el" href="call_8h.html#a6845825cac8a628227db13fef74ac84d">call.h</a>
+, <a class="el" href="call_8c.html#afdbe0f591e358205051b2af04a8df4f8">call.c</a>
+</li>
+<li>grpc_call_internal_unref()
+: <a class="el" href="call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76">call.h</a>
+, <a class="el" href="call_8c.html#afc70fe56761341f774d1b03a55a0e0e9">call.c</a>
+</li>
+<li>grpc_call_is_client()
+: <a class="el" href="call_8h.html#af101e4a67c8995de55cbd8b113e3b394">call.h</a>
+, <a class="el" href="call_8c.html#af101e4a67c8995de55cbd8b113e3b394">call.c</a>
+</li>
+<li>grpc_call_log_batch()
+: <a class="el" href="call_8h.html#a70fab32081ad1821de8bf3979cfa01d6">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6">call_log_batch.c</a>
+</li>
+<li>grpc_call_log_op()
+: <a class="el" href="channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee">channel_stack.h</a>
+, <a class="el" href="transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee">transport_op_string.c</a>
+</li>
+<li>grpc_call_next_get_peer()
+: <a class="el" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a40c122e470335bb7a6edf1e0a31fc801">channel_stack.c</a>
+</li>
+<li>grpc_call_next_op()
+: <a class="el" href="channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#af52cb36e243fc3bfb81ebca882346ce9">channel_stack.c</a>
+</li>
+<li>grpc_call_set_completion_queue()
+: <a class="el" href="call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd">call.h</a>
+, <a class="el" href="call_8c.html#a29e0a4ca5d3d86c071b41dcb30c117bd">call.c</a>
+</li>
+<li>grpc_call_set_credentials()
+: <a class="el" href="grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a56de54ae2563e67e236c10e8fa419f60">security_context.c</a>
+</li>
+<li>grpc_call_stack_destroy()
+: <a class="el" href="channel__stack_8h.html#a441c43095f765c200e679230a11c6116">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a441c43095f765c200e679230a11c6116">channel_stack.c</a>
+</li>
+<li>grpc_call_stack_element()
+: <a class="el" href="channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333">channel_stack.c</a>
+</li>
+<li>grpc_call_stack_from_top_element()
+: <a class="el" href="channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c">channel_stack.c</a>
+</li>
+<li>grpc_call_stack_init()
+: <a class="el" href="channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#ac7f3085338ed96593ca7c814cd6d705d">channel_stack.c</a>
+</li>
+<li>grpc_call_start_batch()
+: <a class="el" href="grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101">grpc.h</a>
+, <a class="el" href="call_8c.html#ae0e60993c9d6e5ceccaf2e61f690b101">call.c</a>
+</li>
+<li>grpc_call_start_ioreq_and_call_back()
+: <a class="el" href="call_8h.html#aef30c2ddcfea12c0df20548f32b4378d">call.h</a>
+, <a class="el" href="call_8c.html#aef30c2ddcfea12c0df20548f32b4378d">call.c</a>
+</li>
+<li>grpc_census_call_get_context()
+: <a class="el" href="grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66">grpc.h</a>
+, <a class="el" href="grpc__context_8c.html#a333e4c9a18683ab7a0db218df7a5fc6e">grpc_context.c</a>
+</li>
+<li>grpc_census_call_set_context()
+: <a class="el" href="grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a">grpc.h</a>
+, <a class="el" href="grpc__context_8c.html#afe9f71e9469141cc38cf3ec1375830ce">grpc_context.c</a>
+</li>
+<li>grpc_channel_args_copy()
+: <a class="el" href="channel__args_8h.html#aea7141804d69de11c1470197ad87b45d">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#aea7141804d69de11c1470197ad87b45d">channel_args.c</a>
+</li>
+<li>grpc_channel_args_copy_and_add()
+: <a class="el" href="channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#ace4130d42d359c697a99d4ed7a7e54c3">channel_args.c</a>
+</li>
+<li>grpc_channel_args_destroy()
+: <a class="el" href="channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#ad7467ddcad8160325b79b8d3a627c42e">channel_args.c</a>
+</li>
+<li>grpc_channel_args_get_compression_algorithm()
+: <a class="el" href="channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#ab6073e21bee62a87f891a10d5bb4a3bb">channel_args.c</a>
+</li>
+<li>grpc_channel_args_is_census_enabled()
+: <a class="el" href="channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#a918e3c374d10937b1cf1a7bec45e96c0">channel_args.c</a>
+</li>
+<li>grpc_channel_args_merge()
+: <a class="el" href="channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#aa098be5f086aefff83a52e202d11a39a">channel_args.c</a>
+</li>
+<li>grpc_channel_args_set_compression_algorithm()
+: <a class="el" href="channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#a1666cde2d23a797e95cf09e3c26e7f70">channel_args.c</a>
+</li>
+<li>grpc_channel_check_connectivity_state()
+: <a class="el" href="grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3">grpc.h</a>
+, <a class="el" href="channel__connectivity_8c.html#a9623d8e4df1d17eb26b67d905f1d7cb3">channel_connectivity.c</a>
+</li>
+<li>grpc_channel_create_call()
+: <a class="el" href="grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e">grpc.h</a>
+, <a class="el" href="channel_8c.html#aa6b80c5019007f758b1bf414e323db05">channel.c</a>
+</li>
+<li>grpc_channel_create_from_filters()
+: <a class="el" href="channel_8h.html#a12b25d31348401c51adab93c4f461d58">channel.h</a>
+, <a class="el" href="channel_8c.html#a32e56f0a0ab55d90624b92cbbf7bd384">channel.c</a>
+</li>
+<li>grpc_channel_create_registered_call()
+: <a class="el" href="grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">grpc.h</a>
+, <a class="el" href="channel_8c.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">channel.c</a>
+</li>
+<li>grpc_channel_destroy()
+: <a class="el" href="grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3">grpc.h</a>
+, <a class="el" href="channel_8c.html#a16e4b95581ad12e8e0af2af8d41b71b3">channel.c</a>
+</li>
+<li>grpc_channel_get_channel_stack()
+: <a class="el" href="channel_8h.html#a264b543c86559165c42b1c41cb4c9045">channel.h</a>
+, <a class="el" href="channel_8c.html#a264b543c86559165c42b1c41cb4c9045">channel.c</a>
+</li>
+<li>grpc_channel_get_compression_algorithm_string()
+: <a class="el" href="channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af">channel.h</a>
+, <a class="el" href="channel_8c.html#aee69f0f30f9cdcdd3961b1d253fa29af">channel.c</a>
+</li>
+<li>grpc_channel_get_max_message_length()
+: <a class="el" href="channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd">channel.h</a>
+, <a class="el" href="channel_8c.html#a1f91159c2a0d259aa7f854ba4204cafd">channel.c</a>
+</li>
+<li>grpc_channel_get_message_string()
+: <a class="el" href="channel_8h.html#a3008e3086b47f6170180c32ef88c83db">channel.h</a>
+, <a class="el" href="channel_8c.html#a3008e3086b47f6170180c32ef88c83db">channel.c</a>
+</li>
+<li>grpc_channel_get_metadata_context()
+: <a class="el" href="channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80">channel.h</a>
+, <a class="el" href="channel_8c.html#a6b9ee58f86b3e3026767b37bbc3efa80">channel.c</a>
+</li>
+<li>grpc_channel_get_reffed_status_elem()
+: <a class="el" href="channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101">channel.h</a>
+, <a class="el" href="channel_8c.html#a49c14becac82008119b5e9fd9d554983">channel.c</a>
+</li>
+<li>grpc_channel_get_status_string()
+: <a class="el" href="channel_8h.html#a2192de2d31a54523311ce241f933e048">channel.h</a>
+, <a class="el" href="channel_8c.html#a2192de2d31a54523311ce241f933e048">channel.c</a>
+</li>
+<li>grpc_channel_get_target()
+: <a class="el" href="grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499">grpc.h</a>
+, <a class="el" href="channel_8c.html#a108ef86bc0e5ebcb05f744315e2a6499">channel.c</a>
+</li>
+<li>grpc_channel_internal_ref()
+: <a class="el" href="channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634">channel.h</a>
+, <a class="el" href="channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41">channel.c</a>
+</li>
+<li>grpc_channel_internal_unref()
+: <a class="el" href="channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">channel.h</a>
+, <a class="el" href="channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">channel.c</a>
+</li>
+<li>grpc_channel_next_op()
+: <a class="el" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#aea7eceb60c0e94465c4baea314c0ebd9">channel_stack.c</a>
+</li>
+<li>grpc_channel_register_call()
+: <a class="el" href="grpc_8h.html#af00855f27d8b7c6b232982446371c04d">grpc.h</a>
+, <a class="el" href="channel_8c.html#af00855f27d8b7c6b232982446371c04d">channel.c</a>
+</li>
+<li>grpc_channel_security_connector_check_call_host()
+: <a class="el" href="security__connector_8h.html#a845341440590ee81647b56575eb60168">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a845341440590ee81647b56575eb60168">security_connector.c</a>
+</li>
+<li>grpc_channel_stack_destroy()
+: <a class="el" href="channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#ad06f3ee4d872888e99778e5faa610764">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_element()
+: <a class="el" href="channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a6fa445cf1f13f17095e14c0cc8801fb5">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_from_top_element()
+: <a class="el" href="channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_init()
+: <a class="el" href="channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a9dfbcf853676b70efa84cf8777a7b928">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_last_element()
+: <a class="el" href="channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a663793c2627677279816d636bf310b50">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_size()
+: <a class="el" href="channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a7593e5b07a422db70484cfb66264dd1b">channel_stack.c</a>
+</li>
+<li>grpc_channel_watch_connectivity_state()
+: <a class="el" href="grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b">grpc.h</a>
+, <a class="el" href="channel__connectivity_8c.html#a29aa98ca6ce9f7e5116e43b0c414e96b">channel_connectivity.c</a>
+</li>
+<li>grpc_chttp2_add_incoming_goaway()
+: <a class="el" href="internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#aeb6a160980622d4e5d1b8e9e608c6771">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_base64_encode()
+: <a class="el" href="bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a1435a6d866c6e7f7989ca786facc1fde">bin_encoder.c</a>
+</li>
+<li>grpc_chttp2_base64_encode_and_huffman_compress()
+: <a class="el" href="bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a0d29385f837594681b517d91d5d578a7">bin_encoder.c</a>
+</li>
+<li>grpc_chttp2_cleanup_writing()
+: <a class="el" href="internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9">internal.h</a>
+, <a class="el" href="writing_8c.html#aec2dafff34e07d99d473de28a658614f">writing.c</a>
+</li>
+<li>grpc_chttp2_data_frame_create_empty_close()
+: <a class="el" href="frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362">frame_data.h</a>
+, <a class="el" href="stream__encoder_8c.html#aa79c486a29b6e104c57be53a20d91362">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_data_parser_begin_frame()
+: <a class="el" href="frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#afab39491d68260dc81d1a57cac6f434a">frame_data.c</a>
+</li>
+<li>grpc_chttp2_data_parser_destroy()
+: <a class="el" href="frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#a5927900bd0d0911de70cab715f4d4468">frame_data.c</a>
+</li>
+<li>grpc_chttp2_data_parser_init()
+: <a class="el" href="frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#a796d3b28bd11e75897705b4f92a5cae7">frame_data.c</a>
+</li>
+<li>grpc_chttp2_data_parser_parse()
+: <a class="el" href="frame__data_8c.html#abc519029db35772068e9a052076fcfa1">frame_data.c</a>
+, <a class="el" href="frame__data_8h.html#abc519029db35772068e9a052076fcfa1">frame_data.h</a>
+</li>
+<li>grpc_chttp2_decode_timeout()
+: <a class="el" href="timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8">timeout_encoding.h</a>
+, <a class="el" href="timeout__encoding_8c.html#ac96a9d21da277e6a790fa8ac5846b5d8">timeout_encoding.c</a>
+</li>
+<li>grpc_chttp2_encode()
+: <a class="el" href="stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#a1fdaaa3443176e8815ffe75804b5efbd">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_encode_timeout()
+: <a class="el" href="timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc">timeout_encoding.h</a>
+, <a class="el" href="timeout__encoding_8c.html#aa4128995f3b3d4fe068c1635a85f7bcc">timeout_encoding.c</a>
+</li>
+<li>grpc_chttp2_flowctl_trace()
+: <a class="el" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#ac054ecf6e743093e5527787063f3acaa">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_for_all_streams()
+: <a class="el" href="internal_8h.html#a62031f6afc6643cc2f34b4af2d547576">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a62031f6afc6643cc2f34b4af2d547576">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_get_alpn_version_index()
+: <a class="el" href="alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5">alpn.h</a>
+, <a class="el" href="alpn_8c.html#a3f09d970c73c43952620b5e983c77dc5">alpn.c</a>
+</li>
+<li>grpc_chttp2_goaway_append()
+: <a class="el" href="frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a71bd236ace0cb6b0f04ebb1049efc5bc">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_begin_frame()
+: <a class="el" href="frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a2dd5fba43ce1f26f220199c1c7db0f05">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_destroy()
+: <a class="el" href="frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a5cd3e388f5844ad2c4c7d1c9488436a8">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_init()
+: <a class="el" href="frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_parse()
+: <a class="el" href="frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a52a6863feebfb5a9962330d42b22be2d">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_grpc_status_to_http2_error()
+: <a class="el" href="status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#a8fc288b0c9b0f2333adb3c1de2559c1d">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_grpc_status_to_http2_status()
+: <a class="el" href="status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#a30ec4cf33600ca53524bb3003c02b37a">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_has_streams()
+: <a class="el" href="internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a19ad8f2b321787a1255a888d5d5923f1">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_header_parser_parse()
+: <a class="el" href="hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#a7a92d332cfe4cdd2fe066d8c187a19c3">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_compressor_destroy()
+: <a class="el" href="stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#a03663bcc8cda8973711333e62e7aff66">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_hpack_compressor_init()
+: <a class="el" href="stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#ad9ec21ece920fa6f844eeecf4b5c4149">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_destroy()
+: <a class="el" href="hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#ae43cb55b0e7102694c68c29d93cd3573">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_init()
+: <a class="el" href="hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#ae9f87d2fc6cdda2cfcedd228feff9a43">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_parse()
+: <a class="el" href="hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#a883d1c556ca6aaea2fbb04dda7928ebc">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_set_has_priority()
+: <a class="el" href="hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#a9fc7e7f152280acc512689e138805eee">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_varint_length()
+: <a class="el" href="varint_8h.html#a2b4567fce80183246809231da7d798dc">varint.h</a>
+, <a class="el" href="varint_8c.html#a2b4567fce80183246809231da7d798dc">varint.c</a>
+</li>
+<li>grpc_chttp2_hpack_write_varint_tail()
+: <a class="el" href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">varint.h</a>
+, <a class="el" href="varint_8c.html#a7fcc1174a3686feebdb7085e30283a66">varint.c</a>
+</li>
+<li>grpc_chttp2_hptbl_add()
+: <a class="el" href="hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#a1ad3f82e2b6f66cf022f672861b65b84">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_destroy()
+: <a class="el" href="hpack__table_8h.html#aeef559491f324858e464dff14851d857">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#aeef559491f324858e464dff14851d857">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_find()
+: <a class="el" href="hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_init()
+: <a class="el" href="hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#a17492a855a901fafa3086087e74a16f0">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_lookup()
+: <a class="el" href="hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#a3e857648df8d6b50e5faac502bd5fe5b">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_http2_error_to_grpc_status()
+: <a class="el" href="status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_http2_status_to_grpc_status()
+: <a class="el" href="status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#a6e442a5cee1439a8cf37203b40956d12">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_huffman_compress()
+: <a class="el" href="bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a4445cb57a3331537c4d942764b555123">bin_encoder.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_add()
+: <a class="el" href="incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a0b7de798f56d0202db1102c2c87313d0">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_destroy()
+: <a class="el" href="incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a640db57113d389432d42bda5e1169b31">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_init()
+: <a class="el" href="incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#acb327575a569f6d7fbb40c309119bc00">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into()
+: <a class="el" href="incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a6b6375d9d949b70f2d38ceeb57437137">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op()
+: <a class="el" href="incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#aafe1950af666833c29b8086f4931be4d">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_reset()
+: <a class="el" href="incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883">incoming_metadata.h</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_set_deadline()
+: <a class="el" href="incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#aba03088316cada64053b68851b5a5603">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_swap()
+: <a class="el" href="incoming__metadata_8c.html#a3ae615483b18241fe3a8fe7c9897cee4">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_live_op_buffer_end()
+: <a class="el" href="incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a5b987a9d3099c62ad4a6c198242b884e">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_is_alpn_version_supported()
+: <a class="el" href="alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b">alpn.h</a>
+, <a class="el" href="alpn_8c.html#ad4d4c481dfaefe5690ccb83861466f6b">alpn.c</a>
+</li>
+<li>grpc_chttp2_list_add_cancelled_waiting_for_writing()
+: <a class="el" href="internal_8h.html#ad26dae5e10a026530f50b133359b3ee2">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ad26dae5e10a026530f50b133359b3ee2">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_closed_waiting_for_parsing()
+: <a class="el" href="internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a1208f234dcb6b2a73be3c875b2b52907">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_first_writable_stream()
+: <a class="el" href="internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a8858ea6e4f6e7c363985793b403a0ac9">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_incoming_window_updated()
+: <a class="el" href="internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a1d99597284d4c0a0bd3cbf102ff415a2">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_parsing_seen_stream()
+: <a class="el" href="internal_8h.html#a771e6e4a553060bfac71d00b5f866877">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a771e6e4a553060bfac71d00b5f866877">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_read_write_state_changed()
+: <a class="el" href="internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_waiting_for_concurrency()
+: <a class="el" href="internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a71d9dea1ff323c374d7ea47818defc2e">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_writable_stream()
+: <a class="el" href="internal_8h.html#a117877f5202f072aa35e7ada0379d0db">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a117877f5202f072aa35e7ada0379d0db">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_writing_stream()
+: <a class="el" href="internal_8h.html#af5740bd38b626e875166e60e697e099e">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#af5740bd38b626e875166e60e697e099e">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_written_stream()
+: <a class="el" href="internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ac6b7a089de78b67a9650e42b4a76ac69">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_have_writing_streams()
+: <a class="el" href="internal_8h.html#a2c7a37cef27c29528850701b9cf772d4">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a2c7a37cef27c29528850701b9cf772d4">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_cancelled_waiting_for_writing()
+: <a class="el" href="internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ad2d2a802b9072505d1e6f8bb68727f44">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_closed_waiting_for_parsing()
+: <a class="el" href="internal_8h.html#ad0434ee720b66a5ee51c9904548857af">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ad0434ee720b66a5ee51c9904548857af">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_incoming_window_updated()
+: <a class="el" href="internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a90a6cb6d111a750ab1f28bf4e438bb62">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_parsing_seen_stream()
+: <a class="el" href="internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a1d1ec9b2edce465d2fd18002a403878d">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_read_write_state_changed()
+: <a class="el" href="internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ac9e8165e01d872ed42c0333aee9d31c4">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_waiting_for_concurrency()
+: <a class="el" href="internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a6b62b98b415b3984616d4e851f0ff5c0">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_writable_stream()
+: <a class="el" href="internal_8h.html#aeac970afdd6294bac9d1dcb84b702167">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#aeac970afdd6294bac9d1dcb84b702167">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_writing_stream()
+: <a class="el" href="internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#aba4771272cd49e3012d81c05fad1bdb7">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_written_stream()
+: <a class="el" href="internal_8h.html#a3107afcec2694dd7c7855d540a560090">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a3107afcec2694dd7c7855d540a560090">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_remove_incoming_window_updated()
+: <a class="el" href="internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a8a7f981b74e1e99b0a1afe0c45702d89">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_remove_writable_stream()
+: <a class="el" href="internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_num_alpn_versions()
+: <a class="el" href="alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5">alpn.h</a>
+, <a class="el" href="alpn_8c.html#aa7e91d317127b4a8a8a1cbb6acc942f5">alpn.c</a>
+</li>
+<li>grpc_chttp2_parsing_accept_stream()
+: <a class="el" href="internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a25a39d1d95e7140c1ae8f765ffd92847">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_parsing_become_skip_parser()
+: <a class="el" href="internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60">internal.h</a>
+, <a class="el" href="parsing_8c.html#ad6a13571d6666f45a64c8e0f6b234e60">parsing.c</a>
+</li>
+<li>grpc_chttp2_parsing_lookup_stream()
+: <a class="el" href="internal_8h.html#ae19b5968ebea2a077650652f1a3af46d">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#ae19b5968ebea2a077650652f1a3af46d">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_perform_read()
+: <a class="el" href="internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f">internal.h</a>
+, <a class="el" href="parsing_8c.html#abeaab2fead1bddefe92af0bc61a3a33f">parsing.c</a>
+</li>
+<li>grpc_chttp2_perform_writes()
+: <a class="el" href="internal_8h.html#a8fa6e3087336e9d487f3987148cc3930">internal.h</a>
+, <a class="el" href="writing_8c.html#a8fa6e3087336e9d487f3987148cc3930">writing.c</a>
+</li>
+<li>grpc_chttp2_ping_create()
+: <a class="el" href="frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3">frame_ping.h</a>
+, <a class="el" href="frame__ping_8c.html#a80bb3f2ba166dcbd164aa04e680c58e3">frame_ping.c</a>
+</li>
+<li>grpc_chttp2_ping_parser_begin_frame()
+: <a class="el" href="frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7">frame_ping.h</a>
+, <a class="el" href="frame__ping_8c.html#a76f66f3bbe53a20610183253d30c57f7">frame_ping.c</a>
+</li>
+<li>grpc_chttp2_ping_parser_parse()
+: <a class="el" href="frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042">frame_ping.h</a>
+, <a class="el" href="frame__ping_8c.html#ace393509f26406ff6bdc9e60e7534042">frame_ping.c</a>
+</li>
+<li>grpc_chttp2_preencode()
+: <a class="el" href="stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#a3ee751a56974f45d33d89ce7f02cf022">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_prepare_to_read()
+: <a class="el" href="internal_8h.html#ae444a83dc73e9a658e7df625a04b101a">internal.h</a>
+, <a class="el" href="parsing_8c.html#ae010263eae7de4e41a74679b11579825">parsing.c</a>
+</li>
+<li>grpc_chttp2_publish_reads()
+: <a class="el" href="internal_8h.html#a4d137f455d722521fd7dab4fd13e1697">internal.h</a>
+, <a class="el" href="parsing_8c.html#aba67e2ed1d9d5ac25c0d5b2ea31e8137">parsing.c</a>
+</li>
+<li>grpc_chttp2_register_stream()
+: <a class="el" href="internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#accb6dbbacb57c3f9860e6ec6eca2390e">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_rst_stream_create()
+: <a class="el" href="frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687">frame_rst_stream.h</a>
+, <a class="el" href="frame__rst__stream_8c.html#a6a627690f79faf403072532d19a08895">frame_rst_stream.c</a>
+</li>
+<li>grpc_chttp2_rst_stream_parser_begin_frame()
+: <a class="el" href="frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e">frame_rst_stream.h</a>
+, <a class="el" href="frame__rst__stream_8c.html#a3138dce884dfcb8c9653de757261d16e">frame_rst_stream.c</a>
+</li>
+<li>grpc_chttp2_rst_stream_parser_parse()
+: <a class="el" href="frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc">frame_rst_stream.h</a>
+, <a class="el" href="frame__rst__stream_8c.html#ad89852ed41fa9b715fb86ab6193160fc">frame_rst_stream.c</a>
+</li>
+<li>grpc_chttp2_schedule_closure()
+: <a class="el" href="internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a6f8b16bb6048f85107966a4be9ff4a4d">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_settings_ack_create()
+: <a class="el" href="frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#aa1382503cac023cb2cbf516427ec7954">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_settings_create()
+: <a class="el" href="frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#aa7db515ebcf9a8add8ade457502d065a">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_settings_parser_begin_frame()
+: <a class="el" href="frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#a8ad385f78097ad98242ae5a8b4bc9ccf">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_settings_parser_parse()
+: <a class="el" href="frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#a24ea784f4fb455974f9b4e5d66ee1416">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_stream_map_add()
+: <a class="el" href="stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#a45ba47442f3bc9d3b6c6841a6f855560">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_delete()
+: <a class="el" href="stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ab2236a03f8efe26f8a1a3818bed7844e">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_destroy()
+: <a class="el" href="stream__map_8h.html#ad002379073f1a7c545a186fa0498f077">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ad002379073f1a7c545a186fa0498f077">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_find()
+: <a class="el" href="stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_for_each()
+: <a class="el" href="stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#a113657d2ad2cdffe3d9d00fe30996aa3">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_init()
+: <a class="el" href="stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_move_into()
+: <a class="el" href="stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ac8399a7345ae2a716a1eb7594d6d0aa9">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_size()
+: <a class="el" href="stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#a9f3f7360b053c5507b8bd792ba7e9e85">stream_map.c</a>
+</li>
+<li>grpc_chttp2_terminate_writing()
+: <a class="el" href="internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a83baade3ee315270b6d34fc6fbecb30c">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_transport_start_reading()
+: <a class="el" href="chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a73a9f03068253da126388dd890f1ee7d">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_unlocking_check_writes()
+: <a class="el" href="internal_8h.html#a154399c46a1f7b901491acb4c04d19d3">internal.h</a>
+, <a class="el" href="writing_8c.html#a309a5e92de22678f146956743d86f18a">writing.c</a>
+</li>
+<li>grpc_chttp2_unregister_stream()
+: <a class="el" href="internal_8h.html#a558d8331836125098834d28a94e39bcc">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a9a096df2132a082f0fcd5b1f8010bf84">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_window_update_create()
+: <a class="el" href="frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0">frame_window_update.h</a>
+, <a class="el" href="frame__window__update_8c.html#a66b55a7299f42a5862cdd349afc6d6ac">frame_window_update.c</a>
+</li>
+<li>grpc_chttp2_window_update_parser_begin_frame()
+: <a class="el" href="frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8">frame_window_update.h</a>
+, <a class="el" href="frame__window__update_8c.html#ad675abd4715d42665d37f606447dcde8">frame_window_update.c</a>
+</li>
+<li>grpc_chttp2_window_update_parser_parse()
+: <a class="el" href="frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a">frame_window_update.h</a>
+, <a class="el" href="frame__window__update_8c.html#ab1c1b5d960c0ed5cfff799476b4e425a">frame_window_update.c</a>
+</li>
+<li>grpc_client_channel_add_interested_party()
+: <a class="el" href="client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a7b288cd209db3fac0c4cd5d4f8fbf3b3">client_channel.c</a>
+</li>
+<li>grpc_client_channel_check_connectivity_state()
+: <a class="el" href="client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#ae257a5817fa8e50df430d4a2132deed6">client_channel.c</a>
+</li>
+<li>grpc_client_channel_del_interested_party()
+: <a class="el" href="client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a36a91904b5c5cce4a334a9e055b35f78">client_channel.c</a>
+</li>
+<li>grpc_client_channel_get_connecting_pollset_set()
+: <a class="el" href="client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#ab6ddde66c53ca2fec899def7d72234ad">client_channel.c</a>
+</li>
+<li>grpc_client_channel_set_resolver()
+: <a class="el" href="client__channel_8h.html#a86757e52c8e3f20d553f999c62589993">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a86757e52c8e3f20d553f999c62589993">client_channel.c</a>
+</li>
+<li>grpc_client_channel_watch_connectivity_state()
+: <a class="el" href="client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a037d0d7720ae9a68669ad9552f7ee69c">client_channel.c</a>
+</li>
+<li>grpc_client_config_create()
+: <a class="el" href="client__config_8h.html#a165901d77b066794c0822a683d167359">client_config.h</a>
+, <a class="el" href="client__config_8c.html#a165901d77b066794c0822a683d167359">client_config.c</a>
+</li>
+<li>grpc_client_config_get_lb_policy()
+: <a class="el" href="client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e">client_config.h</a>
+, <a class="el" href="client__config_8c.html#aa6642aab990240a61c9ecafa3dfb55e1">client_config.c</a>
+</li>
+<li>grpc_client_config_ref()
+: <a class="el" href="client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86">client_config.h</a>
+, <a class="el" href="client__config_8c.html#aa0b099847f86ea9e0da873f49b92f554">client_config.c</a>
+</li>
+<li>grpc_client_config_set_lb_policy()
+: <a class="el" href="client__config_8h.html#a01f90473256a8c714ba043c03ef2acac">client_config.h</a>
+, <a class="el" href="client__config_8c.html#a807baa44b3464dc0c5870184619d6c35">client_config.c</a>
+</li>
+<li>grpc_client_config_unref()
+: <a class="el" href="client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978">client_config.h</a>
+, <a class="el" href="client__config_8c.html#ad8d9107bdf0a780e914dccd4fd57cb35">client_config.c</a>
+</li>
+<li>grpc_client_security_context_create()
+: <a class="el" href="security__context_8h.html#a7ca11372b407a42724f5d13e36409c03">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a7ca11372b407a42724f5d13e36409c03">security_context.c</a>
+</li>
+<li>grpc_client_security_context_destroy()
+: <a class="el" href="security__context_8h.html#a794b8453091b440bafd21e00cf0f7236">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a794b8453091b440bafd21e00cf0f7236">security_context.c</a>
+</li>
+<li>grpc_completion_queue_create()
+: <a class="el" href="grpc_8h.html#a9f69c76c26125e6581491864a06ea44a">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#a9f69c76c26125e6581491864a06ea44a">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_destroy()
+: <a class="el" href="grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#a1d73d7983af3030ee119b768095e9627">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_next()
+: <a class="el" href="grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#ac9b582acb0fc4994ccdbf39d40ee3766">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_pluck()
+: <a class="el" href="grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#ab63b4e63ae13faa3e6786f131a46b5dd">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_shutdown()
+: <a class="el" href="grpc_8h.html#a4051b4036c5132f02064430f67420ecd">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#a7a7c60f847e798025d83e2d8ff9b1778">completion_queue.c</a>
+</li>
+<li>grpc_composite_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a4f65f01fb23e963cc88bcdfbede70da7">credentials.c</a>
+</li>
+<li>grpc_composite_credentials_get_credentials()
+: <a class="el" href="credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ac3ea491e3e847e603c0da420375b6e60">credentials.c</a>
+</li>
+<li>grpc_compression_algorithm_for_level()
+: <a class="el" href="compression_8h.html#a382cce802b53a6f85deb706caf1dccd6">compression.h</a>
+, <a class="el" href="algorithm_8c.html#a382cce802b53a6f85deb706caf1dccd6">algorithm.c</a>
+</li>
+<li>grpc_compression_algorithm_name()
+: <a class="el" href="compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14">compression.h</a>
+, <a class="el" href="algorithm_8c.html#adce0341ab8fd560dc39e9e96daf7cb14">algorithm.c</a>
+</li>
+<li>grpc_compression_algorithm_parse()
+: <a class="el" href="compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397">compression.h</a>
+, <a class="el" href="algorithm_8c.html#a996f65ae42d05dd7ef9da9c6d6586397">algorithm.c</a>
+</li>
+<li>grpc_compression_level_for_algorithm()
+: <a class="el" href="compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba">compression.h</a>
+, <a class="el" href="algorithm_8c.html#ace80040d9c2a916ddd4d2f2d2ec44dba">algorithm.c</a>
+</li>
+<li>grpc_compute_engine_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a3beb3fe683139856e1a13c27d760eb95">credentials.c</a>
+</li>
+<li>grpc_connected_channel_bind_transport()
+: <a class="el" href="connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9">connected_channel.h</a>
+, <a class="el" href="connected__channel_8c.html#a5be096b4cce2c5c6b51727866723e5b9">connected_channel.c</a>
+</li>
+<li>grpc_connectivity_state_check()
+: <a class="el" href="connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#a7de513064c1e6d041b5c03611a21784c">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_destroy()
+: <a class="el" href="connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aa8e03f103b290be8de8041a63e469591">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_init()
+: <a class="el" href="connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#ab6dd4577019442e4d2bfab318d0a66a8">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_name()
+: <a class="el" href="connectivity__state_8c.html#a90cae61aab329c583da43141f8057b36">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_notify_on_state_change()
+: <a class="el" href="connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aef05f23287d0e2ab2e469e7113d01827">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_set()
+: <a class="el" href="connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aafe2517530b344f8e062bbef25b8895c">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_set_with_scheduler()
+: <a class="el" href="connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#ae542578d2026b84ff6d0403809e67ad7">connectivity_state.c</a>
+</li>
+<li>grpc_connector_connect()
+: <a class="el" href="connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e">connector.h</a>
+, <a class="el" href="connector_8c.html#ae43acb2d650fdc8023d69a4a39781d4e">connector.c</a>
+</li>
+<li>grpc_connector_ref()
+: <a class="el" href="connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46">connector.h</a>
+, <a class="el" href="connector_8c.html#a32f21c6a46c13ba6cc697cf94c45ca46">connector.c</a>
+</li>
+<li>grpc_connector_unref()
+: <a class="el" href="connector_8c.html#ab65e217852a93e4a8281e7003d72bcf6">connector.c</a>
+, <a class="el" href="connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6">connector.h</a>
+</li>
+<li>grpc_cq_begin_op()
+: <a class="el" href="completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#af0798635c22a4eaa66ed25c310b3a776">completion_queue.c</a>
+</li>
+<li>grpc_cq_end_op()
+: <a class="el" href="completion__queue_8c.html#a2752dafd9e9e02bbd253578fc58b0a7e">completion_queue.c</a>
+, <a class="el" href="completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e">completion_queue.h</a>
+</li>
+<li>grpc_cq_hack_spin_pollset()
+: <a class="el" href="completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#af56ef17bad0397c6f1305be433aeeb64">completion_queue.c</a>
+</li>
+<li>grpc_cq_internal_ref()
+: <a class="el" href="completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02">completion_queue.c</a>
+</li>
+<li>grpc_cq_internal_unref()
+: <a class="el" href="completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e">completion_queue.c</a>
+</li>
+<li>grpc_cq_is_server_cq()
+: <a class="el" href="completion__queue_8c.html#a02173d1bf8e55f6903d24c20107d8dbf">completion_queue.c</a>
+, <a class="el" href="completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf">completion_queue.h</a>
+</li>
+<li>grpc_cq_mark_server_cq()
+: <a class="el" href="completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#afbe8f768af201e16309e240ae155ee3d">completion_queue.c</a>
+</li>
+<li>grpc_cq_pollset()
+: <a class="el" href="completion__queue_8c.html#a0ebca6cf60ce9cc92b9bfa9200fab813">completion_queue.c</a>
+, <a class="el" href="completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813">completion_queue.h</a>
+</li>
+<li>grpc_create_chttp2_transport()
+: <a class="el" href="chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a03cebc42bd75ab90ce0f9d3c8bc526a8">chttp2_transport.c</a>
+</li>
+<li>grpc_create_dualstack_socket()
+: <a class="el" href="socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6">socket_utils_posix.h</a>
+</li>
+<li>grpc_create_pick_first_lb_policy()
+: <a class="el" href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">pick_first.h</a>
+, <a class="el" href="pick__first_8c.html#a2ef6310260146caa4cf56acddbb4343e">pick_first.c</a>
+</li>
+<li>grpc_credentials_contains_type()
+: <a class="el" href="credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a4a6be957afa38741405a5a41cdd752e1">credentials.c</a>
+</li>
+<li>grpc_credentials_create_security_connector()
+: <a class="el" href="credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759">credentials.h</a>
+, <a class="el" href="credentials_8c.html#af26c4ee0ed97f2e88958c54ba22d5759">credentials.c</a>
+</li>
+<li>grpc_credentials_get_request_metadata()
+: <a class="el" href="credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc">credentials.h</a>
+, <a class="el" href="credentials_8c.html#afe8d4191ee0f0f67684fd2575173cabc">credentials.c</a>
+</li>
+<li>grpc_credentials_has_request_metadata()
+: <a class="el" href="credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ad44c9cce8c086f8c083e5d5006e3310a">credentials.c</a>
+</li>
+<li>grpc_credentials_has_request_metadata_only()
+: <a class="el" href="credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a726f818ebdd9e781b090cf7d27347b7a">credentials.c</a>
+</li>
+<li>grpc_credentials_md_store_add()
+: <a class="el" href="credentials_8h.html#a3676b161f50d5b36989af2624565596b">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#a3676b161f50d5b36989af2624565596b">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_add_cstrings()
+: <a class="el" href="credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_create()
+: <a class="el" href="credentials_8h.html#aee28492ddb70e47b0778fc928be9159b">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#aee28492ddb70e47b0778fc928be9159b">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_ref()
+: <a class="el" href="credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#a5535f991ceb2b2160aee414cf013ed73">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_unref()
+: <a class="el" href="credentials_8h.html#afc507497ef8b5dda7074b63babaac366">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#afc507497ef8b5dda7074b63babaac366">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_ref()
+: <a class="el" href="credentials_8h.html#a62061acac11e854a58c5faca6956e609">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a62061acac11e854a58c5faca6956e609">credentials.c</a>
+</li>
+<li>grpc_credentials_release()
+: <a class="el" href="grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a6c01e107d41e964458fdf701b8b81440">credentials.c</a>
+</li>
+<li>grpc_credentials_unref()
+: <a class="el" href="credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a63d4aa3f072736ba5eb168e12c306e56">credentials.c</a>
+</li>
+<li>grpc_dns_resolver_factory_create()
+: <a class="el" href="dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a">dns_resolver.h</a>
+, <a class="el" href="dns__resolver_8c.html#a932c66ec39e987fb2cd076869334f871">dns_resolver.c</a>
+</li>
+<li>grpc_endpoint_add_to_pollset()
+: <a class="el" href="endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#afe30ad16c4df2a5c80b9e73d2bce80e6">endpoint.c</a>
+</li>
+<li>grpc_endpoint_add_to_pollset_set()
+: <a class="el" href="endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a7da8b1657895a121a59458dbdeb0e900">endpoint.c</a>
+</li>
+<li>grpc_endpoint_destroy()
+: <a class="el" href="endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a5b4b5f0b352955ec4f060c6b443408bd">endpoint.c</a>
+</li>
+<li>grpc_endpoint_get_peer()
+: <a class="el" href="endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a21e5c205829aaf48ae7d26b32fa00338">endpoint.c</a>
+</li>
+<li>grpc_endpoint_notify_on_read()
+: <a class="el" href="endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#abead7bb222b6e3f5a7004c8fb12821be">endpoint.c</a>
+</li>
+<li>grpc_endpoint_shutdown()
+: <a class="el" href="endpoint_8h.html#a7fca699259b75cf0f685227a363765fa">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a7fca699259b75cf0f685227a363765fa">endpoint.c</a>
+</li>
+<li>grpc_endpoint_write()
+: <a class="el" href="endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">endpoint.c</a>
+</li>
+<li>grpc_event_string()
+: <a class="el" href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">event_string.h</a>
+, <a class="el" href="event__string_8c.html#a8dc67a225f744d4d0ee592faf2bd4313">event_string.c</a>
+</li>
+<li>grpc_fake_channel_security_connector_create()
+: <a class="el" href="security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#abe2c43cab618ad3b036645d9aa506f12">security_connector.c</a>
+</li>
+<li>grpc_fake_oauth2_credentials_create()
+: <a class="el" href="credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ac749a71cdf28ebdc69d25cde612b22cc">credentials.c</a>
+</li>
+<li>grpc_fake_server_security_connector_create()
+: <a class="el" href="security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a45a42c3c0b40593ac1b8025ba1875417">security_connector.c</a>
+</li>
+<li>grpc_fake_transport_security_credentials_create()
+: <a class="el" href="credentials_8h.html#ab970b1925f494cb159a29a404f23d157">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ab970b1925f494cb159a29a404f23d157">credentials.c</a>
+</li>
+<li>grpc_fake_transport_security_server_credentials_create()
+: <a class="el" href="credentials_8h.html#a60f9433cc38460bb83da148eff9475ae">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a60f9433cc38460bb83da148eff9475ae">credentials.c</a>
+</li>
+<li>grpc_fd_become_readable()
+: <a class="el" href="fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002">fd_posix.h</a>
+</li>
+<li>grpc_fd_become_writable()
+: <a class="el" href="fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98">fd_posix.h</a>
+</li>
+<li>grpc_fd_begin_poll()
+: <a class="el" href="fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5">fd_posix.h</a>
+</li>
+<li>grpc_fd_create()
+: <a class="el" href="fd__posix_8h.html#a6752527e24586c370a8305916cb35dde">fd_posix.h</a>
+</li>
+<li>grpc_fd_end_poll()
+: <a class="el" href="fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5">fd_posix.h</a>
+</li>
+<li>grpc_fd_global_init()
+: <a class="el" href="fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a">fd_posix.h</a>
+</li>
+<li>grpc_fd_global_shutdown()
+: <a class="el" href="fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2">fd_posix.h</a>
+</li>
+<li>grpc_fd_is_orphaned()
+: <a class="el" href="fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258">fd_posix.h</a>
+</li>
+<li>grpc_fd_notify_on_read()
+: <a class="el" href="fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0">fd_posix.h</a>
+</li>
+<li>grpc_fd_notify_on_write()
+: <a class="el" href="fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac">fd_posix.h</a>
+</li>
+<li>grpc_fd_orphan()
+: <a class="el" href="fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1">fd_posix.h</a>
+</li>
+<li>grpc_fd_ref()
+: <a class="el" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">fd_posix.h</a>
+</li>
+<li>grpc_fd_shutdown()
+: <a class="el" href="fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad">fd_posix.h</a>
+</li>
+<li>grpc_fd_unref()
+: <a class="el" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">fd_posix.h</a>
+</li>
+<li>grpc_find_security_connector_in_args()
+: <a class="el" href="security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a7db9da4604178cb7e640e744da4b733c">security_connector.c</a>
+</li>
+<li>grpc_flush_cached_google_default_credentials()
+: <a class="el" href="credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a">credentials.h</a>
+, <a class="el" href="google__default__credentials_8c.html#a7e3aec152312d2b66ccd3b232317b10a">google_default_credentials.c</a>
+</li>
+<li>grpc_get_default_ssl_roots()
+: <a class="el" href="security__connector_8h.html#a341f454443268ca27e5cc01219b93fef">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a341f454443268ca27e5cc01219b93fef">security_connector.c</a>
+</li>
+<li>grpc_get_well_known_google_credentials_file_path()
+: <a class="el" href="credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716">credentials.h</a>
+</li>
+<li>grpc_google_default_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170">grpc_security.h</a>
+, <a class="el" href="google__default__credentials_8c.html#a5e3fb8f208c302245a1392c7ef16d170">google_default_credentials.c</a>
+</li>
+<li>grpc_httpcli_context_destroy()
+: <a class="el" href="httpcli_8c.html#a6d47084af44bf387790281f288f78d7b">httpcli.c</a>
+, <a class="el" href="httpcli_8h.html#a6d47084af44bf387790281f288f78d7b">httpcli.h</a>
+</li>
+<li>grpc_httpcli_context_init()
+: <a class="el" href="httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#accc8da3837feac14f5f0b64e4cff8d1b">httpcli.c</a>
+</li>
+<li>grpc_httpcli_format_get_request()
+: <a class="el" href="format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2">format_request.h</a>
+, <a class="el" href="format__request_8c.html#a0fa0de242d866bb79b5ad39f3c46eae2">format_request.c</a>
+</li>
+<li>grpc_httpcli_format_post_request()
+: <a class="el" href="format__request_8h.html#ae6a0298e2b174b65c5571622d3908501">format_request.h</a>
+, <a class="el" href="format__request_8c.html#ae6a0298e2b174b65c5571622d3908501">format_request.c</a>
+</li>
+<li>grpc_httpcli_get()
+: <a class="el" href="httpcli_8c.html#a594371d2c96d499a5a3bcccb27ece0da">httpcli.c</a>
+, <a class="el" href="httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da">httpcli.h</a>
+</li>
+<li>grpc_httpcli_parser_destroy()
+: <a class="el" href="parser_8h.html#a947eefc20a5245e155e1bb55380c8344">parser.h</a>
+, <a class="el" href="parser_8c.html#a947eefc20a5245e155e1bb55380c8344">parser.c</a>
+</li>
+<li>grpc_httpcli_parser_eof()
+: <a class="el" href="parser_8c.html#a3ad859c8c3267265dba030d1d7597df8">parser.c</a>
+, <a class="el" href="parser_8h.html#a3ad859c8c3267265dba030d1d7597df8">parser.h</a>
+</li>
+<li>grpc_httpcli_parser_init()
+: <a class="el" href="parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">parser.h</a>
+, <a class="el" href="parser_8c.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">parser.c</a>
+</li>
+<li>grpc_httpcli_parser_parse()
+: <a class="el" href="parser_8c.html#a24a1909825c06938a465e40295464cd0">parser.c</a>
+, <a class="el" href="parser_8h.html#a24a1909825c06938a465e40295464cd0">parser.h</a>
+</li>
+<li>grpc_httpcli_post()
+: <a class="el" href="httpcli_8h.html#a96f034743193848e966d61192e406c70">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#a96f034743193848e966d61192e406c70">httpcli.c</a>
+</li>
+<li>grpc_httpcli_set_override()
+: <a class="el" href="httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#a15ab7c87e0d5e42341c9652d5045d8ce">httpcli.c</a>
+</li>
+<li>grpc_httpcli_ssl_channel_security_connector_create()
+: <a class="el" href="httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de">httpcli_security_connector.h</a>
+, <a class="el" href="httpcli__security__connector_8c.html#a2738fc49f8c3103a4e43ef68cd9b15de">httpcli_security_connector.c</a>
+</li>
+<li>grpc_iam_credentials_create()
+: <a class="el" href="credentials_8c.html#ad16075798f906b98e0fb3e3018f22ae0">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3">grpc_security.h</a>
+</li>
+<li>grpc_incoming_metadata_buffer_move_to_referencing_sopb()
+: <a class="el" href="incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">incoming_metadata.c</a>
+</li>
+<li>grpc_init()
+: <a class="el" href="init_8c.html#aa78606c93951c49eadd8d83d739798d6">init.c</a>
+, <a class="el" href="grpc_8h.html#aa78606c93951c49eadd8d83d739798d6">grpc.h</a>
+</li>
+<li>grpc_insecure_channel_create()
+: <a class="el" href="grpc_8h.html#aa710e7e68b23098900f924cf69797496">grpc.h</a>
+, <a class="el" href="channel__create_8c.html#aa710e7e68b23098900f924cf69797496">channel_create.c</a>
+</li>
+<li>grpc_iocp_add_socket()
+: <a class="el" href="iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_init()
+: <a class="el" href="iocp__windows_8h.html#a74907d635ceee6adf285291336d18807">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_kick()
+: <a class="el" href="iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_shutdown()
+: <a class="el" href="iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_socket_orphan()
+: <a class="el" href="iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac">iocp_windows.h</a>
+</li>
+<li>grpc_iomgr_add_callback()
+: <a class="el" href="iomgr_8h.html#a95b724dc6bbd9b75694251713db00619">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#a95b724dc6bbd9b75694251713db00619">iomgr.c</a>
+</li>
+<li>grpc_iomgr_add_delayed_callback()
+: <a class="el" href="iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">iomgr.h</a>
+, <a class="el" href="iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">iomgr_internal.h</a>
+, <a class="el" href="iomgr_8c.html#a4d3b9286cc4434fad35b6017f6222431">iomgr.c</a>
+</li>
+<li>grpc_iomgr_closure_init()
+: <a class="el" href="iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#ac8b4ae11b78ccbded903c14f69aa7a83">iomgr.c</a>
+</li>
+<li>grpc_iomgr_create_endpoint_pair()
+: <a class="el" href="endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a">endpoint_pair.h</a>
+</li>
+<li>grpc_iomgr_init()
+: <a class="el" href="iomgr_8c.html#a2e26e83c3a2591cbc127dbbc50f5c504">iomgr.c</a>
+, <a class="el" href="iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504">iomgr.h</a>
+</li>
+<li>grpc_iomgr_platform_init()
+: <a class="el" href="iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e">iomgr_internal.h</a>
+</li>
+<li>grpc_iomgr_platform_shutdown()
+: <a class="el" href="iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624">iomgr_internal.h</a>
+</li>
+<li>grpc_iomgr_register_object()
+: <a class="el" href="iomgr_8c.html#a19ac63e9dff7d1543b1a3e556525773e">iomgr.c</a>
+, <a class="el" href="iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e">iomgr_internal.h</a>
+</li>
+<li>grpc_iomgr_shutdown()
+: <a class="el" href="iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#a466909d4101b063c991bbb39ee38ae25">iomgr.c</a>
+</li>
+<li>grpc_iomgr_unregister_object()
+: <a class="el" href="iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a">iomgr_internal.h</a>
+, <a class="el" href="iomgr_8c.html#a82cf3ac6566867546afabf5f08f4aa8a">iomgr.c</a>
+</li>
+<li>grpc_ipv4_resolver_factory_create()
+: <a class="el" href="sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa">sockaddr_resolver.h</a>
+, <a class="el" href="sockaddr__resolver_8c.html#abc4c6c8581ef4f8dc5cf8ec5c79383a1">sockaddr_resolver.c</a>
+</li>
+<li>grpc_ipv6_loopback_available()
+: <a class="el" href="socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563">socket_utils_posix.h</a>
+</li>
+<li>grpc_ipv6_resolver_factory_create()
+: <a class="el" href="sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2">sockaddr_resolver.h</a>
+, <a class="el" href="sockaddr__resolver_8c.html#ad0f24d3cf0da9c53e628da5f60cab92d">sockaddr_resolver.c</a>
+</li>
+<li>grpc_is_binary_header()
+: <a class="el" href="bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a6ce0fde0cf6e820ca0c95dae4653039e">bin_encoder.c</a>
+</li>
+<li>grpc_is_initialized()
+: <a class="el" href="init_8h.html#a9e672384642d6dc0e98df16188beba55">init.h</a>
+, <a class="el" href="init_8c.html#a9e672384642d6dc0e98df16188beba55">init.c</a>
+</li>
+<li>grpc_json_create()
+: <a class="el" href="json_8h.html#a479fecc70a15ea64d52485891615669f">json.h</a>
+, <a class="el" href="json_8c.html#a479fecc70a15ea64d52485891615669f">json.c</a>
+</li>
+<li>grpc_json_destroy()
+: <a class="el" href="json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3">json.h</a>
+, <a class="el" href="json_8c.html#a93347bf054f40cd67dd9a1d46e830ed3">json.c</a>
+</li>
+<li>grpc_json_dump_to_string()
+: <a class="el" href="json_8h.html#a4d51e00e1deba5579a221647ced4cd71">json.h</a>
+, <a class="el" href="json__string_8c.html#a4d51e00e1deba5579a221647ced4cd71">json_string.c</a>
+</li>
+<li>grpc_json_parse_string()
+: <a class="el" href="json_8h.html#ad66397af23c3f5377035d9fc74e4f401">json.h</a>
+, <a class="el" href="json__string_8c.html#ad66397af23c3f5377035d9fc74e4f401">json_string.c</a>
+</li>
+<li>grpc_json_parse_string_with_len()
+: <a class="el" href="json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6">json.h</a>
+, <a class="el" href="json__string_8c.html#ac0d745ec903ab5f5759ebf3bc245b5c6">json_string.c</a>
+</li>
+<li>grpc_json_reader_init()
+: <a class="el" href="json__reader_8c.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">json_reader.c</a>
+, <a class="el" href="json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">json_reader.h</a>
+</li>
+<li>grpc_json_reader_is_complete()
+: <a class="el" href="json__reader_8h.html#aca35ff1405586201c145f8411ce4f611">json_reader.h</a>
+, <a class="el" href="json__reader_8c.html#aca35ff1405586201c145f8411ce4f611">json_reader.c</a>
+</li>
+<li>grpc_json_reader_run()
+: <a class="el" href="json__reader_8c.html#a369a903219dd343358dad9e4cc67cedb">json_reader.c</a>
+, <a class="el" href="json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb">json_reader.h</a>
+</li>
+<li>grpc_json_writer_container_begins()
+: <a class="el" href="json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">json_writer.c</a>
+</li>
+<li>grpc_json_writer_container_ends()
+: <a class="el" href="json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#a8ec853f6ef8940debf36820f6329427e">json_writer.c</a>
+</li>
+<li>grpc_json_writer_init()
+: <a class="el" href="json__writer_8c.html#a9c57757dbd540d5c31db7dbb35274637">json_writer.c</a>
+, <a class="el" href="json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637">json_writer.h</a>
+</li>
+<li>grpc_json_writer_object_key()
+: <a class="el" href="json__writer_8c.html#ae009eea3f345ef9ab454876f81f1ab47">json_writer.c</a>
+, <a class="el" href="json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47">json_writer.h</a>
+</li>
+<li>grpc_json_writer_value_raw()
+: <a class="el" href="json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#afac9ce564b4c11e3ea35082de3bd1747">json_writer.c</a>
+</li>
+<li>grpc_json_writer_value_raw_with_len()
+: <a class="el" href="json__writer_8c.html#a2b88eb7fd1bd939146e86c5b212d8cb5">json_writer.c</a>
+, <a class="el" href="json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5">json_writer.h</a>
+</li>
+<li>grpc_json_writer_value_string()
+: <a class="el" href="json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#aa7e5a12ffddc0cc95bff06c1879a64e0">json_writer.c</a>
+</li>
+<li>grpc_jwt_claims_audience()
+: <a class="el" href="jwt__verifier_8c.html#a19e8de86ed8bb8461969cd07624cb06f">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_check()
+: <a class="el" href="jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a956a1fe237276fbed03e5caee7360c6a">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_destroy()
+: <a class="el" href="jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#aa69d0e75df7133ebfda05f50303f8316">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_expires_at()
+: <a class="el" href="jwt__verifier_8c.html#ab9759b63895dde79be0715b0369cd0c4">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_from_json()
+: <a class="el" href="jwt__verifier_8c.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_id()
+: <a class="el" href="jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a319d836355e40efba372f9baf09bbd54">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_issued_at()
+: <a class="el" href="jwt__verifier_8c.html#a58838743f413ceebbf5b4afd77d7ab7f">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_issuer()
+: <a class="el" href="jwt__verifier_8c.html#a61a1d74e9b150c1a7dccf259d84e8da6">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_json()
+: <a class="el" href="jwt__verifier_8c.html#a4eb1db0055c2992691e1c3e92d65a656">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_not_before()
+: <a class="el" href="jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a1904f0f6a28c8b14a486c932e5db1499">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_subject()
+: <a class="el" href="jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#ac77af641794a3449e94d7d7cb48a50c6">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_encode_and_sign()
+: <a class="el" href="json__token_8c.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">json_token.c</a>
+, <a class="el" href="json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">json_token.h</a>
+</li>
+<li>grpc_jwt_encode_and_sign_set_override()
+: <a class="el" href="json__token_8c.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">json_token.c</a>
+, <a class="el" href="json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">json_token.h</a>
+</li>
+<li>grpc_jwt_verifier_create()
+: <a class="el" href="jwt__verifier_8c.html#acf8e8c06616b9d3006333f63c708a811">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_destroy()
+: <a class="el" href="jwt__verifier_8c.html#a44bac1b48da3adf4d7858f2b40121bab">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_status_to_string()
+: <a class="el" href="jwt__verifier_8c.html#a2aad6c48023145f901a39b5b9ef6b6d3">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_verify()
+: <a class="el" href="jwt__verifier_8c.html#ac9960f7842a141d85b0bb38dd231900d">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d">jwt_verifier.h</a>
+</li>
+<li>grpc_kick_drain()
+: <a class="el" href="pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c">pollset_posix.h</a>
+</li>
+<li>grpc_kick_poller()
+: <a class="el" href="alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f">alarm_internal.h</a>
+, <a class="el" href="iomgr_8c.html#aac483dfd6e19fa9df68620e7f7a0697f">iomgr.c</a>
+</li>
+<li>grpc_kick_read_fd()
+: <a class="el" href="pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b">pollset_posix.h</a>
+</li>
+<li>grpc_lame_client_channel_create()
+: <a class="el" href="lame__client_8c.html#acd59697f4b8bedea662939da3668ab9b">lame_client.c</a>
+, <a class="el" href="grpc_8h.html#acd59697f4b8bedea662939da3668ab9b">grpc.h</a>
+</li>
+<li>grpc_lb_policy_broadcast()
+: <a class="el" href="lb__policy_8c.html#a1d03d2f71dda12c97863cf387559e47a">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_check_connectivity()
+: <a class="el" href="lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#a115550f997d572ed49c8906c2cb347b8">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_exit_idle()
+: <a class="el" href="lb__policy_8c.html#a163a863a51690daa93984d7b7bd0ac88">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_init()
+: <a class="el" href="lb__policy_8c.html#aa20fbb7fdf68dadcae6aaba3e227ac50">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_notify_on_state_change()
+: <a class="el" href="lb__policy_8c.html#a246a7f5b971f672fa6a8dba8d7264790">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_pick()
+: <a class="el" href="lb__policy_8h.html#a31611c6d703434b360e90062a28e5140">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#a31611c6d703434b360e90062a28e5140">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_ref()
+: <a class="el" href="lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_shutdown()
+: <a class="el" href="lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_unref()
+: <a class="el" href="lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942">lb_policy.c</a>
+</li>
+<li>grpc_maybe_call_delayed_callbacks()
+: <a class="el" href="iomgr_8c.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">iomgr.c</a>
+, <a class="el" href="iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">iomgr_internal.h</a>
+</li>
+<li>grpc_mdctx_create()
+: <a class="el" href="metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a207b09a54f3c57a90b5b44868fbf5649">metadata.c</a>
+</li>
+<li>grpc_mdctx_create_with_seed()
+: <a class="el" href="metadata_8c.html#a29700f3749eea2c96f7bae1d57f8f7e3">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3">metadata.h</a>
+</li>
+<li>grpc_mdctx_get_mdtab_capacity_test_only()
+: <a class="el" href="metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a655a0f22cc71643674124ced4ce5018d">metadata.c</a>
+</li>
+<li>grpc_mdctx_get_mdtab_count_test_only()
+: <a class="el" href="metadata_8c.html#aba47aef8a83c845dd6ec3dc366fcfdab">metadata.c</a>
+, <a class="el" href="metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92">metadata.h</a>
+</li>
+<li>grpc_mdctx_get_mdtab_free_test_only()
+: <a class="el" href="metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a8a7b1b8046529252525680692d7dd68a">metadata.c</a>
+</li>
+<li>grpc_mdctx_lock()
+: <a class="el" href="metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a390eb255a6d72a8ea84ac8ad3cbeb331">metadata.c</a>
+</li>
+<li>grpc_mdctx_locked_mdelem_unref()
+: <a class="el" href="metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739">metadata.c</a>
+</li>
+<li>grpc_mdctx_ref()
+: <a class="el" href="metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a0293b53029721bf7013af7466efbd324">metadata.c</a>
+</li>
+<li>grpc_mdctx_unlock()
+: <a class="el" href="metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a033690c1ac25d72fdc5e56e9f5d9e97b">metadata.c</a>
+</li>
+<li>grpc_mdctx_unref()
+: <a class="el" href="metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3">metadata.h</a>
+, <a class="el" href="metadata_8c.html#ae80c7476ff57db4121dc9d8fef9e5670">metadata.c</a>
+</li>
+<li>grpc_mdelem_from_metadata_strings()
+: <a class="el" href="metadata_8h.html#a969845603738428cf18a9a090896e152">metadata.h</a>
+, <a class="el" href="metadata_8c.html#afc5656c1cd10a6f2e7cebebff10c25a4">metadata.c</a>
+</li>
+<li>grpc_mdelem_from_slices()
+: <a class="el" href="metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a5b5ad2d68dd8c76345170f5f732b8fa2">metadata.c</a>
+</li>
+<li>grpc_mdelem_from_string_and_buffer()
+: <a class="el" href="metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">metadata.c</a>
+</li>
+<li>grpc_mdelem_from_strings()
+: <a class="el" href="metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a6535f623fc2bd818158d96f6a37f73c8">metadata.c</a>
+</li>
+<li>grpc_mdelem_get_user_data()
+: <a class="el" href="metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">metadata.c</a>
+</li>
+<li>grpc_mdelem_ref()
+: <a class="el" href="metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2">metadata.c</a>
+, <a class="el" href="metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615">metadata.h</a>
+</li>
+<li>grpc_mdelem_set_user_data()
+: <a class="el" href="metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a6d0f62841408f1a89773aa4ef54dcf0e">metadata.c</a>
+</li>
+<li>grpc_mdelem_unref()
+: <a class="el" href="metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a51228fa7618a8f6503e605709d893a25">metadata.c</a>
+</li>
+<li>grpc_mdstr_as_base64_encoded_and_huffman_compressed()
+: <a class="el" href="metadata_8h.html#a314273fea07852ac80ea184100398c11">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a0bc211dd30038c1366a614647abdcf08">metadata.c</a>
+</li>
+<li>grpc_mdstr_as_c_string()
+: <a class="el" href="metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895">metadata.h</a>
+, <a class="el" href="metadata_8c.html#aacbae6a08b63835ec31fcddb556aa895">metadata.c</a>
+</li>
+<li>grpc_mdstr_from_buffer()
+: <a class="el" href="metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a357ead79c52ee284bb190bae970d8457">metadata.c</a>
+</li>
+<li>grpc_mdstr_from_slice()
+: <a class="el" href="metadata_8c.html#a4eccbbb62d87a131d2eb3367fd2c4c43">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43">metadata.h</a>
+</li>
+<li>grpc_mdstr_from_string()
+: <a class="el" href="metadata_8h.html#af961acf0149066abf14c01f56a3e2b55">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a30a9ea36693c48da5072719f6ae7de6d">metadata.c</a>
+</li>
+<li>grpc_mdstr_is_bin_suffixed()
+: <a class="el" href="metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74">metadata.h</a>
+, <a class="el" href="metadata_8c.html#ad34887fb9c6733916ac87b8fde793e74">metadata.c</a>
+</li>
+<li>grpc_mdstr_is_legal_header()
+: <a class="el" href="metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a427ad60503ae8ce87bcfa0aa09fe99a5">metadata.c</a>
+</li>
+<li>grpc_mdstr_ref()
+: <a class="el" href="metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a85a25deeeea31c616e326b765043b9c9">metadata.c</a>
+</li>
+<li>grpc_mdstr_unref()
+: <a class="el" href="metadata_8h.html#a6ba2e968699daaddaad9b48b78779465">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3">metadata.c</a>
+</li>
+<li>grpc_metadata_array_destroy()
+: <a class="el" href="grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44">grpc.h</a>
+, <a class="el" href="metadata__array_8c.html#aad125726d8b689cc5fc1a0444c91ed44">metadata_array.c</a>
+</li>
+<li>grpc_metadata_array_init()
+: <a class="el" href="grpc_8h.html#a52cfda44034115720a0e88037dedbfb5">grpc.h</a>
+, <a class="el" href="metadata__array_8c.html#a52cfda44034115720a0e88037dedbfb5">metadata_array.c</a>
+</li>
+<li>grpc_metadata_batch_add_head()
+: <a class="el" href="stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a845453663a8db6cd2624ed92d63b2003">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_add_tail()
+: <a class="el" href="stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a31f318cbb2f1fdb6372fdc4891e74d01">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_assert_ok()
+: <a class="el" href="stream__op_8c.html#a5107cb817e5019fc9f9e7fdd99e54c0e">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_destroy()
+: <a class="el" href="stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#afc4867b9d7a952f003c5494120b59c08">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_filter()
+: <a class="el" href="stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a754411d9f54fc8762416abf0c148afcf">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_init()
+: <a class="el" href="stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a56d5ee4a6e415827935accfe449dc770">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_link_head()
+: <a class="el" href="stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a8c6af9205b51577ab879b07d9954d32b">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_link_tail()
+: <a class="el" href="stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a6a07ac989d86142e60bd17525f7f509e">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_merge()
+: <a class="el" href="stream__op_8h.html#adf6ee05d9443f295076015da3428f12a">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#adf6ee05d9443f295076015da3428f12a">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_move()
+: <a class="el" href="stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a719845dfd6b62fb62a75d9776396154e">stream_op.c</a>
+</li>
+<li>grpc_msg_compress()
+: <a class="el" href="message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd">message_compress.h</a>
+, <a class="el" href="message__compress_8c.html#ad77078989bef6661528ca2e22223d8cd">message_compress.c</a>
+</li>
+<li>grpc_msg_decompress()
+: <a class="el" href="message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0">message_compress.h</a>
+, <a class="el" href="message__compress_8c.html#a3453eb197bbea1ad5dbc57561d9352f0">message_compress.c</a>
+</li>
+<li>grpc_oauth2_token_fetcher_credentials_parse_server_response()
+: <a class="el" href="credentials_8h.html#af0dac46697efd780811863ee13c73fbd">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a642f68664ea54ce67c7f752c33e01877">credentials.c</a>
+</li>
+<li>grpc_op_string()
+: <a class="el" href="call__log__batch_8c.html#a20665cb5606e67c3748f0df7c3f93998">call_log_batch.c</a>
+</li>
+<li>grpc_poll_become_multipoller()
+: <a class="el" href="pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102">pollset_posix.h</a>
+</li>
+<li>grpc_poll_deadline_to_millis_timeout()
+: <a class="el" href="pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_add_fd()
+: <a class="el" href="pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_del_fd()
+: <a class="el" href="pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_destroy()
+: <a class="el" href="pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f">pollset.h</a>
+</li>
+<li>grpc_pollset_force_kick()
+: <a class="el" href="pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_global_init()
+: <a class="el" href="iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a">iomgr_posix.h</a>
+</li>
+<li>grpc_pollset_global_shutdown()
+: <a class="el" href="iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688">iomgr_posix.h</a>
+</li>
+<li>grpc_pollset_init()
+: <a class="el" href="pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b">pollset.h</a>
+</li>
+<li>grpc_pollset_kick()
+: <a class="el" href="pollset_8h.html#a395a3872723c67d877799cdc79ae7f48">pollset.h</a>
+</li>
+<li>grpc_pollset_kick_consume()
+: <a class="el" href="pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_destroy()
+: <a class="el" href="pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_global_destroy()
+: <a class="el" href="pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_global_init()
+: <a class="el" href="pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_global_init_fallback_fd()
+: <a class="el" href="pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_init()
+: <a class="el" href="pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_kick()
+: <a class="el" href="pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_post_poll()
+: <a class="el" href="pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_pre_poll()
+: <a class="el" href="pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_set_add_fd()
+: <a class="el" href="pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c">pollset_set_posix.h</a>
+</li>
+<li>grpc_pollset_set_add_pollset()
+: <a class="el" href="pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2">pollset_set.h</a>
+</li>
+<li>grpc_pollset_set_del_fd()
+: <a class="el" href="pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414">pollset_set_posix.h</a>
+</li>
+<li>grpc_pollset_set_del_pollset()
+: <a class="el" href="pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0">pollset_set.h</a>
+</li>
+<li>grpc_pollset_set_destroy()
+: <a class="el" href="pollset__set_8h.html#af4b47eef823139b714d759e49495fafd">pollset_set.h</a>
+</li>
+<li>grpc_pollset_set_init()
+: <a class="el" href="pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c">pollset_set.h</a>
+</li>
+<li>grpc_pollset_shutdown()
+: <a class="el" href="pollset_8h.html#a85616767facacdf95dfc4fe564352e87">pollset.h</a>
+</li>
+<li>grpc_pollset_work()
+: <a class="el" href="pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd">pollset.h</a>
+</li>
+<li>grpc_raw_byte_buffer_create()
+: <a class="el" href="byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a1aaaa0d8a1609166e0b0bb2b42332618">byte_buffer.c</a>
+</li>
+<li>grpc_raw_byte_buffer_from_reader()
+: <a class="el" href="byte__buffer_8c.html#a9b4f877e32f45e0e704970e89582e0df">byte_buffer.c</a>
+, <a class="el" href="byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df">byte_buffer.h</a>
+</li>
+<li>grpc_raw_compressed_byte_buffer_create()
+: <a class="el" href="byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#af9801acc1dbfd02b2c51ed9d504cd12b">byte_buffer.c</a>
+</li>
+<li>grpc_refresh_token_credentials_create()
+: <a class="el" href="credentials_8c.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">grpc_security.h</a>
+</li>
+<li>grpc_refresh_token_credentials_create_from_auth_refresh_token()
+: <a class="el" href="credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a0effe35d7112502e48014662eb7015cf">credentials.c</a>
+</li>
+<li>grpc_register_resolver_type()
+: <a class="el" href="resolver__registry_8c.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">resolver_registry.c</a>
+, <a class="el" href="resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">resolver_registry.h</a>
+</li>
+<li>grpc_register_tracer()
+: <a class="el" href="trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">trace.h</a>
+, <a class="el" href="trace_8c.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">trace.c</a>
+</li>
+<li>grpc_resolve_address()
+: <a class="el" href="resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea">resolve_address.h</a>
+</li>
+<li>grpc_resolved_addresses_destroy()
+: <a class="el" href="resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c">resolve_address.h</a>
+</li>
+<li>grpc_resolver_channel_saw_error()
+: <a class="el" href="resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e">resolver.h</a>
+, <a class="el" href="resolver_8c.html#a118536c3b62613e957e10ce9cb602e6e">resolver.c</a>
+</li>
+<li>grpc_resolver_create()
+: <a class="el" href="resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0">resolver_registry.h</a>
+, <a class="el" href="resolver__registry_8c.html#a42ba392534ac248b5a4ac1f87cd9b3b0">resolver_registry.c</a>
+</li>
+<li>grpc_resolver_factory_create_resolver()
+: <a class="el" href="resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d">resolver_factory.h</a>
+, <a class="el" href="resolver__factory_8c.html#a27c578ca66348965f7d3810d0c6fc65d">resolver_factory.c</a>
+</li>
+<li>grpc_resolver_factory_ref()
+: <a class="el" href="resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba">resolver_factory.h</a>
+, <a class="el" href="resolver__factory_8c.html#ad5938bfb397011e5e7f4f8d048102e9c">resolver_factory.c</a>
+</li>
+<li>grpc_resolver_factory_unref()
+: <a class="el" href="resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f">resolver_factory.h</a>
+, <a class="el" href="resolver__factory_8c.html#aff39a6960a452dbc2537ad83b3cefe84">resolver_factory.c</a>
+</li>
+<li>grpc_resolver_init()
+: <a class="el" href="resolver_8c.html#ac806a2edf4f2073529eec1319db9fde4">resolver.c</a>
+, <a class="el" href="resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4">resolver.h</a>
+</li>
+<li>grpc_resolver_next()
+: <a class="el" href="resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729">resolver.h</a>
+, <a class="el" href="resolver_8c.html#ac5ef07f9efdd2a39f2239207cc060729">resolver.c</a>
+</li>
+<li>grpc_resolver_ref()
+: <a class="el" href="resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211">resolver.h</a>
+, <a class="el" href="resolver_8c.html#a364d687b496e862cd5830d3aed899f4f">resolver.c</a>
+</li>
+<li>grpc_resolver_registry_init()
+: <a class="el" href="resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0">resolver_registry.h</a>
+, <a class="el" href="resolver__registry_8c.html#ac7c093f883b89670df4f0e6a42a9a77c">resolver_registry.c</a>
+</li>
+<li>grpc_resolver_registry_shutdown()
+: <a class="el" href="resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6">resolver_registry.h</a>
+, <a class="el" href="resolver__registry_8c.html#a7e9178815fe26123c9413514e1212ca6">resolver_registry.c</a>
+</li>
+<li>grpc_resolver_shutdown()
+: <a class="el" href="resolver_8h.html#ae7b200016c3489c0bb3de525198b435b">resolver.h</a>
+, <a class="el" href="resolver_8c.html#ae7b200016c3489c0bb3de525198b435b">resolver.c</a>
+</li>
+<li>grpc_resolver_unref()
+: <a class="el" href="resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9">resolver.c</a>
+, <a class="el" href="resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d">resolver.h</a>
+</li>
+<li>grpc_secure_channel_create()
+: <a class="el" href="grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4">grpc_security.h</a>
+, <a class="el" href="secure__channel__create_8c.html#a4d63d4cac74652ec3fac7782acb4a2d4">secure_channel_create.c</a>
+</li>
+<li>grpc_secure_endpoint_create()
+: <a class="el" href="secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66">secure_endpoint.h</a>
+, <a class="el" href="secure__endpoint_8c.html#a76ef547d32b0955572a841108518e611">secure_endpoint.c</a>
+</li>
+<li>grpc_security_connector_check_peer()
+: <a class="el" href="security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#aac9a5d6c38755b24c7170789056dec94">security_connector.c</a>
+</li>
+<li>grpc_security_connector_create_handshaker()
+: <a class="el" href="security__connector_8c.html#af81a7b903de0636a73b0e852b36a7fde">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde">security_connector.h</a>
+</li>
+<li>grpc_security_connector_from_arg()
+: <a class="el" href="security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#aa427ef1fd3d8e58437215f4da2fd87ca">security_connector.c</a>
+</li>
+<li>grpc_security_connector_ref()
+: <a class="el" href="security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4">security_connector.h</a>
+</li>
+<li>grpc_security_connector_to_arg()
+: <a class="el" href="security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#ab609527dad74bcc51e4b8b17b8f47c8a">security_connector.c</a>
+</li>
+<li>grpc_security_connector_unref()
+: <a class="el" href="security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e">security_connector.h</a>
+</li>
+<li>grpc_security_pre_init()
+: <a class="el" href="init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7">init.h</a>
+, <a class="el" href="init__secure_8c.html#a7cfa0e02a966bf937b5d69e10fad2ef7">init_secure.c</a>
+</li>
+<li>grpc_server_add_http2_port()
+: <a class="el" href="grpc_8h.html#a48cab64480658b97a775b2c7837456f9">grpc.h</a>
+, <a class="el" href="server__chttp2_8c.html#a48cab64480658b97a775b2c7837456f9">server_chttp2.c</a>
+</li>
+<li>grpc_server_add_listener()
+: <a class="el" href="server_8h.html#afba4e38403fa34a317c44de9bae41105">server.h</a>
+, <a class="el" href="server_8c.html#a777b461e0fd2a56acd35caf54f3d88e6">server.c</a>
+</li>
+<li>grpc_server_add_secure_http2_port()
+: <a class="el" href="server__secure__chttp2_8c.html#a5d0db200d00b62b79138472dc9b1fe59">server_secure_chttp2.c</a>
+, <a class="el" href="grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59">grpc_security.h</a>
+</li>
+<li>grpc_server_cancel_all_calls()
+: <a class="el" href="grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803">grpc.h</a>
+, <a class="el" href="server_8c.html#ac5c1e4f3e270a7afbc39403fff0dc803">server.c</a>
+</li>
+<li>grpc_server_create()
+: <a class="el" href="server__create_8c.html#a4036710ea12eccabbbbf050d6bad4cd4">server_create.c</a>
+, <a class="el" href="grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4">grpc.h</a>
+</li>
+<li>grpc_server_create_from_filters()
+: <a class="el" href="server_8c.html#a870e9abac807e8ba2578df7d9526f8c0">server.c</a>
+, <a class="el" href="server_8h.html#a870e9abac807e8ba2578df7d9526f8c0">server.h</a>
+</li>
+<li>grpc_server_credentials_create_security_connector()
+: <a class="el" href="credentials_8c.html#acc8fc30e87ddec6ff87dd6676215755a">credentials.c</a>
+, <a class="el" href="credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a">credentials.h</a>
+</li>
+<li>grpc_server_credentials_release()
+: <a class="el" href="grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a6e9f9320f4f8d2d534d04ed642f032ea">credentials.c</a>
+</li>
+<li>grpc_server_destroy()
+: <a class="el" href="server_8c.html#a34cba45da7c32a21ac82305d670e4620">server.c</a>
+, <a class="el" href="grpc_8h.html#a34cba45da7c32a21ac82305d670e4620">grpc.h</a>
+</li>
+<li>grpc_server_get_channel_args()
+: <a class="el" href="server_8h.html#a263c42634aa706458d691565943c6cae">server.h</a>
+, <a class="el" href="server_8c.html#a263c42634aa706458d691565943c6cae">server.c</a>
+</li>
+<li>grpc_server_has_open_connections()
+: <a class="el" href="server_8c.html#a28a4697b500cd4867a9f6731c8e58a94">server.c</a>
+, <a class="el" href="server_8h.html#a28a4697b500cd4867a9f6731c8e58a94">server.h</a>
+</li>
+<li>grpc_server_listener_destroy_done()
+: <a class="el" href="server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9">server.h</a>
+, <a class="el" href="server_8c.html#a57b25ccc5ec64affd1ade91554a81092">server.c</a>
+</li>
+<li>grpc_server_log_request_call()
+: <a class="el" href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a731e08efd7f3cab089d2239f0ed931d5">call_log_batch.c</a>
+</li>
+<li>grpc_server_log_shutdown()
+: <a class="el" href="call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89">call_log_batch.c</a>
+</li>
+<li>grpc_server_register_completion_queue()
+: <a class="el" href="server_8c.html#ac174712f87fdae4b5757a1370e2a31cb">server.c</a>
+, <a class="el" href="grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb">grpc.h</a>
+</li>
+<li>grpc_server_register_method()
+: <a class="el" href="grpc_8h.html#a283062a2209f464f234b0e645c6fffb2">grpc.h</a>
+, <a class="el" href="server_8c.html#a283062a2209f464f234b0e645c6fffb2">server.c</a>
+</li>
+<li>grpc_server_request_call()
+: <a class="el" href="grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257">grpc.h</a>
+, <a class="el" href="server_8c.html#a419670c3509bc3c67c1344be3a1c4dbf">server.c</a>
+</li>
+<li>grpc_server_request_registered_call()
+: <a class="el" href="server_8c.html#a82bc2345fb113c461e255364d8d192b5">server.c</a>
+, <a class="el" href="grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de">grpc.h</a>
+</li>
+<li>grpc_server_security_context_create()
+: <a class="el" href="security__context_8c.html#afa8c88dfb1be5add6af3143eeb76460a">security_context.c</a>
+, <a class="el" href="security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a">security_context.h</a>
+</li>
+<li>grpc_server_security_context_destroy()
+: <a class="el" href="security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a86caf02cd607c3ff6f1e6657ffa5c17a">security_context.c</a>
+</li>
+<li>grpc_server_setup_transport()
+: <a class="el" href="server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc">server.h</a>
+, <a class="el" href="server_8c.html#a26fd88680fa7949f4af879acdc249d8d">server.c</a>
+</li>
+<li>grpc_server_shutdown_and_notify()
+: <a class="el" href="server_8c.html#a56fffa23c1c4bab9a469e2ac607b6db7">server.c</a>
+, <a class="el" href="grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7">grpc.h</a>
+</li>
+<li>grpc_server_start()
+: <a class="el" href="server_8c.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">server.c</a>
+, <a class="el" href="grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">grpc.h</a>
+</li>
+<li>grpc_service_account_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a15aa83608fad085b6244de659d322b27">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a15aa83608fad085b6244de659d322b27">credentials.c</a>
+</li>
+<li>grpc_service_account_jwt_access_credentials_create()
+: <a class="el" href="credentials_8c.html#af26993774cc991debd61e4a84ed49187">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#af26993774cc991debd61e4a84ed49187">grpc_security.h</a>
+</li>
+<li>grpc_service_account_jwt_access_credentials_create_from_auth_json_key()
+: <a class="el" href="credentials_8h.html#a26715660e319377bdfc4f2476ff35505">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a26715660e319377bdfc4f2476ff35505">credentials.c</a>
+</li>
+<li>grpc_set_socket_cloexec()
+: <a class="el" href="socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_low_latency()
+: <a class="el" href="socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_no_sigpipe_if_possible()
+: <a class="el" href="socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_nonblocking()
+: <a class="el" href="socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_reuse_addr()
+: <a class="el" href="socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79">socket_utils_posix.h</a>
+</li>
+<li>grpc_setup_secure_transport()
+: <a class="el" href="secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8">secure_transport_setup.h</a>
+, <a class="el" href="secure__transport__setup_8c.html#abf337cd72839248e089c1646f8fa7bc8">secure_transport_setup.c</a>
+</li>
+<li>grpc_shutdown()
+: <a class="el" href="grpc_8h.html#af1130720e50ffedd0bb065c84843b032">grpc.h</a>
+, <a class="el" href="init_8c.html#af1130720e50ffedd0bb065c84843b032">init.c</a>
+</li>
+<li>grpc_sockaddr_get_port()
+: <a class="el" href="sockaddr__utils_8c.html#a9b9c605d240e9358a23f29c4cf07b1da">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_is_v4mapped()
+: <a class="el" href="sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a97d452690214de3809f667f95dda80ce">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_is_wildcard()
+: <a class="el" href="sockaddr__utils_8c.html#aed4ad468c36fc0a4531025c5fa2185a2">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_make_wildcard4()
+: <a class="el" href="sockaddr__utils_8c.html#a89be072619a282936b8c1f99c5af254e">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_make_wildcard6()
+: <a class="el" href="sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a1a8a1c666324ed6d23077a0dd77bd2b8">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_make_wildcards()
+: <a class="el" href="sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a3cb44f54c6743ff32dc31147ca6a6721">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_set_port()
+: <a class="el" href="sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#ad73cd02c052e82778b7df5378ded462d">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_to_string()
+: <a class="el" href="sockaddr__utils_8c.html#a400a51bd46384a6e0b28136274765464">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_to_uri()
+: <a class="el" href="sockaddr__utils_8c.html#a8545a440d2d91365d75ed87720891a91">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_to_v4mapped()
+: <a class="el" href="sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a606efe4550fb7947fb36ff6a0231ac79">sockaddr_utils.c</a>
+</li>
+<li>grpc_socket_notify_on_read()
+: <a class="el" href="iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00">iocp_windows.h</a>
+</li>
+<li>grpc_socket_notify_on_write()
+: <a class="el" href="iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38">iocp_windows.h</a>
+</li>
+<li>grpc_sopb_add_begin_message()
+: <a class="el" href="stream__op_8c.html#a6b1565cc1ec9aba1eef5c21318e088b9">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9">stream_op.h</a>
+</li>
+<li>grpc_sopb_add_metadata()
+: <a class="el" href="stream__op_8c.html#aea2cbf38a752864f62dc8d2cdc58a50a">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb">stream_op.h</a>
+</li>
+<li>grpc_sopb_add_no_op()
+: <a class="el" href="stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#abe45d7a6778fc0e248e490dfb635d850">stream_op.c</a>
+</li>
+<li>grpc_sopb_add_slice()
+: <a class="el" href="stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#aa2a412545fb6bb4055f3437f1d261f69">stream_op.c</a>
+</li>
+<li>grpc_sopb_append()
+: <a class="el" href="stream__op_8c.html#a55100e31b3cc23733ba42bb5e2f38818">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818">stream_op.h</a>
+</li>
+<li>grpc_sopb_destroy()
+: <a class="el" href="stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#aef34bb8bc5d02c10304fa93de76604d1">stream_op.c</a>
+</li>
+<li>grpc_sopb_init()
+: <a class="el" href="stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#ac06c5c016030ab760ce1c190ea9c0935">stream_op.c</a>
+</li>
+<li>grpc_sopb_move_to()
+: <a class="el" href="stream__op_8c.html#abf812a361634fee304b636fccde7c934">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#abf812a361634fee304b636fccde7c934">stream_op.h</a>
+</li>
+<li>grpc_sopb_reset()
+: <a class="el" href="stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">stream_op.c</a>
+</li>
+<li>grpc_sopb_string()
+: <a class="el" href="transport__op__string_8c.html#a225a70176577da4097ecad0b8c647fee">transport_op_string.c</a>
+, <a class="el" href="stream__op_8h.html#a225a70176577da4097ecad0b8c647fee">stream_op.h</a>
+</li>
+<li>grpc_sopb_swap()
+: <a class="el" href="stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">stream_op.c</a>
+</li>
+<li>grpc_ssl_channel_security_connector_create()
+: <a class="el" href="security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a6db43510beb4d3953f572cbe203c164d">security_connector.c</a>
+</li>
+<li>grpc_ssl_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a0d627ca897718091e4ceca5dce3ef10e">credentials.c</a>
+</li>
+<li>grpc_ssl_server_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a3382907a4689c034a6f55bab4d5135b9">credentials.c</a>
+</li>
+<li>grpc_ssl_server_security_connector_create()
+: <a class="el" href="security__connector_8h.html#af0fc288920d58432af4285ec56251248">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#af0fc288920d58432af4285ec56251248">security_connector.c</a>
+</li>
+<li>grpc_stream_ops_unref_owned_objects()
+: <a class="el" href="stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#af06b21376669ed6bf358f50a57e02d9d">stream_op.c</a>
+</li>
+<li>grpc_subchannel_add_interested_party()
+: <a class="el" href="subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#ad64aa215ea81487204c6598b4f1572ae">subchannel.c</a>
+</li>
+<li>grpc_subchannel_call_get_peer()
+: <a class="el" href="subchannel_8c.html#a552e894b75a9a67f00e4ae312a94cc00">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_process_op()
+: <a class="el" href="subchannel_8c.html#a0128c4e7cd5939061ea02780e5fa33ae">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_ref()
+: <a class="el" href="subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_unref()
+: <a class="el" href="subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53">subchannel.h</a>
+</li>
+<li>grpc_subchannel_check_connectivity()
+: <a class="el" href="subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#a92711f9b7c8df9415249685a9c91f2c9">subchannel.c</a>
+</li>
+<li>grpc_subchannel_create()
+: <a class="el" href="subchannel_8c.html#a5220a721bb5ad91bffbddd12045efff8">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8">subchannel.h</a>
+</li>
+<li>grpc_subchannel_create_call()
+: <a class="el" href="subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#aa6b5c676351c4f7f33b903549edab3b7">subchannel.c</a>
+</li>
+<li>grpc_subchannel_del_interested_party()
+: <a class="el" href="subchannel_8c.html#a72bfe59d8ad11465896034281729279b">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#aa8ea5c658e34de467db80c269231e676">subchannel.h</a>
+</li>
+<li>grpc_subchannel_factory_add_channel_arg()
+: <a class="el" href="add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34">add_channel_arg.h</a>
+, <a class="el" href="add__channel__arg_8c.html#aec70a5daa15f33d18edc47ebc0270c34">add_channel_arg.c</a>
+</li>
+<li>grpc_subchannel_factory_create_subchannel()
+: <a class="el" href="subchannel__factory_8c.html#a50ecfa3c06af1f867684d3c238cedf20">subchannel_factory.c</a>
+, <a class="el" href="subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20">subchannel_factory.h</a>
+</li>
+<li>grpc_subchannel_factory_merge_channel_args()
+: <a class="el" href="merge__channel__args_8c.html#a4dc574355128feee36ad9500f9ae8cc0">merge_channel_args.c</a>
+, <a class="el" href="merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0">merge_channel_args.h</a>
+</li>
+<li>grpc_subchannel_factory_ref()
+: <a class="el" href="subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">subchannel_factory.h</a>
+, <a class="el" href="subchannel__factory_8c.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">subchannel_factory.c</a>
+</li>
+<li>grpc_subchannel_factory_unref()
+: <a class="el" href="subchannel__factory_8c.html#ac502341f23676007c8ccd5338f942e82">subchannel_factory.c</a>
+, <a class="el" href="subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82">subchannel_factory.h</a>
+</li>
+<li>grpc_subchannel_notify_on_state_change()
+: <a class="el" href="subchannel_8c.html#ac2e59a5c3a44ba0827b27ccba866389b">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776">subchannel.h</a>
+</li>
+<li>grpc_subchannel_process_transport_op()
+: <a class="el" href="subchannel_8c.html#a9b95251da4779ae913c33f380a1c33c4">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1">subchannel.h</a>
+</li>
+<li>grpc_subchannel_ref()
+: <a class="el" href="subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4">subchannel.h</a>
+</li>
+<li>grpc_subchannel_unref()
+: <a class="el" href="subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f">subchannel.c</a>
+</li>
+<li>grpc_tcp_client_connect()
+: <a class="el" href="tcp__client_8h.html#a086207583509b040c4fff779333468cd">tcp_client.h</a>
+</li>
+<li>grpc_tcp_create()
+: <a class="el" href="tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05">tcp_posix.h</a>
+, <a class="el" href="tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483">tcp_windows.h</a>
+</li>
+<li>grpc_tcp_prepare_socket()
+: <a class="el" href="tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c">tcp_windows.h</a>
+</li>
+<li>grpc_tcp_server_add_port()
+: <a class="el" href="tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_create()
+: <a class="el" href="tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_destroy()
+: <a class="el" href="tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_get_fd()
+: <a class="el" href="tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_start()
+: <a class="el" href="tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7">tcp_server.h</a>
+</li>
+<li>grpc_time_averaged_stats_add_sample()
+: <a class="el" href="time__averaged__stats_8c.html#a3fc252070ff8ec7010c74774a042e54d">time_averaged_stats.c</a>
+, <a class="el" href="time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d">time_averaged_stats.h</a>
+</li>
+<li>grpc_time_averaged_stats_init()
+: <a class="el" href="time__averaged__stats_8c.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">time_averaged_stats.c</a>
+, <a class="el" href="time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">time_averaged_stats.h</a>
+</li>
+<li>grpc_time_averaged_stats_update_average()
+: <a class="el" href="time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26">time_averaged_stats.h</a>
+, <a class="el" href="time__averaged__stats_8c.html#a811009e64ef5f5b88021d5aa08ceaf26">time_averaged_stats.c</a>
+</li>
+<li>grpc_timer_add_important_mark()
+: <a class="el" href="timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744">timers.h</a>
+</li>
+<li>grpc_timer_add_mark()
+: <a class="el" href="timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746">timers.h</a>
+</li>
+<li>grpc_timer_begin()
+: <a class="el" href="timers_8h.html#a9ad8a62da486b38462306e41127231ea">timers.h</a>
+</li>
+<li>grpc_timer_end()
+: <a class="el" href="timers_8h.html#a810b9be124a21ed5c4066f2e74112e74">timers.h</a>
+</li>
+<li>grpc_timers_global_destroy()
+: <a class="el" href="timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13">timers.h</a>
+, <a class="el" href="basic__timers_8c.html#a3464d3fdd0cc9ab2543195d5ee3fec13">basic_timers.c</a>
+</li>
+<li>grpc_timers_global_init()
+: <a class="el" href="timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac">timers.h</a>
+, <a class="el" href="basic__timers_8c.html#ac34b4d619b9ed067e02e037b21a6feac">basic_timers.c</a>
+</li>
+<li>grpc_tracer_init()
+: <a class="el" href="trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2">trace.h</a>
+, <a class="el" href="trace_8c.html#a6875f9ce4490e731d36e872ab1b7d580">trace.c</a>
+</li>
+<li>grpc_tracer_set_enabled()
+: <a class="el" href="trace_8c.html#ae6984d3f0c3b9bc9a47859fd4dddc350">trace.c</a>
+, <a class="el" href="grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350">grpc.h</a>
+</li>
+<li>grpc_tracer_shutdown()
+: <a class="el" href="trace_8c.html#ad5ced3b2457db3a480e13e6e268543d2">trace.c</a>
+, <a class="el" href="trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2">trace.h</a>
+</li>
+<li>grpc_transport_close()
+: <a class="el" href="transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e">transport.h</a>
+</li>
+<li>grpc_transport_destroy()
+: <a class="el" href="transport_8h.html#adb3ef83552276a5161ff6733f8455ae1">transport.h</a>
+, <a class="el" href="transport_8c.html#adb3ef83552276a5161ff6733f8455ae1">transport.c</a>
+</li>
+<li>grpc_transport_destroy_stream()
+: <a class="el" href="transport_8c.html#a21223037b0bc6a92a9e058e20be1b0af">transport.c</a>
+, <a class="el" href="transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af">transport.h</a>
+</li>
+<li>grpc_transport_get_peer()
+: <a class="el" href="transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e">transport.h</a>
+, <a class="el" href="transport_8c.html#ac32bf69379cb94e6f951a4ec45a6157e">transport.c</a>
+</li>
+<li>grpc_transport_goaway()
+: <a class="el" href="transport_8h.html#aea30a551f2d7a27edd9ddc9441523818">transport.h</a>
+</li>
+<li>grpc_transport_init_stream()
+: <a class="el" href="transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc">transport.h</a>
+, <a class="el" href="transport_8c.html#aba013c9e53a24f223283fc78cb6ca6cc">transport.c</a>
+</li>
+<li>grpc_transport_perform_op()
+: <a class="el" href="transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3">transport.h</a>
+, <a class="el" href="transport_8c.html#ae52662de3568a1d961e60e83d28e2dc3">transport.c</a>
+</li>
+<li>grpc_transport_perform_stream_op()
+: <a class="el" href="transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b">transport.h</a>
+, <a class="el" href="transport_8c.html#a81c2ae26b7109481d4538b48c15d5b1b">transport.c</a>
+</li>
+<li>grpc_transport_ping()
+: <a class="el" href="transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc">transport.h</a>
+</li>
+<li>grpc_transport_stream_op_add_cancellation()
+: <a class="el" href="transport_8h.html#ad1deb9664db9760e156951542378fe11">transport.h</a>
+, <a class="el" href="transport_8c.html#ad1deb9664db9760e156951542378fe11">transport.c</a>
+</li>
+<li>grpc_transport_stream_op_finish_with_failure()
+: <a class="el" href="transport_8h.html#ac5aa9757a292d71026279316979b8e40">transport.h</a>
+, <a class="el" href="transport_8c.html#ac5aa9757a292d71026279316979b8e40">transport.c</a>
+</li>
+<li>grpc_transport_stream_op_string()
+: <a class="el" href="transport__op__string_8c.html#a058362edba570c120d125091b3c006d2">transport_op_string.c</a>
+, <a class="el" href="transport_8h.html#a058362edba570c120d125091b3c006d2">transport.h</a>
+</li>
+<li>grpc_transport_stream_size()
+: <a class="el" href="transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">transport.h</a>
+, <a class="el" href="transport_8c.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">transport.c</a>
+</li>
+<li>grpc_uri_destroy()
+: <a class="el" href="uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1">uri_parser.h</a>
+, <a class="el" href="uri__parser_8c.html#af4744a0a3c814548dbbecb79c4620ac1">uri_parser.c</a>
+</li>
+<li>grpc_uri_parse()
+: <a class="el" href="uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d">uri_parser.h</a>
+, <a class="el" href="uri__parser_8c.html#aef57f54325374603bb0510e8b8b5976d">uri_parser.c</a>
+</li>
+<li>grpc_version_string()
+: <a class="el" href="grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51">grpc.h</a>
+, <a class="el" href="version_8c.html#a250ca547d790874bd7b5ceec25f18c51">version.c</a>
+</li>
+<li>grpc_wakeup_fd_consume_wakeup()
+: <a class="el" href="wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_create()
+: <a class="el" href="wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_destroy()
+: <a class="el" href="wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_global_destroy()
+: <a class="el" href="wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_global_init()
+: <a class="el" href="wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_global_init_force_fallback()
+: <a class="el" href="wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_wakeup()
+: <a class="el" href="wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_winsocket_create()
+: <a class="el" href="socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_destroy()
+: <a class="el" href="socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_orphan()
+: <a class="el" href="socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_shutdown()
+: <a class="el" href="socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395">socket_windows.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_func_o.html b/doc/ref/core.internal/html/globals_func_o.html
new file mode 100644
index 0000000000..f539d3e778
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_func_o.html
@@ -0,0 +1,122 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_func.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="globals_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_func_v.html#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>on_simulated_token_fetch_done()
+: <a class="el" href="credentials_8c.html#ac8aefd37c9b6f7639d730ea60960a9e7">credentials.c</a>
+</li>
+<li>openssl_digest_from_algorithm()
+: <a class="el" href="json__token_8c.html#accf3a429c0f66a88d8df60b6dab3743f">json_token.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_func_p.html b/doc/ref/core.internal/html/globals_func_p.html
new file mode 100644
index 0000000000..864f0922e0
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_func_p.html
@@ -0,0 +1,128 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_func.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_func_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="globals_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_func_v.html#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>pf_destroy()
+: <a class="el" href="pick__first_8c.html#ab2197438a4e2ecaee6327c0a642c5bb9">pick_first.c</a>
+</li>
+<li>pf_exit_idle()
+: <a class="el" href="pick__first_8c.html#a114522776c50c119fcb6eaa6241ee748">pick_first.c</a>
+</li>
+<li>pf_pick()
+: <a class="el" href="pick__first_8c.html#af15f282d4ed6e68ea1289e139c42db9a">pick_first.c</a>
+</li>
+<li>pf_shutdown()
+: <a class="el" href="pick__first_8c.html#a1592bd5626dae37b94c5a9d719beaf17">pick_first.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_func_t.html b/doc/ref/core.internal/html/globals_func_t.html
new file mode 100644
index 0000000000..d4fc19c985
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_func_t.html
@@ -0,0 +1,228 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_func.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_func_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_func_v.html#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>tsi_construct_allocated_string_peer_property()
+: <a class="el" href="transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a8a308346bff8f401be5fb4411995aafc">transport_security.c</a>
+</li>
+<li>tsi_construct_peer()
+: <a class="el" href="transport__security_8c.html#a08ce831015f22dfc2b0c9c324f4d3f68">transport_security.c</a>
+, <a class="el" href="transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68">transport_security.h</a>
+</li>
+<li>tsi_construct_string_peer_property()
+: <a class="el" href="transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a77bdd8a1373d9badafe0f9628d613ccb">transport_security.c</a>
+</li>
+<li>tsi_construct_string_peer_property_from_cstring()
+: <a class="el" href="transport__security_8c.html#a95d8643bd4378f9e648d5155a757ff3d">transport_security.c</a>
+, <a class="el" href="transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d">transport_security.h</a>
+</li>
+<li>tsi_create_fake_handshaker()
+: <a class="el" href="fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3">fake_transport_security.h</a>
+, <a class="el" href="fake__transport__security_8c.html#a7ce2a5356ae53a2f4686faa9f32910d3">fake_transport_security.c</a>
+</li>
+<li>tsi_create_fake_protector()
+: <a class="el" href="fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932">fake_transport_security.h</a>
+, <a class="el" href="fake__transport__security_8c.html#a6af0733aaa845a070d6d92e5d79e8932">fake_transport_security.c</a>
+</li>
+<li>tsi_create_ssl_client_handshaker_factory()
+: <a class="el" href="ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a74245460a2a17181e62578a3c9e3a566">ssl_transport_security.c</a>
+</li>
+<li>tsi_create_ssl_server_handshaker_factory()
+: <a class="el" href="ssl__transport__security_8c.html#a90c268a36d1837b23c08ec862b810b4d">ssl_transport_security.c</a>
+, <a class="el" href="ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104">ssl_transport_security.h</a>
+</li>
+<li>tsi_frame_protector_destroy()
+: <a class="el" href="transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#adfd6e29ec9ee51f095a2fd73bbc222f9">transport_security.c</a>
+</li>
+<li>tsi_frame_protector_protect()
+: <a class="el" href="transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">transport_security.c</a>
+</li>
+<li>tsi_frame_protector_protect_flush()
+: <a class="el" href="transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a97f093ea9700617a4bd64846e1040e10">transport_security.c</a>
+</li>
+<li>tsi_frame_protector_unprotect()
+: <a class="el" href="transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#af7379ce84c820020001fd1538135f45f">transport_security.c</a>
+</li>
+<li>tsi_handshaker_create_frame_protector()
+: <a class="el" href="transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a332227aadf03c58b8ee4089f6f87bde6">transport_security.c</a>
+</li>
+<li>tsi_handshaker_destroy()
+: <a class="el" href="transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#aa86ebc2ea2967a18ff5c6007bb80e28d">transport_security.c</a>
+</li>
+<li>tsi_handshaker_extract_peer()
+: <a class="el" href="transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#acf71ef6d2d7c6934ba7252195fb866be">transport_security.c</a>
+</li>
+<li>tsi_handshaker_get_bytes_to_send_to_peer()
+: <a class="el" href="transport__security_8c.html#a29d1896a9b936a8bd534902bfc074e35">transport_security.c</a>
+, <a class="el" href="transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35">transport_security_interface.h</a>
+</li>
+<li>tsi_handshaker_get_result()
+: <a class="el" href="transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#ac41531015167b3ac51aa5e201189701e">transport_security.c</a>
+</li>
+<li>tsi_handshaker_process_bytes_from_peer()
+: <a class="el" href="transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#add638c90585ef6e5e4418c35a7df9fa0">transport_security.c</a>
+</li>
+<li>tsi_init_peer_property()
+: <a class="el" href="transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">transport_security.c</a>
+</li>
+<li>tsi_peer_destruct()
+: <a class="el" href="transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a2c4bbdf32c13cf926aa28dc464a6f467">transport_security.c</a>
+</li>
+<li>tsi_peer_get_property_by_name()
+: <a class="el" href="security__connector_8c.html#a4e8c8c71595e5af0861880070356ce66">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66">security_connector.h</a>
+</li>
+<li>tsi_peer_property_destruct()
+: <a class="el" href="transport__security_8c.html#a83e56daafef9ce0d55873f2c63940819">transport_security.c</a>
+, <a class="el" href="transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819">transport_security.h</a>
+</li>
+<li>tsi_result_to_string()
+: <a class="el" href="transport__security_8c.html#aaee2576c8d1108c2f28b78bcf5f85964">transport_security.c</a>
+, <a class="el" href="transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964">transport_security_interface.h</a>
+</li>
+<li>tsi_ssl_handshaker_factory_create_handshaker()
+: <a class="el" href="ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a640862c021958b7cc4e841d5842b3142">ssl_transport_security.c</a>
+</li>
+<li>tsi_ssl_handshaker_factory_destroy()
+: <a class="el" href="ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a55e5ff567c916f396a960d9ba259fd5b">ssl_transport_security.c</a>
+</li>
+<li>tsi_ssl_peer_matches_name()
+: <a class="el" href="ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a22edee478b3473e184d77d74c13d9647">ssl_transport_security.c</a>
+</li>
+<li>tsi_ssl_peer_to_auth_context()
+: <a class="el" href="security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a12dbc067a07c36d5219ba31f5dffc8c6">security_connector.c</a>
+</li>
+<li>tsi_strdup()
+: <a class="el" href="transport__security_8c.html#a4db31a671b7e77b6ecd14af773154c72">transport_security.c</a>
+, <a class="el" href="transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72">transport_security.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_func_v.html b/doc/ref/core.internal/html/globals_func_v.html
new file mode 100644
index 0000000000..d8983c1289
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_func_v.html
@@ -0,0 +1,119 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals_func.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_func_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="globals_func_v.html#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>verifier_cb_ctx_destroy()
+: <a class="el" href="jwt__verifier_8c.html#a6abd17abf83cb50196792f26f82ddb47">jwt_verifier.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_g.html b/doc/ref/core.internal/html/globals_g.html
new file mode 100644
index 0000000000..908fe00b4f
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_g.html
@@ -0,0 +1,5171 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li class="current"><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>GETBLOCK32
+: <a class="el" href="murmur__hash_8c.html#aaaaac568919d152a24bbff8d8c1bc194">murmur_hash.c</a>
+</li>
+<li>GPR_ARRAY_SIZE
+: <a class="el" href="useful_8h.html#a0e411d4f81a169c97c319d4e84df5747">useful.h</a>
+</li>
+<li>gpr_asprintf()
+: <a class="el" href="string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0">string_util.h</a>
+</li>
+<li>GPR_ASSERT
+: <a class="el" href="log_8h.html#a6ccf52ff690655cc22cd9d053650876f">log.h</a>
+</li>
+<li>gpr_atm
+: <a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc">atm_gcc_sync.h</a>
+, <a class="el" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">atm_win32.h</a>
+</li>
+<li>gpr_atm_acq_cas
+: <a class="el" href="atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_acq_load
+: <a class="el" href="atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06">atm_gcc_atomic.h</a>
+</li>
+<li>GPR_ATM_COMPILE_BARRIER_
+: <a class="el" href="atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_full_barrier
+: <a class="el" href="atm__gcc__atomic_8h.html#a95f86e51ae9a479026bd237cb792193e">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#a95f86e51ae9a479026bd237cb792193e">atm_gcc_sync.h</a>
+, <a class="el" href="atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d">atm_win32.h</a>
+</li>
+<li>gpr_atm_full_fetch_add
+: <a class="el" href="atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c">atm_gcc_sync.h</a>
+</li>
+<li>GPR_ATM_LS_BARRIER_
+: <a class="el" href="atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_no_barrier_cas
+: <a class="el" href="atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_no_barrier_fetch_add
+: <a class="el" href="atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_no_barrier_load
+: <a class="el" href="atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6">atm_gcc_atomic.h</a>
+</li>
+<li>gpr_atm_no_barrier_store
+: <a class="el" href="atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e">atm_gcc_atomic.h</a>
+</li>
+<li>gpr_atm_rel_cas
+: <a class="el" href="atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2">atm_gcc_sync.h</a>
+</li>
+<li>gpr_atm_rel_store
+: <a class="el" href="atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9">atm_gcc_atomic.h</a>
+</li>
+<li>GPR_BITCLEAR
+: <a class="el" href="useful_8h.html#af797bf1803f9809b3ccceaa619078c89">useful.h</a>
+</li>
+<li>GPR_BITCOUNT
+: <a class="el" href="useful_8h.html#a8f51444fe97eb3f83184b98035e3357f">useful.h</a>
+</li>
+<li>GPR_BITGET
+: <a class="el" href="useful_8h.html#a7c54bb2fffdaae24ba38ca5e5c53ab41">useful.h</a>
+</li>
+<li>GPR_BITSET
+: <a class="el" href="useful_8h.html#a28de4ed955bfc2bff309061b7820a37a">useful.h</a>
+</li>
+<li>GPR_CACHELINE_SIZE
+: <a class="el" href="port__platform_8h.html#ad9b7cc620233bbab0bc57cfbbe9519ad">port_platform.h</a>
+</li>
+<li>GPR_CACHELINE_SIZE_LOG
+: <a class="el" href="port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576">port_platform.h</a>
+</li>
+<li>gpr_cancellable_cancel()
+: <a class="el" href="sync_8h.html#a895fb73161d2dd1fa19be10d5395001c">sync.h</a>
+, <a class="el" href="cancellable_8c.html#a895fb73161d2dd1fa19be10d5395001c">cancellable.c</a>
+</li>
+<li>gpr_cancellable_destroy()
+: <a class="el" href="sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338">sync.h</a>
+, <a class="el" href="cancellable_8c.html#aa82b7172b992bd33bd6fd4b4dc89e338">cancellable.c</a>
+</li>
+<li>gpr_cancellable_init()
+: <a class="el" href="sync_8h.html#aec0b0e9b9f084550cdec300da1f31add">sync.h</a>
+, <a class="el" href="cancellable_8c.html#aec0b0e9b9f084550cdec300da1f31add">cancellable.c</a>
+</li>
+<li>gpr_cancellable_is_cancelled()
+: <a class="el" href="sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b">sync.h</a>
+, <a class="el" href="cancellable_8c.html#a1e53047443e5eb1f9895be0c90bc790b">cancellable.c</a>
+</li>
+<li>GPR_CLAMP
+: <a class="el" href="useful_8h.html#ac974b8c13ee716193e0ee30d9513672c">useful.h</a>
+</li>
+<li>GPR_CLOCK_MONOTONIC
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c">time.h</a>
+</li>
+<li>GPR_CLOCK_REALTIME
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">time.h</a>
+</li>
+<li>gpr_clock_type
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">time.h</a>
+</li>
+<li>gpr_cmdline
+: <a class="el" href="cmdline_8h.html#aaad93cd9bfc32c54fc89f7c2f3b74eb6">cmdline.h</a>
+</li>
+<li>gpr_cmdline_add_flag()
+: <a class="el" href="cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#ac5ecfdfc605896c29df846b1e268045e">cmdline.c</a>
+</li>
+<li>gpr_cmdline_add_int()
+: <a class="el" href="cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a0fc8cd330751e9876e8635189a1bc10f">cmdline.c</a>
+</li>
+<li>gpr_cmdline_add_string()
+: <a class="el" href="cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a34568676c089f3284dc8f7d8d706b1d3">cmdline.c</a>
+</li>
+<li>gpr_cmdline_create()
+: <a class="el" href="cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a608f6fbc4edfb4d2c18e3c0660fd8773">cmdline.c</a>
+</li>
+<li>gpr_cmdline_destroy()
+: <a class="el" href="cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a018f826ce313b02d2773ef97b8df5f98">cmdline.c</a>
+</li>
+<li>gpr_cmdline_on_extra_arg()
+: <a class="el" href="cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#afcf023a5eb082034a650a0f0177d1fe9">cmdline.c</a>
+</li>
+<li>gpr_cmdline_parse()
+: <a class="el" href="cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4">cmdline.c</a>
+</li>
+<li>gpr_cmdline_usage_string()
+: <a class="el" href="cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030">cmdline.h</a>
+, <a class="el" href="cmdline_8c.html#a4eac81d047bdc6e679079309bf60f030">cmdline.c</a>
+</li>
+<li>gpr_convert_clock_type()
+: <a class="el" href="time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74">time.h</a>
+, <a class="el" href="time_8c.html#ab265219dd3038a1e89ded09033bada5e">time.c</a>
+</li>
+<li>gpr_cpu_current_cpu()
+: <a class="el" href="cpu_8h.html#ad713326192eea685047b742f1da87c1d">cpu.h</a>
+</li>
+<li>gpr_cpu_num_cores()
+: <a class="el" href="cpu_8h.html#abfe660c6872b008de80de5b39ac2538d">cpu.h</a>
+</li>
+<li>gpr_cv
+: <a class="el" href="sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d">sync_win32.h</a>
+, <a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">sync_posix.h</a>
+</li>
+<li>gpr_cv_broadcast()
+: <a class="el" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">sync.h</a>
+</li>
+<li>gpr_cv_cancellable_wait()
+: <a class="el" href="sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9">sync.h</a>
+, <a class="el" href="cancellable_8c.html#a5f1df649a9885ff2354dd4ce611017d9">cancellable.c</a>
+</li>
+<li>gpr_cv_destroy()
+: <a class="el" href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">sync.h</a>
+</li>
+<li>gpr_cv_init()
+: <a class="el" href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">sync.h</a>
+</li>
+<li>gpr_cv_signal()
+: <a class="el" href="sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f">sync.h</a>
+</li>
+<li>gpr_cv_wait()
+: <a class="el" href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">sync.h</a>
+</li>
+<li>GPR_DEBUG
+: <a class="el" href="log_8h.html#a3e793245091f13bb7318a18b1166a773">log.h</a>
+</li>
+<li>gpr_default_log()
+: <a class="el" href="log_8c.html#a620ef16728107bedfa4188786f901ff9">log.c</a>
+</li>
+<li>gpr_dump()
+: <a class="el" href="string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1">string.h</a>
+, <a class="el" href="string_8c.html#a5b9ee77c9f03764e72d7b91a64ef86f1">string.c</a>
+</li>
+<li>GPR_DUMP_ASCII
+: <a class="el" href="string_8h.html#ac0676a68b67df2660352db8168c6c180">string.h</a>
+</li>
+<li>GPR_DUMP_HEX
+: <a class="el" href="string_8h.html#a2d592b56804af1c0d0e5237c37ce0313">string.h</a>
+</li>
+<li>gpr_dump_slice()
+: <a class="el" href="string_8h.html#a77bcdd897064702d16e7aaaea2e0e259">string.h</a>
+, <a class="el" href="string_8c.html#a008e053cd53efcf2f606b7414c22ea95">string.c</a>
+</li>
+<li>gpr_empty_slice()
+: <a class="el" href="slice_8h.html#a1a8906400c956fb8c508326a072b0662">slice.h</a>
+, <a class="el" href="slice_8c.html#a1a8906400c956fb8c508326a072b0662">slice.c</a>
+</li>
+<li>GPR_ERROR
+: <a class="el" href="log_8h.html#a63faedb3eefd93d1c0e79974be80cc36">log.h</a>
+</li>
+<li>gpr_event_cancellable_wait()
+: <a class="el" href="sync_8h.html#ae048c7e762b723821e35a07fd0d85e22">sync.h</a>
+, <a class="el" href="sync_8c.html#ae048c7e762b723821e35a07fd0d85e22">sync.c</a>
+</li>
+<li>gpr_event_get()
+: <a class="el" href="sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161">sync.h</a>
+, <a class="el" href="sync_8c.html#ac0a2305d9e6575cc5a3d92bc3f12c161">sync.c</a>
+</li>
+<li>GPR_EVENT_INIT
+: <a class="el" href="sync__generic_8h.html#a6f38fe7692eaa6663c1f79ff5847c050">sync_generic.h</a>
+</li>
+<li>gpr_event_init()
+: <a class="el" href="sync_8h.html#a93f37cd27964fda51acd4cd8e6737922">sync.h</a>
+, <a class="el" href="sync_8c.html#a93f37cd27964fda51acd4cd8e6737922">sync.c</a>
+</li>
+<li>gpr_event_set()
+: <a class="el" href="sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd">sync.h</a>
+, <a class="el" href="sync_8c.html#a1b1d014640e00512f6789dacc4ff88bd">sync.c</a>
+</li>
+<li>gpr_event_wait()
+: <a class="el" href="sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7">sync.h</a>
+, <a class="el" href="sync_8c.html#a01d442a76ff77f64d9f898b22ea33db7">sync.c</a>
+</li>
+<li>gpr_format_message()
+: <a class="el" href="log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536">log_win32.h</a>
+</li>
+<li>gpr_free()
+: <a class="el" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">alloc.h</a>
+, <a class="el" href="alloc_8c.html#abb8ce294adb033ac54e7a2e28b9bdac6">alloc.c</a>
+</li>
+<li>gpr_free_aligned()
+: <a class="el" href="alloc_8h.html#af9b603aefd33752e1b473856af77cbc9">alloc.h</a>
+, <a class="el" href="alloc_8c.html#af9b603aefd33752e1b473856af77cbc9">alloc.c</a>
+</li>
+<li>gpr_getenv()
+: <a class="el" href="env_8h.html#a56b20a68a421e585a14b92cb9999eafb">env.h</a>
+</li>
+<li>gpr_histogram
+: <a class="el" href="histogram_8h.html#a7125b0cef0e61a441a17f887dbc073fc">histogram.h</a>
+</li>
+<li>gpr_histogram_add()
+: <a class="el" href="histogram_8h.html#a63815a52b0236626a30480915ff51847">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a63815a52b0236626a30480915ff51847">histogram.c</a>
+</li>
+<li>gpr_histogram_count()
+: <a class="el" href="histogram_8h.html#a242b0541ee25271812d867d8f2734255">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a9789e9d2bfe80302771cb7037ff67109">histogram.c</a>
+</li>
+<li>gpr_histogram_create()
+: <a class="el" href="histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a5da9d3dac4262c5ae1e974a649edbd5c">histogram.c</a>
+</li>
+<li>gpr_histogram_destroy()
+: <a class="el" href="histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a7411a760aa075c1c27eeb9249d951c6c">histogram.c</a>
+</li>
+<li>gpr_histogram_get_contents()
+: <a class="el" href="histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4">histogram.h</a>
+, <a class="el" href="histogram_8c.html#adcd82f9ac3a24d76fa43d6ee38cd03d9">histogram.c</a>
+</li>
+<li>gpr_histogram_maximum()
+: <a class="el" href="histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb">histogram.h</a>
+, <a class="el" href="histogram_8c.html#aede32c052f8cfb6c645773dc02abb269">histogram.c</a>
+</li>
+<li>gpr_histogram_mean()
+: <a class="el" href="histogram_8h.html#a14d68ff71978bda93a07d019d993d83c">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a5fe371014a644b04cb7a3cc10d0c4d54">histogram.c</a>
+</li>
+<li>gpr_histogram_merge()
+: <a class="el" href="histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a41caac8747588e75cf5fed974fcd90f2">histogram.c</a>
+</li>
+<li>gpr_histogram_merge_contents()
+: <a class="el" href="histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a4092227c6ba42490fd0311f5f8223e73">histogram.c</a>
+</li>
+<li>gpr_histogram_minimum()
+: <a class="el" href="histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a02493e2e022e463dcaf0738cc2f57e9e">histogram.c</a>
+</li>
+<li>gpr_histogram_percentile()
+: <a class="el" href="histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a29c6f43aed5d521d17bf7677b2fbee39">histogram.c</a>
+</li>
+<li>gpr_histogram_stddev()
+: <a class="el" href="histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a36846d8c0ae93fa49fb4a1d07d8a2872">histogram.c</a>
+</li>
+<li>gpr_histogram_sum()
+: <a class="el" href="histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a6f5945872847d0d3e460181bb11c8414">histogram.c</a>
+</li>
+<li>gpr_histogram_sum_of_squares()
+: <a class="el" href="histogram_8c.html#a651cd46647b768e4c7ffceb20d4ac523">histogram.c</a>
+, <a class="el" href="histogram_8h.html#a5788652eb5350afcc534f563fd0265d3">histogram.h</a>
+</li>
+<li>gpr_histogram_variance()
+: <a class="el" href="histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b">histogram.h</a>
+, <a class="el" href="histogram_8c.html#a36df07c41d7d9e92e2b7cfce5cba2083">histogram.c</a>
+</li>
+<li>gpr_inf_future()
+: <a class="el" href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">time.h</a>
+, <a class="el" href="time_8c.html#a9324a2b33d5d7686fb14714c59ff026d">time.c</a>
+</li>
+<li>gpr_inf_past()
+: <a class="el" href="time_8h.html#abd2eba8066648fe0d94146d8310b4283">time.h</a>
+, <a class="el" href="time_8c.html#abd2eba8066648fe0d94146d8310b4283">time.c</a>
+</li>
+<li>GPR_INFO
+: <a class="el" href="log_8h.html#af0d0d75690f79edc9294498c88f96703">log.h</a>
+</li>
+<li>gpr_int16
+: <a class="el" href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709">port_platform.h</a>
+</li>
+<li>gpr_int32
+: <a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">port_platform.h</a>
+</li>
+<li>gpr_int64
+: <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">port_platform.h</a>
+</li>
+<li>GPR_INT64_MAX
+: <a class="el" href="port__platform_8h.html#aaff7a6a2f0868f8b0648b74828ef0e4f">port_platform.h</a>
+</li>
+<li>GPR_INTERNAL_HEXDIGIT_BITCOUNT
+: <a class="el" href="useful_8h.html#a601e1be692fe7922b52991a5d410b945">useful.h</a>
+</li>
+<li>gpr_intmax
+: <a class="el" href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139">port_platform.h</a>
+</li>
+<li>gpr_intptr
+: <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">port_platform.h</a>
+</li>
+<li>gpr_join_host_port()
+: <a class="el" href="host__port_8h.html#a75d6ea0faeed039dc132873afce91508">host_port.h</a>
+, <a class="el" href="host__port_8c.html#a75d6ea0faeed039dc132873afce91508">host_port.c</a>
+</li>
+<li>gpr_load_file()
+: <a class="el" href="file_8h.html#aaad6ffe6949461096a99c7d2e8890c59">file.h</a>
+, <a class="el" href="file_8c.html#aaad6ffe6949461096a99c7d2e8890c59">file.c</a>
+</li>
+<li>gpr_log()
+: <a class="el" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">log.h</a>
+</li>
+<li>gpr_log_func
+: <a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">log.h</a>
+</li>
+<li>gpr_log_message()
+: <a class="el" href="log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61">log.h</a>
+, <a class="el" href="log_8c.html#a7a3d59528754f8fbcfe54f6f8a72ec61">log.c</a>
+</li>
+<li>gpr_log_severity
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">log.h</a>
+</li>
+<li>GPR_LOG_SEVERITY_DEBUG
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">log.h</a>
+</li>
+<li>GPR_LOG_SEVERITY_ERROR
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">log.h</a>
+</li>
+<li>GPR_LOG_SEVERITY_INFO
+: <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">log.h</a>
+</li>
+<li>gpr_log_severity_string()
+: <a class="el" href="log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb">log.h</a>
+, <a class="el" href="log_8c.html#a3badccbc5ec4c725eadbc07b8e5706eb">log.c</a>
+</li>
+<li>gpr_ltoa()
+: <a class="el" href="string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24">string.h</a>
+, <a class="el" href="string_8c.html#aa6aa8a10c07a02550542c920a6b1f5f6">string.c</a>
+</li>
+<li>GPR_LTOA_MIN_BUFSIZE
+: <a class="el" href="string_8h.html#a21406aaed4e32e895145541eabbad527">string.h</a>
+</li>
+<li>gpr_malloc()
+: <a class="el" href="alloc_8h.html#af5896bb446b6179f35651730357149bb">alloc.h</a>
+, <a class="el" href="alloc_8c.html#af5896bb446b6179f35651730357149bb">alloc.c</a>
+</li>
+<li>gpr_malloc_aligned()
+: <a class="el" href="alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4">alloc.h</a>
+, <a class="el" href="alloc_8c.html#a73551a6249ae9b0a73ad75733c67ead4">alloc.c</a>
+</li>
+<li>GPR_MAX
+: <a class="el" href="useful_8h.html#af50c518bb1183da84adb7d8a86cd568a">useful.h</a>
+</li>
+<li>GPR_MAX_ALIGNMENT
+: <a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">port_platform.h</a>
+</li>
+<li>GPR_MIN
+: <a class="el" href="useful_8h.html#a298322c952526928cf8dbc7aaba7b84d">useful.h</a>
+</li>
+<li>GPR_MS_PER_SEC
+: <a class="el" href="time_8h.html#af2c8091db4e2a3133b93131f64db859e">time.h</a>
+</li>
+<li>gpr_mu
+: <a class="el" href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">sync_posix.h</a>
+</li>
+<li>gpr_mu_destroy()
+: <a class="el" href="sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e">sync.h</a>
+</li>
+<li>gpr_mu_init()
+: <a class="el" href="sync_8h.html#a16694f755266c254390b041a0f069094">sync.h</a>
+</li>
+<li>gpr_mu_lock()
+: <a class="el" href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">sync.h</a>
+</li>
+<li>gpr_mu_trylock()
+: <a class="el" href="sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777">sync.h</a>
+</li>
+<li>gpr_mu_unlock()
+: <a class="el" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">sync.h</a>
+</li>
+<li>gpr_murmur_hash3()
+: <a class="el" href="murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0">murmur_hash.h</a>
+, <a class="el" href="murmur__hash_8c.html#afd4a38ba55dc020a76c1ec09a4f626d0">murmur_hash.c</a>
+</li>
+<li>gpr_now()
+: <a class="el" href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">time.h</a>
+</li>
+<li>GPR_NS_PER_MS
+: <a class="el" href="time_8h.html#a3c63ee76f91a122abf3a0806b64318eb">time.h</a>
+</li>
+<li>GPR_NS_PER_SEC
+: <a class="el" href="time_8h.html#a447d0913b0cfdc943df51585f0e2785e">time.h</a>
+</li>
+<li>GPR_NS_PER_US
+: <a class="el" href="time_8h.html#adc295bf07c72edae8a2ad49e24da2f32">time.h</a>
+</li>
+<li>gpr_once
+: <a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">sync_posix.h</a>
+, <a class="el" href="sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13">sync_win32.h</a>
+</li>
+<li>GPR_ONCE_INIT
+: <a class="el" href="sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666">sync_posix.h</a>
+, <a class="el" href="sync__win32_8h.html#a8edd7eb4f6860a4f79defbad49c35666">sync_win32.h</a>
+</li>
+<li>gpr_once_init()
+: <a class="el" href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">sync.h</a>
+</li>
+<li>gpr_parse_bytes_to_uint32()
+: <a class="el" href="string_8h.html#a753cd4bfe9add8476a2797904c4c68c7">string.h</a>
+, <a class="el" href="string_8c.html#ad68355bffdcb8c7f69fc908e60ab9da6">string.c</a>
+</li>
+<li>GPR_PLATFORM_STRING
+: <a class="el" href="port__platform_8h.html#a99f34e9b119908109486e91abedc933e">port_platform.h</a>
+</li>
+<li>gpr_realloc()
+: <a class="el" href="alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91">alloc.h</a>
+, <a class="el" href="alloc_8c.html#a25d9a067b093e9c76dbbd77995b1bc91">alloc.c</a>
+</li>
+<li>gpr_ref()
+: <a class="el" href="sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571">sync.h</a>
+, <a class="el" href="sync_8c.html#ac0e52c6bfc7a04ba8a269f3227104571">sync.c</a>
+</li>
+<li>gpr_ref_init()
+: <a class="el" href="sync_8h.html#a235584f36572b5410b042ee63cb0740b">sync.h</a>
+, <a class="el" href="sync_8c.html#a235584f36572b5410b042ee63cb0740b">sync.c</a>
+</li>
+<li>gpr_refn()
+: <a class="el" href="sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25">sync.h</a>
+, <a class="el" href="sync_8c.html#a516e26b66b1aa53fba8f5f52b249cb25">sync.c</a>
+</li>
+<li>gpr_reverse_bytes()
+: <a class="el" href="string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9">string.h</a>
+, <a class="el" href="string_8c.html#ac61f7fa80be757db2d5457e3fe21ffe9">string.c</a>
+</li>
+<li>GPR_ROTL
+: <a class="el" href="useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85">useful.h</a>
+</li>
+<li>GPR_ROTR
+: <a class="el" href="useful_8h.html#a5ff4b278972e799dc134963a0249f316">useful.h</a>
+</li>
+<li>gpr_set_log_function()
+: <a class="el" href="log_8h.html#a75771a41e3bb2831df8043a57de05330">log.h</a>
+, <a class="el" href="log_8c.html#a4a4590f04f5e003b740b7688014b7be5">log.c</a>
+</li>
+<li>gpr_setenv()
+: <a class="el" href="env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3">env.h</a>
+</li>
+<li>gpr_sleep_until()
+: <a class="el" href="time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7">time.h</a>
+</li>
+<li>gpr_slice
+: <a class="el" href="slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c">slice.h</a>
+</li>
+<li>gpr_slice_buffer_add()
+: <a class="el" href="slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#ae202c0235646241cf95ffbb2479bada9">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_add_indexed()
+: <a class="el" href="slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a31bc820cee4aae1904d67a9d81fd83b3">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_addn()
+: <a class="el" href="slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#af58c3edcfaf90b364e3977e3bb423e3f">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_destroy()
+: <a class="el" href="slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a60c8b437918c3a81651b5f9a892f6399">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_init()
+: <a class="el" href="slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#aab5ed508480703c7b856e92ef6d7e4c8">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_move_into()
+: <a class="el" href="slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a0289912040151750bbee19ba632a88f1">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_pop()
+: <a class="el" href="slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#ae3bd1bc560aad5b69a6ef0b09286cc79">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_reset_and_unref()
+: <a class="el" href="slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#aa2819a201e9dcf62e31a6dbfc6fe3010">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_swap()
+: <a class="el" href="slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#a672b80e16cdabf26c7b558a54edfcd2d">slice_buffer.c</a>
+</li>
+<li>gpr_slice_buffer_tiny_add()
+: <a class="el" href="slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0">slice_buffer.h</a>
+, <a class="el" href="slice__buffer_8c.html#ae5498f14d7b008d134a3ad32935df4ac">slice_buffer.c</a>
+</li>
+<li>gpr_slice_cmp()
+: <a class="el" href="slice_8h.html#add3c8736c46bea7517991f178c82ba3c">slice.h</a>
+, <a class="el" href="slice_8c.html#add3c8736c46bea7517991f178c82ba3c">slice.c</a>
+</li>
+<li>GPR_SLICE_END_PTR
+: <a class="el" href="slice_8h.html#a9b7e9acd0eb92039a9bc897712a62a14">slice.h</a>
+</li>
+<li>gpr_slice_from_copied_buffer()
+: <a class="el" href="slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e">slice.h</a>
+, <a class="el" href="slice_8c.html#a54af06d0bea05fa416a85402e3f0d3b4">slice.c</a>
+</li>
+<li>gpr_slice_from_copied_string()
+: <a class="el" href="slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b">slice.h</a>
+, <a class="el" href="slice_8c.html#adf4df32e55b1b09d3f11c39447dcc68b">slice.c</a>
+</li>
+<li>GPR_SLICE_INLINED_SIZE
+: <a class="el" href="slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31">slice.h</a>
+</li>
+<li>GPR_SLICE_IS_EMPTY
+: <a class="el" href="slice_8h.html#ad4fe3efa7a8938045ce79271d79f79ef">slice.h</a>
+</li>
+<li>GPR_SLICE_LENGTH
+: <a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">slice.h</a>
+</li>
+<li>gpr_slice_malloc()
+: <a class="el" href="slice_8h.html#ab57463740ccedc00b50721dce66ebd7b">slice.h</a>
+, <a class="el" href="slice_8c.html#ab57463740ccedc00b50721dce66ebd7b">slice.c</a>
+</li>
+<li>gpr_slice_new()
+: <a class="el" href="slice_8h.html#aea43587a11bfe2e06fb8532035229bb2">slice.h</a>
+, <a class="el" href="slice_8c.html#aea43587a11bfe2e06fb8532035229bb2">slice.c</a>
+</li>
+<li>gpr_slice_new_with_len()
+: <a class="el" href="slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812">slice.h</a>
+, <a class="el" href="slice_8c.html#affd1fef2ffaca67e0b2e7b60923da812">slice.c</a>
+</li>
+<li>gpr_slice_ref()
+: <a class="el" href="slice_8h.html#ad28a2bcca348046cbe660a44180e75ca">slice.h</a>
+, <a class="el" href="slice_8c.html#aa439f1ee94ab61e6ff17647940d29582">slice.c</a>
+</li>
+<li>gpr_slice_refcount
+: <a class="el" href="slice_8h.html#af8841873e741f6cf38b2192147ea4f3e">slice.h</a>
+</li>
+<li>GPR_SLICE_SET_LENGTH
+: <a class="el" href="slice_8h.html#a1f5333a1260aef2efe086d4e2188e613">slice.h</a>
+</li>
+<li>gpr_slice_split()
+: <a class="el" href="string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">string.h</a>
+, <a class="el" href="string_8c.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">string.c</a>
+</li>
+<li>gpr_slice_split_head()
+: <a class="el" href="slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24">slice.h</a>
+, <a class="el" href="slice_8c.html#a15ea61593682d41ef435b9f7fa44a604">slice.c</a>
+</li>
+<li>gpr_slice_split_tail()
+: <a class="el" href="slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e">slice.h</a>
+, <a class="el" href="slice_8c.html#af592ef63bc65829371d4dacaa4f5eef1">slice.c</a>
+</li>
+<li>GPR_SLICE_START_PTR
+: <a class="el" href="slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15">slice.h</a>
+</li>
+<li>gpr_slice_str_cmp()
+: <a class="el" href="slice_8h.html#aef752203db50c932010a74c6845872c2">slice.h</a>
+, <a class="el" href="slice_8c.html#aef752203db50c932010a74c6845872c2">slice.c</a>
+</li>
+<li>gpr_slice_sub()
+: <a class="el" href="slice_8c.html#a60d9c7c62fdbbd7d4be1ff0f8d357032">slice.c</a>
+, <a class="el" href="slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb">slice.h</a>
+</li>
+<li>gpr_slice_sub_no_ref()
+: <a class="el" href="slice_8h.html#accf08ddad530a5f1cca82c834dc70965">slice.h</a>
+, <a class="el" href="slice_8c.html#a03f66bb8343910499215c75f6ad69be4">slice.c</a>
+</li>
+<li>gpr_slice_to_cstring()
+: <a class="el" href="slice_8c.html#a2e5f30a9a0750b8d38100dbfe647438e">slice.c</a>
+</li>
+<li>gpr_slice_unref()
+: <a class="el" href="slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7">slice.h</a>
+, <a class="el" href="slice_8c.html#aaa595344a06d9a17f64f2774a42fe160">slice.c</a>
+</li>
+<li>gpr_split_host_port()
+: <a class="el" href="host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">host_port.h</a>
+, <a class="el" href="host__port_8c.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">host_port.c</a>
+</li>
+<li>gpr_stack_lockfree
+: <a class="el" href="stack__lockfree_8h.html#a66ea3d52c0bac00af25057468bbd8465">stack_lockfree.h</a>
+</li>
+<li>gpr_stack_lockfree_create()
+: <a class="el" href="stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#a281add9a8c1bdc0a6715cc168c6f41a9">stack_lockfree.c</a>
+</li>
+<li>gpr_stack_lockfree_destroy()
+: <a class="el" href="stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#a0d082653d002f9849d89f1ac93f21554">stack_lockfree.c</a>
+</li>
+<li>gpr_stack_lockfree_pop()
+: <a class="el" href="stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#ae2548d065e76c3ece34984e43c599d14">stack_lockfree.c</a>
+</li>
+<li>gpr_stack_lockfree_push()
+: <a class="el" href="stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa">stack_lockfree.h</a>
+, <a class="el" href="stack__lockfree_8c.html#a0c2fa41e3046d10a9e98416f4d809933">stack_lockfree.c</a>
+</li>
+<li>gpr_stats_inc()
+: <a class="el" href="sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c">sync.h</a>
+, <a class="el" href="sync_8c.html#a8e51ec3b46c7c03602e2279a802daa1c">sync.c</a>
+</li>
+<li>GPR_STATS_INIT
+: <a class="el" href="sync__generic_8h.html#ada230498c8e2aca51e9349709e70e1ef">sync_generic.h</a>
+</li>
+<li>gpr_stats_init()
+: <a class="el" href="sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30">sync.h</a>
+, <a class="el" href="sync_8c.html#a76b8e5de6e1baa4fd66c014417dc0a30">sync.c</a>
+</li>
+<li>gpr_stats_read()
+: <a class="el" href="sync_8h.html#abb2c58da7d0b785887266b3b1890764d">sync.h</a>
+, <a class="el" href="sync_8c.html#abb2c58da7d0b785887266b3b1890764d">sync.c</a>
+</li>
+<li>gpr_strdup()
+: <a class="el" href="string__util_8h.html#a7a021bce444344f0a96cb022038eed93">string_util.h</a>
+, <a class="el" href="string_8c.html#a7a021bce444344f0a96cb022038eed93">string.c</a>
+</li>
+<li>gpr_strjoin()
+: <a class="el" href="string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c">string.h</a>
+, <a class="el" href="string_8c.html#a5de29a3d1854cf2dfa54b501e2793e96">string.c</a>
+</li>
+<li>gpr_strjoin_sep()
+: <a class="el" href="string_8h.html#ac842445695baf5ff8e96a7bf12c6b176">string.h</a>
+, <a class="el" href="string_8c.html#a5b9d1ee9cc94732b728b033649c2d00a">string.c</a>
+</li>
+<li>gpr_strvec_add()
+: <a class="el" href="string_8h.html#a4eaa61df749bed219a09e69837a69a50">string.h</a>
+, <a class="el" href="string_8c.html#a9d91f04f11bc82ed5a562e44878eafde">string.c</a>
+</li>
+<li>gpr_strvec_destroy()
+: <a class="el" href="string_8h.html#af194bff1a43db7ed5be927264bce7f52">string.h</a>
+, <a class="el" href="string_8c.html#a0c7ab5a87b900005d826bdaa8e106b28">string.c</a>
+</li>
+<li>gpr_strvec_flatten()
+: <a class="el" href="string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185">string.h</a>
+, <a class="el" href="string_8c.html#a0145a60ccd4d1e25389f8bad033f1ff5">string.c</a>
+</li>
+<li>gpr_strvec_init()
+: <a class="el" href="string_8h.html#a78cca9fe86b48cf442f80a666b73768f">string.h</a>
+, <a class="el" href="string_8c.html#a751f38e61272bd9626890fa54270b82f">string.c</a>
+</li>
+<li>gpr_subprocess
+: <a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">subprocess.h</a>
+</li>
+<li>gpr_subprocess_binary_extension()
+: <a class="el" href="subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3">subprocess.h</a>
+</li>
+<li>gpr_subprocess_create()
+: <a class="el" href="subprocess_8h.html#a761755433d8809a68024b03176341242">subprocess.h</a>
+</li>
+<li>gpr_subprocess_destroy()
+: <a class="el" href="subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b">subprocess.h</a>
+</li>
+<li>gpr_subprocess_interrupt()
+: <a class="el" href="subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d">subprocess.h</a>
+</li>
+<li>gpr_subprocess_join()
+: <a class="el" href="subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5">subprocess.h</a>
+</li>
+<li>GPR_SWAP
+: <a class="el" href="useful_8h.html#a9f884f8218a97ed9739e2dac467f0719">useful.h</a>
+</li>
+<li>gpr_thd_currentid()
+: <a class="el" href="thd_8h.html#a8c875ae5410d10d658cfb7b917909624">thd.h</a>
+</li>
+<li>gpr_thd_id
+: <a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">thd.h</a>
+</li>
+<li>gpr_thd_join()
+: <a class="el" href="thd_8h.html#a73509f851051b4d5f02ca1982d216776">thd.h</a>
+</li>
+<li>GPR_THD_JOINABLE
+: <a class="el" href="thd_8c.html#a0944a4353780132eeab7b06e3e42291da228d343354c0f2bb16c0fb1f79e71dbc">thd.c</a>
+</li>
+<li>gpr_thd_new()
+: <a class="el" href="thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea">thd.h</a>
+</li>
+<li>gpr_thd_options_default()
+: <a class="el" href="thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862">thd.h</a>
+, <a class="el" href="thd_8c.html#abf8bb34ba7d26ddab0696e24b1fcc862">thd.c</a>
+</li>
+<li>gpr_thd_options_is_detached()
+: <a class="el" href="thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89">thd.h</a>
+, <a class="el" href="thd_8c.html#a1647c2e991d269cdaf146dc33f61ce89">thd.c</a>
+</li>
+<li>gpr_thd_options_is_joinable()
+: <a class="el" href="thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">thd.h</a>
+, <a class="el" href="thd_8c.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">thd.c</a>
+</li>
+<li>gpr_thd_options_set_detached()
+: <a class="el" href="thd_8h.html#a704882e5c65d29c817fae9173085e5ba">thd.h</a>
+, <a class="el" href="thd_8c.html#a704882e5c65d29c817fae9173085e5ba">thd.c</a>
+</li>
+<li>gpr_thd_options_set_joinable()
+: <a class="el" href="thd_8h.html#a87ad3ff4d439450ae1318151c1526745">thd.h</a>
+, <a class="el" href="thd_8c.html#a87ad3ff4d439450ae1318151c1526745">thd.c</a>
+</li>
+<li>gpr_time_0()
+: <a class="el" href="time_8h.html#a4f552f0628cc389dfbe3674a1a978108">time.h</a>
+, <a class="el" href="time_8c.html#a4f552f0628cc389dfbe3674a1a978108">time.c</a>
+</li>
+<li>gpr_time_add()
+: <a class="el" href="time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004">time.h</a>
+, <a class="el" href="time_8c.html#a6f2c6fbc9fef45d74670c446e2bad004">time.c</a>
+</li>
+<li>gpr_time_cmp()
+: <a class="el" href="time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">time.h</a>
+, <a class="el" href="time_8c.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">time.c</a>
+</li>
+<li>gpr_time_from_hours()
+: <a class="el" href="time_8h.html#af7a9aca2af5348cbb8dc835853dc2756">time.h</a>
+, <a class="el" href="time_8c.html#ab8e7ff6a62bcd1fda7ea07ee67ffbacd">time.c</a>
+</li>
+<li>gpr_time_from_micros()
+: <a class="el" href="time_8h.html#a79956c6fba5b660aeee24b09ae026d6c">time.h</a>
+, <a class="el" href="time_8c.html#a4c0445a26d72673e14ea4c403b69ee65">time.c</a>
+</li>
+<li>gpr_time_from_millis()
+: <a class="el" href="time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946">time.h</a>
+, <a class="el" href="time_8c.html#a3b46878435c03a093b01f23b6a23631b">time.c</a>
+</li>
+<li>gpr_time_from_minutes()
+: <a class="el" href="time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba">time.h</a>
+, <a class="el" href="time_8c.html#afd411906dd4100d1a359177eaa8e6d5f">time.c</a>
+</li>
+<li>gpr_time_from_nanos()
+: <a class="el" href="time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a">time.h</a>
+, <a class="el" href="time_8c.html#a7b5437762ab2c7b7b31f7ab8e054eb04">time.c</a>
+</li>
+<li>gpr_time_from_seconds()
+: <a class="el" href="time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916">time.h</a>
+, <a class="el" href="time_8c.html#ac43b8cfb4ba31a567eb77c2dacda57a7">time.c</a>
+</li>
+<li>gpr_time_init()
+: <a class="el" href="time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56">time.h</a>
+</li>
+<li>gpr_time_max()
+: <a class="el" href="time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8">time.h</a>
+, <a class="el" href="time_8c.html#a4e1c94c1e488381e9f01d4318c2a45d8">time.c</a>
+</li>
+<li>gpr_time_min()
+: <a class="el" href="time_8h.html#af15f574932e56662f57bd3573e3cc469">time.h</a>
+, <a class="el" href="time_8c.html#af15f574932e56662f57bd3573e3cc469">time.c</a>
+</li>
+<li>gpr_time_similar()
+: <a class="el" href="time_8h.html#a914f666c6cfe709650d96c986600de15">time.h</a>
+, <a class="el" href="time_8c.html#a914f666c6cfe709650d96c986600de15">time.c</a>
+</li>
+<li>gpr_time_sub()
+: <a class="el" href="time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a">time.h</a>
+, <a class="el" href="time_8c.html#a1eaf8db9ee9e94bd4af005f1049f967a">time.c</a>
+</li>
+<li>gpr_time_to_millis()
+: <a class="el" href="time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df">time.h</a>
+, <a class="el" href="time_8c.html#a0e913ddb6917c82510ff48d34672f6a1">time.c</a>
+</li>
+<li>GPR_TIMESPAN
+: <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">time.h</a>
+</li>
+<li>gpr_timespec
+: <a class="el" href="time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45">time.h</a>
+</li>
+<li>gpr_timespec_to_micros()
+: <a class="el" href="time_8h.html#a1704f2028070b3c92bd5420864458bac">time.h</a>
+, <a class="el" href="time_8c.html#a1704f2028070b3c92bd5420864458bac">time.c</a>
+</li>
+<li>GPR_TLS_DECL
+: <a class="el" href="tls__gcc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">tls_pthread.h</a>
+</li>
+<li>gpr_tls_destroy
+: <a class="el" href="tls__gcc_8h.html#a187108e1078d2ce05388cb17bc59ce74">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#a187108e1078d2ce05388cb17bc59ce74">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#a187108e1078d2ce05388cb17bc59ce74">tls_pthread.h</a>
+</li>
+<li>gpr_tls_get
+: <a class="el" href="tls__gcc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">tls_pthread.h</a>
+</li>
+<li>gpr_tls_init
+: <a class="el" href="tls__gcc_8h.html#a43768a42ff705cc028b4a483dc3b65c5">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#a43768a42ff705cc028b4a483dc3b65c5">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#a43768a42ff705cc028b4a483dc3b65c5">tls_pthread.h</a>
+</li>
+<li>gpr_tls_set
+: <a class="el" href="tls__gcc_8h.html#aa8f01b3e40178b80d098650f42c529e7">tls_gcc.h</a>
+, <a class="el" href="tls__msvc_8h.html#aa8f01b3e40178b80d098650f42c529e7">tls_msvc.h</a>
+, <a class="el" href="tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea">tls_pthread.h</a>
+</li>
+<li>gpr_tmpfile()
+: <a class="el" href="file_8h.html#abdc37810133df55be624548f00fd177f">file.h</a>
+</li>
+<li>gpr_uint16
+: <a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">port_platform.h</a>
+</li>
+<li>gpr_uint32
+: <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">port_platform.h</a>
+</li>
+<li>gpr_uint64
+: <a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">port_platform.h</a>
+</li>
+<li>gpr_uint8
+: <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">port_platform.h</a>
+</li>
+<li>gpr_uintmax
+: <a class="el" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">port_platform.h</a>
+</li>
+<li>gpr_uintptr
+: <a class="el" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">port_platform.h</a>
+</li>
+<li>gpr_unref()
+: <a class="el" href="sync_8h.html#a76b570c831b14070c37e708dde91b795">sync.h</a>
+, <a class="el" href="sync_8c.html#a76b570c831b14070c37e708dde91b795">sync.c</a>
+</li>
+<li>GPR_US_PER_MS
+: <a class="el" href="time_8h.html#a33dba9a222266cf2270c9b09c1f64336">time.h</a>
+</li>
+<li>GPR_US_PER_SEC
+: <a class="el" href="time_8h.html#a48433e202646afa00d9694585b05b9e3">time.h</a>
+</li>
+<li>GROW
+: <a class="el" href="stream__op_8c.html#a886cd1bc8d999f1eca35adda926045dc">stream_op.c</a>
+, <a class="el" href="slice__buffer_8c.html#a886cd1bc8d999f1eca35adda926045dc">slice_buffer.c</a>
+</li>
+<li>grpc_accept4()
+: <a class="el" href="socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060">socket_utils_posix.h</a>
+</li>
+<li>grpc_access_token_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a7ef8e179bb5d15c81dfd363924db0041">credentials.c</a>
+</li>
+<li>GRPC_ACKED_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42">internal.h</a>
+</li>
+<li>grpc_alarm
+: <a class="el" href="alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea">alarm.h</a>
+</li>
+<li>grpc_alarm_cancel()
+: <a class="el" href="alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60">alarm.h</a>
+, <a class="el" href="alarm_8c.html#a921e9a2f728d338f42ad586e6d4eaf60">alarm.c</a>
+</li>
+<li>grpc_alarm_check()
+: <a class="el" href="alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a28de65beea264f65e15824cbf866d863">alarm.c</a>
+</li>
+<li>grpc_alarm_heap_add()
+: <a class="el" href="alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a96e6b49b0020da6f3163dfaeac36fed4">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_destroy()
+: <a class="el" href="alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a827cbed1eadd7b307da4f509bb0e4ff9">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_init()
+: <a class="el" href="alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a353a4a1809ac4546d62b3098dda8f674">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_is_empty()
+: <a class="el" href="alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a52d3c052d322cc97ced32a68bd9048cb">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_pop()
+: <a class="el" href="alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a40cf7d2741c1640309682f14cafbb029">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_remove()
+: <a class="el" href="alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a69c5b3ff692b6ca36c48d727acd45e9c">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_heap_top()
+: <a class="el" href="alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea">alarm_heap.h</a>
+, <a class="el" href="alarm__heap_8c.html#a1c81a64c942586da4313547cc8d259ea">alarm_heap.c</a>
+</li>
+<li>grpc_alarm_init()
+: <a class="el" href="alarm_8h.html#a50483486a229b573a29ed9fa30807999">alarm.h</a>
+, <a class="el" href="alarm_8c.html#a50483486a229b573a29ed9fa30807999">alarm.c</a>
+</li>
+<li>grpc_alarm_list_init()
+: <a class="el" href="alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a7f76e290e84d187382a25d0d6999067e">alarm.c</a>
+</li>
+<li>grpc_alarm_list_next_timeout()
+: <a class="el" href="alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a257c1eaf2f1c2f352893dcc0af034dfa">alarm.c</a>
+</li>
+<li>grpc_alarm_list_shutdown()
+: <a class="el" href="alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831">alarm_internal.h</a>
+, <a class="el" href="alarm_8c.html#a768994cd3fff1f9b3ca7805dee7b3831">alarm.c</a>
+</li>
+<li>GRPC_ARG_DEFAULT_AUTHORITY
+: <a class="el" href="grpc_8h.html#add42f97666fbfc66b7dac253ac3b73ae">grpc.h</a>
+</li>
+<li>GRPC_ARG_ENABLE_CENSUS
+: <a class="el" href="grpc_8h.html#ae498934a02de89ce29cec570b02a2037">grpc.h</a>
+</li>
+<li>GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER
+: <a class="el" href="grpc_8h.html#aecc45a63163796ca1bc5453938bdfb36">grpc.h</a>
+</li>
+<li>GRPC_ARG_HTTP2_SCHEME
+: <a class="el" href="http__client__filter_8h.html#a7797da9f3f5a1381484b2cabca1920fc">http_client_filter.h</a>
+</li>
+<li>GRPC_ARG_INTEGER
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689">grpc.h</a>
+</li>
+<li>GRPC_ARG_MAX_CONCURRENT_STREAMS
+: <a class="el" href="grpc_8h.html#a5bb9256d0b457cab219f4d9d765148b6">grpc.h</a>
+</li>
+<li>GRPC_ARG_MAX_MESSAGE_LENGTH
+: <a class="el" href="grpc_8h.html#a50f37feb7c000a23b3b0edf4c31d4367">grpc.h</a>
+</li>
+<li>GRPC_ARG_POINTER
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b">grpc.h</a>
+</li>
+<li>GRPC_ARG_PRIMARY_USER_AGENT_STRING
+: <a class="el" href="grpc_8h.html#a0732df2d9003e9ee1c01e50e41b5a8e2">grpc.h</a>
+</li>
+<li>GRPC_ARG_SECONDARY_USER_AGENT_STRING
+: <a class="el" href="grpc_8h.html#af47b4048c11e4f8f4162f12c135c2da4">grpc.h</a>
+</li>
+<li>GRPC_ARG_STRING
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d">grpc.h</a>
+</li>
+<li>grpc_arg_type
+: <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc.h</a>
+</li>
+<li>grpc_auth_context
+: <a class="el" href="grpc__security_8h.html#aa13f0724cb7ff99995d7f0881c01d553">grpc_security.h</a>
+</li>
+<li>grpc_auth_context_create()
+: <a class="el" href="security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25">security_context.h</a>
+, <a class="el" href="security__context_8c.html#ab81f0d925a8aefc04349a849e63d9d25">security_context.c</a>
+</li>
+<li>grpc_auth_context_find_properties_by_name()
+: <a class="el" href="grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a5298ac64614986581fc314f63fa9afd7">security_context.c</a>
+</li>
+<li>grpc_auth_context_peer_identity()
+: <a class="el" href="grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a144c6f3a56c8592489b3978e0c5caced">security_context.c</a>
+</li>
+<li>grpc_auth_context_peer_identity_property_name()
+: <a class="el" href="grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#ac05022ccd5b972ba089950437727ff23">security_context.c</a>
+</li>
+<li>grpc_auth_context_peer_is_authenticated()
+: <a class="el" href="grpc__security_8h.html#af33fe6681dedb389edbf708020680093">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#af33fe6681dedb389edbf708020680093">security_context.c</a>
+</li>
+<li>grpc_auth_context_property_iterator()
+: <a class="el" href="grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#aaad9fed074f7aebed63ed075bb6ff780">security_context.c</a>
+</li>
+<li>GRPC_AUTH_CONTEXT_REF
+: <a class="el" href="security__context_8h.html#a3df5d42b28934cbeb932f18d61a8fe77">security_context.h</a>
+</li>
+<li>grpc_auth_context_ref()
+: <a class="el" href="security__context_8h.html#aafcd59997402fd705818b3ce8e374623">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a449824176a9f6c79ee461e476f409aec">security_context.c</a>
+</li>
+<li>grpc_auth_context_release()
+: <a class="el" href="grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a2eea99f76030b21ad58afdf615f4d2b9">security_context.c</a>
+</li>
+<li>GRPC_AUTH_CONTEXT_UNREF
+: <a class="el" href="security__context_8h.html#ae6b74ab5e3a697c5a93529609bdb2668">security_context.h</a>
+</li>
+<li>grpc_auth_context_unref()
+: <a class="el" href="security__context_8h.html#a19e637927ac80502fe6093a2669674da">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33">security_context.c</a>
+</li>
+<li>grpc_auth_json_key_create_from_json()
+: <a class="el" href="json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a99327b0fd2f13d8c98ebb68aecde0194">json_token.c</a>
+</li>
+<li>grpc_auth_json_key_create_from_string()
+: <a class="el" href="json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462">json_token.h</a>
+, <a class="el" href="json__token_8c.html#aed79d1eb6161019cd427d7dc4bdc8462">json_token.c</a>
+</li>
+<li>grpc_auth_json_key_destruct()
+: <a class="el" href="json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a0be195f2d8dad589b59befaaf379deb7">json_token.c</a>
+</li>
+<li>grpc_auth_json_key_is_valid()
+: <a class="el" href="json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689">json_token.h</a>
+, <a class="el" href="json__token_8c.html#ac4a86a67c8b9cd4b8b142fe880099689">json_token.c</a>
+</li>
+<li>GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER
+: <a class="el" href="json__token_8h.html#af371d9efcf5a20784bfeae73e3369fd3">json_token.h</a>
+</li>
+<li>GRPC_AUTH_JSON_TYPE_INVALID
+: <a class="el" href="json__token_8h.html#af5c8010a33e3a9b7b23f88cc87c1149e">json_token.h</a>
+</li>
+<li>GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT
+: <a class="el" href="json__token_8h.html#ae7dd581751d41c6ea4d8dd5af295d495">json_token.h</a>
+</li>
+<li>grpc_auth_property
+: <a class="el" href="grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429">grpc_security.h</a>
+</li>
+<li>grpc_auth_property_init()
+: <a class="el" href="security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a816adda9cd16c9f8087a1f11b1f7154a">security_context.c</a>
+</li>
+<li>grpc_auth_property_init_from_cstring()
+: <a class="el" href="security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a9ffe10ffd7c0397eb9656a5017ba0e58">security_context.c</a>
+</li>
+<li>grpc_auth_property_iterator
+: <a class="el" href="grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf">grpc_security.h</a>
+</li>
+<li>grpc_auth_property_iterator_next()
+: <a class="el" href="grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">security_context.c</a>
+</li>
+<li>grpc_auth_property_reset()
+: <a class="el" href="security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a9721c8f46ab15103ee4f69cf49c04195">security_context.c</a>
+</li>
+<li>grpc_auth_refresh_token_create_from_json()
+: <a class="el" href="json__token_8h.html#a31e46f408f67e61eb59471816d7394d9">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a31e46f408f67e61eb59471816d7394d9">json_token.c</a>
+</li>
+<li>grpc_auth_refresh_token_create_from_string()
+: <a class="el" href="json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06">json_token.h</a>
+, <a class="el" href="json__token_8c.html#aa8602827c182047ae58ff6f8d55fcf06">json_token.c</a>
+</li>
+<li>grpc_auth_refresh_token_destruct()
+: <a class="el" href="json__token_8h.html#a14f7331e37fa96ee4652780610e1b773">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a14f7331e37fa96ee4652780610e1b773">json_token.c</a>
+</li>
+<li>grpc_auth_refresh_token_is_valid()
+: <a class="el" href="json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f">json_token.h</a>
+, <a class="el" href="json__token_8c.html#a9b1a8c0e0fda0b36dc2ad142f276002f">json_token.c</a>
+</li>
+<li>GRPC_AUTHORIZATION_METADATA_KEY
+: <a class="el" href="credentials_8h.html#ae5d55c31d952d739f5be7de47ad425a3">credentials.h</a>
+</li>
+<li>grpc_base64_decode()
+: <a class="el" href="base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96">base64.h</a>
+, <a class="el" href="base64_8c.html#a81bf1bd8387f2d69d6fe48e463a40c96">base64.c</a>
+</li>
+<li>grpc_base64_decode_with_len()
+: <a class="el" href="base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f">base64.h</a>
+, <a class="el" href="base64_8c.html#a2d9a616e303d93f4cb0733fe96a0f28f">base64.c</a>
+</li>
+<li>grpc_base64_encode()
+: <a class="el" href="base64_8h.html#af3751ba76aa864e4983cea879fb437d8">base64.h</a>
+, <a class="el" href="base64_8c.html#a52b0da4b71404bafb66d7cd2d6bc898a">base64.c</a>
+</li>
+<li>GRPC_BASE64_MULTILINE_LINE_LEN
+: <a class="el" href="base64_8c.html#a044b2c792f69cf3efaad0895e38122a7">base64.c</a>
+</li>
+<li>GRPC_BASE64_MULTILINE_NUM_BLOCKS
+: <a class="el" href="base64_8c.html#abf98a03e292b4943e5d9df3314a91d2e">base64.c</a>
+</li>
+<li>GRPC_BASE64_PAD_BYTE
+: <a class="el" href="base64_8c.html#a74d467f02f0a2a5e88cc0231ea2d3603">base64.c</a>
+</li>
+<li>GRPC_BASE64_PAD_CHAR
+: <a class="el" href="base64_8c.html#a6ccc23e3f23a06fd1e83f07fc80a36f5">base64.c</a>
+</li>
+<li>GRPC_BB_RAW
+: <a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636">byte_buffer.h</a>
+</li>
+<li>grpc_bbq_bytes()
+: <a class="el" href="byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a86c63b57cc95e136b8de2592e4dedf28">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_destroy()
+: <a class="el" href="byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#ae1f26933a5e6e643c3c31de676804edb">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_empty()
+: <a class="el" href="byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#aaa5f8cf8f94340a6e2f6c803a8001c15">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_flush()
+: <a class="el" href="byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a8308c0116008c7abd4554a34a549e94a">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_pop()
+: <a class="el" href="byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a0539ad1d8c25d3060475370bcc9d37c5">byte_buffer_queue.c</a>
+</li>
+<li>grpc_bbq_push()
+: <a class="el" href="byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae">byte_buffer_queue.h</a>
+, <a class="el" href="byte__buffer__queue_8c.html#a34702570a1438c8cf7a4dcdcc65a5891">byte_buffer_queue.c</a>
+</li>
+<li>grpc_begin_message
+: <a class="el" href="stream__op_8h.html#a6d154e209d826dcf514850c6724d3596">stream_op.h</a>
+</li>
+<li>grpc_blocking_resolve_address()
+: <a class="el" href="resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c">resolve_address.h</a>
+</li>
+<li>grpc_byte_buffer
+: <a class="el" href="byte__buffer_8h.html#a670951ae03b0a2dc4e50f4e25160fc2e">byte_buffer.h</a>
+</li>
+<li>grpc_byte_buffer_copy()
+: <a class="el" href="byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#aac8a5605c5de93a78da7e8ca06a80efb">byte_buffer.c</a>
+</li>
+<li>grpc_byte_buffer_destroy()
+: <a class="el" href="byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a0099fc01264d8aeb7cd56dfb58652d22">byte_buffer.c</a>
+</li>
+<li>grpc_byte_buffer_length()
+: <a class="el" href="byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a61b6ac03d6a50664786e45d616ba435d">byte_buffer.c</a>
+</li>
+<li>grpc_byte_buffer_reader
+: <a class="el" href="byte__buffer_8h.html#a16143f22ea46cc7fa6b53e6cb30715f1">byte_buffer.h</a>
+</li>
+<li>grpc_byte_buffer_reader_destroy()
+: <a class="el" href="byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778">byte_buffer.h</a>
+, <a class="el" href="byte__buffer__reader_8c.html#aed5f40a76941741b7672c14f15be0778">byte_buffer_reader.c</a>
+</li>
+<li>grpc_byte_buffer_reader_init()
+: <a class="el" href="byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268">byte_buffer.h</a>
+, <a class="el" href="byte__buffer__reader_8c.html#a71016674849f4f57c1a4319d7964d268">byte_buffer_reader.c</a>
+</li>
+<li>grpc_byte_buffer_reader_next()
+: <a class="el" href="byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9">byte_buffer.h</a>
+, <a class="el" href="byte__buffer__reader_8c.html#aff713900a0177997a0be49a40781bcc9">byte_buffer_reader.c</a>
+</li>
+<li>grpc_byte_buffer_type
+: <a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">byte_buffer.h</a>
+</li>
+<li>grpc_call
+: <a class="el" href="grpc_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc.h</a>
+</li>
+<li>grpc_call_auth_context()
+: <a class="el" href="grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a0b439e6d2875c8b5e2e901a959f6a2fe">security_context.c</a>
+</li>
+<li>grpc_call_cancel()
+: <a class="el" href="grpc_8h.html#adce32a3168cfc0048423af94a3961878">grpc.h</a>
+, <a class="el" href="call_8c.html#adce32a3168cfc0048423af94a3961878">call.c</a>
+</li>
+<li>grpc_call_cancel_with_status()
+: <a class="el" href="grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2">grpc.h</a>
+, <a class="el" href="call_8c.html#a1adb0f85dd491cc47dd8da655c4e30a6">call.c</a>
+</li>
+<li>grpc_call_context_get()
+: <a class="el" href="call_8h.html#a039322642b1682808002d1302c248c5f">call.h</a>
+, <a class="el" href="call_8c.html#a039322642b1682808002d1302c248c5f">call.c</a>
+</li>
+<li>grpc_call_context_set()
+: <a class="el" href="call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9">call.h</a>
+, <a class="el" href="call_8c.html#adad531b2cfc5574dbc4bebaafe0db1e9">call.c</a>
+</li>
+<li>grpc_call_create()
+: <a class="el" href="call_8h.html#a0199bd70012c6e2dfa8667dd1d280109">call.h</a>
+, <a class="el" href="call_8c.html#a0199bd70012c6e2dfa8667dd1d280109">call.c</a>
+</li>
+<li>grpc_call_destroy()
+: <a class="el" href="grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125">grpc.h</a>
+, <a class="el" href="call_8c.html#a456f491fd120a1561aa8cd1178ddb4c7">call.c</a>
+</li>
+<li>grpc_call_details_destroy()
+: <a class="el" href="grpc_8h.html#a436819189c9155a0761db7667f9078f9">grpc.h</a>
+, <a class="el" href="call__details_8c.html#a8ac75052ac470570689777a7a2684012">call_details.c</a>
+</li>
+<li>grpc_call_details_init()
+: <a class="el" href="grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5">grpc.h</a>
+, <a class="el" href="call__details_8c.html#aec87c14a6d7452bfb029af6a317a6cff">call_details.c</a>
+</li>
+<li>grpc_call_element
+: <a class="el" href="channel__stack_8h.html#ad4b0603b98c350dc4bfdcc2ba95d5401">channel_stack.h</a>
+</li>
+<li>grpc_call_element_send_cancel()
+: <a class="el" href="channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a7127b6c0b4d14c70e23e65875c7b6bc5">channel_stack.c</a>
+</li>
+<li>GRPC_CALL_ERROR
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41">grpc.h</a>
+</li>
+<li>grpc_call_error
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_ALREADY_ACCEPTED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_ALREADY_FINISHED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_ALREADY_INVOKED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_INVALID_FLAGS
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_INVALID_METADATA
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_INVOKED
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_ON_CLIENT
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_ON_SERVER
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f">grpc.h</a>
+</li>
+<li>GRPC_CALL_ERROR_TOO_MANY_OPERATIONS
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454">grpc.h</a>
+</li>
+<li>grpc_call_from_top_element()
+: <a class="el" href="call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e">call.h</a>
+, <a class="el" href="call_8c.html#a92d6bdbeddb5e6918e118bc0979a1a9b">call.c</a>
+</li>
+<li>grpc_call_get_call_stack()
+: <a class="el" href="call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f">call.h</a>
+, <a class="el" href="call_8c.html#a089e0677c51d9a5d4a4a7e582f86b27f">call.c</a>
+</li>
+<li>grpc_call_get_completion_queue()
+: <a class="el" href="call_8h.html#a383950ef84646c0f3cb3cb38807503db">call.h</a>
+, <a class="el" href="call_8c.html#a383950ef84646c0f3cb3cb38807503db">call.c</a>
+</li>
+<li>grpc_call_get_compression_algorithm()
+: <a class="el" href="call_8c.html#a5128cbee3e5ed3cd97b4043c0f6d7d04">call.c</a>
+</li>
+<li>grpc_call_get_peer()
+: <a class="el" href="grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada">grpc.h</a>
+, <a class="el" href="call_8c.html#adf4ac8b78da7b957ce05dc0f62719ada">call.c</a>
+</li>
+<li>GRPC_CALL_INTERNAL_REF
+: <a class="el" href="call_8h.html#a8096750f0a0c7cb97a4c38df49242f8b">call.h</a>
+</li>
+<li>grpc_call_internal_ref()
+: <a class="el" href="call_8h.html#a6845825cac8a628227db13fef74ac84d">call.h</a>
+, <a class="el" href="call_8c.html#afdbe0f591e358205051b2af04a8df4f8">call.c</a>
+</li>
+<li>GRPC_CALL_INTERNAL_UNREF
+: <a class="el" href="call_8h.html#a88a83bb312e007ce3b253c97a567383b">call.h</a>
+</li>
+<li>grpc_call_internal_unref()
+: <a class="el" href="call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76">call.h</a>
+, <a class="el" href="call_8c.html#afc70fe56761341f774d1b03a55a0e0e9">call.c</a>
+</li>
+<li>grpc_call_is_client()
+: <a class="el" href="call_8h.html#af101e4a67c8995de55cbd8b113e3b394">call.h</a>
+, <a class="el" href="call_8c.html#af101e4a67c8995de55cbd8b113e3b394">call.c</a>
+</li>
+<li>GRPC_CALL_LOG_BATCH
+: <a class="el" href="call_8h.html#afb66440381d35f27f8a59ce496970c8a">call.h</a>
+</li>
+<li>grpc_call_log_batch()
+: <a class="el" href="call_8h.html#a70fab32081ad1821de8bf3979cfa01d6">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6">call_log_batch.c</a>
+</li>
+<li>grpc_call_log_op()
+: <a class="el" href="channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee">channel_stack.h</a>
+, <a class="el" href="transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee">transport_op_string.c</a>
+</li>
+<li>GRPC_CALL_LOG_OP
+: <a class="el" href="channel__stack_8h.html#a933b113b310801b8f916dade1569dbc3">channel_stack.h</a>
+</li>
+<li>grpc_call_next_get_peer()
+: <a class="el" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a40c122e470335bb7a6edf1e0a31fc801">channel_stack.c</a>
+</li>
+<li>grpc_call_next_op()
+: <a class="el" href="channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#af52cb36e243fc3bfb81ebca882346ce9">channel_stack.c</a>
+</li>
+<li>GRPC_CALL_OK
+: <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8">grpc.h</a>
+</li>
+<li>grpc_call_set_completion_queue()
+: <a class="el" href="call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd">call.h</a>
+, <a class="el" href="call_8c.html#a29e0a4ca5d3d86c071b41dcb30c117bd">call.c</a>
+</li>
+<li>grpc_call_set_credentials()
+: <a class="el" href="grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60">grpc_security.h</a>
+, <a class="el" href="security__context_8c.html#a56de54ae2563e67e236c10e8fa419f60">security_context.c</a>
+</li>
+<li>grpc_call_stack_destroy()
+: <a class="el" href="channel__stack_8h.html#a441c43095f765c200e679230a11c6116">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a441c43095f765c200e679230a11c6116">channel_stack.c</a>
+</li>
+<li>grpc_call_stack_element()
+: <a class="el" href="channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333">channel_stack.c</a>
+</li>
+<li>grpc_call_stack_from_top_element()
+: <a class="el" href="channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c">channel_stack.c</a>
+</li>
+<li>grpc_call_stack_init()
+: <a class="el" href="channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#ac7f3085338ed96593ca7c814cd6d705d">channel_stack.c</a>
+</li>
+<li>grpc_call_start_batch()
+: <a class="el" href="grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101">grpc.h</a>
+, <a class="el" href="call_8c.html#ae0e60993c9d6e5ceccaf2e61f690b101">call.c</a>
+</li>
+<li>grpc_call_start_ioreq_and_call_back()
+: <a class="el" href="call_8h.html#aef30c2ddcfea12c0df20548f32b4378d">call.h</a>
+, <a class="el" href="call_8c.html#aef30c2ddcfea12c0df20548f32b4378d">call.c</a>
+</li>
+<li>grpc_census_call_get_context()
+: <a class="el" href="grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66">grpc.h</a>
+, <a class="el" href="grpc__context_8c.html#a333e4c9a18683ab7a0db218df7a5fc6e">grpc_context.c</a>
+</li>
+<li>grpc_census_call_set_context()
+: <a class="el" href="grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a">grpc.h</a>
+, <a class="el" href="grpc__context_8c.html#afe9f71e9469141cc38cf3ec1375830ce">grpc_context.c</a>
+</li>
+<li>grpc_channel
+: <a class="el" href="grpc_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc.h</a>
+</li>
+<li>grpc_channel_args_copy()
+: <a class="el" href="channel__args_8h.html#aea7141804d69de11c1470197ad87b45d">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#aea7141804d69de11c1470197ad87b45d">channel_args.c</a>
+</li>
+<li>grpc_channel_args_copy_and_add()
+: <a class="el" href="channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#ace4130d42d359c697a99d4ed7a7e54c3">channel_args.c</a>
+</li>
+<li>grpc_channel_args_destroy()
+: <a class="el" href="channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#ad7467ddcad8160325b79b8d3a627c42e">channel_args.c</a>
+</li>
+<li>grpc_channel_args_get_compression_algorithm()
+: <a class="el" href="channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#ab6073e21bee62a87f891a10d5bb4a3bb">channel_args.c</a>
+</li>
+<li>grpc_channel_args_is_census_enabled()
+: <a class="el" href="channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#a918e3c374d10937b1cf1a7bec45e96c0">channel_args.c</a>
+</li>
+<li>grpc_channel_args_merge()
+: <a class="el" href="channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#aa098be5f086aefff83a52e202d11a39a">channel_args.c</a>
+</li>
+<li>grpc_channel_args_set_compression_algorithm()
+: <a class="el" href="channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70">channel_args.h</a>
+, <a class="el" href="channel__args_8c.html#a1666cde2d23a797e95cf09e3c26e7f70">channel_args.c</a>
+</li>
+<li>grpc_channel_check_connectivity_state()
+: <a class="el" href="grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3">grpc.h</a>
+, <a class="el" href="channel__connectivity_8c.html#a9623d8e4df1d17eb26b67d905f1d7cb3">channel_connectivity.c</a>
+</li>
+<li>GRPC_CHANNEL_CONNECTING
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299">grpc.h</a>
+</li>
+<li>grpc_channel_create_call()
+: <a class="el" href="grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e">grpc.h</a>
+, <a class="el" href="channel_8c.html#aa6b80c5019007f758b1bf414e323db05">channel.c</a>
+</li>
+<li>grpc_channel_create_from_filters()
+: <a class="el" href="channel_8h.html#a12b25d31348401c51adab93c4f461d58">channel.h</a>
+, <a class="el" href="channel_8c.html#a32e56f0a0ab55d90624b92cbbf7bd384">channel.c</a>
+</li>
+<li>grpc_channel_create_registered_call()
+: <a class="el" href="grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">grpc.h</a>
+, <a class="el" href="channel_8c.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">channel.c</a>
+</li>
+<li>grpc_channel_destroy()
+: <a class="el" href="grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3">grpc.h</a>
+, <a class="el" href="channel_8c.html#a16e4b95581ad12e8e0af2af8d41b71b3">channel.c</a>
+</li>
+<li>grpc_channel_element
+: <a class="el" href="channel__stack_8h.html#aea7892e6dfe1fbf098a7d6deea46d4ca">channel_stack.h</a>
+</li>
+<li>GRPC_CHANNEL_FATAL_FAILURE
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6">grpc.h</a>
+</li>
+<li>grpc_channel_get_channel_stack()
+: <a class="el" href="channel_8h.html#a264b543c86559165c42b1c41cb4c9045">channel.h</a>
+, <a class="el" href="channel_8c.html#a264b543c86559165c42b1c41cb4c9045">channel.c</a>
+</li>
+<li>grpc_channel_get_compression_algorithm_string()
+: <a class="el" href="channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af">channel.h</a>
+, <a class="el" href="channel_8c.html#aee69f0f30f9cdcdd3961b1d253fa29af">channel.c</a>
+</li>
+<li>grpc_channel_get_max_message_length()
+: <a class="el" href="channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd">channel.h</a>
+, <a class="el" href="channel_8c.html#a1f91159c2a0d259aa7f854ba4204cafd">channel.c</a>
+</li>
+<li>grpc_channel_get_message_string()
+: <a class="el" href="channel_8h.html#a3008e3086b47f6170180c32ef88c83db">channel.h</a>
+, <a class="el" href="channel_8c.html#a3008e3086b47f6170180c32ef88c83db">channel.c</a>
+</li>
+<li>grpc_channel_get_metadata_context()
+: <a class="el" href="channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80">channel.h</a>
+, <a class="el" href="channel_8c.html#a6b9ee58f86b3e3026767b37bbc3efa80">channel.c</a>
+</li>
+<li>grpc_channel_get_reffed_status_elem()
+: <a class="el" href="channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101">channel.h</a>
+, <a class="el" href="channel_8c.html#a49c14becac82008119b5e9fd9d554983">channel.c</a>
+</li>
+<li>grpc_channel_get_status_string()
+: <a class="el" href="channel_8h.html#a2192de2d31a54523311ce241f933e048">channel.h</a>
+, <a class="el" href="channel_8c.html#a2192de2d31a54523311ce241f933e048">channel.c</a>
+</li>
+<li>grpc_channel_get_target()
+: <a class="el" href="grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499">grpc.h</a>
+, <a class="el" href="channel_8c.html#a108ef86bc0e5ebcb05f744315e2a6499">channel.c</a>
+</li>
+<li>GRPC_CHANNEL_IDLE
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77">grpc.h</a>
+</li>
+<li>GRPC_CHANNEL_INTERNAL_REF
+: <a class="el" href="channel_8h.html#aa19087be931208174c3f30c983b0061c">channel.h</a>
+</li>
+<li>grpc_channel_internal_ref()
+: <a class="el" href="channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634">channel.h</a>
+, <a class="el" href="channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41">channel.c</a>
+</li>
+<li>grpc_channel_internal_unref()
+: <a class="el" href="channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">channel.h</a>
+, <a class="el" href="channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b">channel.c</a>
+</li>
+<li>GRPC_CHANNEL_INTERNAL_UNREF
+: <a class="el" href="channel_8h.html#a8391477c21b23ffe97f2e6327c74e77e">channel.h</a>
+</li>
+<li>grpc_channel_next_op()
+: <a class="el" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#aea7eceb60c0e94465c4baea314c0ebd9">channel_stack.c</a>
+</li>
+<li>GRPC_CHANNEL_READY
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea">grpc.h</a>
+</li>
+<li>grpc_channel_register_call()
+: <a class="el" href="grpc_8h.html#af00855f27d8b7c6b232982446371c04d">grpc.h</a>
+, <a class="el" href="channel_8c.html#af00855f27d8b7c6b232982446371c04d">channel.c</a>
+</li>
+<li>grpc_channel_security_connector
+: <a class="el" href="security__connector_8h.html#afbebb4c120eeea2ad96953aae5f656ec">security_connector.h</a>
+</li>
+<li>grpc_channel_security_connector_check_call_host()
+: <a class="el" href="security__connector_8h.html#a845341440590ee81647b56575eb60168">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a845341440590ee81647b56575eb60168">security_connector.c</a>
+</li>
+<li>grpc_channel_stack_destroy()
+: <a class="el" href="channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#ad06f3ee4d872888e99778e5faa610764">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_element()
+: <a class="el" href="channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a6fa445cf1f13f17095e14c0cc8801fb5">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_from_top_element()
+: <a class="el" href="channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_init()
+: <a class="el" href="channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a9dfbcf853676b70efa84cf8777a7b928">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_last_element()
+: <a class="el" href="channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a663793c2627677279816d636bf310b50">channel_stack.c</a>
+</li>
+<li>grpc_channel_stack_size()
+: <a class="el" href="channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a7593e5b07a422db70484cfb66264dd1b">channel_stack.c</a>
+</li>
+<li>GRPC_CHANNEL_TRANSIENT_FAILURE
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6">grpc.h</a>
+</li>
+<li>grpc_channel_watch_connectivity_state()
+: <a class="el" href="grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b">grpc.h</a>
+, <a class="el" href="channel__connectivity_8c.html#a29aa98ca6ce9f7e5116e43b0c414e96b">channel_connectivity.c</a>
+</li>
+<li>GRPC_CHTTP2__ERROR_DO_NOT_USE
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_add_incoming_goaway()
+: <a class="el" href="internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#aeb6a160980622d4e5d1b8e9e608c6771">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_base64_encode()
+: <a class="el" href="bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a1435a6d866c6e7f7989ca786facc1fde">bin_encoder.c</a>
+</li>
+<li>grpc_chttp2_base64_encode_and_huffman_compress()
+: <a class="el" href="bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a0d29385f837594681b517d91d5d578a7">bin_encoder.c</a>
+</li>
+<li>GRPC_CHTTP2_CANCEL
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CLAMP_INVALID_VALUE
+: <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_cleanup_writing()
+: <a class="el" href="internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9">internal.h</a>
+, <a class="el" href="writing_8c.html#aec2dafff34e07d99d473de28a658614f">writing.c</a>
+</li>
+<li>GRPC_CHTTP2_CLIENT_CONNECT_STRING
+: <a class="el" href="internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_CLIENT_CONNECT_STRLEN
+: <a class="el" href="internal_8h.html#a5fd119b62e9b3648496dbb7c2f2a0025">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_COMPRESSION_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CONNECT_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_CONNECTION_ERROR
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_0
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_1
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_2
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_3
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FH_4
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288">frame_data.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FLAG_END_HEADERS
+: <a class="el" href="frame_8h.html#a9e28337a838f07e06987f344a01f7f0f">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FLAG_END_STREAM
+: <a class="el" href="frame_8h.html#aebe712016c70bba5c7fc0cbc7f372681">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FLAG_PADDED
+: <a class="el" href="frame_8h.html#ab01d61cf6f1abddae8031ebcf6e34e09">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_DATA_FRAME
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de">frame_data.h</a>
+</li>
+<li>grpc_chttp2_data_frame_create_empty_close()
+: <a class="el" href="frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362">frame_data.h</a>
+, <a class="el" href="stream__encoder_8c.html#aa79c486a29b6e104c57be53a20d91362">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_data_parser_begin_frame()
+: <a class="el" href="frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#afab39491d68260dc81d1a57cac6f434a">frame_data.c</a>
+</li>
+<li>grpc_chttp2_data_parser_destroy()
+: <a class="el" href="frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#a5927900bd0d0911de70cab715f4d4468">frame_data.c</a>
+</li>
+<li>grpc_chttp2_data_parser_init()
+: <a class="el" href="frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#a796d3b28bd11e75897705b4f92a5cae7">frame_data.c</a>
+</li>
+<li>grpc_chttp2_data_parser_parse()
+: <a class="el" href="frame__data_8h.html#abc519029db35772068e9a052076fcfa1">frame_data.h</a>
+, <a class="el" href="frame__data_8c.html#abc519029db35772068e9a052076fcfa1">frame_data.c</a>
+</li>
+<li>grpc_chttp2_decode_timeout()
+: <a class="el" href="timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8">timeout_encoding.h</a>
+, <a class="el" href="timeout__encoding_8c.html#ac96a9d21da277e6a790fa8ac5846b5d8">timeout_encoding.c</a>
+</li>
+<li>grpc_chttp2_deframe_transport_state
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE
+: <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_encode()
+: <a class="el" href="stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#a1fdaaa3443176e8815ffe75804b5efbd">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_encode_timeout()
+: <a class="el" href="timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc">timeout_encoding.h</a>
+, <a class="el" href="timeout__encoding_8c.html#aa4128995f3b3d4fe068c1635a85f7bcc">timeout_encoding.c</a>
+</li>
+<li>GRPC_CHTTP2_ENHANCE_YOUR_CALM
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_error_code
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_FLAG_ACK
+: <a class="el" href="frame_8h.html#ae399b812927e4ccfa1836814e719bec6">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FLAG_HAS_PRIORITY
+: <a class="el" href="frame_8h.html#a8fbbbbd20f7217de2249fb8597b48c36">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FLOW_CONTROL_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_flowctl_trace()
+: <a class="el" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#ac054ecf6e743093e5527787063f3acaa">chttp2_transport.c</a>
+</li>
+<li>GRPC_CHTTP2_FLOWCTL_TRACE_STREAM
+: <a class="el" href="internal_8h.html#a927cb1449b541fcb1812761184135ca1">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT
+: <a class="el" href="internal_8h.html#ad6d86669b104a248fbee4d8f63237a06">internal.h</a>
+</li>
+<li>grpc_chttp2_for_all_streams()
+: <a class="el" href="internal_8h.html#a62031f6afc6643cc2f34b4af2d547576">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a62031f6afc6643cc2f34b4af2d547576">stream_lists.c</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_CONTINUATION
+: <a class="el" href="frame_8h.html#ae8ffe7f9a02584c5eed5876f6d8e497b">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_DATA
+: <a class="el" href="frame_8h.html#af475a6ee5b3fc2b9c8b835d927521bee">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_GOAWAY
+: <a class="el" href="frame_8h.html#a624f289bc52602a8c3340ad747075130">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_HEADER
+: <a class="el" href="frame_8h.html#ab82e94b9ff60e4ef29301db9b4022805">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_PING
+: <a class="el" href="frame_8h.html#a9a92c84ae932e1b9a79af8f099516ece">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_RST_STREAM
+: <a class="el" href="frame_8h.html#a0e6ad3bb0bc03b02cd2791f34014c933">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_SETTINGS
+: <a class="el" href="frame_8h.html#aa030a067f1b4cbb8d34c28fbb43e8046">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_SIZE_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_FRAME_WINDOW_UPDATE
+: <a class="el" href="frame_8h.html#ac9af6484a80a10f0213465fa5dc14031">frame.h</a>
+</li>
+<li>grpc_chttp2_get_alpn_version_index()
+: <a class="el" href="alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5">alpn.h</a>
+, <a class="el" href="alpn_8c.html#a3f09d970c73c43952620b5e983c77dc5">alpn.c</a>
+</li>
+<li>grpc_chttp2_goaway_append()
+: <a class="el" href="frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a71bd236ace0cb6b0f04ebb1049efc5bc">frame_goaway.c</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_DEBUG
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR0
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR1
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR2
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_ERR3
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI0
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI1
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI2
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe">frame_goaway.h</a>
+</li>
+<li>GRPC_CHTTP2_GOAWAY_LSI3
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72">frame_goaway.h</a>
+</li>
+<li>grpc_chttp2_goaway_parse_state
+: <a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">frame_goaway.h</a>
+</li>
+<li>grpc_chttp2_goaway_parser_begin_frame()
+: <a class="el" href="frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a2dd5fba43ce1f26f220199c1c7db0f05">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_destroy()
+: <a class="el" href="frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a5cd3e388f5844ad2c4c7d1c9488436a8">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_init()
+: <a class="el" href="frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a8df9b9a3fcd7bc6d679b47909c2c8f23">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_goaway_parser_parse()
+: <a class="el" href="frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d">frame_goaway.h</a>
+, <a class="el" href="frame__goaway_8c.html#a52a6863feebfb5a9962330d42b22be2d">frame_goaway.c</a>
+</li>
+<li>grpc_chttp2_grpc_status_to_http2_error()
+: <a class="el" href="status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#a8fc288b0c9b0f2333adb3c1de2559c1d">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_grpc_status_to_http2_status()
+: <a class="el" href="status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#a30ec4cf33600ca53524bb3003c02b37a">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_has_streams()
+: <a class="el" href="internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a19ad8f2b321787a1255a888d5d5923f1">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_header_parser_parse()
+: <a class="el" href="hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#a7a92d332cfe4cdd2fe066d8c187a19c3">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_compressor_destroy()
+: <a class="el" href="stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#a03663bcc8cda8973711333e62e7aff66">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_hpack_compressor_init()
+: <a class="el" href="stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#ad9ec21ece920fa6f844eeecf4b5c4149">stream_encoder.c</a>
+</li>
+<li>GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD
+: <a class="el" href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8">hpack_table.h</a>
+</li>
+<li>grpc_chttp2_hpack_parser
+: <a class="el" href="hpack__parser_8h.html#ae66f95f470e6a67afa580dd7d1d3d39b">hpack_parser.h</a>
+</li>
+<li>grpc_chttp2_hpack_parser_destroy()
+: <a class="el" href="hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#ae43cb55b0e7102694c68c29d93cd3573">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_init()
+: <a class="el" href="hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#ae9f87d2fc6cdda2cfcedd228feff9a43">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_parse()
+: <a class="el" href="hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#a883d1c556ca6aaea2fbb04dda7928ebc">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_set_has_priority()
+: <a class="el" href="hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee">hpack_parser.h</a>
+, <a class="el" href="hpack__parser_8c.html#a9fc7e7f152280acc512689e138805eee">hpack_parser.c</a>
+</li>
+<li>grpc_chttp2_hpack_parser_state
+: <a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">hpack_parser.h</a>
+</li>
+<li>grpc_chttp2_hpack_varint_length()
+: <a class="el" href="varint_8h.html#a2b4567fce80183246809231da7d798dc">varint.h</a>
+, <a class="el" href="varint_8c.html#a2b4567fce80183246809231da7d798dc">varint.c</a>
+</li>
+<li>grpc_chttp2_hpack_write_varint_tail()
+: <a class="el" href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">varint.h</a>
+, <a class="el" href="varint_8c.html#a7fcc1174a3686feebdb7085e30283a66">varint.c</a>
+</li>
+<li>GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS
+: <a class="el" href="stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4">stream_encoder.h</a>
+</li>
+<li>GRPC_CHTTP2_HPACKC_NUM_FILTERS
+: <a class="el" href="stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6">stream_encoder.h</a>
+</li>
+<li>GRPC_CHTTP2_HPACKC_NUM_VALUES
+: <a class="el" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">stream_encoder.h</a>
+</li>
+<li>grpc_chttp2_hptbl_add()
+: <a class="el" href="hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#a1ad3f82e2b6f66cf022f672861b65b84">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_destroy()
+: <a class="el" href="hpack__table_8h.html#aeef559491f324858e464dff14851d857">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#aeef559491f324858e464dff14851d857">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_find()
+: <a class="el" href="hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_init()
+: <a class="el" href="hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#a17492a855a901fafa3086087e74a16f0">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_hptbl_lookup()
+: <a class="el" href="hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b">hpack_table.h</a>
+, <a class="el" href="hpack__table_8c.html#a3e857648df8d6b50e5faac502bd5fe5b">hpack_table.c</a>
+</li>
+<li>grpc_chttp2_http2_error_to_grpc_status()
+: <a class="el" href="status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_http2_status_to_grpc_status()
+: <a class="el" href="status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12">status_conversion.h</a>
+, <a class="el" href="status__conversion_8c.html#a6e442a5cee1439a8cf37203b40956d12">status_conversion.c</a>
+</li>
+<li>grpc_chttp2_huffman_compress()
+: <a class="el" href="bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a4445cb57a3331537c4d942764b555123">bin_encoder.c</a>
+</li>
+<li>grpc_chttp2_huffsyms
+: <a class="el" href="huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c">huffsyms.h</a>
+, <a class="el" href="huffsyms_8c.html#a8cbea7cb59b983d744943eab38e8d55f">huffsyms.c</a>
+</li>
+<li>GRPC_CHTTP2_IF_TRACING
+: <a class="el" href="internal_8h.html#ab4ecd954e779c49a6159f842dc5a2ab4">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_INADEQUATE_SECURITY
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_add()
+: <a class="el" href="incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a0b7de798f56d0202db1102c2c87313d0">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_destroy()
+: <a class="el" href="incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a640db57113d389432d42bda5e1169b31">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_init()
+: <a class="el" href="incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#acb327575a569f6d7fbb40c309119bc00">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into()
+: <a class="el" href="incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a6b6375d9d949b70f2d38ceeb57437137">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op()
+: <a class="el" href="incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#aafe1950af666833c29b8086f4931be4d">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_reset()
+: <a class="el" href="incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883">incoming_metadata.h</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_set_deadline()
+: <a class="el" href="incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#aba03088316cada64053b68851b5a5603">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_buffer_swap()
+: <a class="el" href="incoming__metadata_8c.html#a3ae615483b18241fe3a8fe7c9897cee4">incoming_metadata.c</a>
+</li>
+<li>grpc_chttp2_incoming_metadata_live_op_buffer_end()
+: <a class="el" href="incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a5b987a9d3099c62ad4a6c198242b884e">incoming_metadata.c</a>
+</li>
+<li>GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE
+: <a class="el" href="hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_INTERNAL_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_invalid_value_behavior
+: <a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_is_alpn_version_supported()
+: <a class="el" href="alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b">alpn.h</a>
+, <a class="el" href="alpn_8c.html#ad4d4c481dfaefe5690ccb83861466f6b">alpn.c</a>
+</li>
+<li>GRPC_CHTTP2_LAST_STATIC_ENTRY
+: <a class="el" href="hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3">hpack_table.h</a>
+</li>
+<li>grpc_chttp2_list_add_cancelled_waiting_for_writing()
+: <a class="el" href="internal_8h.html#ad26dae5e10a026530f50b133359b3ee2">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ad26dae5e10a026530f50b133359b3ee2">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_closed_waiting_for_parsing()
+: <a class="el" href="internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a1208f234dcb6b2a73be3c875b2b52907">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_first_writable_stream()
+: <a class="el" href="internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a8858ea6e4f6e7c363985793b403a0ac9">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_incoming_window_updated()
+: <a class="el" href="internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a1d99597284d4c0a0bd3cbf102ff415a2">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_parsing_seen_stream()
+: <a class="el" href="internal_8h.html#a771e6e4a553060bfac71d00b5f866877">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a771e6e4a553060bfac71d00b5f866877">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_read_write_state_changed()
+: <a class="el" href="internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_waiting_for_concurrency()
+: <a class="el" href="internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a71d9dea1ff323c374d7ea47818defc2e">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_writable_stream()
+: <a class="el" href="internal_8h.html#a117877f5202f072aa35e7ada0379d0db">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a117877f5202f072aa35e7ada0379d0db">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_writing_stream()
+: <a class="el" href="internal_8h.html#af5740bd38b626e875166e60e697e099e">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#af5740bd38b626e875166e60e697e099e">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_add_written_stream()
+: <a class="el" href="internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ac6b7a089de78b67a9650e42b4a76ac69">stream_lists.c</a>
+</li>
+<li>GRPC_CHTTP2_LIST_ALL_STREAMS
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f">internal.h</a>
+</li>
+<li>grpc_chttp2_list_have_writing_streams()
+: <a class="el" href="internal_8h.html#a2c7a37cef27c29528850701b9cf772d4">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a2c7a37cef27c29528850701b9cf772d4">stream_lists.c</a>
+</li>
+<li>GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_PARSING_SEEN
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e">internal.h</a>
+</li>
+<li>grpc_chttp2_list_pop_cancelled_waiting_for_writing()
+: <a class="el" href="internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ad2d2a802b9072505d1e6f8bb68727f44">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_closed_waiting_for_parsing()
+: <a class="el" href="internal_8h.html#ad0434ee720b66a5ee51c9904548857af">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ad0434ee720b66a5ee51c9904548857af">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_incoming_window_updated()
+: <a class="el" href="internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a90a6cb6d111a750ab1f28bf4e438bb62">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_parsing_seen_stream()
+: <a class="el" href="internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a1d1ec9b2edce465d2fd18002a403878d">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_read_write_state_changed()
+: <a class="el" href="internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#ac9e8165e01d872ed42c0333aee9d31c4">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_waiting_for_concurrency()
+: <a class="el" href="internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a6b62b98b415b3984616d4e851f0ff5c0">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_writable_stream()
+: <a class="el" href="internal_8h.html#aeac970afdd6294bac9d1dcb84b702167">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#aeac970afdd6294bac9d1dcb84b702167">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_writing_stream()
+: <a class="el" href="internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#aba4771272cd49e3012d81c05fad1bdb7">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_pop_written_stream()
+: <a class="el" href="internal_8h.html#a3107afcec2694dd7c7855d540a560090">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a3107afcec2694dd7c7855d540a560090">stream_lists.c</a>
+</li>
+<li>GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec">internal.h</a>
+</li>
+<li>grpc_chttp2_list_remove_incoming_window_updated()
+: <a class="el" href="internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a8a7f981b74e1e99b0a1afe0c45702d89">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_list_remove_writable_stream()
+: <a class="el" href="internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">stream_lists.c</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WRITABLE
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WRITING
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_LIST_WRITTEN
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE
+: <a class="el" href="hpack__table_8h.html#a376305051742470529655dacf911329e">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_IN_PREFIX
+: <a class="el" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">varint.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_PAYLOAD_LENGTH
+: <a class="el" href="frame_8h.html#a461cf678ffd9272c8a10f133c058124e">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_MAX_TABLE_COUNT
+: <a class="el" href="hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5">hpack_table.h</a>
+</li>
+<li>GRPC_CHTTP2_NO_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_num_alpn_versions()
+: <a class="el" href="alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5">alpn.h</a>
+, <a class="el" href="alpn_8c.html#aa7e91d317127b4a8a8a1cbb6acc942f5">alpn.c</a>
+</li>
+<li>GRPC_CHTTP2_NUM_HUFFSYMS
+: <a class="el" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">huffsyms.h</a>
+</li>
+<li>GRPC_CHTTP2_NUM_SETTINGS
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_outstanding_ping
+: <a class="el" href="internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591">internal.h</a>
+</li>
+<li>grpc_chttp2_parse_error
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">frame.h</a>
+</li>
+<li>GRPC_CHTTP2_PARSE_OK
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931">frame.h</a>
+</li>
+<li>grpc_chttp2_parsing_accept_stream()
+: <a class="el" href="internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a25a39d1d95e7140c1ae8f765ffd92847">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_parsing_become_skip_parser()
+: <a class="el" href="internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60">internal.h</a>
+, <a class="el" href="parsing_8c.html#ad6a13571d6666f45a64c8e0f6b234e60">parsing.c</a>
+</li>
+<li>grpc_chttp2_parsing_lookup_stream()
+: <a class="el" href="internal_8h.html#ae19b5968ebea2a077650652f1a3af46d">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#ae19b5968ebea2a077650652f1a3af46d">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_perform_read()
+: <a class="el" href="internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f">internal.h</a>
+, <a class="el" href="parsing_8c.html#abeaab2fead1bddefe92af0bc61a3a33f">parsing.c</a>
+</li>
+<li>grpc_chttp2_perform_writes()
+: <a class="el" href="internal_8h.html#a8fa6e3087336e9d487f3987148cc3930">internal.h</a>
+, <a class="el" href="writing_8c.html#a8fa6e3087336e9d487f3987148cc3930">writing.c</a>
+</li>
+<li>grpc_chttp2_ping_create()
+: <a class="el" href="frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3">frame_ping.h</a>
+, <a class="el" href="frame__ping_8c.html#a80bb3f2ba166dcbd164aa04e680c58e3">frame_ping.c</a>
+</li>
+<li>grpc_chttp2_ping_parser_begin_frame()
+: <a class="el" href="frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7">frame_ping.h</a>
+, <a class="el" href="frame__ping_8c.html#a76f66f3bbe53a20610183253d30c57f7">frame_ping.c</a>
+</li>
+<li>grpc_chttp2_ping_parser_parse()
+: <a class="el" href="frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042">frame_ping.h</a>
+, <a class="el" href="frame__ping_8c.html#ace393509f26406ff6bdc9e60e7534042">frame_ping.c</a>
+</li>
+<li>grpc_chttp2_preencode()
+: <a class="el" href="stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022">stream_encoder.h</a>
+, <a class="el" href="stream__encoder_8c.html#a3ee751a56974f45d33d89ce7f02cf022">stream_encoder.c</a>
+</li>
+<li>grpc_chttp2_prepare_to_read()
+: <a class="el" href="internal_8h.html#ae444a83dc73e9a658e7df625a04b101a">internal.h</a>
+, <a class="el" href="parsing_8c.html#ae010263eae7de4e41a74679b11579825">parsing.c</a>
+</li>
+<li>GRPC_CHTTP2_PROTOCOL_ERROR
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_publish_reads()
+: <a class="el" href="internal_8h.html#a4d137f455d722521fd7dab4fd13e1697">internal.h</a>
+, <a class="el" href="parsing_8c.html#aba67e2ed1d9d5ac25c0d5b2ea31e8137">parsing.c</a>
+</li>
+<li>GRPC_CHTTP2_REFUSED_STREAM
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b">http2_errors.h</a>
+</li>
+<li>grpc_chttp2_register_stream()
+: <a class="el" href="internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#accb6dbbacb57c3f9860e6ec6eca2390e">stream_lists.c</a>
+</li>
+<li>grpc_chttp2_rst_stream_create()
+: <a class="el" href="frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687">frame_rst_stream.h</a>
+, <a class="el" href="frame__rst__stream_8c.html#a6a627690f79faf403072532d19a08895">frame_rst_stream.c</a>
+</li>
+<li>grpc_chttp2_rst_stream_parser_begin_frame()
+: <a class="el" href="frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e">frame_rst_stream.h</a>
+, <a class="el" href="frame__rst__stream_8c.html#a3138dce884dfcb8c9653de757261d16e">frame_rst_stream.c</a>
+</li>
+<li>grpc_chttp2_rst_stream_parser_parse()
+: <a class="el" href="frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc">frame_rst_stream.h</a>
+, <a class="el" href="frame__rst__stream_8c.html#ad89852ed41fa9b715fb86ab6193160fc">frame_rst_stream.c</a>
+</li>
+<li>grpc_chttp2_schedule_closure()
+: <a class="el" href="internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a6f8b16bb6048f85107966a4be9ff4a4d">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_send_closed
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">internal.h</a>
+</li>
+<li>grpc_chttp2_setting_id
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_setting_set
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad">internal.h</a>
+</li>
+<li>grpc_chttp2_settings_ack_create()
+: <a class="el" href="frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#aa1382503cac023cb2cbf516427ec7954">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_settings_create()
+: <a class="el" href="frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#aa7db515ebcf9a8add8ade457502d065a">frame_settings.c</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_ENABLE_PUSH
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE
+: <a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_settings_parameters
+: <a class="el" href="frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#a61e84df9b71280ea1a733437d9de8f37">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_settings_parse_state
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_settings_parser_begin_frame()
+: <a class="el" href="frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#a8ad385f78097ad98242ae5a8b4bc9ccf">frame_settings.c</a>
+</li>
+<li>grpc_chttp2_settings_parser_parse()
+: <a class="el" href="frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#a24ea784f4fb455974f9b4e5d66ee1416">frame_settings.c</a>
+</li>
+<li>GRPC_CHTTP2_SETTINGS_TIMEOUT
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_ID0
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_ID1
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL0
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL1
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL2
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311">frame_settings.h</a>
+</li>
+<li>GRPC_CHTTP2_SPS_VAL3
+: <a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0">frame_settings.h</a>
+</li>
+<li>grpc_chttp2_stream
+: <a class="el" href="internal_8h.html#a50089f57f93d9eb16569dd3b63f879d1">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_STREAM_CLOSED
+: <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2">http2_errors.h</a>
+</li>
+<li>GRPC_CHTTP2_STREAM_ERROR
+: <a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4">frame.h</a>
+</li>
+<li>grpc_chttp2_stream_list_id
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539">internal.h</a>
+</li>
+<li>grpc_chttp2_stream_map_add()
+: <a class="el" href="stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#a45ba47442f3bc9d3b6c6841a6f855560">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_delete()
+: <a class="el" href="stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ab2236a03f8efe26f8a1a3818bed7844e">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_destroy()
+: <a class="el" href="stream__map_8h.html#ad002379073f1a7c545a186fa0498f077">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ad002379073f1a7c545a186fa0498f077">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_find()
+: <a class="el" href="stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_for_each()
+: <a class="el" href="stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#a113657d2ad2cdffe3d9d00fe30996aa3">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_init()
+: <a class="el" href="stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_move_into()
+: <a class="el" href="stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#ac8399a7345ae2a716a1eb7594d6d0aa9">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_map_size()
+: <a class="el" href="stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85">stream_map.h</a>
+, <a class="el" href="stream__map_8c.html#a9f3f7360b053c5507b8bd792ba7e9e85">stream_map.c</a>
+</li>
+<li>grpc_chttp2_stream_parsing
+: <a class="el" href="frame_8h.html#a67486ee57e3d27c619df98c80420f421">frame.h</a>
+</li>
+<li>grpc_chttp2_stream_state
+: <a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">frame_data.h</a>
+</li>
+<li>grpc_chttp2_terminate_writing()
+: <a class="el" href="internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c">internal.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a83baade3ee315270b6d34fc6fbecb30c">chttp2_transport.c</a>
+</li>
+<li>GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE
+: <a class="el" href="timeout__encoding_8h.html#a774d4de6aaa65433d6a318f611c00939">timeout_encoding.h</a>
+</li>
+<li>grpc_chttp2_transport
+: <a class="el" href="internal_8h.html#a83a9a1c265dc0fede61598c7cd1aaec2">internal.h</a>
+</li>
+<li>grpc_chttp2_transport_parsing
+: <a class="el" href="frame_8h.html#a736ee44646a381e8119085a7803c20bc">frame.h</a>
+</li>
+<li>grpc_chttp2_transport_start_reading()
+: <a class="el" href="chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a73a9f03068253da126388dd890f1ee7d">chttp2_transport.c</a>
+</li>
+<li>grpc_chttp2_unlocking_check_writes()
+: <a class="el" href="internal_8h.html#a154399c46a1f7b901491acb4c04d19d3">internal.h</a>
+, <a class="el" href="writing_8c.html#a309a5e92de22678f146956743d86f18a">writing.c</a>
+</li>
+<li>grpc_chttp2_unregister_stream()
+: <a class="el" href="internal_8h.html#a558d8331836125098834d28a94e39bcc">internal.h</a>
+, <a class="el" href="stream__lists_8c.html#a9a096df2132a082f0fcd5b1f8010bf84">stream_lists.c</a>
+</li>
+<li>GRPC_CHTTP2_VARINT_LENGTH
+: <a class="el" href="varint_8h.html#af09078f363c97757f6e7bfa3953cb93d">varint.h</a>
+</li>
+<li>grpc_chttp2_window_update_create()
+: <a class="el" href="frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0">frame_window_update.h</a>
+, <a class="el" href="frame__window__update_8c.html#a66b55a7299f42a5862cdd349afc6d6ac">frame_window_update.c</a>
+</li>
+<li>grpc_chttp2_window_update_parser_begin_frame()
+: <a class="el" href="frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8">frame_window_update.h</a>
+, <a class="el" href="frame__window__update_8c.html#ad675abd4715d42665d37f606447dcde8">frame_window_update.c</a>
+</li>
+<li>grpc_chttp2_window_update_parser_parse()
+: <a class="el" href="frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a">frame_window_update.h</a>
+, <a class="el" href="frame__window__update_8c.html#ab1c1b5d960c0ed5cfff799476b4e425a">frame_window_update.c</a>
+</li>
+<li>grpc_chttp2_write_state
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">internal.h</a>
+</li>
+<li>GRPC_CHTTP2_WRITE_VARINT
+: <a class="el" href="varint_8h.html#a6f5350a7ba20095c1c903463e74b8e54">varint.h</a>
+</li>
+<li>grpc_client_auth_filter
+: <a class="el" href="auth__filters_8h.html#ab5f3c640585f742a46197f407218c194">auth_filters.h</a>
+, <a class="el" href="client__auth__filter_8c.html#ab5f3c640585f742a46197f407218c194">client_auth_filter.c</a>
+</li>
+<li>grpc_client_census_filter
+: <a class="el" href="census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4">census_filter.h</a>
+</li>
+<li>grpc_client_channel_add_interested_party()
+: <a class="el" href="client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a7b288cd209db3fac0c4cd5d4f8fbf3b3">client_channel.c</a>
+</li>
+<li>grpc_client_channel_check_connectivity_state()
+: <a class="el" href="client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#ae257a5817fa8e50df430d4a2132deed6">client_channel.c</a>
+</li>
+<li>grpc_client_channel_del_interested_party()
+: <a class="el" href="client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a36a91904b5c5cce4a334a9e055b35f78">client_channel.c</a>
+</li>
+<li>grpc_client_channel_filter
+: <a class="el" href="client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a8c2292b3b1d26b9c4c296c106bfa96b1">client_channel.c</a>
+</li>
+<li>grpc_client_channel_get_connecting_pollset_set()
+: <a class="el" href="client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#ab6ddde66c53ca2fec899def7d72234ad">client_channel.c</a>
+</li>
+<li>grpc_client_channel_set_resolver()
+: <a class="el" href="client__channel_8h.html#a86757e52c8e3f20d553f999c62589993">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a86757e52c8e3f20d553f999c62589993">client_channel.c</a>
+</li>
+<li>grpc_client_channel_watch_connectivity_state()
+: <a class="el" href="client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a037d0d7720ae9a68669ad9552f7ee69c">client_channel.c</a>
+</li>
+<li>grpc_client_config
+: <a class="el" href="client__config_8h.html#a5c92ac9b2893cfe73b5be84ddc10367c">client_config.h</a>
+</li>
+<li>grpc_client_config_create()
+: <a class="el" href="client__config_8h.html#a165901d77b066794c0822a683d167359">client_config.h</a>
+, <a class="el" href="client__config_8c.html#a165901d77b066794c0822a683d167359">client_config.c</a>
+</li>
+<li>grpc_client_config_get_lb_policy()
+: <a class="el" href="client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e">client_config.h</a>
+, <a class="el" href="client__config_8c.html#aa6642aab990240a61c9ecafa3dfb55e1">client_config.c</a>
+</li>
+<li>grpc_client_config_ref()
+: <a class="el" href="client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86">client_config.h</a>
+, <a class="el" href="client__config_8c.html#aa0b099847f86ea9e0da873f49b92f554">client_config.c</a>
+</li>
+<li>grpc_client_config_set_lb_policy()
+: <a class="el" href="client__config_8h.html#a01f90473256a8c714ba043c03ef2acac">client_config.h</a>
+, <a class="el" href="client__config_8c.html#a807baa44b3464dc0c5870184619d6c35">client_config.c</a>
+</li>
+<li>grpc_client_config_unref()
+: <a class="el" href="client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978">client_config.h</a>
+, <a class="el" href="client__config_8c.html#ad8d9107bdf0a780e914dccd4fd57cb35">client_config.c</a>
+</li>
+<li>grpc_client_security_context_create()
+: <a class="el" href="security__context_8h.html#a7ca11372b407a42724f5d13e36409c03">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a7ca11372b407a42724f5d13e36409c03">security_context.c</a>
+</li>
+<li>grpc_client_security_context_destroy()
+: <a class="el" href="security__context_8h.html#a794b8453091b440bafd21e00cf0f7236">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a794b8453091b440bafd21e00cf0f7236">security_context.c</a>
+</li>
+<li>grpc_completion_queue
+: <a class="el" href="grpc_8h.html#a895faab0e6035445750e43482651ba2f">grpc.h</a>
+</li>
+<li>grpc_completion_queue_create()
+: <a class="el" href="grpc_8h.html#a9f69c76c26125e6581491864a06ea44a">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#a9f69c76c26125e6581491864a06ea44a">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_destroy()
+: <a class="el" href="grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#a1d73d7983af3030ee119b768095e9627">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_next()
+: <a class="el" href="grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#ac9b582acb0fc4994ccdbf39d40ee3766">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_pluck()
+: <a class="el" href="grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#ab63b4e63ae13faa3e6786f131a46b5dd">completion_queue.c</a>
+</li>
+<li>grpc_completion_queue_shutdown()
+: <a class="el" href="grpc_8h.html#a4051b4036c5132f02064430f67420ecd">grpc.h</a>
+, <a class="el" href="completion__queue_8c.html#a7a7c60f847e798025d83e2d8ff9b1778">completion_queue.c</a>
+</li>
+<li>grpc_completion_type
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc.h</a>
+</li>
+<li>grpc_composite_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a4f65f01fb23e963cc88bcdfbede70da7">credentials.c</a>
+</li>
+<li>grpc_composite_credentials_get_credentials()
+: <a class="el" href="credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ac3ea491e3e847e603c0da420375b6e60">credentials.c</a>
+</li>
+<li>GRPC_COMPRESS_ALGORITHMS_COUNT
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_DEFLATE
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913">compression.h</a>
+</li>
+<li>grpc_compress_filter
+: <a class="el" href="compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88">compress_filter.h</a>
+, <a class="el" href="compress__filter_8c.html#a6e0ba3e22587af99125faa43ee943c88">compress_filter.c</a>
+</li>
+<li>GRPC_COMPRESS_GZIP
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_COUNT
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_HIGH
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_LOW
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_MED
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_LEVEL_NONE
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_NONE
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8">compression.h</a>
+</li>
+<li>GRPC_COMPRESS_REQUEST_ALGORITHM_KEY
+: <a class="el" href="compress__filter_8h.html#a501a03bf06f05a5d19c3e2c3b8143124">compress_filter.h</a>
+</li>
+<li>grpc_compression_algorithm
+: <a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">compression.h</a>
+</li>
+<li>GRPC_COMPRESSION_ALGORITHM_ARG
+: <a class="el" href="compression_8h.html#a9340488e193921e62bb1f240f9016a9b">compression.h</a>
+</li>
+<li>grpc_compression_algorithm_for_level()
+: <a class="el" href="compression_8h.html#a382cce802b53a6f85deb706caf1dccd6">compression.h</a>
+, <a class="el" href="algorithm_8c.html#a382cce802b53a6f85deb706caf1dccd6">algorithm.c</a>
+</li>
+<li>grpc_compression_algorithm_name()
+: <a class="el" href="compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14">compression.h</a>
+, <a class="el" href="algorithm_8c.html#adce0341ab8fd560dc39e9e96daf7cb14">algorithm.c</a>
+</li>
+<li>grpc_compression_algorithm_parse()
+: <a class="el" href="compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397">compression.h</a>
+, <a class="el" href="algorithm_8c.html#a996f65ae42d05dd7ef9da9c6d6586397">algorithm.c</a>
+</li>
+<li>grpc_compression_level
+: <a class="el" href="compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7">compression.h</a>
+</li>
+<li>grpc_compression_level_for_algorithm()
+: <a class="el" href="compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba">compression.h</a>
+, <a class="el" href="algorithm_8c.html#ace80040d9c2a916ddd4d2f2d2ec44dba">algorithm.c</a>
+</li>
+<li>grpc_compute_engine_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a3beb3fe683139856e1a13c27d760eb95">credentials.c</a>
+</li>
+<li>GRPC_COMPUTE_ENGINE_DETECTION_HOST
+: <a class="el" href="google__default__credentials_8c.html#a4c79e7c2c581744d4fcb3518b2fccf39">google_default_credentials.c</a>
+</li>
+<li>GRPC_COMPUTE_ENGINE_METADATA_HOST
+: <a class="el" href="credentials_8h.html#af2ca22068add36d00ce70643802ff647">credentials.h</a>
+</li>
+<li>GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH
+: <a class="el" href="credentials_8h.html#aca8e8738c2c829c3cf48f49454f7188f">credentials.h</a>
+</li>
+<li>grpc_connected_channel_bind_transport()
+: <a class="el" href="connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9">connected_channel.h</a>
+, <a class="el" href="connected__channel_8c.html#a5be096b4cce2c5c6b51727866723e5b9">connected_channel.c</a>
+</li>
+<li>grpc_connected_channel_filter
+: <a class="el" href="connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39">connected_channel.h</a>
+, <a class="el" href="connected__channel_8c.html#a30c8116a24cf1e555af53c1296d10b39">connected_channel.c</a>
+</li>
+<li>grpc_connectivity_state
+: <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc.h</a>
+</li>
+<li>grpc_connectivity_state_check()
+: <a class="el" href="connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#a7de513064c1e6d041b5c03611a21784c">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_destroy()
+: <a class="el" href="connectivity__state_8c.html#aa8e03f103b290be8de8041a63e469591">connectivity_state.c</a>
+, <a class="el" href="connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591">connectivity_state.h</a>
+</li>
+<li>grpc_connectivity_state_init()
+: <a class="el" href="connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#ab6dd4577019442e4d2bfab318d0a66a8">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_name()
+: <a class="el" href="connectivity__state_8c.html#a90cae61aab329c583da43141f8057b36">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_notify_on_state_change()
+: <a class="el" href="connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aef05f23287d0e2ab2e469e7113d01827">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_set()
+: <a class="el" href="connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aafe2517530b344f8e062bbef25b8895c">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_set_with_scheduler()
+: <a class="el" href="connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#ae542578d2026b84ff6d0403809e67ad7">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_trace
+: <a class="el" href="connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aae556e492df3eb9d23c5bc5728b6662c">connectivity_state.c</a>
+</li>
+<li>grpc_connectivity_state_watcher
+: <a class="el" href="connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a">connectivity_state.h</a>
+</li>
+<li>grpc_connector
+: <a class="el" href="connector_8h.html#aae174ab59659a89b5e73c565023961bb">connector.h</a>
+</li>
+<li>grpc_connector_connect()
+: <a class="el" href="connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e">connector.h</a>
+, <a class="el" href="connector_8c.html#ae43acb2d650fdc8023d69a4a39781d4e">connector.c</a>
+</li>
+<li>grpc_connector_ref()
+: <a class="el" href="connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46">connector.h</a>
+, <a class="el" href="connector_8c.html#a32f21c6a46c13ba6cc697cf94c45ca46">connector.c</a>
+</li>
+<li>grpc_connector_unref()
+: <a class="el" href="connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6">connector.h</a>
+, <a class="el" href="connector_8c.html#ab65e217852a93e4a8281e7003d72bcf6">connector.c</a>
+</li>
+<li>grpc_connector_vtable
+: <a class="el" href="connector_8h.html#add8d7e9bf9a65c5580489f9af7951bec">connector.h</a>
+</li>
+<li>GRPC_CONTEXT_COUNT
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">context.h</a>
+</li>
+<li>grpc_context_index
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff">context.h</a>
+</li>
+<li>GRPC_CONTEXT_SECURITY
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b">context.h</a>
+</li>
+<li>GRPC_CONTEXT_TRACING
+: <a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80">context.h</a>
+</li>
+<li>grpc_cq_begin_op()
+: <a class="el" href="completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#af0798635c22a4eaa66ed25c310b3a776">completion_queue.c</a>
+</li>
+<li>grpc_cq_completion
+: <a class="el" href="completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014">completion_queue.h</a>
+</li>
+<li>grpc_cq_end_op()
+: <a class="el" href="completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#a2752dafd9e9e02bbd253578fc58b0a7e">completion_queue.c</a>
+</li>
+<li>grpc_cq_hack_spin_pollset()
+: <a class="el" href="completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#af56ef17bad0397c6f1305be433aeeb64">completion_queue.c</a>
+</li>
+<li>grpc_cq_internal_ref()
+: <a class="el" href="completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02">completion_queue.c</a>
+</li>
+<li>GRPC_CQ_INTERNAL_REF
+: <a class="el" href="completion__queue_8h.html#abb132fe2e37bc87bfcc83eb3cd8d3101">completion_queue.h</a>
+</li>
+<li>grpc_cq_internal_unref()
+: <a class="el" href="completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e">completion_queue.c</a>
+, <a class="el" href="completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e">completion_queue.h</a>
+</li>
+<li>GRPC_CQ_INTERNAL_UNREF
+: <a class="el" href="completion__queue_8h.html#aaceb3ef8959e5c43f6954c19a1975f63">completion_queue.h</a>
+</li>
+<li>grpc_cq_is_server_cq()
+: <a class="el" href="completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#a02173d1bf8e55f6903d24c20107d8dbf">completion_queue.c</a>
+</li>
+<li>grpc_cq_mark_server_cq()
+: <a class="el" href="completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#afbe8f768af201e16309e240ae155ee3d">completion_queue.c</a>
+</li>
+<li>grpc_cq_pollset()
+: <a class="el" href="completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813">completion_queue.h</a>
+, <a class="el" href="completion__queue_8c.html#a0ebca6cf60ce9cc92b9bfa9200fab813">completion_queue.c</a>
+</li>
+<li>grpc_create_chttp2_transport()
+: <a class="el" href="chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a03cebc42bd75ab90ce0f9d3c8bc526a8">chttp2_transport.c</a>
+</li>
+<li>grpc_create_dualstack_socket()
+: <a class="el" href="socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6">socket_utils_posix.h</a>
+</li>
+<li>grpc_create_pick_first_lb_policy()
+: <a class="el" href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">pick_first.h</a>
+, <a class="el" href="pick__first_8c.html#a2ef6310260146caa4cf56acddbb4343e">pick_first.c</a>
+</li>
+<li>grpc_credentials
+: <a class="el" href="grpc__security_8h.html#a17768c857575e4500cdd12bb94d3f33e">grpc_security.h</a>
+</li>
+<li>grpc_credentials_contains_type()
+: <a class="el" href="credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a4a6be957afa38741405a5a41cdd752e1">credentials.c</a>
+</li>
+<li>grpc_credentials_create_security_connector()
+: <a class="el" href="credentials_8c.html#af26c4ee0ed97f2e88958c54ba22d5759">credentials.c</a>
+, <a class="el" href="credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_ERROR
+: <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a">credentials.h</a>
+</li>
+<li>grpc_credentials_get_request_metadata()
+: <a class="el" href="credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc">credentials.h</a>
+, <a class="el" href="credentials_8c.html#afe8d4191ee0f0f67684fd2575173cabc">credentials.c</a>
+</li>
+<li>grpc_credentials_has_request_metadata()
+: <a class="el" href="credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ad44c9cce8c086f8c083e5d5006e3310a">credentials.c</a>
+</li>
+<li>grpc_credentials_has_request_metadata_only()
+: <a class="el" href="credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a726f818ebdd9e781b090cf7d27347b7a">credentials.c</a>
+</li>
+<li>grpc_credentials_md_store_add()
+: <a class="el" href="credentials_8h.html#a3676b161f50d5b36989af2624565596b">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#a3676b161f50d5b36989af2624565596b">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_add_cstrings()
+: <a class="el" href="credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#a51ccf8c724a8477d5efcf0e3f73ef3a4">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_create()
+: <a class="el" href="credentials_8h.html#aee28492ddb70e47b0778fc928be9159b">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#aee28492ddb70e47b0778fc928be9159b">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_ref()
+: <a class="el" href="credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#a5535f991ceb2b2160aee414cf013ed73">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_md_store_unref()
+: <a class="el" href="credentials_8h.html#afc507497ef8b5dda7074b63babaac366">credentials.h</a>
+, <a class="el" href="credentials__metadata_8c.html#afc507497ef8b5dda7074b63babaac366">credentials_metadata.c</a>
+</li>
+<li>grpc_credentials_metadata_cb
+: <a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">credentials.h</a>
+</li>
+<li>grpc_credentials_metadata_request
+: <a class="el" href="credentials_8h.html#ad254566b74763fc0ae17e07b230c862b">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_OK
+: <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15">credentials.h</a>
+</li>
+<li>grpc_credentials_ref()
+: <a class="el" href="credentials_8h.html#a62061acac11e854a58c5faca6956e609">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a62061acac11e854a58c5faca6956e609">credentials.c</a>
+</li>
+<li>grpc_credentials_release()
+: <a class="el" href="grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a6c01e107d41e964458fdf701b8b81440">credentials.c</a>
+</li>
+<li>grpc_credentials_status
+: <a class="el" href="credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_COMPOSITE
+: <a class="el" href="credentials_8h.html#a0712aea16b41a6d8c65dafcd9d12f599">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY
+: <a class="el" href="credentials_8h.html#a30ae5fa2e94aeeca90b31d0fd7c416d4">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_IAM
+: <a class="el" href="credentials_8h.html#a2921973fe6094cad4b3aa94b20d8e254">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_JWT
+: <a class="el" href="credentials_8h.html#a94b9c6715bdb2a6469fe0db959358d2c">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_OAUTH2
+: <a class="el" href="credentials_8h.html#ad1d383b3414af259ebc165ac21febd04">credentials.h</a>
+</li>
+<li>GRPC_CREDENTIALS_TYPE_SSL
+: <a class="el" href="credentials_8h.html#ae74910f24a7fe0d54c326a1ed9e5e127">credentials.h</a>
+</li>
+<li>grpc_credentials_unref()
+: <a class="el" href="credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a63d4aa3f072736ba5eb168e12c306e56">credentials.c</a>
+</li>
+<li>GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR
+: <a class="el" href="grpc__security_8h.html#a48565da473b7c82fa2453798f620fd59">grpc_security.h</a>
+</li>
+<li>grpc_dns_resolver_factory_create()
+: <a class="el" href="dns__resolver_8c.html#a932c66ec39e987fb2cd076869334f871">dns_resolver.c</a>
+, <a class="el" href="dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a">dns_resolver.h</a>
+</li>
+<li>GRPC_DONT_SEND_CLOSED
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c">internal.h</a>
+</li>
+<li>GRPC_DSMODE_DUALSTACK
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DSMODE_IPV4
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DSMODE_IPV6
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DSMODE_NONE
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858">socket_utils_posix.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_0
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_1
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_10
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_11
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_12
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_13
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_14
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_15
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_16
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_17
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_18
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_19
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_2
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_20
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_21
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_22
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_23
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_3
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_4
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_5
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_6
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_7
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_8
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a">internal.h</a>
+</li>
+<li>GRPC_DTS_CLIENT_PREFIX_9
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_0
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_1
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_2
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_3
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_4
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_5
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_6
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_7
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976">internal.h</a>
+</li>
+<li>GRPC_DTS_FH_8
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a">internal.h</a>
+</li>
+<li>GRPC_DTS_FRAME
+: <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586">internal.h</a>
+</li>
+<li>grpc_dualstack_mode
+: <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">socket_utils_posix.h</a>
+</li>
+<li>grpc_endpoint
+: <a class="el" href="endpoint_8h.html#ab0f168d17277b4b5a4d7842eec6ea3ea">endpoint.h</a>
+</li>
+<li>grpc_endpoint_add_to_pollset()
+: <a class="el" href="endpoint_8c.html#afe30ad16c4df2a5c80b9e73d2bce80e6">endpoint.c</a>
+, <a class="el" href="endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6">endpoint.h</a>
+</li>
+<li>grpc_endpoint_add_to_pollset_set()
+: <a class="el" href="endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a7da8b1657895a121a59458dbdeb0e900">endpoint.c</a>
+</li>
+<li>GRPC_ENDPOINT_CB_EOF
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_ERROR
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_OK
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_CB_SHUTDOWN
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37">endpoint.h</a>
+</li>
+<li>grpc_endpoint_cb_status
+: <a class="el" href="endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae">endpoint.h</a>
+</li>
+<li>grpc_endpoint_destroy()
+: <a class="el" href="endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a5b4b5f0b352955ec4f060c6b443408bd">endpoint.c</a>
+</li>
+<li>grpc_endpoint_get_peer()
+: <a class="el" href="endpoint_8c.html#a21e5c205829aaf48ae7d26b32fa00338">endpoint.c</a>
+, <a class="el" href="endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338">endpoint.h</a>
+</li>
+<li>grpc_endpoint_notify_on_read()
+: <a class="el" href="endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#abead7bb222b6e3f5a7004c8fb12821be">endpoint.c</a>
+</li>
+<li>grpc_endpoint_read_cb
+: <a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">endpoint.h</a>
+</li>
+<li>grpc_endpoint_shutdown()
+: <a class="el" href="endpoint_8h.html#a7fca699259b75cf0f685227a363765fa">endpoint.h</a>
+, <a class="el" href="endpoint_8c.html#a7fca699259b75cf0f685227a363765fa">endpoint.c</a>
+</li>
+<li>grpc_endpoint_vtable
+: <a class="el" href="endpoint_8h.html#accd077025fc138a98e048238d2efe1b9">endpoint.h</a>
+</li>
+<li>grpc_endpoint_write()
+: <a class="el" href="endpoint_8c.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">endpoint.c</a>
+, <a class="el" href="endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0">endpoint.h</a>
+</li>
+<li>grpc_endpoint_write_cb
+: <a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_WRITE_DONE
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_WRITE_ERROR
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f">endpoint.h</a>
+</li>
+<li>GRPC_ENDPOINT_WRITE_PENDING
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09">endpoint.h</a>
+</li>
+<li>grpc_endpoint_write_status
+: <a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">endpoint.h</a>
+</li>
+<li>grpc_event
+: <a class="el" href="grpc_8h.html#a07990645ca218f6965fd83edf3f421b7">grpc.h</a>
+</li>
+<li>grpc_event_string()
+: <a class="el" href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">event_string.h</a>
+, <a class="el" href="event__string_8c.html#a8dc67a225f744d4d0ee592faf2bd4313">event_string.c</a>
+</li>
+<li>grpc_fake_channel_security_connector_create()
+: <a class="el" href="security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#abe2c43cab618ad3b036645d9aa506f12">security_connector.c</a>
+</li>
+<li>grpc_fake_oauth2_credentials_create()
+: <a class="el" href="credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ac749a71cdf28ebdc69d25cde612b22cc">credentials.c</a>
+</li>
+<li>GRPC_FAKE_SECURITY_URL_SCHEME
+: <a class="el" href="security__connector_8h.html#aac2af4901dde1db04846ccc7bde22272">security_connector.h</a>
+</li>
+<li>grpc_fake_server_security_connector_create()
+: <a class="el" href="security__connector_8c.html#a45a42c3c0b40593ac1b8025ba1875417">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417">security_connector.h</a>
+</li>
+<li>grpc_fake_transport_security_credentials_create()
+: <a class="el" href="credentials_8h.html#ab970b1925f494cb159a29a404f23d157">credentials.h</a>
+, <a class="el" href="credentials_8c.html#ab970b1925f494cb159a29a404f23d157">credentials.c</a>
+</li>
+<li>grpc_fake_transport_security_server_credentials_create()
+: <a class="el" href="credentials_8h.html#a60f9433cc38460bb83da148eff9475ae">credentials.h</a>
+, <a class="el" href="credentials_8c.html#a60f9433cc38460bb83da148eff9475ae">credentials.c</a>
+</li>
+<li>GRPC_FAKE_TRANSPORT_SECURITY_TYPE
+: <a class="el" href="credentials_8h.html#a2f398e72138c69b2928abb30e54ce4ce">credentials.h</a>
+</li>
+<li>grpc_fd
+: <a class="el" href="fd__posix_8h.html#a9f8a2791dbd9811a996395c3b466509d">fd_posix.h</a>
+</li>
+<li>grpc_fd_become_readable()
+: <a class="el" href="fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002">fd_posix.h</a>
+</li>
+<li>grpc_fd_become_writable()
+: <a class="el" href="fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98">fd_posix.h</a>
+</li>
+<li>grpc_fd_begin_poll()
+: <a class="el" href="fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5">fd_posix.h</a>
+</li>
+<li>grpc_fd_create()
+: <a class="el" href="fd__posix_8h.html#a6752527e24586c370a8305916cb35dde">fd_posix.h</a>
+</li>
+<li>grpc_fd_end_poll()
+: <a class="el" href="fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5">fd_posix.h</a>
+</li>
+<li>grpc_fd_global_init()
+: <a class="el" href="fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a">fd_posix.h</a>
+</li>
+<li>grpc_fd_global_shutdown()
+: <a class="el" href="fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2">fd_posix.h</a>
+</li>
+<li>grpc_fd_is_orphaned()
+: <a class="el" href="fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258">fd_posix.h</a>
+</li>
+<li>grpc_fd_notify_on_read()
+: <a class="el" href="fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0">fd_posix.h</a>
+</li>
+<li>grpc_fd_notify_on_write()
+: <a class="el" href="fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac">fd_posix.h</a>
+</li>
+<li>grpc_fd_orphan()
+: <a class="el" href="fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1">fd_posix.h</a>
+</li>
+<li>GRPC_FD_REF
+: <a class="el" href="fd__posix_8h.html#a4ad3cc6c9405aa0f94d03257238fe297">fd_posix.h</a>
+</li>
+<li>grpc_fd_ref()
+: <a class="el" href="fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3">fd_posix.h</a>
+</li>
+<li>grpc_fd_shutdown()
+: <a class="el" href="fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad">fd_posix.h</a>
+</li>
+<li>grpc_fd_unref()
+: <a class="el" href="fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0">fd_posix.h</a>
+</li>
+<li>GRPC_FD_UNREF
+: <a class="el" href="fd__posix_8h.html#a3672f89aa33819921430074f7eb96267">fd_posix.h</a>
+</li>
+<li>grpc_fd_watcher
+: <a class="el" href="fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233">fd_posix.h</a>
+</li>
+<li>grpc_fetch_oauth2_func
+: <a class="el" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">credentials.h</a>
+</li>
+<li>grpc_find_security_connector_in_args()
+: <a class="el" href="security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a7db9da4604178cb7e640e744da4b733c">security_connector.c</a>
+</li>
+<li>grpc_flowctl_trace
+: <a class="el" href="chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#afd0f83d780e8ddeac885163c45aab0a8">chttp2_transport.c</a>
+, <a class="el" href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">internal.h</a>
+</li>
+<li>grpc_flush_cached_google_default_credentials()
+: <a class="el" href="credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a">credentials.h</a>
+, <a class="el" href="google__default__credentials_8c.html#a7e3aec152312d2b66ccd3b232317b10a">google_default_credentials.c</a>
+</li>
+<li>grpc_forbid_dualstack_sockets_for_testing
+: <a class="el" href="socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757">socket_utils_posix.h</a>
+</li>
+<li>grpc_get_default_ssl_roots()
+: <a class="el" href="security__connector_8h.html#a341f454443268ca27e5cc01219b93fef">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a341f454443268ca27e5cc01219b93fef">security_connector.c</a>
+</li>
+<li>grpc_get_well_known_google_credentials_file_path()
+: <a class="el" href="credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY
+: <a class="el" href="credentials_8h.html#ac6142eafe5116c797b860449a2fbb7bf">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_CREDENTIALS_ENV_VAR
+: <a class="el" href="grpc__security_8h.html#a3874f70577fc9fe15fd2c4ce68a36ecd">grpc_security.h</a>
+</li>
+<li>grpc_google_default_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170">grpc_security.h</a>
+, <a class="el" href="google__default__credentials_8c.html#a5e3fb8f208c302245a1392c7ef16d170">google_default_credentials.c</a>
+</li>
+<li>GRPC_GOOGLE_OAUTH2_SERVICE_HOST
+: <a class="el" href="credentials_8h.html#a61dc5d4843d2e4b26aa48694efd08cd3">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH
+: <a class="el" href="credentials_8h.html#aa9cf32ba20b7ce3e171c87ab1c08b20c">credentials.h</a>
+</li>
+<li>GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN
+: <a class="el" href="jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73">jwt_verifier.h</a>
+</li>
+<li>GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX
+: <a class="el" href="jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98">jwt_verifier.h</a>
+</li>
+<li>GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE
+: <a class="el" href="credentials_8h.html#a95d64473b3915a6a65e99ac283326e78">credentials.h</a>
+</li>
+<li>grpc_http_client_filter
+: <a class="el" href="http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324">http_client_filter.h</a>
+, <a class="el" href="http__client__filter_8c.html#a0c9d14fbc933d24f599b259ccfea9324">http_client_filter.c</a>
+</li>
+<li>grpc_http_server_filter
+: <a class="el" href="http__server__filter_8c.html#af08554bdf22a17e82db905b74a959503">http_server_filter.c</a>
+, <a class="el" href="http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503">http_server_filter.h</a>
+</li>
+<li>grpc_http_trace
+: <a class="el" href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">internal.h</a>
+, <a class="el" href="chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a6bb76c8188f883af2fb738233abdeea0">chttp2_transport.c</a>
+</li>
+<li>GRPC_HTTPCLI_BODY
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0">parser.h</a>
+</li>
+<li>grpc_httpcli_context
+: <a class="el" href="httpcli_8h.html#aacb6a69953113d6b548366871b884345">httpcli.h</a>
+</li>
+<li>grpc_httpcli_context_destroy()
+: <a class="el" href="httpcli_8h.html#a6d47084af44bf387790281f288f78d7b">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#a6d47084af44bf387790281f288f78d7b">httpcli.c</a>
+</li>
+<li>grpc_httpcli_context_init()
+: <a class="el" href="httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#accc8da3837feac14f5f0b64e4cff8d1b">httpcli.c</a>
+</li>
+<li>grpc_httpcli_format_get_request()
+: <a class="el" href="format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2">format_request.h</a>
+, <a class="el" href="format__request_8c.html#a0fa0de242d866bb79b5ad39f3c46eae2">format_request.c</a>
+</li>
+<li>grpc_httpcli_format_post_request()
+: <a class="el" href="format__request_8h.html#ae6a0298e2b174b65c5571622d3908501">format_request.h</a>
+, <a class="el" href="format__request_8c.html#ae6a0298e2b174b65c5571622d3908501">format_request.c</a>
+</li>
+<li>grpc_httpcli_get()
+: <a class="el" href="httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#a594371d2c96d499a5a3bcccb27ece0da">httpcli.c</a>
+</li>
+<li>grpc_httpcli_get_override
+: <a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">httpcli.h</a>
+</li>
+<li>grpc_httpcli_header
+: <a class="el" href="httpcli_8h.html#a3b84c74398894ce993b1e32daf468575">httpcli.h</a>
+</li>
+<li>GRPC_HTTPCLI_HEADERS
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8">parser.h</a>
+</li>
+<li>GRPC_HTTPCLI_INITIAL_RESPONSE
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a">parser.h</a>
+</li>
+<li>GRPC_HTTPCLI_MAX_HEADER_LENGTH
+: <a class="el" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">httpcli.h</a>
+</li>
+<li>grpc_httpcli_parser_destroy()
+: <a class="el" href="parser_8h.html#a947eefc20a5245e155e1bb55380c8344">parser.h</a>
+, <a class="el" href="parser_8c.html#a947eefc20a5245e155e1bb55380c8344">parser.c</a>
+</li>
+<li>grpc_httpcli_parser_eof()
+: <a class="el" href="parser_8c.html#a3ad859c8c3267265dba030d1d7597df8">parser.c</a>
+, <a class="el" href="parser_8h.html#a3ad859c8c3267265dba030d1d7597df8">parser.h</a>
+</li>
+<li>grpc_httpcli_parser_init()
+: <a class="el" href="parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">parser.h</a>
+, <a class="el" href="parser_8c.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">parser.c</a>
+</li>
+<li>grpc_httpcli_parser_parse()
+: <a class="el" href="parser_8c.html#a24a1909825c06938a465e40295464cd0">parser.c</a>
+, <a class="el" href="parser_8h.html#a24a1909825c06938a465e40295464cd0">parser.h</a>
+</li>
+<li>grpc_httpcli_parser_state
+: <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">parser.h</a>
+</li>
+<li>grpc_httpcli_post()
+: <a class="el" href="httpcli_8h.html#a96f034743193848e966d61192e406c70">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#a96f034743193848e966d61192e406c70">httpcli.c</a>
+</li>
+<li>grpc_httpcli_post_override
+: <a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">httpcli.h</a>
+</li>
+<li>grpc_httpcli_request
+: <a class="el" href="httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79">httpcli.h</a>
+</li>
+<li>grpc_httpcli_response
+: <a class="el" href="httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0">httpcli.h</a>
+</li>
+<li>grpc_httpcli_response_cb
+: <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">httpcli.h</a>
+</li>
+<li>grpc_httpcli_set_override()
+: <a class="el" href="httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce">httpcli.h</a>
+, <a class="el" href="httpcli_8c.html#a15ab7c87e0d5e42341c9652d5045d8ce">httpcli.c</a>
+</li>
+<li>grpc_httpcli_ssl_channel_security_connector_create()
+: <a class="el" href="httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de">httpcli_security_connector.h</a>
+, <a class="el" href="httpcli__security__connector_8c.html#a2738fc49f8c3103a4e43ef68cd9b15de">httpcli_security_connector.c</a>
+</li>
+<li>GRPC_HTTPCLI_USER_AGENT
+: <a class="el" href="httpcli_8h.html#aad8b996f269fd3671a7c6fa829bdec95">httpcli.h</a>
+</li>
+<li>GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY
+: <a class="el" href="credentials_8h.html#ada8ea1fc7b28fb63283af76ad27761dd">credentials.h</a>
+</li>
+<li>GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY
+: <a class="el" href="credentials_8h.html#ac952f285c5ca94edcff909e37ae68402">credentials.h</a>
+</li>
+<li>grpc_iam_credentials_create()
+: <a class="el" href="credentials_8c.html#ad16075798f906b98e0fb3e3018f22ae0">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3">grpc_security.h</a>
+</li>
+<li>grpc_incoming_metadata_buffer_move_to_referencing_sopb()
+: <a class="el" href="incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">incoming_metadata.h</a>
+, <a class="el" href="incoming__metadata_8c.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">incoming_metadata.c</a>
+</li>
+<li>grpc_init()
+: <a class="el" href="init_8c.html#aa78606c93951c49eadd8d83d739798d6">init.c</a>
+, <a class="el" href="grpc_8h.html#aa78606c93951c49eadd8d83d739798d6">grpc.h</a>
+</li>
+<li>GRPC_INITIAL_HANDSHAKE_BUFFER_SIZE
+: <a class="el" href="secure__transport__setup_8c.html#a7faeebb3ced4358f4e7db1428923b013">secure_transport_setup.c</a>
+</li>
+<li>grpc_insecure_channel_create()
+: <a class="el" href="grpc_8h.html#aa710e7e68b23098900f924cf69797496">grpc.h</a>
+, <a class="el" href="channel__create_8c.html#aa710e7e68b23098900f924cf69797496">channel_create.c</a>
+</li>
+<li>grpc_iocp_add_socket()
+: <a class="el" href="iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_init()
+: <a class="el" href="iocp__windows_8h.html#a74907d635ceee6adf285291336d18807">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_kick()
+: <a class="el" href="iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_shutdown()
+: <a class="el" href="iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16">iocp_windows.h</a>
+</li>
+<li>grpc_iocp_socket_orphan()
+: <a class="el" href="iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac">iocp_windows.h</a>
+</li>
+<li>grpc_iomgr_add_callback()
+: <a class="el" href="iomgr_8h.html#a95b724dc6bbd9b75694251713db00619">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#a95b724dc6bbd9b75694251713db00619">iomgr.c</a>
+</li>
+<li>grpc_iomgr_add_delayed_callback()
+: <a class="el" href="iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">iomgr_internal.h</a>
+, <a class="el" href="iomgr_8c.html#a4d3b9286cc4434fad35b6017f6222431">iomgr.c</a>
+, <a class="el" href="iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">iomgr.h</a>
+</li>
+<li>grpc_iomgr_cb_func
+: <a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">iomgr.h</a>
+</li>
+<li>grpc_iomgr_closure
+: <a class="el" href="iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87">iomgr.h</a>
+</li>
+<li>grpc_iomgr_closure_init()
+: <a class="el" href="iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#ac8b4ae11b78ccbded903c14f69aa7a83">iomgr.c</a>
+</li>
+<li>grpc_iomgr_create_endpoint_pair()
+: <a class="el" href="endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a">endpoint_pair.h</a>
+</li>
+<li>grpc_iomgr_init()
+: <a class="el" href="iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#a2e26e83c3a2591cbc127dbbc50f5c504">iomgr.c</a>
+</li>
+<li>grpc_iomgr_object
+: <a class="el" href="iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814">iomgr_internal.h</a>
+</li>
+<li>grpc_iomgr_platform_init()
+: <a class="el" href="iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e">iomgr_internal.h</a>
+</li>
+<li>grpc_iomgr_platform_shutdown()
+: <a class="el" href="iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624">iomgr_internal.h</a>
+</li>
+<li>grpc_iomgr_register_object()
+: <a class="el" href="iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e">iomgr_internal.h</a>
+, <a class="el" href="iomgr_8c.html#a19ac63e9dff7d1543b1a3e556525773e">iomgr.c</a>
+</li>
+<li>grpc_iomgr_shutdown()
+: <a class="el" href="iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25">iomgr.h</a>
+, <a class="el" href="iomgr_8c.html#a466909d4101b063c991bbb39ee38ae25">iomgr.c</a>
+</li>
+<li>grpc_iomgr_unregister_object()
+: <a class="el" href="iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a">iomgr_internal.h</a>
+, <a class="el" href="iomgr_8c.html#a82cf3ac6566867546afabf5f08f4aa8a">iomgr.c</a>
+</li>
+<li>grpc_ioreq_completion_func
+: <a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">call.h</a>
+</li>
+<li>grpc_ioreq_op
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">call.h</a>
+</li>
+<li>GRPC_IOREQ_OP_COUNT
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_CLOSE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_INITIAL_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_MESSAGE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_STATUS
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_STATUS_DETAILS
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795">call.h</a>
+</li>
+<li>GRPC_IOREQ_RECV_TRAILING_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_CLOSE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_INITIAL_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_MESSAGE
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_STATUS
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c">call.h</a>
+</li>
+<li>GRPC_IOREQ_SEND_TRAILING_METADATA
+: <a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522">call.h</a>
+</li>
+<li>grpc_ipv4_resolver_factory_create()
+: <a class="el" href="sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa">sockaddr_resolver.h</a>
+, <a class="el" href="sockaddr__resolver_8c.html#abc4c6c8581ef4f8dc5cf8ec5c79383a1">sockaddr_resolver.c</a>
+</li>
+<li>grpc_ipv6_loopback_available()
+: <a class="el" href="socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563">socket_utils_posix.h</a>
+</li>
+<li>grpc_ipv6_resolver_factory_create()
+: <a class="el" href="sockaddr__resolver_8c.html#ad0f24d3cf0da9c53e628da5f60cab92d">sockaddr_resolver.c</a>
+, <a class="el" href="sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2">sockaddr_resolver.h</a>
+</li>
+<li>grpc_is_binary_header()
+: <a class="el" href="bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e">bin_encoder.h</a>
+, <a class="el" href="bin__encoder_8c.html#a6ce0fde0cf6e820ca0c95dae4653039e">bin_encoder.c</a>
+</li>
+<li>grpc_is_initialized()
+: <a class="el" href="init_8h.html#a9e672384642d6dc0e98df16188beba55">init.h</a>
+, <a class="el" href="init_8c.html#a9e672384642d6dc0e98df16188beba55">init.c</a>
+</li>
+<li>grpc_json
+: <a class="el" href="json_8h.html#ae8825a1aedd3c601c1db76275b0091eb">json.h</a>
+</li>
+<li>GRPC_JSON_ARRAY
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877">json_common.h</a>
+</li>
+<li>grpc_json_create()
+: <a class="el" href="json_8c.html#a479fecc70a15ea64d52485891615669f">json.c</a>
+, <a class="el" href="json_8h.html#a479fecc70a15ea64d52485891615669f">json.h</a>
+</li>
+<li>grpc_json_destroy()
+: <a class="el" href="json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3">json.h</a>
+, <a class="el" href="json_8c.html#a93347bf054f40cd67dd9a1d46e830ed3">json.c</a>
+</li>
+<li>GRPC_JSON_DONE
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7">json_reader.h</a>
+</li>
+<li>grpc_json_dump_to_string()
+: <a class="el" href="json_8h.html#a4d51e00e1deba5579a221647ced4cd71">json.h</a>
+, <a class="el" href="json__string_8c.html#a4d51e00e1deba5579a221647ced4cd71">json_string.c</a>
+</li>
+<li>GRPC_JSON_EAGAIN
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0">json_reader.h</a>
+</li>
+<li>GRPC_JSON_FALSE
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe">json_common.h</a>
+</li>
+<li>GRPC_JSON_INTERNAL_ERROR
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8">json_reader.h</a>
+</li>
+<li>GRPC_JSON_NULL
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880">json_common.h</a>
+</li>
+<li>GRPC_JSON_NUMBER
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44">json_common.h</a>
+</li>
+<li>GRPC_JSON_OBJECT
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1">json_common.h</a>
+</li>
+<li>GRPC_JSON_PARSE_ERROR
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c">json_reader.h</a>
+</li>
+<li>grpc_json_parse_string()
+: <a class="el" href="json_8h.html#ad66397af23c3f5377035d9fc74e4f401">json.h</a>
+, <a class="el" href="json__string_8c.html#ad66397af23c3f5377035d9fc74e4f401">json_string.c</a>
+</li>
+<li>grpc_json_parse_string_with_len()
+: <a class="el" href="json__string_8c.html#ac0d745ec903ab5f5759ebf3bc245b5c6">json_string.c</a>
+, <a class="el" href="json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6">json.h</a>
+</li>
+<li>GRPC_JSON_READ_CHAR_EAGAIN
+: <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_CHAR_EOF
+: <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_CHAR_ERROR
+: <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc">json_reader.h</a>
+</li>
+<li>GRPC_JSON_READ_ERROR
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc">json_reader.h</a>
+</li>
+<li>grpc_json_reader
+: <a class="el" href="json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929">json_reader.h</a>
+</li>
+<li>grpc_json_reader_init()
+: <a class="el" href="json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">json_reader.h</a>
+, <a class="el" href="json__reader_8c.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">json_reader.c</a>
+</li>
+<li>grpc_json_reader_is_complete()
+: <a class="el" href="json__reader_8h.html#aca35ff1405586201c145f8411ce4f611">json_reader.h</a>
+, <a class="el" href="json__reader_8c.html#aca35ff1405586201c145f8411ce4f611">json_reader.c</a>
+</li>
+<li>grpc_json_reader_run()
+: <a class="el" href="json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb">json_reader.h</a>
+, <a class="el" href="json__reader_8c.html#a369a903219dd343358dad9e4cc67cedb">json_reader.c</a>
+</li>
+<li>grpc_json_reader_state
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">json_reader.h</a>
+</li>
+<li>grpc_json_reader_status
+: <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">json_reader.h</a>
+</li>
+<li>grpc_json_reader_vtable
+: <a class="el" href="json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_END
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_OBJECT_KEY_BEGIN
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_OBJECT_KEY_END
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_OBJECT_KEY_STRING
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U1
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U2
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U3
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_STRING_ESCAPE_U4
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_BEGIN
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_END
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_A
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_E
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_L
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_FALSE_S
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NULL_L1
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NULL_L2
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NULL_U
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_DOT
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_E
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_EPM
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_NUMBER_ZERO
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_STRING
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_TRUE_E
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_TRUE_R
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STATE_VALUE_TRUE_U
+: <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b">json_reader.h</a>
+</li>
+<li>GRPC_JSON_STRING
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79">json_common.h</a>
+</li>
+<li>GRPC_JSON_TOP_LEVEL
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63">json_common.h</a>
+</li>
+<li>GRPC_JSON_TRUE
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b">json_common.h</a>
+</li>
+<li>grpc_json_type
+: <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">json_common.h</a>
+</li>
+<li>grpc_json_writer
+: <a class="el" href="json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9">json_writer.h</a>
+</li>
+<li>grpc_json_writer_container_begins()
+: <a class="el" href="json__writer_8c.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">json_writer.c</a>
+, <a class="el" href="json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">json_writer.h</a>
+</li>
+<li>grpc_json_writer_container_ends()
+: <a class="el" href="json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#a8ec853f6ef8940debf36820f6329427e">json_writer.c</a>
+</li>
+<li>grpc_json_writer_init()
+: <a class="el" href="json__writer_8c.html#a9c57757dbd540d5c31db7dbb35274637">json_writer.c</a>
+, <a class="el" href="json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637">json_writer.h</a>
+</li>
+<li>grpc_json_writer_object_key()
+: <a class="el" href="json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#ae009eea3f345ef9ab454876f81f1ab47">json_writer.c</a>
+</li>
+<li>grpc_json_writer_value_raw()
+: <a class="el" href="json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#afac9ce564b4c11e3ea35082de3bd1747">json_writer.c</a>
+</li>
+<li>grpc_json_writer_value_raw_with_len()
+: <a class="el" href="json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5">json_writer.h</a>
+, <a class="el" href="json__writer_8c.html#a2b88eb7fd1bd939146e86c5b212d8cb5">json_writer.c</a>
+</li>
+<li>grpc_json_writer_value_string()
+: <a class="el" href="json__writer_8c.html#aa7e5a12ffddc0cc95bff06c1879a64e0">json_writer.c</a>
+, <a class="el" href="json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0">json_writer.h</a>
+</li>
+<li>grpc_json_writer_vtable
+: <a class="el" href="json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51">json_writer.h</a>
+</li>
+<li>grpc_jwt_claims
+: <a class="el" href="jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_audience()
+: <a class="el" href="jwt__verifier_8c.html#a19e8de86ed8bb8461969cd07624cb06f">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_check()
+: <a class="el" href="jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a956a1fe237276fbed03e5caee7360c6a">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_destroy()
+: <a class="el" href="jwt__verifier_8c.html#aa69d0e75df7133ebfda05f50303f8316">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_expires_at()
+: <a class="el" href="jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#ab9759b63895dde79be0715b0369cd0c4">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_from_json()
+: <a class="el" href="jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_id()
+: <a class="el" href="jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a319d836355e40efba372f9baf09bbd54">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_issued_at()
+: <a class="el" href="jwt__verifier_8c.html#a58838743f413ceebbf5b4afd77d7ab7f">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_issuer()
+: <a class="el" href="jwt__verifier_8c.html#a61a1d74e9b150c1a7dccf259d84e8da6">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_json()
+: <a class="el" href="jwt__verifier_8c.html#a4eb1db0055c2992691e1c3e92d65a656">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_claims_not_before()
+: <a class="el" href="jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a1904f0f6a28c8b14a486c932e5db1499">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_claims_subject()
+: <a class="el" href="jwt__verifier_8c.html#ac77af641794a3449e94d7d7cb48a50c6">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_encode_and_sign()
+: <a class="el" href="json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">json_token.h</a>
+, <a class="el" href="json__token_8c.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">json_token.c</a>
+</li>
+<li>grpc_jwt_encode_and_sign_override
+: <a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">json_token.h</a>
+</li>
+<li>grpc_jwt_encode_and_sign_set_override()
+: <a class="el" href="json__token_8c.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">json_token.c</a>
+, <a class="el" href="json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">json_token.h</a>
+</li>
+<li>GRPC_JWT_OAUTH2_AUDIENCE
+: <a class="el" href="json__token_8h.html#aa786d993b153687864544b028ab81d57">json_token.h</a>
+</li>
+<li>GRPC_JWT_RSA_SHA256_ALGORITHM
+: <a class="el" href="json__token_8c.html#a152047e25145985b1aec6a0945d09553">json_token.c</a>
+</li>
+<li>GRPC_JWT_TYPE
+: <a class="el" href="json__token_8c.html#a6ee6f733ee72e89c478c9041176a3836">json_token.c</a>
+</li>
+<li>grpc_jwt_verification_done_cb
+: <a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier
+: <a class="el" href="jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_BAD_AUDIENCE
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_BAD_FORMAT
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_BAD_SIGNATURE
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_clock_skew
+: <a class="el" href="jwt__verifier_8c.html#a7d1ae2ff5b43188c302d75bb3ed761f7">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_create()
+: <a class="el" href="jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#acf8e8c06616b9d3006333f63c708a811">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_verifier_destroy()
+: <a class="el" href="jwt__verifier_8c.html#a44bac1b48da3adf4d7858f2b40121bab">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_GENERIC_ERROR
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_max_delay
+: <a class="el" href="jwt__verifier_8c.html#ab4a9cfed667421b6a1393e52d073a282">jwt_verifier.c</a>
+, <a class="el" href="jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282">jwt_verifier.h</a>
+</li>
+<li>GRPC_JWT_VERIFIER_OK
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_status
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_status_to_string()
+: <a class="el" href="jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a2aad6c48023145f901a39b5b9ef6b6d3">jwt_verifier.c</a>
+</li>
+<li>GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE
+: <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier_verify()
+: <a class="el" href="jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#ac9960f7842a141d85b0bb38dd231900d">jwt_verifier.c</a>
+</li>
+<li>grpc_kick_drain()
+: <a class="el" href="pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c">pollset_posix.h</a>
+</li>
+<li>grpc_kick_fd_info
+: <a class="el" href="pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5">pollset_kick_posix.h</a>
+</li>
+<li>grpc_kick_poller()
+: <a class="el" href="alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f">alarm_internal.h</a>
+, <a class="el" href="iomgr_8c.html#aac483dfd6e19fa9df68620e7f7a0697f">iomgr.c</a>
+</li>
+<li>grpc_kick_read_fd()
+: <a class="el" href="pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b">pollset_posix.h</a>
+</li>
+<li>grpc_lame_client_channel_create()
+: <a class="el" href="grpc_8h.html#acd59697f4b8bedea662939da3668ab9b">grpc.h</a>
+, <a class="el" href="lame__client_8c.html#acd59697f4b8bedea662939da3668ab9b">lame_client.c</a>
+</li>
+<li>grpc_lb_completion
+: <a class="el" href="lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy
+: <a class="el" href="lb__policy_8h.html#aa2bf7da355b0faa3fe532f83899e3e2c">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_broadcast()
+: <a class="el" href="lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#a1d03d2f71dda12c97863cf387559e47a">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_check_connectivity()
+: <a class="el" href="lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#a115550f997d572ed49c8906c2cb347b8">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_exit_idle()
+: <a class="el" href="lb__policy_8c.html#a163a863a51690daa93984d7b7bd0ac88">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_init()
+: <a class="el" href="lb__policy_8c.html#aa20fbb7fdf68dadcae6aaba3e227ac50">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_notify_on_state_change()
+: <a class="el" href="lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#a246a7f5b971f672fa6a8dba8d7264790">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_pick()
+: <a class="el" href="lb__policy_8c.html#a31611c6d703434b360e90062a28e5140">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#a31611c6d703434b360e90062a28e5140">lb_policy.h</a>
+</li>
+<li>GRPC_LB_POLICY_REF
+: <a class="el" href="lb__policy_8h.html#aee5c1071728e588a3875f2338d4a5526">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_ref()
+: <a class="el" href="lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f">lb_policy.c</a>
+</li>
+<li>grpc_lb_policy_shutdown()
+: <a class="el" href="lb__policy_8c.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">lb_policy.c</a>
+, <a class="el" href="lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_unref()
+: <a class="el" href="lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942">lb_policy.h</a>
+, <a class="el" href="lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942">lb_policy.c</a>
+</li>
+<li>GRPC_LB_POLICY_UNREF
+: <a class="el" href="lb__policy_8h.html#a376467589c9ff6e1d597ae21b44295c9">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_vtable
+: <a class="el" href="lb__policy_8h.html#a3319e96c3d9a520883e74ddf112f7fd2">lb_policy.h</a>
+</li>
+<li>grpc_linked_mdelem
+: <a class="el" href="stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2">stream_op.h</a>
+</li>
+<li>GRPC_LOCAL_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0">internal.h</a>
+</li>
+<li>grpc_max_auth_token_lifetime
+: <a class="el" href="json__token_8c.html#a6112c5b60b1c0197531f80fdc56f7772">json_token.c</a>
+, <a class="el" href="grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772">grpc_security.h</a>
+</li>
+<li>GRPC_MAX_SOCKADDR_SIZE
+: <a class="el" href="resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6">resolve_address.h</a>
+</li>
+<li>grpc_maybe_call_delayed_callbacks()
+: <a class="el" href="iomgr_8c.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">iomgr.c</a>
+, <a class="el" href="iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">iomgr_internal.h</a>
+</li>
+<li>grpc_mdctx
+: <a class="el" href="metadata_8h.html#a3d670d2ea84f975e9ff4758ceaf0742d">metadata.h</a>
+</li>
+<li>grpc_mdctx_create()
+: <a class="el" href="metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a207b09a54f3c57a90b5b44868fbf5649">metadata.c</a>
+</li>
+<li>grpc_mdctx_create_with_seed()
+: <a class="el" href="metadata_8c.html#a29700f3749eea2c96f7bae1d57f8f7e3">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3">metadata.h</a>
+</li>
+<li>grpc_mdctx_get_mdtab_capacity_test_only()
+: <a class="el" href="metadata_8c.html#a655a0f22cc71643674124ced4ce5018d">metadata.c</a>
+, <a class="el" href="metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36">metadata.h</a>
+</li>
+<li>grpc_mdctx_get_mdtab_count_test_only()
+: <a class="el" href="metadata_8c.html#aba47aef8a83c845dd6ec3dc366fcfdab">metadata.c</a>
+, <a class="el" href="metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92">metadata.h</a>
+</li>
+<li>grpc_mdctx_get_mdtab_free_test_only()
+: <a class="el" href="metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a8a7b1b8046529252525680692d7dd68a">metadata.c</a>
+</li>
+<li>grpc_mdctx_lock()
+: <a class="el" href="metadata_8c.html#a390eb255a6d72a8ea84ac8ad3cbeb331">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331">metadata.h</a>
+</li>
+<li>grpc_mdctx_locked_mdelem_unref()
+: <a class="el" href="metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739">metadata.c</a>
+</li>
+<li>GRPC_MDCTX_LOCKED_MDELEM_UNREF
+: <a class="el" href="metadata_8h.html#af96c346c98e982e5c0086467dd11e714">metadata.h</a>
+</li>
+<li>grpc_mdctx_locked_mdelem_unref()
+: <a class="el" href="metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01">metadata.h</a>
+</li>
+<li>grpc_mdctx_ref()
+: <a class="el" href="metadata_8c.html#a0293b53029721bf7013af7466efbd324">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da">metadata.h</a>
+</li>
+<li>grpc_mdctx_unlock()
+: <a class="el" href="metadata_8c.html#a033690c1ac25d72fdc5e56e9f5d9e97b">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b">metadata.h</a>
+</li>
+<li>grpc_mdctx_unref()
+: <a class="el" href="metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3">metadata.h</a>
+, <a class="el" href="metadata_8c.html#ae80c7476ff57db4121dc9d8fef9e5670">metadata.c</a>
+</li>
+<li>grpc_mdelem
+: <a class="el" href="metadata_8h.html#a90dde22c13b91f78568735a7f666992e">metadata.h</a>
+</li>
+<li>grpc_mdelem_from_metadata_strings()
+: <a class="el" href="metadata_8c.html#afc5656c1cd10a6f2e7cebebff10c25a4">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a969845603738428cf18a9a090896e152">metadata.h</a>
+</li>
+<li>grpc_mdelem_from_slices()
+: <a class="el" href="metadata_8c.html#a5b5ad2d68dd8c76345170f5f732b8fa2">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2">metadata.h</a>
+</li>
+<li>grpc_mdelem_from_string_and_buffer()
+: <a class="el" href="metadata_8c.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">metadata.h</a>
+</li>
+<li>grpc_mdelem_from_strings()
+: <a class="el" href="metadata_8c.html#a6535f623fc2bd818158d96f6a37f73c8">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8">metadata.h</a>
+</li>
+<li>grpc_mdelem_get_user_data()
+: <a class="el" href="metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">metadata.c</a>
+</li>
+<li>grpc_mdelem_list
+: <a class="el" href="stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2">stream_op.h</a>
+</li>
+<li>grpc_mdelem_ref()
+: <a class="el" href="metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615">metadata.h</a>
+</li>
+<li>GRPC_MDELEM_REF
+: <a class="el" href="metadata_8h.html#af5a6d4b7c327b66f0902c683ab007618">metadata.h</a>
+</li>
+<li>grpc_mdelem_ref()
+: <a class="el" href="metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2">metadata.c</a>
+</li>
+<li>grpc_mdelem_set_user_data()
+: <a class="el" href="metadata_8c.html#a6d0f62841408f1a89773aa4ef54dcf0e">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e">metadata.h</a>
+</li>
+<li>grpc_mdelem_unref()
+: <a class="el" href="metadata_8c.html#a51228fa7618a8f6503e605709d893a25">metadata.c</a>
+, <a class="el" href="metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc">metadata.h</a>
+</li>
+<li>GRPC_MDELEM_UNREF
+: <a class="el" href="metadata_8h.html#ab01db7c946e0962da8888f19cb870afb">metadata.h</a>
+</li>
+<li>grpc_mdstr
+: <a class="el" href="metadata_8h.html#a37a4eca36e6506776f4c60c598dd01f5">metadata.h</a>
+</li>
+<li>grpc_mdstr_as_base64_encoded_and_huffman_compressed()
+: <a class="el" href="metadata_8c.html#a0bc211dd30038c1366a614647abdcf08">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a314273fea07852ac80ea184100398c11">metadata.h</a>
+</li>
+<li>grpc_mdstr_as_c_string()
+: <a class="el" href="metadata_8c.html#aacbae6a08b63835ec31fcddb556aa895">metadata.c</a>
+, <a class="el" href="metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895">metadata.h</a>
+</li>
+<li>grpc_mdstr_from_buffer()
+: <a class="el" href="metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a357ead79c52ee284bb190bae970d8457">metadata.c</a>
+</li>
+<li>grpc_mdstr_from_slice()
+: <a class="el" href="metadata_8c.html#a4eccbbb62d87a131d2eb3367fd2c4c43">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43">metadata.h</a>
+</li>
+<li>grpc_mdstr_from_string()
+: <a class="el" href="metadata_8c.html#a30a9ea36693c48da5072719f6ae7de6d">metadata.c</a>
+, <a class="el" href="metadata_8h.html#af961acf0149066abf14c01f56a3e2b55">metadata.h</a>
+</li>
+<li>grpc_mdstr_is_bin_suffixed()
+: <a class="el" href="metadata_8c.html#ad34887fb9c6733916ac87b8fde793e74">metadata.c</a>
+, <a class="el" href="metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74">metadata.h</a>
+</li>
+<li>grpc_mdstr_is_legal_header()
+: <a class="el" href="metadata_8c.html#a427ad60503ae8ce87bcfa0aa09fe99a5">metadata.c</a>
+, <a class="el" href="metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5">metadata.h</a>
+</li>
+<li>GRPC_MDSTR_KV_HASH
+: <a class="el" href="metadata_8h.html#a385838d339c97b956529499c1da41e1f">metadata.h</a>
+</li>
+<li>grpc_mdstr_ref()
+: <a class="el" href="metadata_8c.html#a85a25deeeea31c616e326b765043b9c9">metadata.c</a>
+</li>
+<li>GRPC_MDSTR_REF
+: <a class="el" href="metadata_8h.html#ab07dbb900f15b2fe28ea24451c5cfa3d">metadata.h</a>
+</li>
+<li>grpc_mdstr_ref()
+: <a class="el" href="metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf">metadata.h</a>
+</li>
+<li>GRPC_MDSTR_UNREF
+: <a class="el" href="metadata_8h.html#ab6dceed9dacb076aa33c15323f6e823c">metadata.h</a>
+</li>
+<li>grpc_mdstr_unref()
+: <a class="el" href="metadata_8h.html#a6ba2e968699daaddaad9b48b78779465">metadata.h</a>
+, <a class="el" href="metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3">metadata.c</a>
+</li>
+<li>grpc_metadata
+: <a class="el" href="grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b">grpc.h</a>
+</li>
+<li>grpc_metadata_array_destroy()
+: <a class="el" href="grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44">grpc.h</a>
+, <a class="el" href="metadata__array_8c.html#aad125726d8b689cc5fc1a0444c91ed44">metadata_array.c</a>
+</li>
+<li>grpc_metadata_array_init()
+: <a class="el" href="grpc_8h.html#a52cfda44034115720a0e88037dedbfb5">grpc.h</a>
+, <a class="el" href="metadata__array_8c.html#a52cfda44034115720a0e88037dedbfb5">metadata_array.c</a>
+</li>
+<li>grpc_metadata_batch
+: <a class="el" href="stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_add_head()
+: <a class="el" href="stream__op_8c.html#a845453663a8db6cd2624ed92d63b2003">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_add_tail()
+: <a class="el" href="stream__op_8c.html#a31f318cbb2f1fdb6372fdc4891e74d01">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_assert_ok()
+: <a class="el" href="stream__op_8c.html#a5107cb817e5019fc9f9e7fdd99e54c0e">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_destroy()
+: <a class="el" href="stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#afc4867b9d7a952f003c5494120b59c08">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_filter()
+: <a class="el" href="stream__op_8c.html#a754411d9f54fc8762416abf0c148afcf">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_init()
+: <a class="el" href="stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a56d5ee4a6e415827935accfe449dc770">stream_op.c</a>
+</li>
+<li>grpc_metadata_batch_link_head()
+: <a class="el" href="stream__op_8c.html#a8c6af9205b51577ab879b07d9954d32b">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_link_tail()
+: <a class="el" href="stream__op_8c.html#a6a07ac989d86142e60bd17525f7f509e">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_merge()
+: <a class="el" href="stream__op_8c.html#adf6ee05d9443f295076015da3428f12a">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#adf6ee05d9443f295076015da3428f12a">stream_op.h</a>
+</li>
+<li>grpc_metadata_batch_move()
+: <a class="el" href="stream__op_8c.html#a719845dfd6b62fb62a75d9776396154e">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e">stream_op.h</a>
+</li>
+<li>grpc_msg_compress()
+: <a class="el" href="message__compress_8c.html#ad77078989bef6661528ca2e22223d8cd">message_compress.c</a>
+, <a class="el" href="message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd">message_compress.h</a>
+</li>
+<li>grpc_msg_decompress()
+: <a class="el" href="message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0">message_compress.h</a>
+, <a class="el" href="message__compress_8c.html#a3453eb197bbea1ad5dbc57561d9352f0">message_compress.c</a>
+</li>
+<li>GRPC_MUST_USE_RESULT
+: <a class="el" href="port__platform_8h.html#aef49047a3be38448a61332117b306686">port_platform.h</a>
+</li>
+<li>GRPC_NO_OP
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c">stream_op.h</a>
+</li>
+<li>grpc_no_op_filter
+: <a class="el" href="noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87">noop_filter.h</a>
+, <a class="el" href="noop__filter_8c.html#afe35aa05a877e7cbc5a42c9aa0574e87">noop_filter.c</a>
+</li>
+<li>GRPC_NUM_SETTING_SETS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">internal.h</a>
+</li>
+<li>grpc_oauth2_token_fetcher_credentials_parse_server_response()
+: <a class="el" href="credentials_8c.html#a642f68664ea54ce67c7f752c33e01877">credentials.c</a>
+, <a class="el" href="credentials_8h.html#af0dac46697efd780811863ee13c73fbd">credentials.h</a>
+</li>
+<li>grpc_op
+: <a class="el" href="grpc_8h.html#a6556a58ca45ad5132b89c770cf875215">grpc.h</a>
+</li>
+<li>GRPC_OP_BEGIN_MESSAGE
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31">stream_op.h</a>
+</li>
+<li>GRPC_OP_COMPLETE
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297">grpc.h</a>
+</li>
+<li>GRPC_OP_METADATA
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317">stream_op.h</a>
+</li>
+<li>GRPC_OP_RECV_CLOSE_ON_SERVER
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6">grpc.h</a>
+</li>
+<li>GRPC_OP_RECV_INITIAL_METADATA
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078">grpc.h</a>
+</li>
+<li>GRPC_OP_RECV_MESSAGE
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5">grpc.h</a>
+</li>
+<li>GRPC_OP_RECV_STATUS_ON_CLIENT
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_CLOSE_FROM_CLIENT
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_INITIAL_METADATA
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_MESSAGE
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70">grpc.h</a>
+</li>
+<li>GRPC_OP_SEND_STATUS_FROM_SERVER
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64">grpc.h</a>
+</li>
+<li>GRPC_OP_SLICE
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6">stream_op.h</a>
+</li>
+<li>grpc_op_string()
+: <a class="el" href="call__log__batch_8c.html#a20665cb5606e67c3748f0df7c3f93998">call_log_batch.c</a>
+</li>
+<li>grpc_op_type
+: <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc.h</a>
+</li>
+<li>GRPC_OPENID_CONFIG_URL_SUFFIX
+: <a class="el" href="jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef">jwt_verifier.h</a>
+</li>
+<li>GRPC_PEER_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572">internal.h</a>
+</li>
+<li>grpc_pipe_wakeup_fd_vtable
+: <a class="el" href="wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882">wakeup_fd_pipe.h</a>
+</li>
+<li>grpc_platform_become_multipoller
+: <a class="el" href="pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a">pollset_posix.h</a>
+</li>
+<li>grpc_platform_become_multipoller_type
+: <a class="el" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">pollset_posix.h</a>
+</li>
+<li>grpc_poll_become_multipoller()
+: <a class="el" href="pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102">pollset_posix.h</a>
+</li>
+<li>grpc_poll_deadline_to_millis_timeout()
+: <a class="el" href="pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0">pollset_posix.h</a>
+</li>
+<li>grpc_pollset
+: <a class="el" href="pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad">pollset_posix.h</a>
+, <a class="el" href="pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad">pollset_windows.h</a>
+</li>
+<li>grpc_pollset_add_fd()
+: <a class="el" href="pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_del_fd()
+: <a class="el" href="pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_destroy()
+: <a class="el" href="pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f">pollset.h</a>
+</li>
+<li>grpc_pollset_force_kick()
+: <a class="el" href="pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_global_init()
+: <a class="el" href="iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a">iomgr_posix.h</a>
+</li>
+<li>grpc_pollset_global_shutdown()
+: <a class="el" href="iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688">iomgr_posix.h</a>
+</li>
+<li>grpc_pollset_init()
+: <a class="el" href="pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b">pollset.h</a>
+</li>
+<li>grpc_pollset_kick()
+: <a class="el" href="pollset_8h.html#a395a3872723c67d877799cdc79ae7f48">pollset.h</a>
+</li>
+<li>grpc_pollset_kick_consume()
+: <a class="el" href="pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_destroy()
+: <a class="el" href="pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936">pollset_kick_posix.h</a>
+</li>
+<li>GRPC_POLLSET_KICK_GET_FD
+: <a class="el" href="pollset__kick__posix_8h.html#a595cfb6b4cc1f48dbd015821541df959">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_global_destroy()
+: <a class="el" href="pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_global_init()
+: <a class="el" href="pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_global_init_fallback_fd()
+: <a class="el" href="pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_init()
+: <a class="el" href="pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_kick()
+: <a class="el" href="pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_post_poll()
+: <a class="el" href="pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_pre_poll()
+: <a class="el" href="pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_kick_state
+: <a class="el" href="pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1">pollset_kick_posix.h</a>
+</li>
+<li>GRPC_POLLSET_MU
+: <a class="el" href="pollset__windows_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f">pollset_windows.h</a>
+, <a class="el" href="pollset__posix_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_set
+: <a class="el" href="pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">pollset_set_windows.h</a>
+, <a class="el" href="pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">pollset_set_posix.h</a>
+</li>
+<li>grpc_pollset_set_add_fd()
+: <a class="el" href="pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c">pollset_set_posix.h</a>
+</li>
+<li>grpc_pollset_set_add_pollset()
+: <a class="el" href="pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2">pollset_set.h</a>
+</li>
+<li>grpc_pollset_set_del_fd()
+: <a class="el" href="pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414">pollset_set_posix.h</a>
+</li>
+<li>grpc_pollset_set_del_pollset()
+: <a class="el" href="pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0">pollset_set.h</a>
+</li>
+<li>grpc_pollset_set_destroy()
+: <a class="el" href="pollset__set_8h.html#af4b47eef823139b714d759e49495fafd">pollset_set.h</a>
+</li>
+<li>grpc_pollset_set_init()
+: <a class="el" href="pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c">pollset_set.h</a>
+</li>
+<li>grpc_pollset_shutdown()
+: <a class="el" href="pollset_8h.html#a85616767facacdf95dfc4fe564352e87">pollset.h</a>
+</li>
+<li>grpc_pollset_vtable
+: <a class="el" href="pollset__posix_8h.html#a93b9c2aef29b7ffe733779b8d4c32db1">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_work()
+: <a class="el" href="pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd">pollset.h</a>
+</li>
+<li>grpc_precise_clock
+: <a class="el" href="timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2">timers_preciseclock.h</a>
+</li>
+<li>GRPC_PRECISE_CLOCK_FORMAT
+: <a class="el" href="timers__preciseclock_8h.html#a8cbb7d29a1f4fcded6337c7d9c61598d">timers_preciseclock.h</a>
+</li>
+<li>GRPC_PRECISE_CLOCK_PRINTF_ARGS
+: <a class="el" href="timers__preciseclock_8h.html#ad8cb0fe2236a54829f5c38cd508305c5">timers_preciseclock.h</a>
+</li>
+<li>grpc_profiling_tags
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3">timers.h</a>
+</li>
+<li>GRPC_PTAG_CALL_ON_DONE_RECV
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a">timers.h</a>
+</li>
+<li>GRPC_PTAG_CPP_CALL_CREATED
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61">timers.h</a>
+</li>
+<li>GRPC_PTAG_CPP_PERFORM_OPS
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e">timers.h</a>
+</li>
+<li>GRPC_PTAG_HANDLE_READ
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129">timers.h</a>
+</li>
+<li>GRPC_PTAG_HTTP2_UNLOCK
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d">timers.h</a>
+</li>
+<li>GRPC_PTAG_HTTP2_UNLOCK_CLEANUP
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a">timers.h</a>
+</li>
+<li>GRPC_PTAG_IGNORE_THRESHOLD
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">timers.h</a>
+</li>
+<li>GRPC_PTAG_OTHER_BASE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b">timers.h</a>
+</li>
+<li>GRPC_PTAG_POLL_FINISHED
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627">timers.h</a>
+</li>
+<li>GRPC_PTAG_PROTO_DESERIALIZE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b">timers.h</a>
+</li>
+<li>GRPC_PTAG_PROTO_SERIALIZE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8">timers.h</a>
+</li>
+<li>GRPC_PTAG_RECVMSG
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77">timers.h</a>
+</li>
+<li>GRPC_PTAG_SENDMSG
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472">timers.h</a>
+</li>
+<li>GRPC_PTAG_TCP_CB_WRITE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1">timers.h</a>
+</li>
+<li>GRPC_PTAG_TCP_WRITE
+: <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f">timers.h</a>
+</li>
+<li>GRPC_QUEUE_SHUTDOWN
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5">grpc.h</a>
+</li>
+<li>GRPC_QUEUE_TIMEOUT
+: <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6">grpc.h</a>
+</li>
+<li>grpc_raw_byte_buffer_create()
+: <a class="el" href="byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a1aaaa0d8a1609166e0b0bb2b42332618">byte_buffer.c</a>
+</li>
+<li>grpc_raw_byte_buffer_from_reader()
+: <a class="el" href="byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#a9b4f877e32f45e0e704970e89582e0df">byte_buffer.c</a>
+</li>
+<li>grpc_raw_compressed_byte_buffer_create()
+: <a class="el" href="byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b">byte_buffer.h</a>
+, <a class="el" href="byte__buffer_8c.html#af9801acc1dbfd02b2c51ed9d504cd12b">byte_buffer.c</a>
+</li>
+<li>grpc_refresh_token_credentials_create()
+: <a class="el" href="credentials_8c.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">grpc_security.h</a>
+</li>
+<li>grpc_refresh_token_credentials_create_from_auth_refresh_token()
+: <a class="el" href="credentials_8c.html#a0effe35d7112502e48014662eb7015cf">credentials.c</a>
+, <a class="el" href="credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d">credentials.h</a>
+</li>
+<li>GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING
+: <a class="el" href="credentials_8h.html#adeaf95d65b517e001c71d1fb5e47c97a">credentials.h</a>
+</li>
+<li>grpc_register_resolver_type()
+: <a class="el" href="resolver__registry_8c.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">resolver_registry.c</a>
+, <a class="el" href="resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">resolver_registry.h</a>
+</li>
+<li>grpc_register_tracer()
+: <a class="el" href="trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">trace.h</a>
+, <a class="el" href="trace_8c.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">trace.c</a>
+</li>
+<li>grpc_resolve_address()
+: <a class="el" href="resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea">resolve_address.h</a>
+</li>
+<li>grpc_resolve_cb
+: <a class="el" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">resolve_address.h</a>
+</li>
+<li>grpc_resolved_addresses_destroy()
+: <a class="el" href="resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c">resolve_address.h</a>
+</li>
+<li>grpc_resolver
+: <a class="el" href="resolver_8h.html#ab98013b9b8e8c28771dc39013667f2b3">resolver.h</a>
+</li>
+<li>grpc_resolver_channel_saw_error()
+: <a class="el" href="resolver_8c.html#a118536c3b62613e957e10ce9cb602e6e">resolver.c</a>
+, <a class="el" href="resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e">resolver.h</a>
+</li>
+<li>grpc_resolver_create()
+: <a class="el" href="resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0">resolver_registry.h</a>
+, <a class="el" href="resolver__registry_8c.html#a42ba392534ac248b5a4ac1f87cd9b3b0">resolver_registry.c</a>
+</li>
+<li>grpc_resolver_factory
+: <a class="el" href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2">resolver_factory.h</a>
+</li>
+<li>grpc_resolver_factory_create_resolver()
+: <a class="el" href="resolver__factory_8c.html#a27c578ca66348965f7d3810d0c6fc65d">resolver_factory.c</a>
+, <a class="el" href="resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d">resolver_factory.h</a>
+</li>
+<li>grpc_resolver_factory_ref()
+: <a class="el" href="resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba">resolver_factory.h</a>
+, <a class="el" href="resolver__factory_8c.html#ad5938bfb397011e5e7f4f8d048102e9c">resolver_factory.c</a>
+</li>
+<li>grpc_resolver_factory_unref()
+: <a class="el" href="resolver__factory_8c.html#aff39a6960a452dbc2537ad83b3cefe84">resolver_factory.c</a>
+, <a class="el" href="resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f">resolver_factory.h</a>
+</li>
+<li>grpc_resolver_factory_vtable
+: <a class="el" href="resolver__factory_8h.html#abf04e4004b01653a0274a3a0d175ab1b">resolver_factory.h</a>
+</li>
+<li>grpc_resolver_init()
+: <a class="el" href="resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4">resolver.h</a>
+, <a class="el" href="resolver_8c.html#ac806a2edf4f2073529eec1319db9fde4">resolver.c</a>
+</li>
+<li>grpc_resolver_next()
+: <a class="el" href="resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729">resolver.h</a>
+, <a class="el" href="resolver_8c.html#ac5ef07f9efdd2a39f2239207cc060729">resolver.c</a>
+</li>
+<li>grpc_resolver_ref()
+: <a class="el" href="resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211">resolver.h</a>
+</li>
+<li>GRPC_RESOLVER_REF
+: <a class="el" href="resolver_8h.html#a98d15570db72446a0c175bc3ad316db9">resolver.h</a>
+</li>
+<li>grpc_resolver_ref()
+: <a class="el" href="resolver_8c.html#a364d687b496e862cd5830d3aed899f4f">resolver.c</a>
+</li>
+<li>grpc_resolver_registry_init()
+: <a class="el" href="resolver__registry_8c.html#ac7c093f883b89670df4f0e6a42a9a77c">resolver_registry.c</a>
+, <a class="el" href="resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0">resolver_registry.h</a>
+</li>
+<li>grpc_resolver_registry_shutdown()
+: <a class="el" href="resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6">resolver_registry.h</a>
+, <a class="el" href="resolver__registry_8c.html#a7e9178815fe26123c9413514e1212ca6">resolver_registry.c</a>
+</li>
+<li>grpc_resolver_shutdown()
+: <a class="el" href="resolver_8h.html#ae7b200016c3489c0bb3de525198b435b">resolver.h</a>
+, <a class="el" href="resolver_8c.html#ae7b200016c3489c0bb3de525198b435b">resolver.c</a>
+</li>
+<li>grpc_resolver_unref()
+: <a class="el" href="resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9">resolver.c</a>
+</li>
+<li>GRPC_RESOLVER_UNREF
+: <a class="el" href="resolver_8h.html#a54ccbaf14bf8c38ad785e95d705bfe4d">resolver.h</a>
+</li>
+<li>grpc_resolver_unref()
+: <a class="el" href="resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d">resolver.h</a>
+</li>
+<li>grpc_resolver_vtable
+: <a class="el" href="resolver_8h.html#aa9af03422b3cea75b4dae7725beab911">resolver.h</a>
+</li>
+<li>grpc_secure_channel_create()
+: <a class="el" href="grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4">grpc_security.h</a>
+, <a class="el" href="secure__channel__create_8c.html#a4d63d4cac74652ec3fac7782acb4a2d4">secure_channel_create.c</a>
+</li>
+<li>grpc_secure_endpoint_create()
+: <a class="el" href="secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66">secure_endpoint.h</a>
+, <a class="el" href="secure__endpoint_8c.html#a76ef547d32b0955572a841108518e611">secure_endpoint.c</a>
+</li>
+<li>GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS
+: <a class="el" href="credentials_8h.html#a63b03c9e9e071d5b7f2276c0ae196aeb">credentials.h</a>
+</li>
+<li>grpc_secure_transport_setup_done_cb
+: <a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">secure_transport_setup.h</a>
+</li>
+<li>grpc_security_check_cb
+: <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">security_connector.h</a>
+</li>
+<li>grpc_security_connector
+: <a class="el" href="security__connector_8h.html#a243897cc56b3cff21887ba4c53e52539">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_CONNECTOR_ARG
+: <a class="el" href="security__connector_8h.html#a047c420294c8769e4512f17d0573e353">security_connector.h</a>
+</li>
+<li>grpc_security_connector_check_peer()
+: <a class="el" href="security__connector_8c.html#aac9a5d6c38755b24c7170789056dec94">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94">security_connector.h</a>
+</li>
+<li>grpc_security_connector_create_handshaker()
+: <a class="el" href="security__connector_8c.html#af81a7b903de0636a73b0e852b36a7fde">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde">security_connector.h</a>
+</li>
+<li>grpc_security_connector_from_arg()
+: <a class="el" href="security__connector_8c.html#aa427ef1fd3d8e58437215f4da2fd87ca">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca">security_connector.h</a>
+</li>
+<li>grpc_security_connector_ref()
+: <a class="el" href="security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_CONNECTOR_REF
+: <a class="el" href="security__connector_8h.html#a5bb32899b45edd908bb61e45db59c460">security_connector.h</a>
+</li>
+<li>grpc_security_connector_to_arg()
+: <a class="el" href="security__connector_8c.html#ab609527dad74bcc51e4b8b17b8f47c8a">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a">security_connector.h</a>
+</li>
+<li>grpc_security_connector_unref()
+: <a class="el" href="security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359">security_connector.c</a>
+</li>
+<li>GRPC_SECURITY_CONNECTOR_UNREF
+: <a class="el" href="security__connector_8h.html#a1950bc24ce082a50d66b0cd505c069ee">security_connector.h</a>
+</li>
+<li>grpc_security_connector_unref()
+: <a class="el" href="security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_ERROR
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_OK
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b">security_connector.h</a>
+</li>
+<li>GRPC_SECURITY_PENDING
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8">security_connector.h</a>
+</li>
+<li>grpc_security_pre_init()
+: <a class="el" href="init__secure_8c.html#a7cfa0e02a966bf937b5d69e10fad2ef7">init_secure.c</a>
+, <a class="el" href="init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7">init.h</a>
+</li>
+<li>grpc_security_status
+: <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">security_connector.h</a>
+</li>
+<li>GRPC_SEND_CLOSED
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02">internal.h</a>
+</li>
+<li>GRPC_SEND_CLOSED_WITH_RST_STREAM
+: <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508">internal.h</a>
+</li>
+<li>GRPC_SENT_SETTINGS
+: <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5">internal.h</a>
+</li>
+<li>grpc_server
+: <a class="el" href="grpc_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc.h</a>
+</li>
+<li>grpc_server_add_http2_port()
+: <a class="el" href="server__chttp2_8c.html#a48cab64480658b97a775b2c7837456f9">server_chttp2.c</a>
+, <a class="el" href="grpc_8h.html#a48cab64480658b97a775b2c7837456f9">grpc.h</a>
+</li>
+<li>grpc_server_add_listener()
+: <a class="el" href="server_8c.html#a777b461e0fd2a56acd35caf54f3d88e6">server.c</a>
+, <a class="el" href="server_8h.html#afba4e38403fa34a317c44de9bae41105">server.h</a>
+</li>
+<li>grpc_server_add_secure_http2_port()
+: <a class="el" href="server__secure__chttp2_8c.html#a5d0db200d00b62b79138472dc9b1fe59">server_secure_chttp2.c</a>
+, <a class="el" href="grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59">grpc_security.h</a>
+</li>
+<li>grpc_server_auth_filter
+: <a class="el" href="server__auth__filter_8c.html#a2041d6372525de50a18f156d1b94cfae">server_auth_filter.c</a>
+, <a class="el" href="auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae">auth_filters.h</a>
+</li>
+<li>grpc_server_cancel_all_calls()
+: <a class="el" href="grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803">grpc.h</a>
+, <a class="el" href="server_8c.html#ac5c1e4f3e270a7afbc39403fff0dc803">server.c</a>
+</li>
+<li>grpc_server_census_filter
+: <a class="el" href="census__filter_8h.html#a710f293782b7b759efd8bf5acd011963">census_filter.h</a>
+</li>
+<li>grpc_server_create()
+: <a class="el" href="grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4">grpc.h</a>
+, <a class="el" href="server__create_8c.html#a4036710ea12eccabbbbf050d6bad4cd4">server_create.c</a>
+</li>
+<li>grpc_server_create_from_filters()
+: <a class="el" href="server_8c.html#a870e9abac807e8ba2578df7d9526f8c0">server.c</a>
+, <a class="el" href="server_8h.html#a870e9abac807e8ba2578df7d9526f8c0">server.h</a>
+</li>
+<li>grpc_server_credentials
+: <a class="el" href="grpc__security_8h.html#aa724192e56fdc03827846f16752deccc">grpc_security.h</a>
+</li>
+<li>grpc_server_credentials_create_security_connector()
+: <a class="el" href="credentials_8c.html#acc8fc30e87ddec6ff87dd6676215755a">credentials.c</a>
+, <a class="el" href="credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a">credentials.h</a>
+</li>
+<li>grpc_server_credentials_release()
+: <a class="el" href="credentials_8c.html#a6e9f9320f4f8d2d534d04ed642f032ea">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea">grpc_security.h</a>
+</li>
+<li>grpc_server_destroy()
+: <a class="el" href="grpc_8h.html#a34cba45da7c32a21ac82305d670e4620">grpc.h</a>
+, <a class="el" href="server_8c.html#a34cba45da7c32a21ac82305d670e4620">server.c</a>
+</li>
+<li>grpc_server_get_channel_args()
+: <a class="el" href="server_8c.html#a263c42634aa706458d691565943c6cae">server.c</a>
+, <a class="el" href="server_8h.html#a263c42634aa706458d691565943c6cae">server.h</a>
+</li>
+<li>grpc_server_has_open_connections()
+: <a class="el" href="server_8c.html#a28a4697b500cd4867a9f6731c8e58a94">server.c</a>
+, <a class="el" href="server_8h.html#a28a4697b500cd4867a9f6731c8e58a94">server.h</a>
+</li>
+<li>grpc_server_listener_destroy_done()
+: <a class="el" href="server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9">server.h</a>
+, <a class="el" href="server_8c.html#a57b25ccc5ec64affd1ade91554a81092">server.c</a>
+</li>
+<li>GRPC_SERVER_LOG_REQUEST_CALL
+: <a class="el" href="call_8h.html#a2248e590ae0f4d7aba76fbf76110db6c">call.h</a>
+</li>
+<li>grpc_server_log_request_call()
+: <a class="el" href="call_8h.html#a731e08efd7f3cab089d2239f0ed931d5">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a731e08efd7f3cab089d2239f0ed931d5">call_log_batch.c</a>
+</li>
+<li>grpc_server_log_shutdown()
+: <a class="el" href="call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89">call_log_batch.c</a>
+</li>
+<li>GRPC_SERVER_LOG_SHUTDOWN
+: <a class="el" href="call_8h.html#a0b82c07496b462c41ce400559c5219e7">call.h</a>
+</li>
+<li>grpc_server_log_shutdown()
+: <a class="el" href="call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89">call.h</a>
+</li>
+<li>grpc_server_register_completion_queue()
+: <a class="el" href="grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb">grpc.h</a>
+, <a class="el" href="server_8c.html#ac174712f87fdae4b5757a1370e2a31cb">server.c</a>
+</li>
+<li>grpc_server_register_method()
+: <a class="el" href="server_8c.html#a283062a2209f464f234b0e645c6fffb2">server.c</a>
+, <a class="el" href="grpc_8h.html#a283062a2209f464f234b0e645c6fffb2">grpc.h</a>
+</li>
+<li>grpc_server_request_call()
+: <a class="el" href="grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257">grpc.h</a>
+, <a class="el" href="server_8c.html#a419670c3509bc3c67c1344be3a1c4dbf">server.c</a>
+</li>
+<li>grpc_server_request_registered_call()
+: <a class="el" href="server_8c.html#a82bc2345fb113c461e255364d8d192b5">server.c</a>
+, <a class="el" href="grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de">grpc.h</a>
+</li>
+<li>grpc_server_secure_state
+: <a class="el" href="server__secure__chttp2_8c.html#a5867481af652d517f32b61834205f2b0">server_secure_chttp2.c</a>
+</li>
+<li>grpc_server_security_context_create()
+: <a class="el" href="security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a">security_context.h</a>
+, <a class="el" href="security__context_8c.html#afa8c88dfb1be5add6af3143eeb76460a">security_context.c</a>
+</li>
+<li>grpc_server_security_context_destroy()
+: <a class="el" href="security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a">security_context.h</a>
+, <a class="el" href="security__context_8c.html#a86caf02cd607c3ff6f1e6657ffa5c17a">security_context.c</a>
+</li>
+<li>grpc_server_setup_transport()
+: <a class="el" href="server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc">server.h</a>
+, <a class="el" href="server_8c.html#a26fd88680fa7949f4af879acdc249d8d">server.c</a>
+</li>
+<li>grpc_server_shutdown_and_notify()
+: <a class="el" href="server_8c.html#a56fffa23c1c4bab9a469e2ac607b6db7">server.c</a>
+, <a class="el" href="grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7">grpc.h</a>
+</li>
+<li>grpc_server_start()
+: <a class="el" href="grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">grpc.h</a>
+, <a class="el" href="server_8c.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">server.c</a>
+</li>
+<li>grpc_service_account_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a15aa83608fad085b6244de659d322b27">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a15aa83608fad085b6244de659d322b27">credentials.c</a>
+</li>
+<li>grpc_service_account_jwt_access_credentials_create()
+: <a class="el" href="credentials_8c.html#af26993774cc991debd61e4a84ed49187">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#af26993774cc991debd61e4a84ed49187">grpc_security.h</a>
+</li>
+<li>grpc_service_account_jwt_access_credentials_create_from_auth_json_key()
+: <a class="el" href="credentials_8c.html#a26715660e319377bdfc4f2476ff35505">credentials.c</a>
+, <a class="el" href="credentials_8h.html#a26715660e319377bdfc4f2476ff35505">credentials.h</a>
+</li>
+<li>GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX
+: <a class="el" href="credentials_8h.html#a5c5761f3829eca7ec24d5aa68272cad2">credentials.h</a>
+</li>
+<li>grpc_set_socket_cloexec()
+: <a class="el" href="socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_low_latency()
+: <a class="el" href="socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_no_sigpipe_if_possible()
+: <a class="el" href="socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_nonblocking()
+: <a class="el" href="socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5">socket_utils_posix.h</a>
+</li>
+<li>grpc_set_socket_reuse_addr()
+: <a class="el" href="socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79">socket_utils_posix.h</a>
+</li>
+<li>grpc_setup_secure_transport()
+: <a class="el" href="secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8">secure_transport_setup.h</a>
+, <a class="el" href="secure__transport__setup_8c.html#abf337cd72839248e089c1646f8fa7bc8">secure_transport_setup.c</a>
+</li>
+<li>grpc_shutdown()
+: <a class="el" href="grpc_8h.html#af1130720e50ffedd0bb065c84843b032">grpc.h</a>
+, <a class="el" href="init_8c.html#af1130720e50ffedd0bb065c84843b032">init.c</a>
+</li>
+<li>GRPC_SLICE_BUFFER_INLINE_ELEMENTS
+: <a class="el" href="slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809">slice_buffer.h</a>
+</li>
+<li>grpc_sockaddr_get_port()
+: <a class="el" href="sockaddr__utils_8c.html#a9b9c605d240e9358a23f29c4cf07b1da">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_is_v4mapped()
+: <a class="el" href="sockaddr__utils_8c.html#a97d452690214de3809f667f95dda80ce">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_is_wildcard()
+: <a class="el" href="sockaddr__utils_8c.html#aed4ad468c36fc0a4531025c5fa2185a2">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_make_wildcard4()
+: <a class="el" href="sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a89be072619a282936b8c1f99c5af254e">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_make_wildcard6()
+: <a class="el" href="sockaddr__utils_8c.html#a1a8a1c666324ed6d23077a0dd77bd2b8">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_make_wildcards()
+: <a class="el" href="sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a3cb44f54c6743ff32dc31147ca6a6721">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_set_port()
+: <a class="el" href="sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#ad73cd02c052e82778b7df5378ded462d">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_to_string()
+: <a class="el" href="sockaddr__utils_8c.html#a400a51bd46384a6e0b28136274765464">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464">sockaddr_utils.h</a>
+</li>
+<li>grpc_sockaddr_to_uri()
+: <a class="el" href="sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91">sockaddr_utils.h</a>
+, <a class="el" href="sockaddr__utils_8c.html#a8545a440d2d91365d75ed87720891a91">sockaddr_utils.c</a>
+</li>
+<li>grpc_sockaddr_to_v4mapped()
+: <a class="el" href="sockaddr__utils_8c.html#a606efe4550fb7947fb36ff6a0231ac79">sockaddr_utils.c</a>
+, <a class="el" href="sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79">sockaddr_utils.h</a>
+</li>
+<li>grpc_socket_notify_on_read()
+: <a class="el" href="iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00">iocp_windows.h</a>
+</li>
+<li>grpc_socket_notify_on_write()
+: <a class="el" href="iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38">iocp_windows.h</a>
+</li>
+<li>grpc_sopb_add_begin_message()
+: <a class="el" href="stream__op_8c.html#a6b1565cc1ec9aba1eef5c21318e088b9">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9">stream_op.h</a>
+</li>
+<li>grpc_sopb_add_metadata()
+: <a class="el" href="stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#aea2cbf38a752864f62dc8d2cdc58a50a">stream_op.c</a>
+</li>
+<li>grpc_sopb_add_no_op()
+: <a class="el" href="stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#abe45d7a6778fc0e248e490dfb635d850">stream_op.c</a>
+</li>
+<li>grpc_sopb_add_slice()
+: <a class="el" href="stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#aa2a412545fb6bb4055f3437f1d261f69">stream_op.c</a>
+</li>
+<li>grpc_sopb_append()
+: <a class="el" href="stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a55100e31b3cc23733ba42bb5e2f38818">stream_op.c</a>
+</li>
+<li>grpc_sopb_destroy()
+: <a class="el" href="stream__op_8c.html#aef34bb8bc5d02c10304fa93de76604d1">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1">stream_op.h</a>
+</li>
+<li>grpc_sopb_init()
+: <a class="el" href="stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#ac06c5c016030ab760ce1c190ea9c0935">stream_op.c</a>
+</li>
+<li>GRPC_SOPB_INLINE_ELEMENTS
+: <a class="el" href="stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca">stream_op.h</a>
+</li>
+<li>grpc_sopb_move_to()
+: <a class="el" href="stream__op_8h.html#abf812a361634fee304b636fccde7c934">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#abf812a361634fee304b636fccde7c934">stream_op.c</a>
+</li>
+<li>grpc_sopb_reset()
+: <a class="el" href="stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">stream_op.c</a>
+</li>
+<li>grpc_sopb_string()
+: <a class="el" href="stream__op_8h.html#a225a70176577da4097ecad0b8c647fee">stream_op.h</a>
+, <a class="el" href="transport__op__string_8c.html#a225a70176577da4097ecad0b8c647fee">transport_op_string.c</a>
+</li>
+<li>grpc_sopb_swap()
+: <a class="el" href="stream__op_8c.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">stream_op.c</a>
+, <a class="el" href="stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">stream_op.h</a>
+</li>
+<li>grpc_specialized_wakeup_fd_vtable
+: <a class="el" href="wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_ssl_channel_security_connector_create()
+: <a class="el" href="security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d">security_connector.h</a>
+, <a class="el" href="security__connector_8c.html#a6db43510beb4d3953f572cbe203c164d">security_connector.c</a>
+</li>
+<li>GRPC_SSL_CIPHER_SUITES
+: <a class="el" href="security__connector_8c.html#ab67f630ea3179d8d418fddcdc0deef5c">security_connector.c</a>
+</li>
+<li>grpc_ssl_credentials_create()
+: <a class="el" href="credentials_8c.html#a0d627ca897718091e4ceca5dce3ef10e">credentials.c</a>
+, <a class="el" href="grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e">grpc_security.h</a>
+</li>
+<li>grpc_ssl_server_credentials_create()
+: <a class="el" href="grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9">grpc_security.h</a>
+, <a class="el" href="credentials_8c.html#a3382907a4689c034a6f55bab4d5135b9">credentials.c</a>
+</li>
+<li>grpc_ssl_server_security_connector_create()
+: <a class="el" href="security__connector_8c.html#af0fc288920d58432af4285ec56251248">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#af0fc288920d58432af4285ec56251248">security_connector.h</a>
+</li>
+<li>GRPC_SSL_TARGET_NAME_OVERRIDE_ARG
+: <a class="el" href="grpc__security_8h.html#a218bf55b665134a11baf07ada5980825">grpc_security.h</a>
+</li>
+<li>GRPC_SSL_TRANSPORT_SECURITY_TYPE
+: <a class="el" href="grpc__security_8h.html#a35a35c597b7090b8ac7e2d854c9bcc7a">grpc_security.h</a>
+</li>
+<li>GRPC_SSL_URL_SCHEME
+: <a class="el" href="security__connector_8h.html#a9e0af76d139286bef4c720bde3a7a6c0">security_connector.h</a>
+</li>
+<li>GRPC_STATUS__DO_NOT_USE
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96">status.h</a>
+</li>
+<li>GRPC_STATUS_ABORTED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9">status.h</a>
+</li>
+<li>GRPC_STATUS_ALREADY_EXISTS
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b">status.h</a>
+</li>
+<li>GRPC_STATUS_CANCELLED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038">status.h</a>
+</li>
+<li>grpc_status_code
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">status.h</a>
+</li>
+<li>GRPC_STATUS_DATA_LOSS
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7">status.h</a>
+</li>
+<li>GRPC_STATUS_DEADLINE_EXCEEDED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208">status.h</a>
+</li>
+<li>GRPC_STATUS_FAILED_PRECONDITION
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f">status.h</a>
+</li>
+<li>GRPC_STATUS_INTERNAL
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520">status.h</a>
+</li>
+<li>GRPC_STATUS_INVALID_ARGUMENT
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731">status.h</a>
+</li>
+<li>GRPC_STATUS_NOT_FOUND
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2">status.h</a>
+</li>
+<li>GRPC_STATUS_OK
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201">status.h</a>
+</li>
+<li>GRPC_STATUS_OUT_OF_RANGE
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b">status.h</a>
+</li>
+<li>GRPC_STATUS_PERMISSION_DENIED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4">status.h</a>
+</li>
+<li>GRPC_STATUS_RESOURCE_EXHAUSTED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9">status.h</a>
+</li>
+<li>GRPC_STATUS_UNAUTHENTICATED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb">status.h</a>
+</li>
+<li>GRPC_STATUS_UNAVAILABLE
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79">status.h</a>
+</li>
+<li>GRPC_STATUS_UNIMPLEMENTED
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2">status.h</a>
+</li>
+<li>GRPC_STATUS_UNKNOWN
+: <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08">status.h</a>
+</li>
+<li>grpc_stream
+: <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">transport.h</a>
+</li>
+<li>GRPC_STREAM_CLOSED
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362">transport.h</a>
+</li>
+<li>grpc_stream_op
+: <a class="el" href="stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127">stream_op.h</a>
+</li>
+<li>grpc_stream_op_buffer
+: <a class="el" href="stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5">stream_op.h</a>
+</li>
+<li>grpc_stream_op_code
+: <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">stream_op.h</a>
+</li>
+<li>GRPC_STREAM_OPEN
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76">transport.h</a>
+</li>
+<li>grpc_stream_ops_unref_owned_objects()
+: <a class="el" href="stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d">stream_op.h</a>
+, <a class="el" href="stream__op_8c.html#af06b21376669ed6bf358f50a57e02d9d">stream_op.c</a>
+</li>
+<li>GRPC_STREAM_RECV_CLOSED
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7">transport.h</a>
+</li>
+<li>GRPC_STREAM_SEND_CLOSED
+: <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a">transport.h</a>
+</li>
+<li>grpc_stream_state
+: <a class="el" href="transport_8h.html#ad2bffd8c4adc3f1131752a17710d8477">transport.h</a>
+</li>
+<li>grpc_subchannel
+: <a class="el" href="subchannel_8h.html#a6d36bd247fd79f7c8a2788d04f622a06">subchannel.h</a>
+</li>
+<li>grpc_subchannel_add_interested_party()
+: <a class="el" href="subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#ad64aa215ea81487204c6598b4f1572ae">subchannel.c</a>
+</li>
+<li>grpc_subchannel_args
+: <a class="el" href="subchannel_8h.html#a1ef8f51fcaea0bb29010f164b4429a55">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call
+: <a class="el" href="subchannel_8h.html#a007a93252a4a76631336ab840c18ee7d">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_get_peer()
+: <a class="el" href="subchannel_8c.html#a552e894b75a9a67f00e4ae312a94cc00">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_process_op()
+: <a class="el" href="subchannel_8c.html#a0128c4e7cd5939061ea02780e5fa33ae">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_ref()
+: <a class="el" href="subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_CALL_REF
+: <a class="el" href="subchannel_8h.html#aa0f8df565952fc5504c9658b426c64a7">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call_unref()
+: <a class="el" href="subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_CALL_UNREF
+: <a class="el" href="subchannel_8h.html#a5d26bb43a6c7a1d40d130c7dd08b4ca8">subchannel.h</a>
+</li>
+<li>grpc_subchannel_check_connectivity()
+: <a class="el" href="subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#a92711f9b7c8df9415249685a9c91f2c9">subchannel.c</a>
+</li>
+<li>grpc_subchannel_create()
+: <a class="el" href="subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#a5220a721bb5ad91bffbddd12045efff8">subchannel.c</a>
+</li>
+<li>grpc_subchannel_create_call()
+: <a class="el" href="subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d">subchannel.h</a>
+, <a class="el" href="subchannel_8c.html#aa6b5c676351c4f7f33b903549edab3b7">subchannel.c</a>
+</li>
+<li>grpc_subchannel_del_interested_party()
+: <a class="el" href="subchannel_8c.html#a72bfe59d8ad11465896034281729279b">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#aa8ea5c658e34de467db80c269231e676">subchannel.h</a>
+</li>
+<li>grpc_subchannel_factory
+: <a class="el" href="subchannel__factory_8h.html#a0881f059aa8f26e71eb479eed9d06785">subchannel_factory.h</a>
+</li>
+<li>grpc_subchannel_factory_add_channel_arg()
+: <a class="el" href="add__channel__arg_8c.html#aec70a5daa15f33d18edc47ebc0270c34">add_channel_arg.c</a>
+, <a class="el" href="add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34">add_channel_arg.h</a>
+</li>
+<li>grpc_subchannel_factory_create_subchannel()
+: <a class="el" href="subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20">subchannel_factory.h</a>
+, <a class="el" href="subchannel__factory_8c.html#a50ecfa3c06af1f867684d3c238cedf20">subchannel_factory.c</a>
+</li>
+<li>grpc_subchannel_factory_merge_channel_args()
+: <a class="el" href="merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0">merge_channel_args.h</a>
+, <a class="el" href="merge__channel__args_8c.html#a4dc574355128feee36ad9500f9ae8cc0">merge_channel_args.c</a>
+</li>
+<li>grpc_subchannel_factory_ref()
+: <a class="el" href="subchannel__factory_8c.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">subchannel_factory.c</a>
+, <a class="el" href="subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">subchannel_factory.h</a>
+</li>
+<li>grpc_subchannel_factory_unref()
+: <a class="el" href="subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82">subchannel_factory.h</a>
+, <a class="el" href="subchannel__factory_8c.html#ac502341f23676007c8ccd5338f942e82">subchannel_factory.c</a>
+</li>
+<li>grpc_subchannel_factory_vtable
+: <a class="el" href="subchannel__factory_8h.html#a032cc20ff8747dbc985aa2b85b8f7abf">subchannel_factory.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_INITIAL_CONNECT_BACKOFF_SECONDS
+: <a class="el" href="subchannel_8c.html#ab2916ffabb6e97931795c0cb17d5b1a0">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_MIN_CONNECT_TIMEOUT_SECONDS
+: <a class="el" href="subchannel_8c.html#a4a297a5d3477460e802c804a945cfb4e">subchannel.c</a>
+</li>
+<li>grpc_subchannel_notify_on_state_change()
+: <a class="el" href="subchannel_8c.html#ac2e59a5c3a44ba0827b27ccba866389b">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776">subchannel.h</a>
+</li>
+<li>grpc_subchannel_process_transport_op()
+: <a class="el" href="subchannel_8c.html#a9b95251da4779ae913c33f380a1c33c4">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_RECONNECT_BACKOFF_MULTIPLIER
+: <a class="el" href="subchannel_8c.html#ad1761b478eb46b24379e6d5a9edd30af">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_RECONNECT_JITTER
+: <a class="el" href="subchannel_8c.html#a9775a74d61f54cd0537630b9b7118802">subchannel.c</a>
+</li>
+<li>GRPC_SUBCHANNEL_RECONNECT_MAX_BACKOFF_SECONDS
+: <a class="el" href="subchannel_8c.html#ad021f6795743d8163fff68703ffb663b">subchannel.c</a>
+</li>
+<li>grpc_subchannel_ref()
+: <a class="el" href="subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_REF
+: <a class="el" href="subchannel_8h.html#a7a3f5a07d6d6ca7864d0b571a2675d15">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_REF_EXTRA_ARGS
+: <a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">subchannel.h</a>
+</li>
+<li>GRPC_SUBCHANNEL_UNREF
+: <a class="el" href="subchannel_8h.html#accf1481a1fe9acf1537f665705a60d4c">subchannel.h</a>
+</li>
+<li>grpc_subchannel_unref()
+: <a class="el" href="subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f">subchannel.c</a>
+, <a class="el" href="subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59">subchannel.h</a>
+</li>
+<li>grpc_surface_trace
+: <a class="el" href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">surface_trace.h</a>
+, <a class="el" href="surface__trace_8c.html#aa4f3485a1e8307d80c59a22e5b20f7a5">surface_trace.c</a>
+</li>
+<li>GRPC_SURFACE_TRACE_RETURNED_EVENT
+: <a class="el" href="surface__trace_8h.html#ab6bd5be00afe2369bd1b63e13ab6197d">surface_trace.h</a>
+</li>
+<li>grpc_tcp_client_connect()
+: <a class="el" href="tcp__client_8h.html#a086207583509b040c4fff779333468cd">tcp_client.h</a>
+</li>
+<li>grpc_tcp_create()
+: <a class="el" href="tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483">tcp_windows.h</a>
+, <a class="el" href="tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05">tcp_posix.h</a>
+</li>
+<li>GRPC_TCP_DEFAULT_READ_SLICE_SIZE
+: <a class="el" href="tcp__posix_8h.html#a1f91c3aec64a436d29051c8d415b1053">tcp_posix.h</a>
+</li>
+<li>grpc_tcp_prepare_socket()
+: <a class="el" href="tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c">tcp_windows.h</a>
+</li>
+<li>grpc_tcp_server
+: <a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_add_port()
+: <a class="el" href="tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_cb
+: <a class="el" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_create()
+: <a class="el" href="tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_destroy()
+: <a class="el" href="tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_get_fd()
+: <a class="el" href="tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_start()
+: <a class="el" href="tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7">tcp_server.h</a>
+</li>
+<li>grpc_tcp_trace
+: <a class="el" href="tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb">tcp_posix.h</a>
+</li>
+<li>grpc_time_averaged_stats_add_sample()
+: <a class="el" href="time__averaged__stats_8c.html#a3fc252070ff8ec7010c74774a042e54d">time_averaged_stats.c</a>
+, <a class="el" href="time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d">time_averaged_stats.h</a>
+</li>
+<li>grpc_time_averaged_stats_init()
+: <a class="el" href="time__averaged__stats_8c.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">time_averaged_stats.c</a>
+, <a class="el" href="time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">time_averaged_stats.h</a>
+</li>
+<li>grpc_time_averaged_stats_update_average()
+: <a class="el" href="time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26">time_averaged_stats.h</a>
+, <a class="el" href="time__averaged__stats_8c.html#a811009e64ef5f5b88021d5aa08ceaf26">time_averaged_stats.c</a>
+</li>
+<li>grpc_timer_add_important_mark()
+: <a class="el" href="timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744">timers.h</a>
+</li>
+<li>grpc_timer_add_mark()
+: <a class="el" href="timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746">timers.h</a>
+</li>
+<li>GRPC_TIMER_BEGIN
+: <a class="el" href="timers_8h.html#abf4cfef22d1c79525994ba224ac13dba">timers.h</a>
+</li>
+<li>grpc_timer_begin()
+: <a class="el" href="timers_8h.html#a9ad8a62da486b38462306e41127231ea">timers.h</a>
+</li>
+<li>GRPC_TIMER_END
+: <a class="el" href="timers_8h.html#ada806da3afa32376e244dfeb65ec467b">timers.h</a>
+</li>
+<li>grpc_timer_end()
+: <a class="el" href="timers_8h.html#a810b9be124a21ed5c4066f2e74112e74">timers.h</a>
+</li>
+<li>GRPC_TIMER_IMPORTANT_MARK
+: <a class="el" href="timers_8h.html#a4de2bf5918f608b72f3c426e4a43e7c8">timers.h</a>
+</li>
+<li>GRPC_TIMER_MARK
+: <a class="el" href="timers_8h.html#acafc06612d7b046547ed80c18d519608">timers.h</a>
+</li>
+<li>grpc_timers_global_destroy()
+: <a class="el" href="timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13">timers.h</a>
+, <a class="el" href="basic__timers_8c.html#a3464d3fdd0cc9ab2543195d5ee3fec13">basic_timers.c</a>
+</li>
+<li>grpc_timers_global_init()
+: <a class="el" href="basic__timers_8c.html#ac34b4d619b9ed067e02e037b21a6feac">basic_timers.c</a>
+, <a class="el" href="timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac">timers.h</a>
+</li>
+<li>grpc_trace_batch
+: <a class="el" href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">call_log_batch.c</a>
+</li>
+<li>grpc_trace_channel
+: <a class="el" href="channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">channel_stack.c</a>
+, <a class="el" href="channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">channel_stack.h</a>
+</li>
+<li>grpc_trace_secure_endpoint
+: <a class="el" href="secure__endpoint_8c.html#a7778bdc8c40adac0dc536fe255b75fbd">secure_endpoint.c</a>
+, <a class="el" href="secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd">secure_endpoint.h</a>
+</li>
+<li>grpc_tracer_init()
+: <a class="el" href="trace_8c.html#a6875f9ce4490e731d36e872ab1b7d580">trace.c</a>
+, <a class="el" href="trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2">trace.h</a>
+</li>
+<li>grpc_tracer_set_enabled()
+: <a class="el" href="grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350">grpc.h</a>
+, <a class="el" href="trace_8c.html#ae6984d3f0c3b9bc9a47859fd4dddc350">trace.c</a>
+</li>
+<li>grpc_tracer_shutdown()
+: <a class="el" href="trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2">trace.h</a>
+, <a class="el" href="trace_8c.html#ad5ced3b2457db3a480e13e6e268543d2">trace.c</a>
+</li>
+<li>grpc_transport
+: <a class="el" href="transport_8h.html#a7ba3f709ee3b451e434c67acf7fb7451">transport.h</a>
+</li>
+<li>grpc_transport_close()
+: <a class="el" href="transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e">transport.h</a>
+</li>
+<li>grpc_transport_destroy()
+: <a class="el" href="transport_8h.html#adb3ef83552276a5161ff6733f8455ae1">transport.h</a>
+, <a class="el" href="transport_8c.html#adb3ef83552276a5161ff6733f8455ae1">transport.c</a>
+</li>
+<li>grpc_transport_destroy_stream()
+: <a class="el" href="transport_8c.html#a21223037b0bc6a92a9e058e20be1b0af">transport.c</a>
+, <a class="el" href="transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af">transport.h</a>
+</li>
+<li>grpc_transport_get_peer()
+: <a class="el" href="transport_8c.html#ac32bf69379cb94e6f951a4ec45a6157e">transport.c</a>
+, <a class="el" href="transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e">transport.h</a>
+</li>
+<li>grpc_transport_goaway()
+: <a class="el" href="transport_8h.html#aea30a551f2d7a27edd9ddc9441523818">transport.h</a>
+</li>
+<li>grpc_transport_init_stream()
+: <a class="el" href="transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc">transport.h</a>
+, <a class="el" href="transport_8c.html#aba013c9e53a24f223283fc78cb6ca6cc">transport.c</a>
+</li>
+<li>grpc_transport_op
+: <a class="el" href="transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf">transport.h</a>
+</li>
+<li>grpc_transport_perform_op()
+: <a class="el" href="transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3">transport.h</a>
+, <a class="el" href="transport_8c.html#ae52662de3568a1d961e60e83d28e2dc3">transport.c</a>
+</li>
+<li>grpc_transport_perform_stream_op()
+: <a class="el" href="transport_8c.html#a81c2ae26b7109481d4538b48c15d5b1b">transport.c</a>
+, <a class="el" href="transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b">transport.h</a>
+</li>
+<li>grpc_transport_ping()
+: <a class="el" href="transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc">transport.h</a>
+</li>
+<li>GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME
+: <a class="el" href="grpc__security_8h.html#aff82fdff9e7c40c4dd4bdc650e38e25a">grpc_security.h</a>
+</li>
+<li>grpc_transport_stream_op
+: <a class="el" href="transport_8h.html#a425321242c0f56ca08e74a4afcbdd017">transport.h</a>
+</li>
+<li>grpc_transport_stream_op_add_cancellation()
+: <a class="el" href="transport_8c.html#ad1deb9664db9760e156951542378fe11">transport.c</a>
+, <a class="el" href="transport_8h.html#ad1deb9664db9760e156951542378fe11">transport.h</a>
+</li>
+<li>grpc_transport_stream_op_finish_with_failure()
+: <a class="el" href="transport_8c.html#ac5aa9757a292d71026279316979b8e40">transport.c</a>
+, <a class="el" href="transport_8h.html#ac5aa9757a292d71026279316979b8e40">transport.h</a>
+</li>
+<li>grpc_transport_stream_op_string()
+: <a class="el" href="transport_8h.html#a058362edba570c120d125091b3c006d2">transport.h</a>
+, <a class="el" href="transport__op__string_8c.html#a058362edba570c120d125091b3c006d2">transport_op_string.c</a>
+</li>
+<li>grpc_transport_stream_size()
+: <a class="el" href="transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">transport.h</a>
+, <a class="el" href="transport_8c.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">transport.c</a>
+</li>
+<li>grpc_transport_vtable
+: <a class="el" href="transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed">transport_impl.h</a>
+</li>
+<li>grpc_uri_destroy()
+: <a class="el" href="uri__parser_8c.html#af4744a0a3c814548dbbecb79c4620ac1">uri_parser.c</a>
+, <a class="el" href="uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1">uri_parser.h</a>
+</li>
+<li>grpc_uri_parse()
+: <a class="el" href="uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d">uri_parser.h</a>
+, <a class="el" href="uri__parser_8c.html#aef57f54325374603bb0510e8b8b5976d">uri_parser.c</a>
+</li>
+<li>grpc_version_string()
+: <a class="el" href="grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51">grpc.h</a>
+, <a class="el" href="version_8c.html#a250ca547d790874bd7b5ceec25f18c51">version.c</a>
+</li>
+<li>grpc_wakeup_fd_consume_wakeup()
+: <a class="el" href="wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_create()
+: <a class="el" href="wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_destroy()
+: <a class="el" href="wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef">wakeup_fd_posix.h</a>
+</li>
+<li>GRPC_WAKEUP_FD_GET_READ_FD
+: <a class="el" href="wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_global_destroy()
+: <a class="el" href="wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_global_init()
+: <a class="el" href="wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_global_init_force_fallback()
+: <a class="el" href="wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_info
+: <a class="el" href="wakeup__fd__posix_8h.html#a5b7e6c1bff52dd231ecb17a6716c3815">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_vtable
+: <a class="el" href="wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_wakeup()
+: <a class="el" href="wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_winsocket
+: <a class="el" href="socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_callback_info
+: <a class="el" href="socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_create()
+: <a class="el" href="socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_destroy()
+: <a class="el" href="socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_orphan()
+: <a class="el" href="socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_shutdown()
+: <a class="el" href="socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395">socket_windows.h</a>
+</li>
+<li>GRPC_WRITE_BUFFER_HINT
+: <a class="el" href="grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0">grpc.h</a>
+</li>
+<li>GRPC_WRITE_INTERNAL_COMPRESS
+: <a class="el" href="stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35">stream_op.h</a>
+</li>
+<li>GRPC_WRITE_INTERNAL_USED_MASK
+: <a class="el" href="stream__op_8h.html#a7acab698fedc01eca6138c3e30056ff1">stream_op.h</a>
+</li>
+<li>GRPC_WRITE_NO_COMPRESS
+: <a class="el" href="grpc_8h.html#ae09000181671f031ed0e319ed557da4e">grpc.h</a>
+</li>
+<li>GRPC_WRITE_STATE_OPEN
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883">internal.h</a>
+</li>
+<li>GRPC_WRITE_STATE_QUEUED_CLOSE
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633">internal.h</a>
+</li>
+<li>GRPC_WRITE_STATE_SENT_CLOSE
+: <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693">internal.h</a>
+</li>
+<li>GRPC_WRITE_USED_MASK
+: <a class="el" href="grpc_8h.html#a3317259e1098b2b6f49982d6997bbf6a">grpc.h</a>
+</li>
+<li>GRPC_X509_CN_PROPERTY_NAME
+: <a class="el" href="grpc__security_8h.html#afee5e0fade6e0af1954529f1f08afe0c">grpc_security.h</a>
+</li>
+<li>GRPC_X509_SAN_PROPERTY_NAME
+: <a class="el" href="grpc__security_8h.html#a1412421653b7999544296f56025a0f36">grpc_security.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_h.html b/doc/ref/core.internal/html/globals_h.html
new file mode 100644
index 0000000000..2e58cee297
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_h.html
@@ -0,0 +1,148 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>HASH_FRAGMENT_1
+: <a class="el" href="stream__encoder_8c.html#a0551b7ff01539c9139e682053301b58b">stream_encoder.c</a>
+</li>
+<li>HASH_FRAGMENT_2
+: <a class="el" href="stream__encoder_8c.html#a00bb8310d47f7c0b6d5b9e86fdfbc043">stream_encoder.c</a>
+</li>
+<li>HASH_FRAGMENT_3
+: <a class="el" href="stream__encoder_8c.html#ac6a3339f7cdc67827f51d6f7162271fa">stream_encoder.c</a>
+</li>
+<li>HASH_FRAGMENT_4
+: <a class="el" href="stream__encoder_8c.html#a1aa06e441caa39deff8ee0dddaa18916">stream_encoder.c</a>
+</li>
+<li>HEADER
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa2e57918a09d25b07a664e505d50a97f6">stream_encoder.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_i.html b/doc/ref/core.internal/html/globals_i.html
new file mode 100644
index 0000000000..78dee60515
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_i.html
@@ -0,0 +1,169 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>ILLEGAL
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a64b291c78f4399005e7e6d35274ac792">hpack_parser.c</a>
+</li>
+<li>INDEXED_FIELD
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acf55dbd5b43747a8de2b3475e776b2a9">hpack_parser.c</a>
+</li>
+<li>INDEXED_FIELD_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab2d9a731d5c6871093edecbab8ec1b8a">hpack_parser.c</a>
+</li>
+<li>INITIAL_MDTAB_CAPACITY
+: <a class="el" href="metadata_8c.html#a79df755ba4db91d4b3ab5d375eb18364">metadata.c</a>
+</li>
+<li>INITIAL_STRTAB_CAPACITY
+: <a class="el" href="metadata_8c.html#a6e712d615b691c6a9f5daf410b8850ad">metadata.c</a>
+</li>
+<li>internal_metadata
+: <a class="el" href="metadata_8c.html#a5de9c52bec44c8dd9a46d9575c4336ed">metadata.c</a>
+</li>
+<li>internal_string
+: <a class="el" href="metadata_8c.html#ac4804488e22d084fbaf91101dab8c1ee">metadata.c</a>
+</li>
+<li>INTERNAL_STRING_REF
+: <a class="el" href="metadata_8c.html#a83513324a061c9ec72f186425ccdb78b">metadata.c</a>
+</li>
+<li>INTERNAL_STRING_UNREF
+: <a class="el" href="metadata_8c.html#a54692508d43c5445088e92d06a5665db">metadata.c</a>
+</li>
+<li>INVALID_ENTRY_INDEX
+: <a class="el" href="stack__lockfree_8c.html#a6c03a49143863f3e267ce5a21ac6121c">stack_lockfree.c</a>
+</li>
+<li>INVALID_HEAP_INDEX
+: <a class="el" href="alarm_8c.html#ab10c095adee8fff29f7d8e4209b70c66">alarm.c</a>
+</li>
+<li>is_binary_header
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35ee">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_k.html b/doc/ref/core.internal/html/globals_k.html
new file mode 100644
index 0000000000..fc5111ff4b
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_k.html
@@ -0,0 +1,136 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>key
+: <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">hpack_table.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_l.html b/doc/ref/core.internal/html/globals_l.html
new file mode 100644
index 0000000000..b8bd8e6790
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_l.html
@@ -0,0 +1,169 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li class="current"><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>listener
+: <a class="el" href="server_8c.html#a0a81ac863a31441ba5e8e2fc6be04f2c">server.c</a>
+</li>
+<li>LITHDR_INCIDX
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ad521ba7e26b2f29b70f24ebe99a7b6d4">hpack_parser.c</a>
+</li>
+<li>LITHDR_INCIDX_V
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acc616dbc2d6e6d99eb2879bc55a85e8c">hpack_parser.c</a>
+</li>
+<li>LITHDR_INCIDX_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918abc7a5a868dc1b4304662225ded589449">hpack_parser.c</a>
+</li>
+<li>LITHDR_NOTIDX
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a21b8279ee1879c395b696774c516b925">hpack_parser.c</a>
+</li>
+<li>LITHDR_NOTIDX_V
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9108c78104ce0a038a1ee76f9d56ebb4">hpack_parser.c</a>
+</li>
+<li>LITHDR_NOTIDX_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a17dbb369763076fa7714c613ca4778b4">hpack_parser.c</a>
+</li>
+<li>LITHDR_NVRIDX
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918aa4c98da3a42fad37a7eaaa74e76590e2">hpack_parser.c</a>
+</li>
+<li>LITHDR_NVRIDX_V
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab3fbe40c948e7abb4b587700f295c508">hpack_parser.c</a>
+</li>
+<li>LITHDR_NVRIDX_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9e86cc54448658713f683983a377d364">hpack_parser.c</a>
+</li>
+<li>lockfree_node
+: <a class="el" href="stack__lockfree_8c.html#a64e6ad783031985682ffda6b0c912bb6">stack_lockfree.c</a>
+</li>
+<li>LOG2_NUM_SHARDS
+: <a class="el" href="alarm_8c.html#ae48da0bb5039d191e6de667c888624c1">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_m.html b/doc/ref/core.internal/html/globals_m.html
new file mode 100644
index 0000000000..59d3743897
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_m.html
@@ -0,0 +1,176 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>MAX_ALARMS_PER_CHECK
+: <a class="el" href="alarm_8c.html#a035d5ac078d2c49bd8bc08a56eaeb7bb">alarm.c</a>
+</li>
+<li>MAX_BUFFER_LENGTH
+: <a class="el" href="connected__channel_8c.html#aa8a8ed5c9e057542ff818fde39a94f07">connected_channel.c</a>
+</li>
+<li>MAX_CLIENT_STREAM_ID
+: <a class="el" href="chttp2__transport_8c.html#afdde497df8d499ae838ff389ab262ab5">chttp2_transport.c</a>
+</li>
+<li>MAX_CONCURRENT_COMPLETIONS
+: <a class="el" href="call_8c.html#adc0473bd2ea598bc8b0d09c6f43b3a89">call.c</a>
+</li>
+<li>MAX_CREDENTIALS_METADATA_COUNT
+: <a class="el" href="client__auth__filter_8c.html#a0e5b323dfbc6ab0f070bf6c5a2a9be55">client_auth_filter.c</a>
+</li>
+<li>MAX_DECODER_SPACE_USAGE
+: <a class="el" href="stream__encoder_8c.html#a7216827b7f9b1ea6a0b108518cde0a7a">stream_encoder.c</a>
+</li>
+<li>MAX_FILTERS
+: <a class="el" href="channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2">channel_create.c</a>
+, <a class="el" href="secure__channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2">secure_channel_create.c</a>
+</li>
+<li>MAX_QUEUE_WINDOW_DURATION
+: <a class="el" href="alarm_8c.html#aa7820b33745be59861679298b76d9a95">alarm.c</a>
+</li>
+<li>MAX_RESOLVERS
+: <a class="el" href="resolver__registry_8c.html#af575a6a4adada94cfdb731c84e327ed2">resolver_registry.c</a>
+</li>
+<li>MAX_SEND_INITIAL_METADATA_COUNT
+: <a class="el" href="call_8c.html#ab0c91da8d11c6964aded3fbecff4a15c">call.c</a>
+</li>
+<li>MAX_TBL_SIZE
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a01c9e4f4b7e8c618841fab7c6fab28d8">hpack_parser.c</a>
+</li>
+<li>MAX_TBL_SIZE_X
+: <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918adb841f9eb9a97d6b2cbcdbc72ecceca4">hpack_parser.c</a>
+</li>
+<li>MAX_WINDOW
+: <a class="el" href="chttp2__transport_8c.html#a33445af5cbee6560efd1a891e4c01067">chttp2_transport.c</a>
+</li>
+<li>MIN_QUEUE_WINDOW_DURATION
+: <a class="el" href="alarm_8c.html#a1998a9b10fbd17ad50ff85991aeaa645">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_n.html b/doc/ref/core.internal/html/globals_n.html
new file mode 100644
index 0000000000..31e1a506fd
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_n.html
@@ -0,0 +1,154 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>new_slice_refcount
+: <a class="el" href="slice_8c.html#a58022d982381d1f2d8125f9f24e2e1ae">slice.c</a>
+</li>
+<li>new_with_len_slice_refcount
+: <a class="el" href="slice_8c.html#a07dd4d3601f8c54de26721289ba4d822">slice.c</a>
+</li>
+<li>NONE
+: <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fac157bdf0b85a40d2619cbc8bc1ae5fe2">stream_encoder.c</a>
+</li>
+<li>NOT_BINARY
+: <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a36e0cd08af8b9cec8a5ae17c6a5c5124">hpack_parser.c</a>
+</li>
+<li>NOT_STARTED
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5">server.c</a>
+</li>
+<li>NUM_CACHED_STATUS_ELEMS
+: <a class="el" href="channel_8c.html#a30ddfda40b473a077ff7c70a7687ddb1">channel.c</a>
+</li>
+<li>NUM_SHARDS
+: <a class="el" href="alarm_8c.html#abc8b3b06fc834d57a69ca6ed5e3dfe3e">alarm.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_o.html b/doc/ref/core.internal/html/globals_o.html
new file mode 100644
index 0000000000..4ba94223f7
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_o.html
@@ -0,0 +1,145 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>on_simulated_token_fetch_done()
+: <a class="el" href="credentials_8c.html#ac8aefd37c9b6f7639d730ea60960a9e7">credentials.c</a>
+</li>
+<li>ONE_ON_ADD_PROBABILITY
+: <a class="el" href="stream__encoder_8c.html#ad7f6bdf9db2a15a5e00cf3a6825d9957">stream_encoder.c</a>
+</li>
+<li>openssl_digest_from_algorithm()
+: <a class="el" href="json__token_8c.html#accf3a429c0f66a88d8df60b6dab3743f">json_token.c</a>
+</li>
+<li>OUTPUT_BLOCK_SIZE
+: <a class="el" href="message__compress_8c.html#a64fcbb2644c2b3d0dcdc23ac148dd553">message_compress.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_p.html b/doc/ref/core.internal/html/globals_p.html
new file mode 100644
index 0000000000..15508272f2
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_p.html
@@ -0,0 +1,154 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PENDING
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73">server.c</a>
+</li>
+<li>pending_pick
+: <a class="el" href="pick__first_8c.html#ad479509ed6c18dc54a54d231ec73a4e6">pick_first.c</a>
+</li>
+<li>pf_destroy()
+: <a class="el" href="pick__first_8c.html#ab2197438a4e2ecaee6327c0a642c5bb9">pick_first.c</a>
+</li>
+<li>pf_exit_idle()
+: <a class="el" href="pick__first_8c.html#a114522776c50c119fcb6eaa6241ee748">pick_first.c</a>
+</li>
+<li>pf_pick()
+: <a class="el" href="pick__first_8c.html#af15f282d4ed6e68ea1289e139c42db9a">pick_first.c</a>
+</li>
+<li>pf_shutdown()
+: <a class="el" href="pick__first_8c.html#a1592bd5626dae37b94c5a9d719beaf17">pick_first.c</a>
+</li>
+<li>PLAINTEXT_HEADER
+: <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea6b3fea68a44cbdbcd96fbdcf35d98a4c">hpack_parser.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_r.html b/doc/ref/core.internal/html/globals_r.html
new file mode 100644
index 0000000000..30214a2503
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_r.html
@@ -0,0 +1,202 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>read_state
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17">call.c</a>
+</li>
+<li>READ_STATE_GOT_INITIAL_METADATA
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a37370f960213dc0f115eb8495e038b2a">call.c</a>
+</li>
+<li>READ_STATE_INITIAL
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17ad2197f646af67a6d937754c3a1417439">call.c</a>
+</li>
+<li>READ_STATE_READ_CLOSED
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a9c7de87cb383873b75a6de98df2dc445">call.c</a>
+</li>
+<li>READ_STATE_STREAM_CLOSED
+: <a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17add056921b7a5dd24d85db716da87594a">call.c</a>
+</li>
+<li>REF_LOG
+: <a class="el" href="subchannel_8c.html#a12a25b2a728caf10ef93487e8a41896c">subchannel.c</a>
+</li>
+<li>REF_MD_LOCKED
+: <a class="el" href="metadata_8c.html#a5456b7d52304a8749ca71440bc7c2a0f">metadata.c</a>
+</li>
+<li>REF_PASS_ARGS
+: <a class="el" href="subchannel_8c.html#a8b6e7b7a1e9f2434b354c7bae2760ab0">subchannel.c</a>
+</li>
+<li>REF_TRANSPORT
+: <a class="el" href="chttp2__transport_8c.html#a14b095839f9792316e7aea2ab7a68bdc">chttp2_transport.c</a>
+</li>
+<li>registered_call
+: <a class="el" href="channel_8c.html#a52a88ba75481c926895932b8b05951c2">channel.c</a>
+</li>
+<li>REGISTERED_CALL
+: <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa969f2119db66590473c2fa7f00e21c5a">server.c</a>
+</li>
+<li>registered_method
+: <a class="el" href="server_8c.html#a6f8273ccf99ef212028d3488d579cf3b">server.c</a>
+</li>
+<li>REQ_DONE
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a9156fc9ac04c64171f05a5692a1356a9">call.c</a>
+</li>
+<li>REQ_INITIAL
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a6268d672744bde6005590a30c8189779">call.c</a>
+</li>
+<li>REQ_READY
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17a99044b02beb639fe667b1a5fcae61a96">call.c</a>
+</li>
+<li>req_state
+: <a class="el" href="call_8c.html#a54d1fff20be8e7414ba15f456824bb17">call.c</a>
+</li>
+<li>REQSET_DONE
+: <a class="el" href="call_8c.html#afa1b821bc0571d94c462688e3deeeafd">call.c</a>
+</li>
+<li>REQSET_EMPTY
+: <a class="el" href="call_8c.html#a7810380d8811f64f6167a7427f22beb4">call.c</a>
+</li>
+<li>request_matcher
+: <a class="el" href="server_8c.html#a7c5e0489837d1efdf2f3fdb7087b59d4">server.c</a>
+</li>
+<li>requested_call
+: <a class="el" href="server_8c.html#a9b3e4fcd769f2a62cbbbde867715ef2c">server.c</a>
+</li>
+<li>requested_call_type
+: <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a">server.c</a>
+</li>
+<li>ROTL32
+: <a class="el" href="murmur__hash_8c.html#aff6ce4cae0564b039bbb4ef0cbdc0032">murmur_hash.c</a>
+</li>
+<li>ROUND_UP_TO_ALIGNMENT_SIZE
+: <a class="el" href="channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1">channel_stack.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_s.html b/doc/ref/core.internal/html/globals_s.html
new file mode 100644
index 0000000000..2e68b75b36
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_s.html
@@ -0,0 +1,218 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>send_action
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819">call.c</a>
+</li>
+<li>SEND_BUFFERED_INITIAL_METADATA
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819aa0eea39729a5b7c862262626fbe3d352">call.c</a>
+</li>
+<li>SEND_BUFFERED_MESSAGE
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819ad0b19b54eb40a63af9f7d957ff717f6e">call.c</a>
+</li>
+<li>SEND_FINISH
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819addfb3ce4bfcd50ee7ec74608fb32f8ef">call.c</a>
+</li>
+<li>SEND_INITIAL_METADATA
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a7045eff04495ab507242e5da11bcb4ff">call.c</a>
+</li>
+<li>SEND_MESSAGE
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a5def54f3ec39f74661e1614669603d71">call.c</a>
+</li>
+<li>SEND_NOTHING
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819ad40596b21bcebc4654bb8da5c7469b01">call.c</a>
+</li>
+<li>SEND_TRAILING_METADATA_AND_FINISH
+: <a class="el" href="call_8c.html#a5c099cbc41809afd83d900cef74c2819a69a25d71b99a99c66c39696b038aa486">call.c</a>
+</li>
+<li>SERVER_FROM_CALL_ELEM
+: <a class="el" href="server_8c.html#ad74e7a97d516828e54c49eb3e4878da3">server.c</a>
+</li>
+<li>SHRINK_FULLNESS_FACTOR
+: <a class="el" href="alarm__heap_8c.html#ac5064e56882ef0a36524cae10ac800ce">alarm_heap.c</a>
+</li>
+<li>SHRINK_MIN_ELEMS
+: <a class="el" href="alarm__heap_8c.html#acea3d7e412eaa9246638bc218372f55e">alarm_heap.c</a>
+</li>
+<li>shutdown_tag
+: <a class="el" href="server_8c.html#a292b677b1a61ecd5c4608340fa647346">server.c</a>
+</li>
+<li>STAGING_BUFFER_SIZE
+: <a class="el" href="secure__endpoint_8c.html#a323532623f3183502482bb853c503353">secure_endpoint.c</a>
+</li>
+<li>STATUS_FROM_API_OVERRIDE
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271afd2f639169b914143f3b412ed1a2ef00">call.c</a>
+</li>
+<li>STATUS_FROM_CORE
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a48a145dfa9c97761d84d36131d27a72e">call.c</a>
+</li>
+<li>STATUS_FROM_SERVER_STATUS
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271aad4663967ed2d5b74e875954573b5c64">call.c</a>
+</li>
+<li>STATUS_FROM_WIRE
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a825b6688b57f66bdb07fef664aa8d569">call.c</a>
+</li>
+<li>STATUS_OFFSET
+: <a class="el" href="call_8c.html#ac3959778b8b4ee593c16fa33a06d844c">call.c</a>
+</li>
+<li>status_source
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271">call.c</a>
+</li>
+<li>STATUS_SOURCE_COUNT
+: <a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22">call.c</a>
+</li>
+<li>STREAM_FROM_GLOBAL
+: <a class="el" href="chttp2__transport_8c.html#ad226604f0f25167ab63b83fb504925ed">chttp2_transport.c</a>
+, <a class="el" href="stream__lists_8c.html#ad226604f0f25167ab63b83fb504925ed">stream_lists.c</a>
+</li>
+<li>STREAM_FROM_PARSING
+: <a class="el" href="stream__lists_8c.html#af36e6925c4b86e9bdea0abf8824d521e">stream_lists.c</a>
+</li>
+<li>STREAM_FROM_WRITING
+: <a class="el" href="stream__lists_8c.html#a168549253d875995f6454b6ac5f9250f">stream_lists.c</a>
+</li>
+<li>STREAM_LIST_COUNT
+: <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">internal.h</a>
+</li>
+<li>STRLEN_LIT
+: <a class="el" href="stream__encoder_8c.html#a4adf5996646225c1109095f57e5054c1">stream_encoder.c</a>
+</li>
+<li>SUBCHANNEL_CALL_TO_CALL_STACK
+: <a class="el" href="subchannel_8c.html#a6f8f2e93f13638c3344bed1c0a810a90">subchannel.c</a>
+</li>
+<li>SUBCHANNEL_REF_LOCKED
+: <a class="el" href="subchannel_8c.html#ad1c3bb13282f81c8384752ae3e2d74ad">subchannel.c</a>
+</li>
+<li>SUBCHANNEL_UNREF_LOCKED
+: <a class="el" href="subchannel_8c.html#ac827935703a637a3a74cb54936a49f25">subchannel.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_t.html b/doc/ref/core.internal/html/globals_t.html
new file mode 100644
index 0000000000..c9b3e8698b
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_t.html
@@ -0,0 +1,400 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>tcp_endpoint_list
+: <a class="el" href="server__secure__chttp2_8c.html#ac7944e456bcd1ed1ea7e112ee396e6aa">server_secure_chttp2.c</a>
+</li>
+<li>TIMEOUT_KEY
+: <a class="el" href="stream__encoder_8c.html#a730f13257408fd7a5a3d734f5399cba7">stream_encoder.c</a>
+</li>
+<li>TOP_BIT_OF_TYPE
+: <a class="el" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">time.c</a>
+</li>
+<li>tracer
+: <a class="el" href="trace_8c.html#aff327d037f1cb69bc5c5c25a73b63104">trace.c</a>
+</li>
+<li>TRANSPORT_FROM_GLOBAL
+: <a class="el" href="stream__lists_8c.html#a029ef12f8edec2cce810fc244777f39e">stream_lists.c</a>
+, <a class="el" href="chttp2__transport_8c.html#a029ef12f8edec2cce810fc244777f39e">chttp2_transport.c</a>
+</li>
+<li>TRANSPORT_FROM_PARSING
+: <a class="el" href="chttp2__transport_8c.html#a720ba3d4f39bd3a50eef94f3af02df26">chttp2_transport.c</a>
+, <a class="el" href="stream__lists_8c.html#a5d41409974a115e2721fe32cd1c1b8eb">stream_lists.c</a>
+</li>
+<li>TRANSPORT_FROM_WRITING
+: <a class="el" href="stream__lists_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba">stream_lists.c</a>
+, <a class="el" href="chttp2__transport_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba">chttp2_transport.c</a>
+</li>
+<li>TRANSPORT_STREAM_FROM_CALL_DATA
+: <a class="el" href="connected__channel_8c.html#a20fccb78f707f86985ab8dccc8f9ff68">connected_channel.c</a>
+</li>
+<li>TSI_CERTIFICATE_TYPE_PEER_PROPERTY
+: <a class="el" href="transport__security__interface_8h.html#ac1c4704b4f46d8db67be7d79cf9abee4">transport_security_interface.h</a>
+</li>
+<li>tsi_construct_allocated_string_peer_property()
+: <a class="el" href="transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a8a308346bff8f401be5fb4411995aafc">transport_security.c</a>
+</li>
+<li>tsi_construct_peer()
+: <a class="el" href="transport__security_8c.html#a08ce831015f22dfc2b0c9c324f4d3f68">transport_security.c</a>
+, <a class="el" href="transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68">transport_security.h</a>
+</li>
+<li>tsi_construct_string_peer_property()
+: <a class="el" href="transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a77bdd8a1373d9badafe0f9628d613ccb">transport_security.c</a>
+</li>
+<li>tsi_construct_string_peer_property_from_cstring()
+: <a class="el" href="transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a95d8643bd4378f9e648d5155a757ff3d">transport_security.c</a>
+</li>
+<li>tsi_create_fake_handshaker()
+: <a class="el" href="fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3">fake_transport_security.h</a>
+, <a class="el" href="fake__transport__security_8c.html#a7ce2a5356ae53a2f4686faa9f32910d3">fake_transport_security.c</a>
+</li>
+<li>tsi_create_fake_protector()
+: <a class="el" href="fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932">fake_transport_security.h</a>
+, <a class="el" href="fake__transport__security_8c.html#a6af0733aaa845a070d6d92e5d79e8932">fake_transport_security.c</a>
+</li>
+<li>tsi_create_ssl_client_handshaker_factory()
+: <a class="el" href="ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a74245460a2a17181e62578a3c9e3a566">ssl_transport_security.c</a>
+</li>
+<li>tsi_create_ssl_server_handshaker_factory()
+: <a class="el" href="ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a90c268a36d1837b23c08ec862b810b4d">ssl_transport_security.c</a>
+</li>
+<li>TSI_DATA_CORRUPTED
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54">transport_security_interface.h</a>
+</li>
+<li>TSI_FAILED_PRECONDITION
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe">transport_security_interface.h</a>
+</li>
+<li>TSI_FAKE_CERTIFICATE_TYPE
+: <a class="el" href="fake__transport__security_8h.html#ae0392587ca3b2c370e2d0b23bd3567dc">fake_transport_security.h</a>
+</li>
+<li>TSI_FAKE_CLIENT_FINISHED
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a8449ebdb0b21fe666efe134d8eb5af74">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_CLIENT_INIT
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a3eef9f8827f4892e807c2b0e1a9187f3">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_DEFAULT_FRAME_SIZE
+: <a class="el" href="fake__transport__security_8c.html#a5e80c442eaaca03f86cd1b2a1beea9f3">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_FRAME_HEADER_SIZE
+: <a class="el" href="fake__transport__security_8c.html#ad4e1e451d3d99c6805c489641d4934df">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_FRAME_INITIAL_ALLOCATED_SIZE
+: <a class="el" href="fake__transport__security_8c.html#a4faca44775d659e16993c11482a4a80e">fake_transport_security.c</a>
+</li>
+<li>tsi_fake_handshake_message
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_HANDSHAKE_MESSAGE_MAX
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52adf08f2bf334a78ccee66b203a08b6e7b">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_SERVER_FINISHED
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52abf558a770548cdab6e4716e7f30ac641">fake_transport_security.c</a>
+</li>
+<li>TSI_FAKE_SERVER_INIT
+: <a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a062ff4e0c7cb1b8894dbd5d633f4e5bb">fake_transport_security.c</a>
+</li>
+<li>tsi_frame_protector
+: <a class="el" href="transport__security__interface_8h.html#a39ae4fe62f4ebc278c7738d6eda50dc8">transport_security_interface.h</a>
+</li>
+<li>tsi_frame_protector_destroy()
+: <a class="el" href="transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#adfd6e29ec9ee51f095a2fd73bbc222f9">transport_security.c</a>
+</li>
+<li>tsi_frame_protector_protect()
+: <a class="el" href="transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">transport_security.c</a>
+</li>
+<li>tsi_frame_protector_protect_flush()
+: <a class="el" href="transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a97f093ea9700617a4bd64846e1040e10">transport_security.c</a>
+</li>
+<li>tsi_frame_protector_unprotect()
+: <a class="el" href="transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#af7379ce84c820020001fd1538135f45f">transport_security.c</a>
+</li>
+<li>TSI_HANDSHAKE_IN_PROGRESS
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">transport_security_interface.h</a>
+</li>
+<li>tsi_handshaker
+: <a class="el" href="transport__security__interface_8h.html#a37dc2869b4b8fbc2347d4e37a7f7a971">transport_security_interface.h</a>
+</li>
+<li>tsi_handshaker_create_frame_protector()
+: <a class="el" href="transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a332227aadf03c58b8ee4089f6f87bde6">transport_security.c</a>
+</li>
+<li>tsi_handshaker_destroy()
+: <a class="el" href="transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#aa86ebc2ea2967a18ff5c6007bb80e28d">transport_security.c</a>
+</li>
+<li>tsi_handshaker_extract_peer()
+: <a class="el" href="transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#acf71ef6d2d7c6934ba7252195fb866be">transport_security.c</a>
+</li>
+<li>tsi_handshaker_get_bytes_to_send_to_peer()
+: <a class="el" href="transport__security_8c.html#a29d1896a9b936a8bd534902bfc074e35">transport_security.c</a>
+, <a class="el" href="transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35">transport_security_interface.h</a>
+</li>
+<li>tsi_handshaker_get_result()
+: <a class="el" href="transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#ac41531015167b3ac51aa5e201189701e">transport_security.c</a>
+</li>
+<li>tsi_handshaker_is_in_progress
+: <a class="el" href="transport__security__interface_8h.html#a08a4eb400e7769528cf47bf38542010c">transport_security_interface.h</a>
+</li>
+<li>tsi_handshaker_process_bytes_from_peer()
+: <a class="el" href="transport__security_8c.html#add638c90585ef6e5e4418c35a7df9fa0">transport_security.c</a>
+, <a class="el" href="transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0">transport_security_interface.h</a>
+</li>
+<li>TSI_INCOMPLETE_DATA
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e">transport_security_interface.h</a>
+</li>
+<li>tsi_init_peer_property()
+: <a class="el" href="transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">transport_security.c</a>
+</li>
+<li>TSI_INTERNAL_ERROR
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34">transport_security_interface.h</a>
+</li>
+<li>TSI_INVALID_ARGUMENT
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada">transport_security_interface.h</a>
+</li>
+<li>TSI_NOT_FOUND
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6">transport_security_interface.h</a>
+</li>
+<li>TSI_OK
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d">transport_security_interface.h</a>
+</li>
+<li>TSI_OPENSSL_ALPN_SUPPORT
+: <a class="el" href="ssl__transport__security_8c.html#a6ddfac76c84308f6f7525adccea25b50">ssl_transport_security.c</a>
+</li>
+<li>TSI_OUT_OF_RESOURCES
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519">transport_security_interface.h</a>
+</li>
+<li>tsi_peer_destruct()
+: <a class="el" href="transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a2c4bbdf32c13cf926aa28dc464a6f467">transport_security.c</a>
+</li>
+<li>tsi_peer_get_property_by_name()
+: <a class="el" href="security__connector_8c.html#a4e8c8c71595e5af0861880070356ce66">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66">security_connector.h</a>
+</li>
+<li>tsi_peer_property
+: <a class="el" href="transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be">transport_security_interface.h</a>
+</li>
+<li>tsi_peer_property_destruct()
+: <a class="el" href="transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a83e56daafef9ce0d55873f2c63940819">transport_security.c</a>
+</li>
+<li>TSI_PERMISSION_DENIED
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906">transport_security_interface.h</a>
+</li>
+<li>TSI_PROTOCOL_FAILURE
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a">transport_security_interface.h</a>
+</li>
+<li>tsi_result
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">transport_security_interface.h</a>
+</li>
+<li>tsi_result_to_string()
+: <a class="el" href="transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#aaee2576c8d1108c2f28b78bcf5f85964">transport_security.c</a>
+</li>
+<li>TSI_SSL_ALPN_SELECTED_PROTOCOL
+: <a class="el" href="ssl__transport__security_8h.html#a7772b205a40f5d0e6bf613f666df70fa">ssl_transport_security.h</a>
+</li>
+<li>tsi_ssl_handshaker_factory
+: <a class="el" href="ssl__transport__security_8h.html#a33648ab82d52fddf97cd254ab14cad32">ssl_transport_security.h</a>
+</li>
+<li>tsi_ssl_handshaker_factory_create_handshaker()
+: <a class="el" href="ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a640862c021958b7cc4e841d5842b3142">ssl_transport_security.c</a>
+</li>
+<li>tsi_ssl_handshaker_factory_destroy()
+: <a class="el" href="ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a55e5ff567c916f396a960d9ba259fd5b">ssl_transport_security.c</a>
+</li>
+<li>TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND
+: <a class="el" href="ssl__transport__security_8c.html#a57f67839c0d50a95afa6b14b8917b7ba">ssl_transport_security.c</a>
+</li>
+<li>TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND
+: <a class="el" href="ssl__transport__security_8c.html#afce1f5cc8a28bd1d4cea273bb2b5f5d8">ssl_transport_security.c</a>
+</li>
+<li>TSI_SSL_MAX_PROTECTION_OVERHEAD
+: <a class="el" href="ssl__transport__security_8c.html#ac62522a33798b7b5bb434e1b8e49974f">ssl_transport_security.c</a>
+</li>
+<li>tsi_ssl_peer_matches_name()
+: <a class="el" href="ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647">ssl_transport_security.h</a>
+, <a class="el" href="ssl__transport__security_8c.html#a22edee478b3473e184d77d74c13d9647">ssl_transport_security.c</a>
+</li>
+<li>tsi_ssl_peer_to_auth_context()
+: <a class="el" href="security__connector_8c.html#a12dbc067a07c36d5219ba31f5dffc8c6">security_connector.c</a>
+, <a class="el" href="security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6">security_connector.h</a>
+</li>
+<li>tsi_strdup()
+: <a class="el" href="transport__security_8c.html#a4db31a671b7e77b6ecd14af773154c72">transport_security.c</a>
+, <a class="el" href="transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72">transport_security.h</a>
+</li>
+<li>tsi_tracing_enabled
+: <a class="el" href="transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8h.html#a4e3d547c54325370492151543325e23c">transport_security.h</a>
+, <a class="el" href="transport__security_8c.html#a4e3d547c54325370492151543325e23c">transport_security.c</a>
+</li>
+<li>TSI_UNIMPLEMENTED
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e">transport_security_interface.h</a>
+</li>
+<li>TSI_UNKNOWN_ERROR
+: <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe">transport_security_interface.h</a>
+</li>
+<li>TSI_X509_CERTIFICATE_TYPE
+: <a class="el" href="ssl__transport__security_8h.html#a394dce2eccd1a35e54ea94ed19b95a7c">ssl_transport_security.h</a>
+</li>
+<li>TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY
+: <a class="el" href="ssl__transport__security_8h.html#a64e0648b7d1eec9671f01aa79f508c0f">ssl_transport_security.h</a>
+</li>
+<li>TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY
+: <a class="el" href="ssl__transport__security_8h.html#a3015d52d16728b0e28f354217fbb6296">ssl_transport_security.h</a>
+</li>
+<li>TYPE_IS_SIGNED
+: <a class="el" href="time_8c.html#aee5df4784512f172739646babf8fa13d">time.c</a>
+</li>
+<li>TYPE_MAX
+: <a class="el" href="time_8c.html#a87353338032e1f56c958d981731f8378">time.c</a>
+</li>
+<li>TYPE_MIN
+: <a class="el" href="time_8c.html#ad5b4c36b3633abe2c68f8b4ab3c7de8c">time.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_type.html b/doc/ref/core.internal/html/globals_type.html
new file mode 100644
index 0000000000..1beccccfdd
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_type.html
@@ -0,0 +1,657 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li class="current"><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="#index_a"><span>a</span></a></li>
+ <li><a href="#index_c"><span>c</span></a></li>
+ <li><a href="#index_g"><span>g</span></a></li>
+ <li><a href="#index_i"><span>i</span></a></li>
+ <li><a href="#index_l"><span>l</span></a></li>
+ <li><a href="#index_n"><span>n</span></a></li>
+ <li><a href="#index_p"><span>p</span></a></li>
+ <li><a href="#index_r"><span>r</span></a></li>
+ <li><a href="#index_s"><span>s</span></a></li>
+ <li><a href="#index_t"><span>t</span></a></li>
+ <li class="current"><a href="#index_w"><span>w</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>arg
+: <a class="el" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">cmdline.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>call_data
+: <a class="el" href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">server_auth_filter.c</a>
+, <a class="el" href="client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">client_channel.c</a>
+, <a class="el" href="connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889">connected_channel.c</a>
+, <a class="el" href="server_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">server.c</a>
+, <a class="el" href="http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">http_client_filter.c</a>
+, <a class="el" href="compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">compress_filter.c</a>
+, <a class="el" href="http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">http_server_filter.c</a>
+, <a class="el" href="noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">noop_filter.c</a>
+</li>
+<li>census_context
+: <a class="el" href="census_8h.html#a27fc8788690179599713226f1f054736">census.h</a>
+</li>
+<li>channel_data
+: <a class="el" href="server__auth__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">server_auth_filter.c</a>
+, <a class="el" href="server_8c.html#a663530098451ca6ac5dd8381e470b512">server.c</a>
+, <a class="el" href="connected__channel_8c.html#a43362118345c9bbd8b75103f9854a69d">connected_channel.c</a>
+, <a class="el" href="http__client__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">http_client_filter.c</a>
+, <a class="el" href="compress__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">compress_filter.c</a>
+, <a class="el" href="http__server__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">http_server_filter.c</a>
+, <a class="el" href="noop__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">noop_filter.c</a>
+</li>
+<li>channel_registered_method
+: <a class="el" href="server_8c.html#a47b693eb517ae870b0243f6c7be3541f">server.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>gpr_atm
+: <a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">atm_gcc_atomic.h</a>
+, <a class="el" href="atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc">atm_gcc_sync.h</a>
+, <a class="el" href="atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc">atm_win32.h</a>
+</li>
+<li>gpr_cmdline
+: <a class="el" href="cmdline_8h.html#aaad93cd9bfc32c54fc89f7c2f3b74eb6">cmdline.h</a>
+</li>
+<li>gpr_cv
+: <a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">sync_posix.h</a>
+, <a class="el" href="sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d">sync_win32.h</a>
+</li>
+<li>gpr_histogram
+: <a class="el" href="histogram_8h.html#a7125b0cef0e61a441a17f887dbc073fc">histogram.h</a>
+</li>
+<li>gpr_int16
+: <a class="el" href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709">port_platform.h</a>
+</li>
+<li>gpr_int32
+: <a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">port_platform.h</a>
+</li>
+<li>gpr_int64
+: <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">port_platform.h</a>
+</li>
+<li>gpr_intmax
+: <a class="el" href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139">port_platform.h</a>
+</li>
+<li>gpr_intptr
+: <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">port_platform.h</a>
+</li>
+<li>gpr_log_func
+: <a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">log.h</a>
+</li>
+<li>gpr_log_severity
+: <a class="el" href="log_8h.html#ad49303346a78cf4881129958214fde8d">log.h</a>
+</li>
+<li>gpr_mu
+: <a class="el" href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">sync_posix.h</a>
+</li>
+<li>gpr_once
+: <a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">sync_posix.h</a>
+, <a class="el" href="sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13">sync_win32.h</a>
+</li>
+<li>gpr_slice
+: <a class="el" href="slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c">slice.h</a>
+</li>
+<li>gpr_slice_refcount
+: <a class="el" href="slice_8h.html#af8841873e741f6cf38b2192147ea4f3e">slice.h</a>
+</li>
+<li>gpr_stack_lockfree
+: <a class="el" href="stack__lockfree_8h.html#a66ea3d52c0bac00af25057468bbd8465">stack_lockfree.h</a>
+</li>
+<li>gpr_subprocess
+: <a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">subprocess.h</a>
+</li>
+<li>gpr_thd_id
+: <a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">thd.h</a>
+</li>
+<li>gpr_timespec
+: <a class="el" href="time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45">time.h</a>
+</li>
+<li>gpr_uint16
+: <a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">port_platform.h</a>
+</li>
+<li>gpr_uint32
+: <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">port_platform.h</a>
+</li>
+<li>gpr_uint64
+: <a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">port_platform.h</a>
+</li>
+<li>gpr_uint8
+: <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">port_platform.h</a>
+</li>
+<li>gpr_uintmax
+: <a class="el" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">port_platform.h</a>
+</li>
+<li>gpr_uintptr
+: <a class="el" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">port_platform.h</a>
+</li>
+<li>grpc_alarm
+: <a class="el" href="alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea">alarm.h</a>
+</li>
+<li>grpc_auth_context
+: <a class="el" href="grpc__security_8h.html#aa13f0724cb7ff99995d7f0881c01d553">grpc_security.h</a>
+</li>
+<li>grpc_auth_property
+: <a class="el" href="grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429">grpc_security.h</a>
+</li>
+<li>grpc_auth_property_iterator
+: <a class="el" href="grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf">grpc_security.h</a>
+</li>
+<li>grpc_begin_message
+: <a class="el" href="stream__op_8h.html#a6d154e209d826dcf514850c6724d3596">stream_op.h</a>
+</li>
+<li>grpc_byte_buffer
+: <a class="el" href="byte__buffer_8h.html#a670951ae03b0a2dc4e50f4e25160fc2e">byte_buffer.h</a>
+</li>
+<li>grpc_byte_buffer_reader
+: <a class="el" href="byte__buffer_8h.html#a16143f22ea46cc7fa6b53e6cb30715f1">byte_buffer.h</a>
+</li>
+<li>grpc_call
+: <a class="el" href="grpc_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc.h</a>
+</li>
+<li>grpc_call_element
+: <a class="el" href="channel__stack_8h.html#ad4b0603b98c350dc4bfdcc2ba95d5401">channel_stack.h</a>
+</li>
+<li>grpc_call_error
+: <a class="el" href="grpc_8h.html#abb51216cb5ac1cfd8ca4d096e060adbb">grpc.h</a>
+</li>
+<li>grpc_channel
+: <a class="el" href="grpc_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc.h</a>
+</li>
+<li>grpc_channel_element
+: <a class="el" href="channel__stack_8h.html#aea7892e6dfe1fbf098a7d6deea46d4ca">channel_stack.h</a>
+</li>
+<li>grpc_channel_security_connector
+: <a class="el" href="security__connector_8h.html#afbebb4c120eeea2ad96953aae5f656ec">security_connector.h</a>
+</li>
+<li>grpc_chttp2_hpack_parser
+: <a class="el" href="hpack__parser_8h.html#ae66f95f470e6a67afa580dd7d1d3d39b">hpack_parser.h</a>
+</li>
+<li>grpc_chttp2_hpack_parser_state
+: <a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">hpack_parser.h</a>
+</li>
+<li>grpc_chttp2_outstanding_ping
+: <a class="el" href="internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591">internal.h</a>
+</li>
+<li>grpc_chttp2_stream
+: <a class="el" href="internal_8h.html#a50089f57f93d9eb16569dd3b63f879d1">internal.h</a>
+</li>
+<li>grpc_chttp2_stream_parsing
+: <a class="el" href="frame_8h.html#a67486ee57e3d27c619df98c80420f421">frame.h</a>
+</li>
+<li>grpc_chttp2_transport
+: <a class="el" href="internal_8h.html#a83a9a1c265dc0fede61598c7cd1aaec2">internal.h</a>
+</li>
+<li>grpc_chttp2_transport_parsing
+: <a class="el" href="frame_8h.html#a736ee44646a381e8119085a7803c20bc">frame.h</a>
+</li>
+<li>grpc_client_config
+: <a class="el" href="client__config_8h.html#a5c92ac9b2893cfe73b5be84ddc10367c">client_config.h</a>
+</li>
+<li>grpc_completion_queue
+: <a class="el" href="grpc_8h.html#a895faab0e6035445750e43482651ba2f">grpc.h</a>
+</li>
+<li>grpc_completion_type
+: <a class="el" href="grpc_8h.html#a70454b2958c92c1cd8feeaa45f157b74">grpc.h</a>
+</li>
+<li>grpc_connectivity_state_watcher
+: <a class="el" href="connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a">connectivity_state.h</a>
+</li>
+<li>grpc_connector
+: <a class="el" href="connector_8h.html#aae174ab59659a89b5e73c565023961bb">connector.h</a>
+</li>
+<li>grpc_connector_vtable
+: <a class="el" href="connector_8h.html#add8d7e9bf9a65c5580489f9af7951bec">connector.h</a>
+</li>
+<li>grpc_cq_completion
+: <a class="el" href="completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014">completion_queue.h</a>
+</li>
+<li>grpc_credentials
+: <a class="el" href="grpc__security_8h.html#a17768c857575e4500cdd12bb94d3f33e">grpc_security.h</a>
+</li>
+<li>grpc_credentials_metadata_cb
+: <a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">credentials.h</a>
+</li>
+<li>grpc_credentials_metadata_request
+: <a class="el" href="credentials_8h.html#ad254566b74763fc0ae17e07b230c862b">credentials.h</a>
+</li>
+<li>grpc_dualstack_mode
+: <a class="el" href="socket__utils__posix_8h.html#a0d07cbe9b082267d5436905dedf86b91">socket_utils_posix.h</a>
+</li>
+<li>grpc_endpoint
+: <a class="el" href="endpoint_8h.html#ab0f168d17277b4b5a4d7842eec6ea3ea">endpoint.h</a>
+</li>
+<li>grpc_endpoint_cb_status
+: <a class="el" href="endpoint_8h.html#ae601d949fd51e619ee5312bc2d733236">endpoint.h</a>
+</li>
+<li>grpc_endpoint_read_cb
+: <a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">endpoint.h</a>
+</li>
+<li>grpc_endpoint_vtable
+: <a class="el" href="endpoint_8h.html#accd077025fc138a98e048238d2efe1b9">endpoint.h</a>
+</li>
+<li>grpc_endpoint_write_cb
+: <a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">endpoint.h</a>
+</li>
+<li>grpc_endpoint_write_status
+: <a class="el" href="endpoint_8h.html#ae5e35fd14127beb3af459a22d81ac1fd">endpoint.h</a>
+</li>
+<li>grpc_event
+: <a class="el" href="grpc_8h.html#a07990645ca218f6965fd83edf3f421b7">grpc.h</a>
+</li>
+<li>grpc_fd
+: <a class="el" href="fd__posix_8h.html#a9f8a2791dbd9811a996395c3b466509d">fd_posix.h</a>
+</li>
+<li>grpc_fd_watcher
+: <a class="el" href="fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233">fd_posix.h</a>
+</li>
+<li>grpc_fetch_oauth2_func
+: <a class="el" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">credentials.h</a>
+</li>
+<li>grpc_httpcli_context
+: <a class="el" href="httpcli_8h.html#aacb6a69953113d6b548366871b884345">httpcli.h</a>
+</li>
+<li>grpc_httpcli_get_override
+: <a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">httpcli.h</a>
+</li>
+<li>grpc_httpcli_header
+: <a class="el" href="httpcli_8h.html#a3b84c74398894ce993b1e32daf468575">httpcli.h</a>
+</li>
+<li>grpc_httpcli_post_override
+: <a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">httpcli.h</a>
+</li>
+<li>grpc_httpcli_request
+: <a class="el" href="httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79">httpcli.h</a>
+</li>
+<li>grpc_httpcli_response
+: <a class="el" href="httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0">httpcli.h</a>
+</li>
+<li>grpc_httpcli_response_cb
+: <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">httpcli.h</a>
+</li>
+<li>grpc_iomgr_cb_func
+: <a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">iomgr.h</a>
+</li>
+<li>grpc_iomgr_closure
+: <a class="el" href="iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87">iomgr.h</a>
+</li>
+<li>grpc_iomgr_object
+: <a class="el" href="iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814">iomgr_internal.h</a>
+</li>
+<li>grpc_ioreq_completion_func
+: <a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">call.h</a>
+</li>
+<li>grpc_json
+: <a class="el" href="json_8h.html#ae8825a1aedd3c601c1db76275b0091eb">json.h</a>
+</li>
+<li>grpc_json_reader
+: <a class="el" href="json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929">json_reader.h</a>
+</li>
+<li>grpc_json_reader_vtable
+: <a class="el" href="json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2">json_reader.h</a>
+</li>
+<li>grpc_json_writer
+: <a class="el" href="json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9">json_writer.h</a>
+</li>
+<li>grpc_json_writer_vtable
+: <a class="el" href="json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51">json_writer.h</a>
+</li>
+<li>grpc_jwt_claims
+: <a class="el" href="jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_encode_and_sign_override
+: <a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">json_token.h</a>
+</li>
+<li>grpc_jwt_verification_done_cb
+: <a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">jwt_verifier.h</a>
+</li>
+<li>grpc_jwt_verifier
+: <a class="el" href="jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0">jwt_verifier.h</a>
+</li>
+<li>grpc_kick_fd_info
+: <a class="el" href="pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5">pollset_kick_posix.h</a>
+</li>
+<li>grpc_lb_completion
+: <a class="el" href="lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy
+: <a class="el" href="lb__policy_8h.html#aa2bf7da355b0faa3fe532f83899e3e2c">lb_policy.h</a>
+</li>
+<li>grpc_lb_policy_vtable
+: <a class="el" href="lb__policy_8h.html#a3319e96c3d9a520883e74ddf112f7fd2">lb_policy.h</a>
+</li>
+<li>grpc_linked_mdelem
+: <a class="el" href="stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2">stream_op.h</a>
+</li>
+<li>grpc_mdctx
+: <a class="el" href="metadata_8h.html#a3d670d2ea84f975e9ff4758ceaf0742d">metadata.h</a>
+</li>
+<li>grpc_mdelem
+: <a class="el" href="metadata_8h.html#a90dde22c13b91f78568735a7f666992e">metadata.h</a>
+</li>
+<li>grpc_mdelem_list
+: <a class="el" href="stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2">stream_op.h</a>
+</li>
+<li>grpc_mdstr
+: <a class="el" href="metadata_8h.html#a37a4eca36e6506776f4c60c598dd01f5">metadata.h</a>
+</li>
+<li>grpc_metadata
+: <a class="el" href="grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b">grpc.h</a>
+</li>
+<li>grpc_metadata_batch
+: <a class="el" href="stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410">stream_op.h</a>
+</li>
+<li>grpc_op
+: <a class="el" href="grpc_8h.html#a6556a58ca45ad5132b89c770cf875215">grpc.h</a>
+</li>
+<li>grpc_platform_become_multipoller_type
+: <a class="el" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">pollset_posix.h</a>
+</li>
+<li>grpc_pollset
+: <a class="el" href="pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad">pollset_windows.h</a>
+, <a class="el" href="pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad">pollset_posix.h</a>
+</li>
+<li>grpc_pollset_kick_state
+: <a class="el" href="pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1">pollset_kick_posix.h</a>
+</li>
+<li>grpc_pollset_set
+: <a class="el" href="pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">pollset_set_posix.h</a>
+, <a class="el" href="pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">pollset_set_windows.h</a>
+</li>
+<li>grpc_pollset_vtable
+: <a class="el" href="pollset__posix_8h.html#a93b9c2aef29b7ffe733779b8d4c32db1">pollset_posix.h</a>
+</li>
+<li>grpc_precise_clock
+: <a class="el" href="timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2">timers_preciseclock.h</a>
+</li>
+<li>grpc_resolve_cb
+: <a class="el" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">resolve_address.h</a>
+</li>
+<li>grpc_resolver
+: <a class="el" href="resolver_8h.html#ab98013b9b8e8c28771dc39013667f2b3">resolver.h</a>
+</li>
+<li>grpc_resolver_factory
+: <a class="el" href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2">resolver_factory.h</a>
+</li>
+<li>grpc_resolver_factory_vtable
+: <a class="el" href="resolver__factory_8h.html#abf04e4004b01653a0274a3a0d175ab1b">resolver_factory.h</a>
+</li>
+<li>grpc_resolver_vtable
+: <a class="el" href="resolver_8h.html#aa9af03422b3cea75b4dae7725beab911">resolver.h</a>
+</li>
+<li>grpc_secure_transport_setup_done_cb
+: <a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">secure_transport_setup.h</a>
+</li>
+<li>grpc_security_check_cb
+: <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">security_connector.h</a>
+</li>
+<li>grpc_security_connector
+: <a class="el" href="security__connector_8h.html#a243897cc56b3cff21887ba4c53e52539">security_connector.h</a>
+</li>
+<li>grpc_server
+: <a class="el" href="grpc_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc.h</a>
+</li>
+<li>grpc_server_credentials
+: <a class="el" href="grpc__security_8h.html#aa724192e56fdc03827846f16752deccc">grpc_security.h</a>
+</li>
+<li>grpc_server_secure_state
+: <a class="el" href="server__secure__chttp2_8c.html#a5867481af652d517f32b61834205f2b0">server_secure_chttp2.c</a>
+</li>
+<li>grpc_stream
+: <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">transport.h</a>
+</li>
+<li>grpc_stream_op
+: <a class="el" href="stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127">stream_op.h</a>
+</li>
+<li>grpc_stream_op_buffer
+: <a class="el" href="stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5">stream_op.h</a>
+</li>
+<li>grpc_stream_op_code
+: <a class="el" href="stream__op_8h.html#aae7f77961eb1741340666865ab0c5fc7">stream_op.h</a>
+</li>
+<li>grpc_stream_state
+: <a class="el" href="transport_8h.html#ad2bffd8c4adc3f1131752a17710d8477">transport.h</a>
+</li>
+<li>grpc_subchannel
+: <a class="el" href="subchannel_8h.html#a6d36bd247fd79f7c8a2788d04f622a06">subchannel.h</a>
+</li>
+<li>grpc_subchannel_args
+: <a class="el" href="subchannel_8h.html#a1ef8f51fcaea0bb29010f164b4429a55">subchannel.h</a>
+</li>
+<li>grpc_subchannel_call
+: <a class="el" href="subchannel_8h.html#a007a93252a4a76631336ab840c18ee7d">subchannel.h</a>
+</li>
+<li>grpc_subchannel_factory
+: <a class="el" href="subchannel__factory_8h.html#a0881f059aa8f26e71eb479eed9d06785">subchannel_factory.h</a>
+</li>
+<li>grpc_subchannel_factory_vtable
+: <a class="el" href="subchannel__factory_8h.html#a032cc20ff8747dbc985aa2b85b8f7abf">subchannel_factory.h</a>
+</li>
+<li>grpc_tcp_server
+: <a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">tcp_server.h</a>
+</li>
+<li>grpc_tcp_server_cb
+: <a class="el" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">tcp_server.h</a>
+</li>
+<li>grpc_transport
+: <a class="el" href="transport_8h.html#a7ba3f709ee3b451e434c67acf7fb7451">transport.h</a>
+</li>
+<li>grpc_transport_op
+: <a class="el" href="transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf">transport.h</a>
+</li>
+<li>grpc_transport_stream_op
+: <a class="el" href="transport_8h.html#a425321242c0f56ca08e74a4afcbdd017">transport.h</a>
+</li>
+<li>grpc_transport_vtable
+: <a class="el" href="transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed">transport_impl.h</a>
+</li>
+<li>grpc_wakeup_fd_info
+: <a class="el" href="wakeup__fd__posix_8h.html#a5b7e6c1bff52dd231ecb17a6716c3815">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_wakeup_fd_vtable
+: <a class="el" href="wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_winsocket
+: <a class="el" href="socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a">socket_windows.h</a>
+</li>
+<li>grpc_winsocket_callback_info
+: <a class="el" href="socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc">socket_windows.h</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>internal_metadata
+: <a class="el" href="metadata_8c.html#a5de9c52bec44c8dd9a46d9575c4336ed">metadata.c</a>
+</li>
+<li>internal_string
+: <a class="el" href="metadata_8c.html#ac4804488e22d084fbaf91101dab8c1ee">metadata.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>listener
+: <a class="el" href="server_8c.html#a0a81ac863a31441ba5e8e2fc6be04f2c">server.c</a>
+</li>
+<li>lockfree_node
+: <a class="el" href="stack__lockfree_8c.html#a64e6ad783031985682ffda6b0c912bb6">stack_lockfree.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>new_slice_refcount
+: <a class="el" href="slice_8c.html#a58022d982381d1f2d8125f9f24e2e1ae">slice.c</a>
+</li>
+<li>new_with_len_slice_refcount
+: <a class="el" href="slice_8c.html#a07dd4d3601f8c54de26721289ba4d822">slice.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>pending_pick
+: <a class="el" href="pick__first_8c.html#ad479509ed6c18dc54a54d231ec73a4e6">pick_first.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>registered_call
+: <a class="el" href="channel_8c.html#a52a88ba75481c926895932b8b05951c2">channel.c</a>
+</li>
+<li>registered_method
+: <a class="el" href="server_8c.html#a6f8273ccf99ef212028d3488d579cf3b">server.c</a>
+</li>
+<li>request_matcher
+: <a class="el" href="server_8c.html#a7c5e0489837d1efdf2f3fdb7087b59d4">server.c</a>
+</li>
+<li>requested_call
+: <a class="el" href="server_8c.html#a9b3e4fcd769f2a62cbbbde867715ef2c">server.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>shutdown_tag
+: <a class="el" href="server_8c.html#a292b677b1a61ecd5c4608340fa647346">server.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>tcp_endpoint_list
+: <a class="el" href="server__secure__chttp2_8c.html#ac7944e456bcd1ed1ea7e112ee396e6aa">server_secure_chttp2.c</a>
+</li>
+<li>tracer
+: <a class="el" href="trace_8c.html#aff327d037f1cb69bc5c5c25a73b63104">trace.c</a>
+</li>
+<li>tsi_frame_protector
+: <a class="el" href="transport__security__interface_8h.html#a39ae4fe62f4ebc278c7738d6eda50dc8">transport_security_interface.h</a>
+</li>
+<li>tsi_handshaker
+: <a class="el" href="transport__security__interface_8h.html#a37dc2869b4b8fbc2347d4e37a7f7a971">transport_security_interface.h</a>
+</li>
+<li>tsi_peer_property
+: <a class="el" href="transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be">transport_security_interface.h</a>
+</li>
+<li>tsi_ssl_handshaker_factory
+: <a class="el" href="ssl__transport__security_8h.html#a33648ab82d52fddf97cd254ab14cad32">ssl_transport_security.h</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>waiting_for_connect
+: <a class="el" href="subchannel_8c.html#a5c5a0a02a82c51b4df27922770a17516">subchannel.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_u.html b/doc/ref/core.internal/html/globals_u.html
new file mode 100644
index 0000000000..3b34de8859
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_u.html
@@ -0,0 +1,142 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>UNBOUND_JSON_STRING_LENGTH
+: <a class="el" href="json__string_8c.html#a1cb2ee1031195d596402be8c2c7e8065">json_string.c</a>
+</li>
+<li>UNREF_LOG
+: <a class="el" href="subchannel_8c.html#a113001b9e3c0ff95ddc62508d3abddaa">subchannel.c</a>
+</li>
+<li>UNREF_TRANSPORT
+: <a class="el" href="chttp2__transport_8c.html#a2a872dae5a8d3799232cbae46e1ed133">chttp2_transport.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_v.html b/doc/ref/core.internal/html/globals_v.html
new file mode 100644
index 0000000000..8206b2c194
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_v.html
@@ -0,0 +1,139 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li class="current"><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>value
+: <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">hpack_table.c</a>
+</li>
+<li>verifier_cb_ctx_destroy()
+: <a class="el" href="jwt__verifier_8c.html#a6abd17abf83cb50196792f26f82ddb47">jwt_verifier.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_vars.html b/doc/ref/core.internal/html/globals_vars.html
new file mode 100644
index 0000000000..1e20e21f25
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_vars.html
@@ -0,0 +1,240 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li class="current"><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="#index_g"><span>g</span></a></li>
+ <li><a href="#index_k"><span>k</span></a></li>
+ <li><a href="#index_t"><span>t</span></a></li>
+ <li class="current"><a href="#index_v"><span>v</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>grpc_chttp2_huffsyms
+: <a class="el" href="huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c">huffsyms.h</a>
+, <a class="el" href="huffsyms_8c.html#a8cbea7cb59b983d744943eab38e8d55f">huffsyms.c</a>
+</li>
+<li>grpc_chttp2_settings_parameters
+: <a class="el" href="frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37">frame_settings.h</a>
+, <a class="el" href="frame__settings_8c.html#a61e84df9b71280ea1a733437d9de8f37">frame_settings.c</a>
+</li>
+<li>grpc_client_auth_filter
+: <a class="el" href="auth__filters_8h.html#ab5f3c640585f742a46197f407218c194">auth_filters.h</a>
+, <a class="el" href="client__auth__filter_8c.html#ab5f3c640585f742a46197f407218c194">client_auth_filter.c</a>
+</li>
+<li>grpc_client_census_filter
+: <a class="el" href="census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4">census_filter.h</a>
+</li>
+<li>grpc_client_channel_filter
+: <a class="el" href="client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1">client_channel.h</a>
+, <a class="el" href="client__channel_8c.html#a8c2292b3b1d26b9c4c296c106bfa96b1">client_channel.c</a>
+</li>
+<li>grpc_compress_filter
+: <a class="el" href="compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88">compress_filter.h</a>
+, <a class="el" href="compress__filter_8c.html#a6e0ba3e22587af99125faa43ee943c88">compress_filter.c</a>
+</li>
+<li>grpc_connected_channel_filter
+: <a class="el" href="connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39">connected_channel.h</a>
+, <a class="el" href="connected__channel_8c.html#a30c8116a24cf1e555af53c1296d10b39">connected_channel.c</a>
+</li>
+<li>grpc_connectivity_state_trace
+: <a class="el" href="connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c">connectivity_state.h</a>
+, <a class="el" href="connectivity__state_8c.html#aae556e492df3eb9d23c5bc5728b6662c">connectivity_state.c</a>
+</li>
+<li>grpc_flowctl_trace
+: <a class="el" href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">internal.h</a>
+, <a class="el" href="chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#afd0f83d780e8ddeac885163c45aab0a8">chttp2_transport.c</a>
+</li>
+<li>grpc_forbid_dualstack_sockets_for_testing
+: <a class="el" href="socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757">socket_utils_posix.h</a>
+</li>
+<li>grpc_http_client_filter
+: <a class="el" href="http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324">http_client_filter.h</a>
+, <a class="el" href="http__client__filter_8c.html#a0c9d14fbc933d24f599b259ccfea9324">http_client_filter.c</a>
+</li>
+<li>grpc_http_server_filter
+: <a class="el" href="http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503">http_server_filter.h</a>
+, <a class="el" href="http__server__filter_8c.html#af08554bdf22a17e82db905b74a959503">http_server_filter.c</a>
+</li>
+<li>grpc_http_trace
+: <a class="el" href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">internal.h</a>
+, <a class="el" href="chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0">chttp2_transport.h</a>
+, <a class="el" href="chttp2__transport_8c.html#a6bb76c8188f883af2fb738233abdeea0">chttp2_transport.c</a>
+</li>
+<li>grpc_jwt_verifier_clock_skew
+: <a class="el" href="jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#a7d1ae2ff5b43188c302d75bb3ed761f7">jwt_verifier.c</a>
+</li>
+<li>grpc_jwt_verifier_max_delay
+: <a class="el" href="jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282">jwt_verifier.h</a>
+, <a class="el" href="jwt__verifier_8c.html#ab4a9cfed667421b6a1393e52d073a282">jwt_verifier.c</a>
+</li>
+<li>grpc_max_auth_token_lifetime
+: <a class="el" href="grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772">grpc_security.h</a>
+, <a class="el" href="json__token_8c.html#a6112c5b60b1c0197531f80fdc56f7772">json_token.c</a>
+</li>
+<li>grpc_no_op_filter
+: <a class="el" href="noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87">noop_filter.h</a>
+, <a class="el" href="noop__filter_8c.html#afe35aa05a877e7cbc5a42c9aa0574e87">noop_filter.c</a>
+</li>
+<li>grpc_pipe_wakeup_fd_vtable
+: <a class="el" href="wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882">wakeup_fd_pipe.h</a>
+</li>
+<li>grpc_platform_become_multipoller
+: <a class="el" href="pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a">pollset_posix.h</a>
+</li>
+<li>grpc_server_auth_filter
+: <a class="el" href="auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae">auth_filters.h</a>
+, <a class="el" href="server__auth__filter_8c.html#a2041d6372525de50a18f156d1b94cfae">server_auth_filter.c</a>
+</li>
+<li>grpc_server_census_filter
+: <a class="el" href="census__filter_8h.html#a710f293782b7b759efd8bf5acd011963">census_filter.h</a>
+</li>
+<li>grpc_specialized_wakeup_fd_vtable
+: <a class="el" href="wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42">wakeup_fd_posix.h</a>
+</li>
+<li>grpc_surface_trace
+: <a class="el" href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">surface_trace.h</a>
+, <a class="el" href="surface__trace_8c.html#aa4f3485a1e8307d80c59a22e5b20f7a5">surface_trace.c</a>
+</li>
+<li>grpc_tcp_trace
+: <a class="el" href="tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb">tcp_posix.h</a>
+</li>
+<li>grpc_trace_batch
+: <a class="el" href="call_8h.html#a9fa9c0e067be7cfea08021b019544382">call.h</a>
+, <a class="el" href="call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382">call_log_batch.c</a>
+</li>
+<li>grpc_trace_channel
+: <a class="el" href="channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">channel_stack.h</a>
+, <a class="el" href="channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4">channel_stack.c</a>
+</li>
+<li>grpc_trace_secure_endpoint
+: <a class="el" href="secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd">secure_endpoint.h</a>
+, <a class="el" href="secure__endpoint_8c.html#a7778bdc8c40adac0dc536fe255b75fbd">secure_endpoint.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
+<li>key
+: <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">hpack_table.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>tsi_tracing_enabled
+: <a class="el" href="transport__security_8h.html#a4e3d547c54325370492151543325e23c">transport_security.h</a>
+, <a class="el" href="transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c">transport_security_interface.h</a>
+, <a class="el" href="transport__security_8c.html#a4e3d547c54325370492151543325e23c">transport_security.c</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
+<li>value
+: <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">hpack_table.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_w.html b/doc/ref/core.internal/html/globals_w.html
new file mode 100644
index 0000000000..5af7bbac75
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_w.html
@@ -0,0 +1,151 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li class="current"><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>WAITING
+: <a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca757971c0bc5a1972d5f1b1be2c0e2087">channel_connectivity.c</a>
+</li>
+<li>waiting_for_connect
+: <a class="el" href="subchannel_8c.html#a5c5a0a02a82c51b4df27922770a17516">subchannel.c</a>
+</li>
+<li>write_state
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688d">call.c</a>
+</li>
+<li>WRITE_STATE_INITIAL
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688da18e6209a49059c72ae1a0671fbe729f3">call.c</a>
+</li>
+<li>WRITE_STATE_STARTED
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688da26c7fbe66a37088b9bc8f34edd4e2634">call.c</a>
+</li>
+<li>WRITE_STATE_WRITE_CLOSED
+: <a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688daa6f0a8cbb946569f2f609e500abbbff4">call.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/globals_z.html b/doc/ref/core.internal/html/globals_z.html
new file mode 100644
index 0000000000..dccbd2ae81
--- /dev/null
+++ b/doc/ref/core.internal/html/globals_z.html
@@ -0,0 +1,136 @@
+<!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: Globals</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_func.html"><span>Functions</span></a></li>
+ <li><a href="globals_vars.html"><span>Variables</span></a></li>
+ <li><a href="globals_type.html"><span>Typedefs</span></a></li>
+ <li><a href="globals_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="globals_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="globals.html#index__"><span>_</span></a></li>
+ <li><a href="globals_a.html#index_a"><span>a</span></a></li>
+ <li><a href="globals_b.html#index_b"><span>b</span></a></li>
+ <li><a href="globals_c.html#index_c"><span>c</span></a></li>
+ <li><a href="globals_d.html#index_d"><span>d</span></a></li>
+ <li><a href="globals_e.html#index_e"><span>e</span></a></li>
+ <li><a href="globals_f.html#index_f"><span>f</span></a></li>
+ <li><a href="globals_g.html#index_g"><span>g</span></a></li>
+ <li><a href="globals_h.html#index_h"><span>h</span></a></li>
+ <li><a href="globals_i.html#index_i"><span>i</span></a></li>
+ <li><a href="globals_k.html#index_k"><span>k</span></a></li>
+ <li><a href="globals_l.html#index_l"><span>l</span></a></li>
+ <li><a href="globals_m.html#index_m"><span>m</span></a></li>
+ <li><a href="globals_n.html#index_n"><span>n</span></a></li>
+ <li><a href="globals_o.html#index_o"><span>o</span></a></li>
+ <li><a href="globals_p.html#index_p"><span>p</span></a></li>
+ <li><a href="globals_r.html#index_r"><span>r</span></a></li>
+ <li><a href="globals_s.html#index_s"><span>s</span></a></li>
+ <li><a href="globals_t.html#index_t"><span>t</span></a></li>
+ <li><a href="globals_u.html#index_u"><span>u</span></a></li>
+ <li><a href="globals_v.html#index_v"><span>v</span></a></li>
+ <li><a href="globals_w.html#index_w"><span>w</span></a></li>
+ <li class="current"><a href="globals_z.html#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- 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 class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div>
+
+<h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
+<li>ZOMBIED
+: <a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512">server.c</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:08 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>
diff --git a/doc/ref/core.internal/html/google__default__credentials_8c.html b/doc/ref/core.internal/html/google__default__credentials_8c.html
new file mode 100644
index 0000000000..869d499a33
--- /dev/null
+++ b/doc/ref/core.internal/html/google__default__credentials_8c.html
@@ -0,0 +1,175 @@
+<!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: src/core/security/google_default_credentials.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">google_default_credentials.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="env_8h_source.html">src/core/support/env.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="file_8h_source.html">src/core/support/file.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompute__engine__detector.html">compute_engine_detector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a4c79e7c2c581744d4fcb3518b2fccf39"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="google__default__credentials_8c.html#a4c79e7c2c581744d4fcb3518b2fccf39">GRPC_COMPUTE_ENGINE_DETECTION_HOST</a>&#160;&#160;&#160;&quot;metadata.google.internal&quot;</td></tr>
+<tr class="separator:a4c79e7c2c581744d4fcb3518b2fccf39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5e3fb8f208c302245a1392c7ef16d170"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="google__default__credentials_8c.html#a5e3fb8f208c302245a1392c7ef16d170">grpc_google_default_credentials_create</a> (void)</td></tr>
+<tr class="separator:a5e3fb8f208c302245a1392c7ef16d170"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e3aec152312d2b66ccd3b232317b10a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="google__default__credentials_8c.html#a7e3aec152312d2b66ccd3b232317b10a">grpc_flush_cached_google_default_credentials</a> (void)</td></tr>
+<tr class="separator:a7e3aec152312d2b66ccd3b232317b10a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a4c79e7c2c581744d4fcb3518b2fccf39"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_COMPUTE_ENGINE_DETECTION_HOST&#160;&#160;&#160;&quot;metadata.google.internal&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7e3aec152312d2b66ccd3b232317b10a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_flush_cached_google_default_credentials </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e3fb8f208c302245a1392c7ef16d170"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_google_default_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/graph_legend.html b/doc/ref/core.internal/html/graph_legend.html
new file mode 100644
index 0000000000..703099e7c8
--- /dev/null
+++ b/doc/ref/core.internal/html/graph_legend.html
@@ -0,0 +1,153 @@
+<!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: Graph Legend</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><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><!-- top -->
+<!-- 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 class="header">
+ <div class="headertitle">
+<div class="title">Graph Legend</div> </div>
+</div><!--header-->
+<div class="contents">
+<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
+<p>Consider the following example: </p>
+<div class="fragment"><div class="line"><span class="comment">/*! Invisible class because of truncation */</span></div>
+<div class="line"><span class="keyword">class </span>Invisible { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Truncated class, inheritance relation is hidden */</span></div>
+<div class="line"><span class="keyword">class </span>Truncated : <span class="keyword">public</span> Invisible { };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Class not documented with doxygen comments */</span></div>
+<div class="line"><span class="keyword">class </span>Undocumented { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using public inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PublicBase : <span class="keyword">public</span> Truncated { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! A template class */</span></div>
+<div class="line"><span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">class </span>Templ { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using protected inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>ProtectedBase { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using private inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PrivateBase { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is used by the Inherited class */</span></div>
+<div class="line"><span class="keyword">class </span>Used { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Super class that inherits a number of other classes */</span></div>
+<div class="line"><span class="keyword">class </span>Inherited : <span class="keyword">public</span> PublicBase,</div>
+<div class="line"> <span class="keyword">protected</span> ProtectedBase,</div>
+<div class="line"> <span class="keyword">private</span> PrivateBase,</div>
+<div class="line"> <span class="keyword">public</span> Undocumented,</div>
+<div class="line"> <span class="keyword">public</span> Templ&lt;int&gt;</div>
+<div class="line">{</div>
+<div class="line"> <span class="keyword">private</span>:</div>
+<div class="line"> Used *m_usedClass;</div>
+<div class="line">};</div>
+</div><!-- fragment --><p> This will result in the following graph:</p>
+<center><div class="image">
+<img src="graph_legend.png" />
+</div>
+</center><p>The boxes in the above graph have the following meaning: </p>
+<ul>
+<li>
+A filled gray box represents the struct or class for which the graph is generated. </li>
+<li>
+A box with a black border denotes a documented struct or class. </li>
+<li>
+A box with a grey border denotes an undocumented struct or class. </li>
+<li>
+A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
+</ul>
+<p>The arrows have the following meaning: </p>
+<ul>
+<li>
+A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
+<li>
+A dark green arrow is used for protected inheritance. </li>
+<li>
+A dark red arrow is used for private inheritance. </li>
+<li>
+A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible. </li>
+<li>
+A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </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>
diff --git a/doc/ref/core.internal/html/graph_legend.md5 b/doc/ref/core.internal/html/graph_legend.md5
new file mode 100644
index 0000000000..a06ed050cb
--- /dev/null
+++ b/doc/ref/core.internal/html/graph_legend.md5
@@ -0,0 +1 @@
+387ff8eb65306fa251338d3c9bd7bfff \ No newline at end of file
diff --git a/doc/ref/core.internal/html/graph_legend.png b/doc/ref/core.internal/html/graph_legend.png
new file mode 100644
index 0000000000..6c1d0c239c
--- /dev/null
+++ b/doc/ref/core.internal/html/graph_legend.png
Binary files differ
diff --git a/doc/ref/core.internal/html/grpc_8h.html b/doc/ref/core.internal/html/grpc_8h.html
new file mode 100644
index 0000000000..c87ce76139
--- /dev/null
+++ b/doc/ref/core.internal/html/grpc_8h.html
@@ -0,0 +1,1877 @@
+<!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: include/grpc/grpc.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="status_8h_source.html">grpc/status.h</a>&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="grpc_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__arg.html">grpc_arg</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single argument... <a href="structgrpc__arg.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An array of arguments that can be passed around. <a href="structgrpc__channel__args.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata.html">grpc_metadata</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single metadata element. <a href="structgrpc__metadata.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__event.html">grpc_event</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">The result of an operation. <a href="structgrpc__event.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__op.html">grpc_op</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">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><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ae498934a02de89ce29cec570b02a2037"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ae498934a02de89ce29cec570b02a2037">GRPC_ARG_ENABLE_CENSUS</a>&#160;&#160;&#160;&quot;grpc.census&quot;</td></tr>
+<tr class="memdesc:ae498934a02de89ce29cec570b02a2037"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable census for tracing and stats collection. <a href="#ae498934a02de89ce29cec570b02a2037">More...</a><br/></td></tr>
+<tr class="separator:ae498934a02de89ce29cec570b02a2037"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bb9256d0b457cab219f4d9d765148b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a5bb9256d0b457cab219f4d9d765148b6">GRPC_ARG_MAX_CONCURRENT_STREAMS</a>&#160;&#160;&#160;&quot;grpc.max_concurrent_streams&quot;</td></tr>
+<tr class="memdesc:a5bb9256d0b457cab219f4d9d765148b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum number of concurrent incoming streams to allow on a http2 connection. <a href="#a5bb9256d0b457cab219f4d9d765148b6">More...</a><br/></td></tr>
+<tr class="separator:a5bb9256d0b457cab219f4d9d765148b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50f37feb7c000a23b3b0edf4c31d4367"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a50f37feb7c000a23b3b0edf4c31d4367">GRPC_ARG_MAX_MESSAGE_LENGTH</a>&#160;&#160;&#160;&quot;grpc.max_message_length&quot;</td></tr>
+<tr class="memdesc:a50f37feb7c000a23b3b0edf4c31d4367"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum message length that the channel can receive. <a href="#a50f37feb7c000a23b3b0edf4c31d4367">More...</a><br/></td></tr>
+<tr class="separator:a50f37feb7c000a23b3b0edf4c31d4367"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecc45a63163796ca1bc5453938bdfb36"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#aecc45a63163796ca1bc5453938bdfb36">GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER</a>&#160;&#160;&#160;&quot;grpc.http2.initial_sequence_number&quot;</td></tr>
+<tr class="memdesc:aecc45a63163796ca1bc5453938bdfb36"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initial sequence number for http2 transports. <a href="#aecc45a63163796ca1bc5453938bdfb36">More...</a><br/></td></tr>
+<tr class="separator:aecc45a63163796ca1bc5453938bdfb36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add42f97666fbfc66b7dac253ac3b73ae"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#add42f97666fbfc66b7dac253ac3b73ae">GRPC_ARG_DEFAULT_AUTHORITY</a>&#160;&#160;&#160;&quot;grpc.default_authority&quot;</td></tr>
+<tr class="memdesc:add42f97666fbfc66b7dac253ac3b73ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default authority to pass if none specified on call construction. <a href="#add42f97666fbfc66b7dac253ac3b73ae">More...</a><br/></td></tr>
+<tr class="separator:add42f97666fbfc66b7dac253ac3b73ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0732df2d9003e9ee1c01e50e41b5a8e2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a0732df2d9003e9ee1c01e50e41b5a8e2">GRPC_ARG_PRIMARY_USER_AGENT_STRING</a>&#160;&#160;&#160;&quot;grpc.primary_user_agent&quot;</td></tr>
+<tr class="memdesc:a0732df2d9003e9ee1c01e50e41b5a8e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Primary user agent: goes at the start of the user-agent metadata sent on each request. <a href="#a0732df2d9003e9ee1c01e50e41b5a8e2">More...</a><br/></td></tr>
+<tr class="separator:a0732df2d9003e9ee1c01e50e41b5a8e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af47b4048c11e4f8f4162f12c135c2da4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#af47b4048c11e4f8f4162f12c135c2da4">GRPC_ARG_SECONDARY_USER_AGENT_STRING</a>&#160;&#160;&#160;&quot;grpc.secondary_user_agent&quot;</td></tr>
+<tr class="memdesc:af47b4048c11e4f8f4162f12c135c2da4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Secondary user agent: goes at the end of the user-agent metadata sent on each request. <a href="#af47b4048c11e4f8f4162f12c135c2da4">More...</a><br/></td></tr>
+<tr class="separator:af47b4048c11e4f8f4162f12c135c2da4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf29fd8b7df2ecc47d14a7f5a3a079c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0">GRPC_WRITE_BUFFER_HINT</a>&#160;&#160;&#160;(0x00000001u)</td></tr>
+<tr class="memdesc:adf29fd8b7df2ecc47d14a7f5a3a079c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hint that the write may be buffered and need not go out on the wire immediately. <a href="#adf29fd8b7df2ecc47d14a7f5a3a079c0">More...</a><br/></td></tr>
+<tr class="separator:adf29fd8b7df2ecc47d14a7f5a3a079c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae09000181671f031ed0e319ed557da4e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ae09000181671f031ed0e319ed557da4e">GRPC_WRITE_NO_COMPRESS</a>&#160;&#160;&#160;(0x00000002u)</td></tr>
+<tr class="memdesc:ae09000181671f031ed0e319ed557da4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Force compression to be disabled for a particular write (start_write/add_metadata). <a href="#ae09000181671f031ed0e319ed557da4e">More...</a><br/></td></tr>
+<tr class="separator:ae09000181671f031ed0e319ed557da4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3317259e1098b2b6f49982d6997bbf6a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a3317259e1098b2b6f49982d6997bbf6a">GRPC_WRITE_USED_MASK</a>&#160;&#160;&#160;(<a class="el" href="grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0">GRPC_WRITE_BUFFER_HINT</a> | <a class="el" href="grpc_8h.html#ae09000181671f031ed0e319ed557da4e">GRPC_WRITE_NO_COMPRESS</a>)</td></tr>
+<tr class="memdesc:a3317259e1098b2b6f49982d6997bbf6a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask of all valid flags. <a href="#a3317259e1098b2b6f49982d6997bbf6a">More...</a><br/></td></tr>
+<tr class="separator:a3317259e1098b2b6f49982d6997bbf6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a895faab0e6035445750e43482651ba2f"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a></td></tr>
+<tr class="memdesc:a895faab0e6035445750e43482651ba2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Completion Queues enable notification of the completion of asynchronous actions. <a href="#a895faab0e6035445750e43482651ba2f">More...</a><br/></td></tr>
+<tr class="separator:a895faab0e6035445750e43482651ba2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a432bfa6b9f6603643cdf9de8804c254e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__channel.html">grpc_channel</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a></td></tr>
+<tr class="memdesc:a432bfa6b9f6603643cdf9de8804c254e"><td class="mdescLeft">&#160;</td><td class="mdescRight">The Channel interface allows creation of Call objects. <a href="#a432bfa6b9f6603643cdf9de8804c254e">More...</a><br/></td></tr>
+<tr class="separator:a432bfa6b9f6603643cdf9de8804c254e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bbbaad8f7a806f6c834b68c5dd916d8"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__server.html">grpc_server</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a></td></tr>
+<tr class="memdesc:a2bbbaad8f7a806f6c834b68c5dd916d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">A server listens to some port and responds to request calls. <a href="#a2bbbaad8f7a806f6c834b68c5dd916d8">More...</a><br/></td></tr>
+<tr class="separator:a2bbbaad8f7a806f6c834b68c5dd916d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a122f8f4f0a585396d993d9b55848f222"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__call.html">grpc_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a></td></tr>
+<tr class="memdesc:a122f8f4f0a585396d993d9b55848f222"><td class="mdescLeft">&#160;</td><td class="mdescRight">A Call represents an RPC. <a href="#a122f8f4f0a585396d993d9b55848f222">More...</a><br/></td></tr>
+<tr class="separator:a122f8f4f0a585396d993d9b55848f222"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb51216cb5ac1cfd8ca4d096e060adbb"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#abb51216cb5ac1cfd8ca4d096e060adbb">grpc_call_error</a></td></tr>
+<tr class="memdesc:abb51216cb5ac1cfd8ca4d096e060adbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result of a grpc call. <a href="#abb51216cb5ac1cfd8ca4d096e060adbb">More...</a><br/></td></tr>
+<tr class="separator:abb51216cb5ac1cfd8ca4d096e060adbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1da84eaead787d991c5a0c87aed7c30b"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__metadata.html">grpc_metadata</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b">grpc_metadata</a></td></tr>
+<tr class="memdesc:a1da84eaead787d991c5a0c87aed7c30b"><td class="mdescLeft">&#160;</td><td class="mdescRight">A single metadata element. <a href="#a1da84eaead787d991c5a0c87aed7c30b">More...</a><br/></td></tr>
+<tr class="separator:a1da84eaead787d991c5a0c87aed7c30b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70454b2958c92c1cd8feeaa45f157b74"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a70454b2958c92c1cd8feeaa45f157b74">grpc_completion_type</a></td></tr>
+<tr class="memdesc:a70454b2958c92c1cd8feeaa45f157b74"><td class="mdescLeft">&#160;</td><td class="mdescRight">The type of completion (for <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a>) <a href="#a70454b2958c92c1cd8feeaa45f157b74">More...</a><br/></td></tr>
+<tr class="separator:a70454b2958c92c1cd8feeaa45f157b74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07990645ca218f6965fd83edf3f421b7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__event.html">grpc_event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a07990645ca218f6965fd83edf3f421b7">grpc_event</a></td></tr>
+<tr class="memdesc:a07990645ca218f6965fd83edf3f421b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The result of an operation. <a href="#a07990645ca218f6965fd83edf3f421b7">More...</a><br/></td></tr>
+<tr class="separator:a07990645ca218f6965fd83edf3f421b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6556a58ca45ad5132b89c770cf875215"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__op.html">grpc_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a6556a58ca45ad5132b89c770cf875215">grpc_op</a></td></tr>
+<tr class="memdesc:a6556a58ca45ad5132b89c770cf875215"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) <a href="#a6556a58ca45ad5132b89c770cf875215">More...</a><br/></td></tr>
+<tr class="separator:a6556a58ca45ad5132b89c770cf875215"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a0b06eae05e70404aedbceaebce6de593"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a> { <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d">GRPC_ARG_STRING</a>,
+<a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689">GRPC_ARG_INTEGER</a>,
+<a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b">GRPC_ARG_POINTER</a>
+ }</td></tr>
+<tr class="memdesc:a0b06eae05e70404aedbceaebce6de593"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type specifier for <a class="el" href="structgrpc__arg.html" title="A single argument... ">grpc_arg</a>. <a href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">More...</a><br/></td></tr>
+<tr class="separator:a0b06eae05e70404aedbceaebce6de593"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a065b65f5cdd062a67d82e2b6bcf68cf2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> { <br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77">GRPC_CHANNEL_IDLE</a>,
+<a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299">GRPC_CHANNEL_CONNECTING</a>,
+<a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea">GRPC_CHANNEL_READY</a>,
+<a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6">GRPC_CHANNEL_TRANSIENT_FAILURE</a>,
+<br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6">GRPC_CHANNEL_FATAL_FAILURE</a>
+<br/>
+ }</td></tr>
+<tr class="memdesc:a065b65f5cdd062a67d82e2b6bcf68cf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Connectivity state of a channel. <a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">More...</a><br/></td></tr>
+<tr class="separator:a065b65f5cdd062a67d82e2b6bcf68cf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d5a8bdd6d53d209cacea4b6fa5d785b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> { <br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8">GRPC_CALL_OK</a> = 0,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41">GRPC_CALL_ERROR</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8">GRPC_CALL_ERROR_NOT_ON_SERVER</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6">GRPC_CALL_ERROR_NOT_ON_CLIENT</a>,
+<br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a">GRPC_CALL_ERROR_ALREADY_ACCEPTED</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857">GRPC_CALL_ERROR_ALREADY_INVOKED</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296">GRPC_CALL_ERROR_NOT_INVOKED</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63">GRPC_CALL_ERROR_ALREADY_FINISHED</a>,
+<br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454">GRPC_CALL_ERROR_TOO_MANY_OPERATIONS</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861">GRPC_CALL_ERROR_INVALID_FLAGS</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd">GRPC_CALL_ERROR_INVALID_METADATA</a>,
+<a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f">GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE</a>
+<br/>
+ }</td></tr>
+<tr class="memdesc:a0d5a8bdd6d53d209cacea4b6fa5d785b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result of a grpc call. <a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">More...</a><br/></td></tr>
+<tr class="separator:a0d5a8bdd6d53d209cacea4b6fa5d785b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6454071421a36ebc25952ed448d5b87"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a> { <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5">GRPC_QUEUE_SHUTDOWN</a>,
+<a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6">GRPC_QUEUE_TIMEOUT</a>,
+<a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297">GRPC_OP_COMPLETE</a>
+ }</td></tr>
+<tr class="memdesc:ab6454071421a36ebc25952ed448d5b87"><td class="mdescLeft">&#160;</td><td class="mdescRight">The type of completion (for <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a>) <a href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">More...</a><br/></td></tr>
+<tr class="separator:ab6454071421a36ebc25952ed448d5b87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41dc9abf9678decbfcef1a037e35939a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a> { <br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721">GRPC_OP_SEND_INITIAL_METADATA</a> = 0,
+<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70">GRPC_OP_SEND_MESSAGE</a>,
+<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486">GRPC_OP_SEND_CLOSE_FROM_CLIENT</a>,
+<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64">GRPC_OP_SEND_STATUS_FROM_SERVER</a>,
+<br/>
+&#160;&#160;<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078">GRPC_OP_RECV_INITIAL_METADATA</a>,
+<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5">GRPC_OP_RECV_MESSAGE</a>,
+<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17">GRPC_OP_RECV_STATUS_ON_CLIENT</a>,
+<a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6">GRPC_OP_RECV_CLOSE_ON_SERVER</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a41dc9abf9678decbfcef1a037e35939a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a52cfda44034115720a0e88037dedbfb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a52cfda44034115720a0e88037dedbfb5">grpc_metadata_array_init</a> (<a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array)</td></tr>
+<tr class="separator:a52cfda44034115720a0e88037dedbfb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad125726d8b689cc5fc1a0444c91ed44"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44">grpc_metadata_array_destroy</a> (<a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array)</td></tr>
+<tr class="separator:aad125726d8b689cc5fc1a0444c91ed44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29fa3bfb0a561ba465260154a4ef3bb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5">grpc_call_details_init</a> (<a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *details)</td></tr>
+<tr class="separator:a29fa3bfb0a561ba465260154a4ef3bb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a436819189c9155a0761db7667f9078f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a436819189c9155a0761db7667f9078f9">grpc_call_details_destroy</a> (<a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *details)</td></tr>
+<tr class="separator:a436819189c9155a0761db7667f9078f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa78606c93951c49eadd8d83d739798d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#aa78606c93951c49eadd8d83d739798d6">grpc_init</a> (void)</td></tr>
+<tr class="memdesc:aa78606c93951c49eadd8d83d739798d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the grpc library. <a href="#aa78606c93951c49eadd8d83d739798d6">More...</a><br/></td></tr>
+<tr class="separator:aa78606c93951c49eadd8d83d739798d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1130720e50ffedd0bb065c84843b032"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#af1130720e50ffedd0bb065c84843b032">grpc_shutdown</a> (void)</td></tr>
+<tr class="memdesc:af1130720e50ffedd0bb065c84843b032"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shut down the grpc library. <a href="#af1130720e50ffedd0bb065c84843b032">More...</a><br/></td></tr>
+<tr class="separator:af1130720e50ffedd0bb065c84843b032"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a250ca547d790874bd7b5ceec25f18c51"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51">grpc_version_string</a> (void)</td></tr>
+<tr class="memdesc:a250ca547d790874bd7b5ceec25f18c51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a string representing the current version of grpc. <a href="#a250ca547d790874bd7b5ceec25f18c51">More...</a><br/></td></tr>
+<tr class="separator:a250ca547d790874bd7b5ceec25f18c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f69c76c26125e6581491864a06ea44a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a9f69c76c26125e6581491864a06ea44a">grpc_completion_queue_create</a> (void)</td></tr>
+<tr class="memdesc:a9f69c76c26125e6581491864a06ea44a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a completion queue. <a href="#a9f69c76c26125e6581491864a06ea44a">More...</a><br/></td></tr>
+<tr class="separator:a9f69c76c26125e6581491864a06ea44a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56a4ff1f046393205c3418c24f5d5587"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__event.html">grpc_event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587">grpc_completion_queue_next</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:a56a4ff1f046393205c3418c24f5d5587"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blocks until an event is available, the completion queue is being shut down, or deadline is reached. <a href="#a56a4ff1f046393205c3418c24f5d5587">More...</a><br/></td></tr>
+<tr class="separator:a56a4ff1f046393205c3418c24f5d5587"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21e38dd0146d244eb0e262fd1b6a50ee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__event.html">grpc_event</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee">grpc_completion_queue_pluck</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:a21e38dd0146d244eb0e262fd1b6a50ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Blocks until an event with tag 'tag' is available, the completion queue is being shutdown or deadline is reached. <a href="#a21e38dd0146d244eb0e262fd1b6a50ee">More...</a><br/></td></tr>
+<tr class="separator:a21e38dd0146d244eb0e262fd1b6a50ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4051b4036c5132f02064430f67420ecd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a4051b4036c5132f02064430f67420ecd">grpc_completion_queue_shutdown</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq)</td></tr>
+<tr class="memdesc:a4051b4036c5132f02064430f67420ecd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Begin destruction of a completion queue. <a href="#a4051b4036c5132f02064430f67420ecd">More...</a><br/></td></tr>
+<tr class="separator:a4051b4036c5132f02064430f67420ecd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a629a77a358721f1a3bbb8fef34c3996e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e">grpc_completion_queue_destroy</a> (<a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq)</td></tr>
+<tr class="memdesc:a629a77a358721f1a3bbb8fef34c3996e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a completion queue. <a href="#a629a77a358721f1a3bbb8fef34c3996e">More...</a><br/></td></tr>
+<tr class="separator:a629a77a358721f1a3bbb8fef34c3996e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9623d8e4df1d17eb26b67d905f1d7cb3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3">grpc_channel_check_connectivity_state</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, int try_to_connect)</td></tr>
+<tr class="memdesc:a9623d8e4df1d17eb26b67d905f1d7cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check the connectivity state of a channel. <a href="#a9623d8e4df1d17eb26b67d905f1d7cb3">More...</a><br/></td></tr>
+<tr class="separator:a9623d8e4df1d17eb26b67d905f1d7cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29aa98ca6ce9f7e5116e43b0c414e96b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b">grpc_channel_watch_connectivity_state</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> last_observed_state, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag)</td></tr>
+<tr class="memdesc:a29aa98ca6ce9f7e5116e43b0c414e96b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Watch for a change in connectivity state. <a href="#a29aa98ca6ce9f7e5116e43b0c414e96b">More...</a><br/></td></tr>
+<tr class="separator:a29aa98ca6ce9f7e5116e43b0c414e96b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a368ca2e4f76495c3c4bfbb27eb88936e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e">grpc_channel_create_call</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *completion_queue, const char *method, const char *host, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:a368ca2e4f76495c3c4bfbb27eb88936e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a call given a <a class="el" href="structgrpc__channel.html">grpc_channel</a>, in order to call 'method'. <a href="#a368ca2e4f76495c3c4bfbb27eb88936e">More...</a><br/></td></tr>
+<tr class="separator:a368ca2e4f76495c3c4bfbb27eb88936e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af00855f27d8b7c6b232982446371c04d"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#af00855f27d8b7c6b232982446371c04d">grpc_channel_register_call</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, const char *method, const char *host)</td></tr>
+<tr class="memdesc:af00855f27d8b7c6b232982446371c04d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pre-register a method/host pair on a channel. <a href="#af00855f27d8b7c6b232982446371c04d">More...</a><br/></td></tr>
+<tr class="separator:af00855f27d8b7c6b232982446371c04d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">grpc_channel_create_registered_call</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *completion_queue, void *registered_call_handle, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="memdesc:a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a call given a handle returned from grpc_channel_register_call. <a href="#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">More...</a><br/></td></tr>
+<tr class="separator:a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0e60993c9d6e5ceccaf2e61f690b101"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101">grpc_call_start_batch</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, const <a class="el" href="structgrpc__op.html">grpc_op</a> *ops, size_t nops, void *tag)</td></tr>
+<tr class="memdesc:ae0e60993c9d6e5ceccaf2e61f690b101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start a batch of operations defined in the array ops; when complete, post a completion of type 'tag' to the completion queue bound to the call. <a href="#ae0e60993c9d6e5ceccaf2e61f690b101">More...</a><br/></td></tr>
+<tr class="separator:ae0e60993c9d6e5ceccaf2e61f690b101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf4ac8b78da7b957ce05dc0f62719ada"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada">grpc_call_get_peer</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="memdesc:adf4ac8b78da7b957ce05dc0f62719ada"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a newly allocated string representing the endpoint to which this call is communicating with. <a href="#adf4ac8b78da7b957ce05dc0f62719ada">More...</a><br/></td></tr>
+<tr class="separator:adf4ac8b78da7b957ce05dc0f62719ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d5bbdac3a9068747ef3639c4e52af9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a">grpc_census_call_set_context</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, struct <a class="el" href="structcensus__context.html">census_context</a> *context)</td></tr>
+<tr class="separator:a9d5bbdac3a9068747ef3639c4e52af9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f2c6a97262a251d18b76ad470af0e66"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structcensus__context.html">census_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66">grpc_census_call_get_context</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a0f2c6a97262a251d18b76ad470af0e66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a108ef86bc0e5ebcb05f744315e2a6499"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499">grpc_channel_get_target</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a108ef86bc0e5ebcb05f744315e2a6499"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a newly allocated string representing the target a channel was created for. <a href="#a108ef86bc0e5ebcb05f744315e2a6499">More...</a><br/></td></tr>
+<tr class="separator:a108ef86bc0e5ebcb05f744315e2a6499"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa710e7e68b23098900f924cf69797496"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#aa710e7e68b23098900f924cf69797496">grpc_insecure_channel_create</a> (const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="memdesc:aa710e7e68b23098900f924cf69797496"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a client channel to 'target'. <a href="#aa710e7e68b23098900f924cf69797496">More...</a><br/></td></tr>
+<tr class="separator:aa710e7e68b23098900f924cf69797496"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd59697f4b8bedea662939da3668ab9b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#acd59697f4b8bedea662939da3668ab9b">grpc_lame_client_channel_create</a> (const char *target)</td></tr>
+<tr class="memdesc:acd59697f4b8bedea662939da3668ab9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a lame client: this client fails every operation attempted on it. <a href="#acd59697f4b8bedea662939da3668ab9b">More...</a><br/></td></tr>
+<tr class="separator:acd59697f4b8bedea662939da3668ab9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16e4b95581ad12e8e0af2af8d41b71b3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3">grpc_channel_destroy</a> (<a class="el" href="structgrpc__channel.html">grpc_channel</a> *channel)</td></tr>
+<tr class="memdesc:a16e4b95581ad12e8e0af2af8d41b71b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close and destroy a grpc channel. <a href="#a16e4b95581ad12e8e0af2af8d41b71b3">More...</a><br/></td></tr>
+<tr class="separator:a16e4b95581ad12e8e0af2af8d41b71b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adce32a3168cfc0048423af94a3961878"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#adce32a3168cfc0048423af94a3961878">grpc_call_cancel</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="memdesc:adce32a3168cfc0048423af94a3961878"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by clients to cancel an RPC on the server. <a href="#adce32a3168cfc0048423af94a3961878">More...</a><br/></td></tr>
+<tr class="separator:adce32a3168cfc0048423af94a3961878"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8332e3ac6611ae4012ed17707d7dbcf2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2">grpc_call_cancel_with_status</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, const char *description)</td></tr>
+<tr class="memdesc:a8332e3ac6611ae4012ed17707d7dbcf2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by clients to cancel an RPC on the server. <a href="#a8332e3ac6611ae4012ed17707d7dbcf2">More...</a><br/></td></tr>
+<tr class="separator:a8332e3ac6611ae4012ed17707d7dbcf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3edbb9347e32fd0152c8ed4bbbaf5125"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125">grpc_call_destroy</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="memdesc:a3edbb9347e32fd0152c8ed4bbbaf5125"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a call. <a href="#a3edbb9347e32fd0152c8ed4bbbaf5125">More...</a><br/></td></tr>
+<tr class="separator:a3edbb9347e32fd0152c8ed4bbbaf5125"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a636d8fd8c888ba0a0fefacf8dcab7257"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257">grpc_server_request_call</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__call.html">grpc_call</a> **call, <a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *details, <a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *request_metadata, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, void *tag_new)</td></tr>
+<tr class="memdesc:a636d8fd8c888ba0a0fefacf8dcab7257"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request notification of a new call. <a href="#a636d8fd8c888ba0a0fefacf8dcab7257">More...</a><br/></td></tr>
+<tr class="separator:a636d8fd8c888ba0a0fefacf8dcab7257"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a283062a2209f464f234b0e645c6fffb2"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a283062a2209f464f234b0e645c6fffb2">grpc_server_register_method</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, const char *method, const char *host)</td></tr>
+<tr class="memdesc:a283062a2209f464f234b0e645c6fffb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a method in the server. <a href="#a283062a2209f464f234b0e645c6fffb2">More...</a><br/></td></tr>
+<tr class="separator:a283062a2209f464f234b0e645c6fffb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7207900db3bba2f1ae2e3f2dfc2822de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de">grpc_server_request_registered_call</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structregistered__method.html">registered_method</a>, <a class="el" href="structgrpc__call.html">grpc_call</a> **call, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *deadline, <a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *request_metadata, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **optional_payload, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, void *tag_new)</td></tr>
+<tr class="memdesc:a7207900db3bba2f1ae2e3f2dfc2822de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request notification of a new pre-registered call. <a href="#a7207900db3bba2f1ae2e3f2dfc2822de">More...</a><br/></td></tr>
+<tr class="separator:a7207900db3bba2f1ae2e3f2dfc2822de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4036710ea12eccabbbbf050d6bad4cd4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4">grpc_server_create</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="memdesc:a4036710ea12eccabbbbf050d6bad4cd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a server. <a href="#a4036710ea12eccabbbbf050d6bad4cd4">More...</a><br/></td></tr>
+<tr class="separator:a4036710ea12eccabbbbf050d6bad4cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac174712f87fdae4b5757a1370e2a31cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb">grpc_server_register_completion_queue</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq)</td></tr>
+<tr class="memdesc:ac174712f87fdae4b5757a1370e2a31cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a completion queue with the server. <a href="#ac174712f87fdae4b5757a1370e2a31cb">More...</a><br/></td></tr>
+<tr class="separator:ac174712f87fdae4b5757a1370e2a31cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48cab64480658b97a775b2c7837456f9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a48cab64480658b97a775b2c7837456f9">grpc_server_add_http2_port</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, const char *addr)</td></tr>
+<tr class="memdesc:a48cab64480658b97a775b2c7837456f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a HTTP2 over plaintext over tcp listener. <a href="#a48cab64480658b97a775b2c7837456f9">More...</a><br/></td></tr>
+<tr class="separator:a48cab64480658b97a775b2c7837456f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5010d26419e14f5a9ab2fa86a4f7d1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">grpc_server_start</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="memdesc:ac5010d26419e14f5a9ab2fa86a4f7d1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start a server - tells all listeners to start listening. <a href="#ac5010d26419e14f5a9ab2fa86a4f7d1e">More...</a><br/></td></tr>
+<tr class="separator:ac5010d26419e14f5a9ab2fa86a4f7d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56fffa23c1c4bab9a469e2ac607b6db7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7">grpc_server_shutdown_and_notify</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag)</td></tr>
+<tr class="memdesc:a56fffa23c1c4bab9a469e2ac607b6db7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Begin shutting down a server. <a href="#a56fffa23c1c4bab9a469e2ac607b6db7">More...</a><br/></td></tr>
+<tr class="separator:a56fffa23c1c4bab9a469e2ac607b6db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5c1e4f3e270a7afbc39403fff0dc803"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803">grpc_server_cancel_all_calls</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="memdesc:ac5c1e4f3e270a7afbc39403fff0dc803"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cancel all in-progress calls. <a href="#ac5c1e4f3e270a7afbc39403fff0dc803">More...</a><br/></td></tr>
+<tr class="separator:ac5c1e4f3e270a7afbc39403fff0dc803"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34cba45da7c32a21ac82305d670e4620"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#a34cba45da7c32a21ac82305d670e4620">grpc_server_destroy</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="memdesc:a34cba45da7c32a21ac82305d670e4620"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a server. <a href="#a34cba45da7c32a21ac82305d670e4620">More...</a><br/></td></tr>
+<tr class="separator:a34cba45da7c32a21ac82305d670e4620"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6984d3f0c3b9bc9a47859fd4dddc350"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350">grpc_tracer_set_enabled</a> (const char *name, int enabled)</td></tr>
+<tr class="memdesc:ae6984d3f0c3b9bc9a47859fd4dddc350"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable a tracer. <a href="#ae6984d3f0c3b9bc9a47859fd4dddc350">More...</a><br/></td></tr>
+<tr class="separator:ae6984d3f0c3b9bc9a47859fd4dddc350"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="add42f97666fbfc66b7dac253ac3b73ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_DEFAULT_AUTHORITY&#160;&#160;&#160;&quot;grpc.default_authority&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Default authority to pass if none specified on call construction. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae498934a02de89ce29cec570b02a2037"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_ENABLE_CENSUS&#160;&#160;&#160;&quot;grpc.census&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Enable census for tracing and stats collection. </p>
+
+</div>
+</div>
+<a class="anchor" id="aecc45a63163796ca1bc5453938bdfb36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER&#160;&#160;&#160;&quot;grpc.http2.initial_sequence_number&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initial sequence number for http2 transports. </p>
+
+</div>
+</div>
+<a class="anchor" id="a5bb9256d0b457cab219f4d9d765148b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_MAX_CONCURRENT_STREAMS&#160;&#160;&#160;&quot;grpc.max_concurrent_streams&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Maximum number of concurrent incoming streams to allow on a http2 connection. </p>
+
+</div>
+</div>
+<a class="anchor" id="a50f37feb7c000a23b3b0edf4c31d4367"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_MAX_MESSAGE_LENGTH&#160;&#160;&#160;&quot;grpc.max_message_length&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Maximum message length that the channel can receive. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0732df2d9003e9ee1c01e50e41b5a8e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_PRIMARY_USER_AGENT_STRING&#160;&#160;&#160;&quot;grpc.primary_user_agent&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Primary user agent: goes at the start of the user-agent metadata sent on each request. </p>
+
+</div>
+</div>
+<a class="anchor" id="af47b4048c11e4f8f4162f12c135c2da4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_SECONDARY_USER_AGENT_STRING&#160;&#160;&#160;&quot;grpc.secondary_user_agent&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Secondary user agent: goes at the end of the user-agent metadata sent on each request. </p>
+
+</div>
+</div>
+<a class="anchor" id="adf29fd8b7df2ecc47d14a7f5a3a079c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_WRITE_BUFFER_HINT&#160;&#160;&#160;(0x00000001u)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Hint that the write may be buffered and need not go out on the wire immediately. </p>
+<p>GRPC is free to buffer the message until the next non-buffered write, or until writes_done, but it need not buffer completely or at all. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae09000181671f031ed0e319ed557da4e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_WRITE_NO_COMPRESS&#160;&#160;&#160;(0x00000002u)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Force compression to be disabled for a particular write (start_write/add_metadata). </p>
+<p>Illegal on invoke/accept. </p>
+
+</div>
+</div>
+<a class="anchor" id="a3317259e1098b2b6f49982d6997bbf6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_WRITE_USED_MASK&#160;&#160;&#160;(<a class="el" href="grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0">GRPC_WRITE_BUFFER_HINT</a> | <a class="el" href="grpc_8h.html#ae09000181671f031ed0e319ed557da4e">GRPC_WRITE_NO_COMPRESS</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Mask of all valid flags. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a122f8f4f0a585396d993d9b55848f222"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__call.html">grpc_call</a> <a class="el" href="structgrpc__call.html">grpc_call</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A Call represents an RPC. </p>
+<p>When created, it is in a configuration state allowing properties to be set until it is invoked. After invoke, the Call can have messages written to it and read from it. </p>
+
+</div>
+</div>
+<a class="anchor" id="abb51216cb5ac1cfd8ca4d096e060adbb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Result of a grpc call. </p>
+<p>If the caller satisfies the prerequisites of a particular operation, the grpc_call_error returned will be GRPC_CALL_OK. Receiving any other value listed here is an indication of a bug in the caller. </p>
+
+</div>
+</div>
+<a class="anchor" id="a432bfa6b9f6603643cdf9de8804c254e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__channel.html">grpc_channel</a> <a class="el" href="structgrpc__channel.html">grpc_channel</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The Channel interface allows creation of Call objects. </p>
+
+</div>
+</div>
+<a class="anchor" id="a895faab0e6035445750e43482651ba2f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Completion Queues enable notification of the completion of asynchronous actions. </p>
+
+</div>
+</div>
+<a class="anchor" id="a70454b2958c92c1cd8feeaa45f157b74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a> <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The type of completion (for <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a>) </p>
+
+</div>
+</div>
+<a class="anchor" id="a07990645ca218f6965fd83edf3f421b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__event.html">grpc_event</a> <a class="el" href="structgrpc__event.html">grpc_event</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The result of an operation. </p>
+<p>Returned by a completion queue when the operation started with tag. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1da84eaead787d991c5a0c87aed7c30b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__metadata.html">grpc_metadata</a> <a class="el" href="structgrpc__metadata.html">grpc_metadata</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A single metadata element. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6556a58ca45ad5132b89c770cf875215"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__op.html">grpc_op</a> <a class="el" href="structgrpc__op.html">grpc_op</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) </p>
+
+</div>
+</div>
+<a class="anchor" id="a2bbbaad8f7a806f6c834b68c5dd916d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__server.html">grpc_server</a> <a class="el" href="structgrpc__server.html">grpc_server</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A server listens to some port and responds to request calls. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a0b06eae05e70404aedbceaebce6de593"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Type specifier for <a class="el" href="structgrpc__arg.html" title="A single argument... ">grpc_arg</a>. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d"></a>GRPC_ARG_STRING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689"></a>GRPC_ARG_INTEGER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b"></a>GRPC_ARG_POINTER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Result of a grpc call. </p>
+<p>If the caller satisfies the prerequisites of a particular operation, the grpc_call_error returned will be GRPC_CALL_OK. Receiving any other value listed here is an indication of a bug in the caller. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8"></a>GRPC_CALL_OK</em>&#160;</td><td class="fielddoc">
+<p>everything went ok </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41"></a>GRPC_CALL_ERROR</em>&#160;</td><td class="fielddoc">
+<p>something failed, we don't know what </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8"></a>GRPC_CALL_ERROR_NOT_ON_SERVER</em>&#160;</td><td class="fielddoc">
+<p>this method is not available on the server </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6"></a>GRPC_CALL_ERROR_NOT_ON_CLIENT</em>&#160;</td><td class="fielddoc">
+<p>this method is not available on the client </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a"></a>GRPC_CALL_ERROR_ALREADY_ACCEPTED</em>&#160;</td><td class="fielddoc">
+<p>this method must be called before server_accept </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857"></a>GRPC_CALL_ERROR_ALREADY_INVOKED</em>&#160;</td><td class="fielddoc">
+<p>this method must be called before invoke </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296"></a>GRPC_CALL_ERROR_NOT_INVOKED</em>&#160;</td><td class="fielddoc">
+<p>this method must be called after invoke </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63"></a>GRPC_CALL_ERROR_ALREADY_FINISHED</em>&#160;</td><td class="fielddoc">
+<p>this call is already finished (writes_done or write_status has already been called) </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454"></a>GRPC_CALL_ERROR_TOO_MANY_OPERATIONS</em>&#160;</td><td class="fielddoc">
+<p>there is already an outstanding read/write operation on the call </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861"></a>GRPC_CALL_ERROR_INVALID_FLAGS</em>&#160;</td><td class="fielddoc">
+<p>the flags value was illegal for this call </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd"></a>GRPC_CALL_ERROR_INVALID_METADATA</em>&#160;</td><td class="fielddoc">
+<p>invalid metadata was passed to this call </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f"></a>GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE</em>&#160;</td><td class="fielddoc">
+<p>completion queue for notification has not been registered with the server </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="ab6454071421a36ebc25952ed448d5b87"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The type of completion (for <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a>) </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5"></a>GRPC_QUEUE_SHUTDOWN</em>&#160;</td><td class="fielddoc">
+<p>Shutting down. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6"></a>GRPC_QUEUE_TIMEOUT</em>&#160;</td><td class="fielddoc">
+<p>No event before timeout. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297"></a>GRPC_OP_COMPLETE</em>&#160;</td><td class="fielddoc">
+<p>Operation completion. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a065b65f5cdd062a67d82e2b6bcf68cf2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Connectivity state of a channel. </p>
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77"></a>GRPC_CHANNEL_IDLE</em>&#160;</td><td class="fielddoc">
+<p>channel is idle </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299"></a>GRPC_CHANNEL_CONNECTING</em>&#160;</td><td class="fielddoc">
+<p>channel is connecting </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea"></a>GRPC_CHANNEL_READY</em>&#160;</td><td class="fielddoc">
+<p>channel is ready for work </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6"></a>GRPC_CHANNEL_TRANSIENT_FAILURE</em>&#160;</td><td class="fielddoc">
+<p>channel has seen a failure but expects to recover </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6"></a>GRPC_CHANNEL_FATAL_FAILURE</em>&#160;</td><td class="fielddoc">
+<p>channel has seen a failure that it cannot recover from </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a41dc9abf9678decbfcef1a037e35939a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721"></a>GRPC_OP_SEND_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+<p>Send initial metadata: one and only one instance MUST be sent for each call, unless the call was cancelled - in which case this can be skipped. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70"></a>GRPC_OP_SEND_MESSAGE</em>&#160;</td><td class="fielddoc">
+<p>Send a message: 0 or more of these operations can occur for each call. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486"></a>GRPC_OP_SEND_CLOSE_FROM_CLIENT</em>&#160;</td><td class="fielddoc">
+<p>Send a close from the client: one and only one instance MUST be sent from the client, unless the call was cancelled - in which case this can be skipped. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64"></a>GRPC_OP_SEND_STATUS_FROM_SERVER</em>&#160;</td><td class="fielddoc">
+<p>Send status from the server: one and only one instance MUST be sent from the server unless the call was cancelled - in which case this can be skipped. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078"></a>GRPC_OP_RECV_INITIAL_METADATA</em>&#160;</td><td class="fielddoc">
+<p>Receive initial metadata: one and only one MUST be made on the client, must not be made on the server. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5"></a>GRPC_OP_RECV_MESSAGE</em>&#160;</td><td class="fielddoc">
+<p>Receive a message: 0 or more of these operations can occur for each call. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17"></a>GRPC_OP_RECV_STATUS_ON_CLIENT</em>&#160;</td><td class="fielddoc">
+<p>Receive status on the client: one and only one must be made on the client. </p>
+<p>This operation always succeeds, meaning ops paired with this operation will also appear to succeed, even though they may not have. In that case the status will indicate some failure. </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6"></a>GRPC_OP_RECV_CLOSE_ON_SERVER</em>&#160;</td><td class="fielddoc">
+<p>Receive close on the server: one and only one must be made on the server. </p>
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="adce32a3168cfc0048423af94a3961878"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Called by clients to cancel an RPC on the server. </p>
+<p>Can be called multiple times, from any thread. THREAD-SAFETY grpc_call_cancel and grpc_call_cancel_with_status are thread-safe, and can be called at any point before grpc_call_destroy is called. </p>
+
+</div>
+</div>
+<a class="anchor" id="a8332e3ac6611ae4012ed17707d7dbcf2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_cancel_with_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>description</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Called by clients to cancel an RPC on the server. </p>
+<p>Can be called multiple times, from any thread. If a status has not been received for the call, set it to the status code and description passed in. Importantly, this function does not send status nor description to the remote endpoint. </p>
+
+</div>
+</div>
+<a class="anchor" id="a3edbb9347e32fd0152c8ed4bbbaf5125"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a call. </p>
+<p>THREAD SAFETY: grpc_call_destroy is thread-compatible </p>
+
+</div>
+</div>
+<a class="anchor" id="a436819189c9155a0761db7667f9078f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_details_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>details</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29fa3bfb0a561ba465260154a4ef3bb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_details_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>details</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf4ac8b78da7b957ce05dc0f62719ada"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_call_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a newly allocated string representing the endpoint to which this call is communicating with. </p>
+<p>The string is in the uri format accepted by grpc_channel_create. The returned string should be disposed of with <a class="el" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">gpr_free()</a>.</p>
+<p>WARNING: this value is never authenticated or subject to any security related code. It must not be used for any authentication related functionality. Instead, use <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae0e60993c9d6e5ceccaf2e61f690b101"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_start_batch </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__op.html">grpc_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start a batch of operations defined in the array ops; when complete, post a completion of type 'tag' to the completion queue bound to the call. </p>
+<p>The order of ops specified in the batch has no significance. Only one operation of each type can be active at once in any given batch. You must call grpc_completion_queue_next or grpc_completion_queue_pluck on the completion queue associated with 'call' for work to be performed. THREAD SAFETY: access to grpc_call_start_batch in multi-threaded environment needs to be synchronized. As an optimization, you may synchronize batches containing just send operations independently from batches containing just receive operations. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0f2c6a97262a251d18b76ad470af0e66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structcensus__context.html">census_context</a>* grpc_census_call_get_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9d5bbdac3a9068747ef3639c4e52af9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_census_call_set_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9623d8e4df1d17eb26b67d905f1d7cb3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_channel_check_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>try_to_connect</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Check the connectivity state of a channel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a368ca2e4f76495c3c4bfbb27eb88936e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_channel_create_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>completion_queue</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a call given a <a class="el" href="structgrpc__channel.html">grpc_channel</a>, in order to call 'method'. </p>
+<p>All completions are sent to 'completion_queue'. 'method' and 'host' need only live through the invocation of this function. </p>
+
+</div>
+</div>
+<a class="anchor" id="a38aa45cdbc3d9a9529bcb6ee8b2c68aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* grpc_channel_create_registered_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>completion_queue</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>registered_call_handle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a call given a handle returned from grpc_channel_register_call. </p>
+
+</div>
+</div>
+<a class="anchor" id="a16e4b95581ad12e8e0af2af8d41b71b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Close and destroy a grpc channel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a108ef86bc0e5ebcb05f744315e2a6499"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_channel_get_target </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return a newly allocated string representing the target a channel was created for. </p>
+
+</div>
+</div>
+<a class="anchor" id="af00855f27d8b7c6b232982446371c04d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_channel_register_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Pre-register a method/host pair on a channel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a29aa98ca6ce9f7e5116e43b0c414e96b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_channel_watch_connectivity_state </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td>
+ <td class="paramname"><em>last_observed_state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Watch for a change in connectivity state. </p>
+<p>Once the channel connectivity state is different from last_observed_state, tag will be enqueued on cq with success=1. If deadline expires BEFORE the state is changed, tag will be enqueued on cq with success=0. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9f69c76c26125e6581491864a06ea44a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* grpc_completion_queue_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a629a77a358721f1a3bbb8fef34c3996e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_completion_queue_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a completion queue. </p>
+<p>The caller must ensure that the queue is drained and no threads are executing grpc_completion_queue_next </p>
+
+</div>
+</div>
+<a class="anchor" id="a56a4ff1f046393205c3418c24f5d5587"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__event.html">grpc_event</a> grpc_completion_queue_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Blocks until an event is available, the completion queue is being shut down, or deadline is reached. </p>
+<p>Returns a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> with type GRPC_QUEUE_TIMEOUT on timeout, otherwise a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> describing the event that occurred.</p>
+<p>Callers must not call grpc_completion_queue_next and grpc_completion_queue_pluck simultaneously on the same completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a21e38dd0146d244eb0e262fd1b6a50ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__event.html">grpc_event</a> grpc_completion_queue_pluck </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Blocks until an event with tag 'tag' is available, the completion queue is being shutdown or deadline is reached. </p>
+<p>Returns a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> with type GRPC_QUEUE_TIMEOUT on timeout, otherwise a <a class="el" href="structgrpc__event.html" title="The result of an operation. ">grpc_event</a> describing the event that occurred.</p>
+<p>Callers must not call grpc_completion_queue_next and grpc_completion_queue_pluck simultaneously on the same completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a4051b4036c5132f02064430f67420ecd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_completion_queue_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Begin destruction of a completion queue. </p>
+<p>Once all possible events are drained then grpc_completion_queue_next will start to produce GRPC_QUEUE_SHUTDOWN events only. At that point it's safe to call grpc_completion_queue_destroy.</p>
+<p>After calling this function applications should ensure that no NEW work is added to be published on this completion queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa78606c93951c49eadd8d83d739798d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initialize the grpc library. </p>
+<p>It is not safe to call any other grpc functions before calling this. (To avoid overhead, little checking is done, and some things may work. We do not warrant that they will continue to do so in future revisions of this library). </p>
+
+</div>
+</div>
+<a class="anchor" id="aa710e7e68b23098900f924cf69797496"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_insecure_channel_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a client channel to 'target'. </p>
+<p>Additional channel level configuration MAY be provided by <a class="el" href="structgrpc__channel__args.html" title="An array of arguments that can be passed around. ">grpc_channel_args</a>, though the expectation is that most clients will want to simply pass NULL. See <a class="el" href="structgrpc__channel__args.html" title="An array of arguments that can be passed around. ">grpc_channel_args</a> definition for more on this. The data in 'args' need only live through the invocation of this function. </p>
+
+</div>
+</div>
+<a class="anchor" id="acd59697f4b8bedea662939da3668ab9b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_lame_client_channel_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a lame client: this client fails every operation attempted on it. </p>
+
+</div>
+</div>
+<a class="anchor" id="aad125726d8b689cc5fc1a0444c91ed44"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_array_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52cfda44034115720a0e88037dedbfb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_array_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a48cab64480658b97a775b2c7837456f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_add_http2_port </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>addr</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add a HTTP2 over plaintext over tcp listener. </p>
+<p>Returns bound port number on success, 0 on failure. REQUIRES: server not started </p>
+
+</div>
+</div>
+<a class="anchor" id="ac5c1e4f3e270a7afbc39403fff0dc803"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_cancel_all_calls </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Cancel all in-progress calls. </p>
+<p>Only usable after shutdown. </p>
+
+</div>
+</div>
+<a class="anchor" id="a4036710ea12eccabbbbf050d6bad4cd4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* grpc_server_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a server. </p>
+<p>Additional configuration for each incoming channel can be specified with args. If no additional configuration is needed, args can be NULL. See <a class="el" href="structgrpc__channel__args.html" title="An array of arguments that can be passed around. ">grpc_channel_args</a> for more. The data in 'args' need only live through the invocation of this function. </p>
+
+</div>
+</div>
+<a class="anchor" id="a34cba45da7c32a21ac82305d670e4620"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a server. </p>
+<p>Shutdown must have completed beforehand (i.e. all tags generated by grpc_server_shutdown_and_notify must have been received, and at least one call to grpc_server_shutdown_and_notify must have been made). </p>
+
+</div>
+</div>
+<a class="anchor" id="ac174712f87fdae4b5757a1370e2a31cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_register_completion_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Register a completion queue with the server. </p>
+<p>Must be done for any notification completion queue that is passed to grpc_server_request_*_call and to grpc_server_shutdown_and_notify. Must be performed prior to grpc_server_start. </p>
+
+</div>
+</div>
+<a class="anchor" id="a283062a2209f464f234b0e645c6fffb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_server_register_method </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Registers a method in the server. </p>
+<p>Methods to this (host, method) pair will not be reported by grpc_server_request_call, but instead be reported by grpc_server_request_registered_call when passed the appropriate <a class="el" href="structregistered__method.html">registered_method</a> (as returned by this function). Must be called before grpc_server_start. Returns NULL on failure. </p>
+
+</div>
+</div>
+<a class="anchor" id="a636d8fd8c888ba0a0fefacf8dcab7257"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_server_request_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>details</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_bound_to_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_for_notification</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag_new</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Request notification of a new call. </p>
+<p>'cq_for_notification' must have been registered to the server via grpc_server_register_completion_queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7207900db3bba2f1ae2e3f2dfc2822de"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_server_request_registered_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>registered_method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **&#160;</td>
+ <td class="paramname"><em>optional_payload</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_bound_to_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_for_notification</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag_new</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Request notification of a new pre-registered call. </p>
+<p>'cq_for_notification' must have been registered to the server via grpc_server_register_completion_queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a56fffa23c1c4bab9a469e2ac607b6db7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_shutdown_and_notify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Begin shutting down a server. </p>
+<p>After completion, no new calls or connections will be admitted. Existing calls will be allowed to complete. Send a GRPC_OP_COMPLETE event when there are no more calls being serviced. Shutdown is idempotent, and all tags will be notified at once if multiple grpc_server_shutdown_and_notify calls are made. 'cq' must have been registered to this server via grpc_server_register_completion_queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac5010d26419e14f5a9ab2fa86a4f7d1e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start a server - tells all listeners to start listening. </p>
+
+</div>
+</div>
+<a class="anchor" id="af1130720e50ffedd0bb065c84843b032"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Shut down the grpc library. </p>
+<p>No memory is used by grpc after this call returns, nor are any instructions executing within the grpc library. Prior to calling, all application owned grpc objects must have been destroyed. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae6984d3f0c3b9bc9a47859fd4dddc350"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_tracer_set_enabled </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>enabled</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Enable or disable a tracer. </p>
+<p>Tracers (usually controlled by the environment variable GRPC_TRACE) allow printf-style debugging on GRPC internals, and are useful for tracking down problems in the field.</p>
+<p>Use of this function is not strictly thread-safe, but the thread-safety issues raised by it should not be of concern. </p>
+
+</div>
+</div>
+<a class="anchor" id="a250ca547d790874bd7b5ceec25f18c51"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_version_string </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return a string representing the current version of grpc. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/grpc_8h_source.html b/doc/ref/core.internal/html/grpc_8h_source.html
new file mode 100644
index 0000000000..9f3e8532f9
--- /dev/null
+++ b/doc/ref/core.internal/html/grpc_8h_source.html
@@ -0,0 +1,565 @@
+<!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: include/grpc/grpc.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="grpc_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_GRPC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_GRPC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="byte__buffer_8h.html">grpc/byte_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="grpc_8h.html#a895faab0e6035445750e43482651ba2f"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="grpc_8h.html#a432bfa6b9f6603643cdf9de8804c254e"> 62</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__channel.html">grpc_channel</a> <a class="code" href="structgrpc__channel.html">grpc_channel</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="grpc_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8"> 65</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__server.html">grpc_server</a> <a class="code" href="structgrpc__server.html">grpc_server</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="grpc_8h.html#a122f8f4f0a585396d993d9b55848f222"> 70</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__call.html">grpc_call</a> <a class="code" href="structgrpc__call.html">grpc_call</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593"> 73</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d"> 74</a></span>&#160; <a class="code" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d">GRPC_ARG_STRING</a>,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689"> 75</a></span>&#160; <a class="code" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689">GRPC_ARG_INTEGER</a>,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b"> 76</a></span>&#160; <a class="code" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b">GRPC_ARG_POINTER</a></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;} <a class="code" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structgrpc__arg.html"> 91</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4"> 92</a></span>&#160; <a class="code" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a> <a class="code" href="structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4">type</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968"> 93</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968">key</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8"> 95</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8">string</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554"> 96</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554">integer</a>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d"> 98</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">p</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#abef4f8be0109b19fcbe7f614f1243303"> 99</a></span>&#160; <span class="keywordtype">void</span> *(*copy)(<span class="keywordtype">void</span> *p);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structgrpc__arg.html#a15c9a748974a6ac525074f3ed1e04eb4"> 100</a></span>&#160; void (*destroy)(<span class="keywordtype">void</span> *p);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; } pointer;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; } <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;} <a class="code" href="structgrpc__arg.html">grpc_arg</a>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structgrpc__channel__args.html"> 113</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde"> 114</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde">num_args</a>;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76"> 115</a></span>&#160; <a class="code" href="structgrpc__arg.html">grpc_arg</a> *<a class="code" href="structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76">args</a>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;} <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a>;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">/* Channel argument keys: */</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="grpc_8h.html#ae498934a02de89ce29cec570b02a2037"> 120</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_ENABLE_CENSUS &quot;grpc.census&quot;</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="grpc_8h.html#a5bb9256d0b457cab219f4d9d765148b6"> 123</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_MAX_CONCURRENT_STREAMS &quot;grpc.max_concurrent_streams&quot;</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="grpc_8h.html#a50f37feb7c000a23b3b0edf4c31d4367"> 125</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_MAX_MESSAGE_LENGTH &quot;grpc.max_message_length&quot;</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="grpc_8h.html#aecc45a63163796ca1bc5453938bdfb36"> 127</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER \</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="preprocessor"> &quot;grpc.http2.initial_sequence_number&quot;</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="grpc_8h.html#add42f97666fbfc66b7dac253ac3b73ae"> 130</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_DEFAULT_AUTHORITY &quot;grpc.default_authority&quot;</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0732df2d9003e9ee1c01e50e41b5a8e2"> 133</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_PRIMARY_USER_AGENT_STRING &quot;grpc.primary_user_agent&quot;</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="grpc_8h.html#af47b4048c11e4f8f4162f12c135c2da4"> 136</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_SECONDARY_USER_AGENT_STRING &quot;grpc.secondary_user_agent&quot;</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2"> 139</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77"> 141</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77">GRPC_CHANNEL_IDLE</a>,</div>
+<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299"> 143</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299">GRPC_CHANNEL_CONNECTING</a>,</div>
+<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea"> 145</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea">GRPC_CHANNEL_READY</a>,</div>
+<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6"> 147</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6">GRPC_CHANNEL_TRANSIENT_FAILURE</a>,</div>
+<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6"> 149</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6">GRPC_CHANNEL_FATAL_FAILURE</a></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;} <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b"> 156</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> {</div>
+<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8"> 158</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8">GRPC_CALL_OK</a> = 0,</div>
+<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41"> 160</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41">GRPC_CALL_ERROR</a>,</div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8"> 162</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8">GRPC_CALL_ERROR_NOT_ON_SERVER</a>,</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6"> 164</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6">GRPC_CALL_ERROR_NOT_ON_CLIENT</a>,</div>
+<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a"> 166</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a">GRPC_CALL_ERROR_ALREADY_ACCEPTED</a>,</div>
+<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857"> 168</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857">GRPC_CALL_ERROR_ALREADY_INVOKED</a>,</div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296"> 170</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296">GRPC_CALL_ERROR_NOT_INVOKED</a>,</div>
+<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63"> 173</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63">GRPC_CALL_ERROR_ALREADY_FINISHED</a>,</div>
+<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454"> 175</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454">GRPC_CALL_ERROR_TOO_MANY_OPERATIONS</a>,</div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861"> 177</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861">GRPC_CALL_ERROR_INVALID_FLAGS</a>,</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd"> 179</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd">GRPC_CALL_ERROR_INVALID_METADATA</a>,</div>
+<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f"> 182</a></span>&#160; <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f">GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE</a></div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;} <a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment">/* Write Flags: */</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0"> 189</a></span>&#160;<span class="preprocessor">#define GRPC_WRITE_BUFFER_HINT (0x00000001u)</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="grpc_8h.html#ae09000181671f031ed0e319ed557da4e"> 192</a></span>&#160;<span class="preprocessor">#define GRPC_WRITE_NO_COMPRESS (0x00000002u)</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="grpc_8h.html#a3317259e1098b2b6f49982d6997bbf6a"> 194</a></span>&#160;<span class="preprocessor">#define GRPC_WRITE_USED_MASK (GRPC_WRITE_BUFFER_HINT | GRPC_WRITE_NO_COMPRESS)</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="structgrpc__metadata.html"> 197</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__metadata.html">grpc_metadata</a> {</div>
+<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7"> 198</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7">key</a>;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36"> 199</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36">value</a>;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f"> 200</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f">value_length</a>;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f"> 207</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f">obfuscated</a>[3];</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; } <a class="code" href="structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553">internal_data</a>;</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;} <a class="code" href="grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b">grpc_metadata</a>;</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div>
+<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87"> 212</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a> {</div>
+<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5"> 214</a></span>&#160; <a class="code" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5">GRPC_QUEUE_SHUTDOWN</a>,</div>
+<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6"> 216</a></span>&#160; <a class="code" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6">GRPC_QUEUE_TIMEOUT</a>,</div>
+<div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297"> 218</a></span>&#160; <a class="code" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297">GRPC_OP_COMPLETE</a></div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;} <a class="code" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a>;</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="structgrpc__event.html"> 224</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__event.html">grpc_event</a> {</div>
+<div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7"> 226</a></span>&#160; <a class="code" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a> <a class="code" href="structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7">type</a>;</div>
+<div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="structgrpc__event.html#a99d4215e5df50869af320b1cca5540db"> 229</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__event.html#a99d4215e5df50869af320b1cca5540db">success</a>;</div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201"> 232</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201">tag</a>;</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;} <a class="code" href="grpc_8h.html#a07990645ca218f6965fd83edf3f421b7">grpc_event</a>;</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div>
+<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="structgrpc__metadata__array.html"> 235</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4"> 236</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4">count</a>;</div>
+<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97"> 237</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97">capacity</a>;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe"> 238</a></span>&#160; <a class="code" href="structgrpc__metadata.html">grpc_metadata</a> *<a class="code" href="structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe">metadata</a>;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;} <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a>;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a52cfda44034115720a0e88037dedbfb5">grpc_metadata_array_init</a>(<a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array);</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44">grpc_metadata_array_destroy</a>(<a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array);</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="structgrpc__call__details.html"> 244</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5"> 245</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5">method</a>;</div>
+<div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0"> 246</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0">method_capacity</a>;</div>
+<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631"> 247</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631">host</a>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1"> 248</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1">host_capacity</a>;</div>
+<div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15"> 249</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15">deadline</a>;</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;} <a class="code" href="structgrpc__call__details.html">grpc_call_details</a>;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5">grpc_call_details_init</a>(<a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details);</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a436819189c9155a0761db7667f9078f9">grpc_call_details_destroy</a>(<a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details);</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div>
+<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a"> 255</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721"> 258</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721">GRPC_OP_SEND_INITIAL_METADATA</a> = 0,</div>
+<div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70"> 260</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70">GRPC_OP_SEND_MESSAGE</a>,</div>
+<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486"> 264</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486">GRPC_OP_SEND_CLOSE_FROM_CLIENT</a>,</div>
+<div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64"> 268</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64">GRPC_OP_SEND_STATUS_FROM_SERVER</a>,</div>
+<div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078"> 271</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078">GRPC_OP_RECV_INITIAL_METADATA</a>,</div>
+<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5"> 274</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5">GRPC_OP_RECV_MESSAGE</a>,</div>
+<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17"> 279</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17">GRPC_OP_RECV_STATUS_ON_CLIENT</a>,</div>
+<div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6"> 282</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6">GRPC_OP_RECV_CLOSE_ON_SERVER</a></div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;} <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a>;</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;</div>
+<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="structgrpc__op.html"> 287</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__op.html">grpc_op</a> {</div>
+<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115"> 289</a></span>&#160; <a class="code" href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a> <a class="code" href="structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115">op</a>;</div>
+<div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb"> 291</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb">flags</a>;</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a"> 294</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a">count</a>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079"> 295</a></span>&#160; <a class="code" href="structgrpc__metadata.html">grpc_metadata</a> *<a class="code" href="structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079">metadata</a>;</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; } <a class="code" href="structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83">send_initial_metadata</a>;</div>
+<div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434"> 297</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *<a class="code" href="structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434">send_message</a>;</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00299"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab"> 299</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab">trailing_metadata_count</a>;</div>
+<div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a521b48faec3b3f7646a877055f118d47"> 300</a></span>&#160; <a class="code" href="structgrpc__metadata.html">grpc_metadata</a> *<a class="code" href="structgrpc__op.html#a521b48faec3b3f7646a877055f118d47">trailing_metadata</a>;</div>
+<div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="structgrpc__op.html#ae0d5a9db463391c0897914ef2d016b25"> 301</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="structgrpc__op.html#ae0d5a9db463391c0897914ef2d016b25">status</a>;</div>
+<div class="line"><a name="l00302"></a><span class="lineno"><a class="line" href="structgrpc__op.html#ae460836040d79eb2bd0a6d581b36c461"> 302</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__op.html#ae460836040d79eb2bd0a6d581b36c461">status_details</a>;</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; } <a class="code" href="structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb">send_status_from_server</a>;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749"> 309</a></span>&#160; <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *<a class="code" href="structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749">recv_initial_metadata</a>;</div>
+<div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1"> 313</a></span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **<a class="code" href="structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1">recv_message</a>;</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1"> 321</a></span>&#160; <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *<a class="code" href="structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1">trailing_metadata</a>;</div>
+<div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4"> 322</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> *<a class="code" href="structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4">status</a>;</div>
+<div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6"> 343</a></span>&#160; <span class="keywordtype">char</span> **<a class="code" href="structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6">status_details</a>;</div>
+<div class="line"><a name="l00344"></a><span class="lineno"><a class="line" href="structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9"> 344</a></span>&#160; <span class="keywordtype">size_t</span> *<a class="code" href="structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9">status_details_capacity</a>;</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; } <a class="code" href="structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3">recv_status_on_client</a>;</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00349"></a><span class="lineno"><a class="line" href="structgrpc__op.html#ae5a9717d4a69c46f343381596e223874"> 349</a></span>&#160; <span class="keywordtype">int</span> *<a class="code" href="structgrpc__op.html#ae5a9717d4a69c46f343381596e223874">cancelled</a>;</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; } <a class="code" href="structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1">recv_close_on_server</a>;</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; } <a class="code" href="structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad">data</a>;</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;} <a class="code" href="grpc_8h.html#a6556a58ca45ad5132b89c770cf875215">grpc_op</a>;</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;</div>
+<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#aa78606c93951c49eadd8d83d739798d6">grpc_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#af1130720e50ffedd0bb065c84843b032">grpc_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51">grpc_version_string</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *<a class="code" href="grpc_8h.html#a9f69c76c26125e6581491864a06ea44a">grpc_completion_queue_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;<a class="code" href="structgrpc__event.html">grpc_event</a> <a class="code" href="grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587">grpc_completion_queue_next</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq,</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<a class="code" href="structgrpc__event.html">grpc_event</a> <a class="code" href="grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee">grpc_completion_queue_pluck</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, <span class="keywordtype">void</span> *tag,</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a4051b4036c5132f02064430f67420ecd">grpc_completion_queue_shutdown</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq);</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;</div>
+<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e">grpc_completion_queue_destroy</a>(<a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq);</div>
+<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div>
+<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3">grpc_channel_check_connectivity_state</a>(</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <span class="keywordtype">int</span> try_to_connect);</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b">grpc_channel_watch_connectivity_state</a>(</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> last_observed_state,</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, <span class="keywordtype">void</span> *tag);</div>
+<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;</div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;<a class="code" href="structgrpc__call.html">grpc_call</a> *<a class="code" href="grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e">grpc_channel_create_call</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel,</div>
+<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *completion_queue,</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *method, <span class="keyword">const</span> <span class="keywordtype">char</span> *host,</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;</div>
+<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="grpc_8h.html#af00855f27d8b7c6b232982446371c04d">grpc_channel_register_call</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <span class="keyword">const</span> <span class="keywordtype">char</span> *method,</div>
+<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *host);</div>
+<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;</div>
+<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<a class="code" href="structgrpc__call.html">grpc_call</a> *<a class="code" href="grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">grpc_channel_create_registered_call</a>(</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel, <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *completion_queue,</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordtype">void</span> *registered_call_handle, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101">grpc_call_start_batch</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call, <span class="keyword">const</span> <a class="code" href="structgrpc__op.html">grpc_op</a> *ops,</div>
+<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordtype">size_t</span> nops, <span class="keywordtype">void</span> *tag);</div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada">grpc_call_get_peer</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="keyword">struct </span><a class="code" href="structcensus__context.html">census_context</a>;</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="comment">/* Set census context for a call; Must be called before first call to</span></div>
+<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;<span class="comment"> grpc_call_start_batch(). */</span></div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a">grpc_census_call_set_context</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call,</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <span class="keyword">struct</span> <a class="code" href="structcensus__context.html">census_context</a> *context);</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;<span class="comment">/* Retrieve the calls current census context. */</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;<span class="keyword">struct </span><a class="code" href="structcensus__context.html">census_context</a> *<a class="code" href="grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66">grpc_census_call_get_context</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;</div>
+<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499">grpc_channel_get_target</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;</div>
+<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<a class="code" href="structgrpc__channel.html">grpc_channel</a> *<a class="code" href="grpc_8h.html#aa710e7e68b23098900f924cf69797496">grpc_insecure_channel_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *target,</div>
+<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;</div>
+<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<a class="code" href="structgrpc__channel.html">grpc_channel</a> *<a class="code" href="grpc_8h.html#acd59697f4b8bedea662939da3668ab9b">grpc_lame_client_channel_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *target);</div>
+<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3">grpc_channel_destroy</a>(<a class="code" href="structgrpc__channel.html">grpc_channel</a> *channel);</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<span class="comment">/* Error handling for grpc_call</span></div>
+<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="comment"> Most grpc_call functions return a grpc_error. If the error is not GRPC_OK</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;<span class="comment"> then the operation failed due to some unsatisfied precondition.</span></div>
+<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;<span class="comment"> If a grpc_call fails, it&#39;s guaranteed that no change to the call state</span></div>
+<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;<span class="comment"> has been made. */</span></div>
+<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div>
+<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#adce32a3168cfc0048423af94a3961878">grpc_call_cancel</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;</div>
+<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2">grpc_call_cancel_with_status</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call,</div>
+<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status,</div>
+<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *description);</div>
+<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;</div>
+<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125">grpc_call_destroy</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;</div>
+<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257">grpc_server_request_call</a>(</div>
+<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <a class="code" href="structgrpc__server.html">grpc_server</a> *server, <a class="code" href="structgrpc__call.html">grpc_call</a> **call, <a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details,</div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *request_metadata,</div>
+<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call,</div>
+<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, <span class="keywordtype">void</span> *tag_new);</div>
+<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;</div>
+<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="grpc_8h.html#a283062a2209f464f234b0e645c6fffb2">grpc_server_register_method</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keyword">const</span> <span class="keywordtype">char</span> *method,</div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *host);</div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div>
+<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de">grpc_server_request_registered_call</a>(</div>
+<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keywordtype">void</span> *<a class="code" href="structregistered__method.html">registered_method</a>, <a class="code" href="structgrpc__call.html">grpc_call</a> **call,</div>
+<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> *deadline, <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *request_metadata,</div>
+<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **optional_payload,</div>
+<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call,</div>
+<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, <span class="keywordtype">void</span> *tag_new);</div>
+<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;</div>
+<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;<a class="code" href="structgrpc__server.html">grpc_server</a> *<a class="code" href="grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4">grpc_server_create</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;</div>
+<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb">grpc_server_register_completion_queue</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server,</div>
+<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq);</div>
+<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div>
+<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#a48cab64480658b97a775b2c7837456f9">grpc_server_add_http2_port</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keyword">const</span> <span class="keywordtype">char</span> *addr);</div>
+<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;</div>
+<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">grpc_server_start</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server);</div>
+<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;</div>
+<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7">grpc_server_shutdown_and_notify</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server,</div>
+<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <a class="code" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, <span class="keywordtype">void</span> *tag);</div>
+<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;</div>
+<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803">grpc_server_cancel_all_calls</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server);</div>
+<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;</div>
+<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a34cba45da7c32a21ac82305d670e4620">grpc_server_destroy</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server);</div>
+<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;</div>
+<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160;<span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350">grpc_tracer_set_enabled</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keywordtype">int</span> enabled);</div>
+<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;</div>
+<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_GRPC_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f">GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE</a></div><div class="ttdoc">completion queue for notification has not been registered with the server </div><div class="ttdef"><b>Definition:</b> grpc.h:182</div></div>
+<div class="ttc" id="grpc_8h_html_ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297"><div class="ttname"><a href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297">GRPC_OP_COMPLETE</a></div><div class="ttdoc">Operation completion. </div><div class="ttdef"><b>Definition:</b> grpc.h:218</div></div>
+<div class="ttc" id="structgrpc__event_html_a883ab15e862db582116c72cdcdc4c201"><div class="ttname"><a href="structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201">grpc_event::tag</a></div><div class="ttdeci">void * tag</div><div class="ttdoc">The tag passed to grpc_call_start_batch etc to start this operation. </div><div class="ttdef"><b>Definition:</b> grpc.h:232</div></div>
+<div class="ttc" id="structgrpc__op_html_a702bcecc2462646b6740ed7c05f42115"><div class="ttname"><a href="structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115">grpc_op::op</a></div><div class="ttdeci">grpc_op_type op</div><div class="ttdoc">Operation type, as defined by grpc_op_type. </div><div class="ttdef"><b>Definition:</b> grpc.h:289</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> grpc.h:139</div></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486">GRPC_OP_SEND_CLOSE_FROM_CLIENT</a></div><div class="ttdoc">Send a close from the client: one and only one instance MUST be sent from the client, unless the call was cancelled - in which case this can be skipped. </div><div class="ttdef"><b>Definition:</b> grpc.h:264</div></div>
+<div class="ttc" id="grpc_8h_html_a34cba45da7c32a21ac82305d670e4620"><div class="ttname"><a href="grpc_8h.html#a34cba45da7c32a21ac82305d670e4620">grpc_server_destroy</a></div><div class="ttdeci">void grpc_server_destroy(grpc_server *server)</div><div class="ttdoc">Destroy a server. </div><div class="ttdef"><b>Definition:</b> server.c:1063</div></div>
+<div class="ttc" id="structgrpc__op_html_ab993dfc7b33c61f06f26a4efc0aefca6"><div class="ttname"><a href="structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6">grpc_op::status_details</a></div><div class="ttdeci">char ** status_details</div><div class="ttdoc">status_details is a buffer owned by the application before the op completes and after the op has comp...</div><div class="ttdef"><b>Definition:</b> grpc.h:343</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939a"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a">grpc_op_type</a></div><div class="ttdeci">grpc_op_type</div><div class="ttdef"><b>Definition:</b> grpc.h:255</div></div>
+<div class="ttc" id="structgrpc__op_html_a9e6087665c90f146e5570f12c66d04fb"><div class="ttname"><a href="structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb">grpc_op::flags</a></div><div class="ttdeci">gpr_uint32 flags</div><div class="ttdoc">Write flags bitset for grpc_begin_messages. </div><div class="ttdef"><b>Definition:</b> grpc.h:291</div></div>
+<div class="ttc" id="grpc_8h_html_a6556a58ca45ad5132b89c770cf875215"><div class="ttname"><a href="grpc_8h.html#a6556a58ca45ad5132b89c770cf875215">grpc_op</a></div><div class="ttdeci">struct grpc_op grpc_op</div><div class="ttdoc">Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) ...</div></div>
+<div class="ttc" id="grpc_8h_html_ac174712f87fdae4b5757a1370e2a31cb"><div class="ttname"><a href="grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb">grpc_server_register_completion_queue</a></div><div class="ttdeci">void grpc_server_register_completion_queue(grpc_server *server, grpc_completion_queue *cq)</div><div class="ttdoc">Register a completion queue with the server. </div><div class="ttdef"><b>Definition:</b> server.c:742</div></div>
+<div class="ttc" id="structgrpc__op_html_a81ebfcab8db61dd485b88cafc51f2749"><div class="ttname"><a href="structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749">grpc_op::recv_initial_metadata</a></div><div class="ttdeci">grpc_metadata_array * recv_initial_metadata</div><div class="ttdoc">ownership of the array is with the caller, but ownership of the elements stays with the call object (...</div><div class="ttdef"><b>Definition:</b> grpc.h:309</div></div>
+<div class="ttc" id="grpc_8h_html_a21e38dd0146d244eb0e262fd1b6a50ee"><div class="ttname"><a href="grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee">grpc_completion_queue_pluck</a></div><div class="ttdeci">grpc_event grpc_completion_queue_pluck(grpc_completion_queue *cq, void *tag, gpr_timespec deadline)</div><div class="ttdoc">Blocks until an event with tag &#39;tag&#39; is available, the completion queue is being shutdown or deadline...</div><div class="ttdef"><b>Definition:</b> completion_queue.c:187</div></div>
+<div class="ttc" id="grpc_8h_html_a436819189c9155a0761db7667f9078f9"><div class="ttname"><a href="grpc_8h.html#a436819189c9155a0761db7667f9078f9">grpc_call_details_destroy</a></div><div class="ttdeci">void grpc_call_details_destroy(grpc_call_details *details)</div><div class="ttdef"><b>Definition:</b> call_details.c:43</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="structgrpc__channel_html"><div class="ttname"><a href="structgrpc__channel.html">grpc_channel</a></div><div class="ttdef"><b>Definition:</b> channel.c:61</div></div>
+<div class="ttc" id="structgrpc__channel__args_html_a05aa7aeb14aa9ae5f4d6a34f5c222b76"><div class="ttname"><a href="structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76">grpc_channel_args::args</a></div><div class="ttdeci">grpc_arg * args</div><div class="ttdef"><b>Definition:</b> grpc.h:115</div></div>
+<div class="ttc" id="byte__buffer_8h_html"><div class="ttname"><a href="byte__buffer_8h.html">byte_buffer.h</a></div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="grpc_8h_html_a0b06eae05e70404aedbceaebce6de593"><div class="ttname"><a href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a></div><div class="ttdeci">grpc_arg_type</div><div class="ttdoc">Type specifier for grpc_arg. </div><div class="ttdef"><b>Definition:</b> grpc.h:73</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861">GRPC_CALL_ERROR_INVALID_FLAGS</a></div><div class="ttdoc">the flags value was illegal for this call </div><div class="ttdef"><b>Definition:</b> grpc.h:177</div></div>
+<div class="ttc" id="structgrpc__op_html_ae0d5a9db463391c0897914ef2d016b25"><div class="ttname"><a href="structgrpc__op.html#ae0d5a9db463391c0897914ef2d016b25">grpc_op::status</a></div><div class="ttdeci">grpc_status_code status</div><div class="ttdef"><b>Definition:</b> grpc.h:301</div></div>
+<div class="ttc" id="structgrpc__call__details_html_a6b72caadcf800d975987de18012f0f15"><div class="ttname"><a href="structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15">grpc_call_details::deadline</a></div><div class="ttdeci">gpr_timespec deadline</div><div class="ttdef"><b>Definition:</b> grpc.h:249</div></div>
+<div class="ttc" id="grpc_8h_html_a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b"><div class="ttname"><a href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b">GRPC_ARG_POINTER</a></div><div class="ttdef"><b>Definition:</b> grpc.h:76</div></div>
+<div class="ttc" id="structgrpc__event_html"><div class="ttname"><a href="structgrpc__event.html">grpc_event</a></div><div class="ttdoc">The result of an operation. </div><div class="ttdef"><b>Definition:</b> grpc.h:224</div></div>
+<div class="ttc" id="grpc_8h_html_acd59697f4b8bedea662939da3668ab9b"><div class="ttname"><a href="grpc_8h.html#acd59697f4b8bedea662939da3668ab9b">grpc_lame_client_channel_create</a></div><div class="ttdeci">grpc_channel * grpc_lame_client_channel_create(const char *target)</div><div class="ttdoc">Create a lame client: this client fails every operation attempted on it. </div><div class="ttdef"><b>Definition:</b> lame_client.c:141</div></div>
+<div class="ttc" id="structgrpc__arg_html_a6871bfca9c52e7f56abbd71c81d97554"><div class="ttname"><a href="structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554">grpc_arg::integer</a></div><div class="ttdeci">int integer</div><div class="ttdef"><b>Definition:</b> grpc.h:96</div></div>
+<div class="ttc" id="grpc_8h_html_aa710e7e68b23098900f924cf69797496"><div class="ttname"><a href="grpc_8h.html#aa710e7e68b23098900f924cf69797496">grpc_insecure_channel_create</a></div><div class="ttdeci">grpc_channel * grpc_insecure_channel_create(const char *target, const grpc_channel_args *args)</div><div class="ttdoc">Create a client channel to &#39;target&#39;. </div><div class="ttdef"><b>Definition:</b> channel_create.c:157</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64">GRPC_OP_SEND_STATUS_FROM_SERVER</a></div><div class="ttdoc">Send status from the server: one and only one instance MUST be sent from the server unless the call w...</div><div class="ttdef"><b>Definition:</b> grpc.h:268</div></div>
+<div class="ttc" id="structgrpc__arg_html_a05bc3701718db73608ef3598480e8fa8"><div class="ttname"><a href="structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8">grpc_arg::string</a></div><div class="ttdeci">char * string</div><div class="ttdef"><b>Definition:</b> grpc.h:95</div></div>
+<div class="ttc" id="grpc_8h_html_a29fa3bfb0a561ba465260154a4ef3bb5"><div class="ttname"><a href="grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5">grpc_call_details_init</a></div><div class="ttdeci">void grpc_call_details_init(grpc_call_details *details)</div><div class="ttdef"><b>Definition:</b> call_details.c:39</div></div>
+<div class="ttc" id="structgrpc__call__details_html_a869b5db96e2e0fbd573381e77b859631"><div class="ttname"><a href="structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631">grpc_call_details::host</a></div><div class="ttdeci">char * host</div><div class="ttdef"><b>Definition:</b> grpc.h:247</div></div>
+<div class="ttc" id="structgrpc__event_html_a99d4215e5df50869af320b1cca5540db"><div class="ttname"><a href="structgrpc__event.html#a99d4215e5df50869af320b1cca5540db">grpc_event::success</a></div><div class="ttdeci">int success</div><div class="ttdoc">non-zero if the operation was successful, 0 upon failure. </div><div class="ttdef"><b>Definition:</b> grpc.h:229</div></div>
+<div class="ttc" id="grpc_8h_html_a3edbb9347e32fd0152c8ed4bbbaf5125"><div class="ttname"><a href="grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125">grpc_call_destroy</a></div><div class="ttdeci">void grpc_call_destroy(grpc_call *call)</div><div class="ttdoc">Destroy a call. </div><div class="ttdef"><b>Definition:</b> call.c:1177</div></div>
+<div class="ttc" id="structgrpc__op_html_a39a29ba59e6482692adfcdef46ec66ad"><div class="ttname"><a href="structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad">grpc_op::data</a></div><div class="ttdeci">union grpc_op::@6 data</div></div>
+<div class="ttc" id="structgrpc__op_html_ac5983d0a5d60c26ca2d1b37d31ba2e2a"><div class="ttname"><a href="structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a">grpc_op::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> grpc.h:294</div></div>
+<div class="ttc" id="structgrpc__arg_html"><div class="ttname"><a href="structgrpc__arg.html">grpc_arg</a></div><div class="ttdoc">A single argument... </div><div class="ttdef"><b>Definition:</b> grpc.h:91</div></div>
+<div class="ttc" id="structgrpc__call__details_html"><div class="ttname"><a href="structgrpc__call__details.html">grpc_call_details</a></div><div class="ttdef"><b>Definition:</b> grpc.h:244</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41">GRPC_CALL_ERROR</a></div><div class="ttdoc">something failed, we don&#39;t know what </div><div class="ttdef"><b>Definition:</b> grpc.h:160</div></div>
+<div class="ttc" id="structregistered__method_html"><div class="ttname"><a href="structregistered__method.html">registered_method</a></div><div class="ttdef"><b>Definition:</b> server.c:169</div></div>
+<div class="ttc" id="structgrpc__byte__buffer_html"><div class="ttname"><a href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+<div class="ttc" id="structgrpc__op_html_afca6c4cc5b0c2629bb559d2037907ac1"><div class="ttname"><a href="structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1">grpc_op::recv_message</a></div><div class="ttdeci">grpc_byte_buffer ** recv_message</div><div class="ttdoc">ownership of the byte buffer is moved to the caller; the caller must call grpc_byte_buffer_destroy on...</div><div class="ttdef"><b>Definition:</b> grpc.h:313</div></div>
+<div class="ttc" id="grpc_8h_html_ac5010d26419e14f5a9ab2fa86a4f7d1e"><div class="ttname"><a href="grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">grpc_server_start</a></div><div class="ttdeci">void grpc_server_start(grpc_server *server)</div><div class="ttdoc">Start a server - tells all listeners to start listening. </div><div class="ttdef"><b>Definition:</b> server.c:845</div></div>
+<div class="ttc" id="structgrpc__metadata__array_html"><div class="ttname"><a href="structgrpc__metadata__array.html">grpc_metadata_array</a></div><div class="ttdef"><b>Definition:</b> grpc.h:235</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__arg_html_aab5d11432a11b03a53e5d959d9a5328d"><div class="ttname"><a href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">grpc_arg::p</a></div><div class="ttdeci">void * p</div><div class="ttdef"><b>Definition:</b> grpc.h:98</div></div>
+<div class="ttc" id="structgrpc__op_html_a6cacd1d5311683ee077931c94a9dd6e9"><div class="ttname"><a href="structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9">grpc_op::status_details_capacity</a></div><div class="ttdeci">size_t * status_details_capacity</div><div class="ttdef"><b>Definition:</b> grpc.h:344</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5">GRPC_OP_RECV_MESSAGE</a></div><div class="ttdoc">Receive a message: 0 or more of these operations can occur for each call. </div><div class="ttdef"><b>Definition:</b> grpc.h:274</div></div>
+<div class="ttc" id="structgrpc__call__details_html_a8a7da868f60a88f42918cc9bdd4d26c0"><div class="ttname"><a href="structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0">grpc_call_details::method_capacity</a></div><div class="ttdeci">size_t method_capacity</div><div class="ttdef"><b>Definition:</b> grpc.h:246</div></div>
+<div class="ttc" id="grpc_8h_html_a9623d8e4df1d17eb26b67d905f1d7cb3"><div class="ttname"><a href="grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3">grpc_channel_check_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state grpc_channel_check_connectivity_state(grpc_channel *channel, int try_to_connect)</div><div class="ttdoc">Check the connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> channel_connectivity.c:43</div></div>
+<div class="ttc" id="structgrpc__op_html_a70d62415f6768533c2190e53f1c5baf4"><div class="ttname"><a href="structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4">grpc_op::status</a></div><div class="ttdeci">grpc_status_code * status</div><div class="ttdef"><b>Definition:</b> grpc.h:322</div></div>
+<div class="ttc" id="structgrpc__op_html_a42f88554cd082ce8c66560ea24d8a8e3"><div class="ttname"><a href="structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3">grpc_op::recv_status_on_client</a></div><div class="ttdeci">struct grpc_op::@6::@9 recv_status_on_client</div></div>
+<div class="ttc" id="grpc_8h_html_a56fffa23c1c4bab9a469e2ac607b6db7"><div class="ttname"><a href="grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7">grpc_server_shutdown_and_notify</a></div><div class="ttdeci">void grpc_server_shutdown_and_notify(grpc_server *server, grpc_completion_queue *cq, void *tag)</div><div class="ttdoc">Begin shutting down a server. </div><div class="ttdef"><b>Definition:</b> server.c:989</div></div>
+<div class="ttc" id="grpc_8h_html_a29aa98ca6ce9f7e5116e43b0c414e96b"><div class="ttname"><a href="grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b">grpc_channel_watch_connectivity_state</a></div><div class="ttdeci">void grpc_channel_watch_connectivity_state(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag)</div><div class="ttdoc">Watch for a change in connectivity state. </div><div class="ttdef"><b>Definition:</b> channel_connectivity.c:151</div></div>
+<div class="ttc" id="structgrpc__metadata__array_html_ac930a0cc901913fafcd09ca9cca156fe"><div class="ttname"><a href="structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe">grpc_metadata_array::metadata</a></div><div class="ttdeci">grpc_metadata * metadata</div><div class="ttdef"><b>Definition:</b> grpc.h:238</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857">GRPC_CALL_ERROR_ALREADY_INVOKED</a></div><div class="ttdoc">this method must be called before invoke </div><div class="ttdef"><b>Definition:</b> grpc.h:168</div></div>
+<div class="ttc" id="grpc_8h_html_af00855f27d8b7c6b232982446371c04d"><div class="ttname"><a href="grpc_8h.html#af00855f27d8b7c6b232982446371c04d">grpc_channel_register_call</a></div><div class="ttdeci">void * grpc_channel_register_call(grpc_channel *channel, const char *method, const char *host)</div><div class="ttdoc">Pre-register a method/host pair on a channel. </div><div class="ttdef"><b>Definition:</b> channel.c:181</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721">GRPC_OP_SEND_INITIAL_METADATA</a></div><div class="ttdoc">Send initial metadata: one and only one instance MUST be sent for each call, unless the call was canc...</div><div class="ttdef"><b>Definition:</b> grpc.h:258</div></div>
+<div class="ttc" id="grpc_8h_html_a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689"><div class="ttname"><a href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689">GRPC_ARG_INTEGER</a></div><div class="ttdef"><b>Definition:</b> grpc.h:75</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785b"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a></div><div class="ttdeci">grpc_call_error</div><div class="ttdoc">Result of a grpc call. </div><div class="ttdef"><b>Definition:</b> grpc.h:156</div></div>
+<div class="ttc" id="structgrpc__op_html_a521b48faec3b3f7646a877055f118d47"><div class="ttname"><a href="structgrpc__op.html#a521b48faec3b3f7646a877055f118d47">grpc_op::trailing_metadata</a></div><div class="ttdeci">grpc_metadata * trailing_metadata</div><div class="ttdef"><b>Definition:</b> grpc.h:300</div></div>
+<div class="ttc" id="grpc_8h_html_a4036710ea12eccabbbbf050d6bad4cd4"><div class="ttname"><a href="grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4">grpc_server_create</a></div><div class="ttdeci">grpc_server * grpc_server_create(const grpc_channel_args *args)</div><div class="ttdoc">Create a server. </div><div class="ttdef"><b>Definition:</b> server_create.c:39</div></div>
+<div class="ttc" id="structgrpc__metadata__array_html_a5b293b4f8e734b032b80741abf538a97"><div class="ttname"><a href="structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97">grpc_metadata_array::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> grpc.h:237</div></div>
+<div class="ttc" id="structgrpc__metadata_html_abe93a3d24cd534d9387e05ad1f0b36f7"><div class="ttname"><a href="structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7">grpc_metadata::key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> grpc.h:198</div></div>
+<div class="ttc" id="grpc_8h_html_ac5c1e4f3e270a7afbc39403fff0dc803"><div class="ttname"><a href="grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803">grpc_server_cancel_all_calls</a></div><div class="ttdeci">void grpc_server_cancel_all_calls(grpc_server *server)</div><div class="ttdoc">Cancel all in-progress calls. </div><div class="ttdef"><b>Definition:</b> server.c:1053</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd">GRPC_CALL_ERROR_INVALID_METADATA</a></div><div class="ttdoc">invalid metadata was passed to this call </div><div class="ttdef"><b>Definition:</b> grpc.h:179</div></div>
+<div class="ttc" id="structgrpc__op_html_ae460836040d79eb2bd0a6d581b36c461"><div class="ttname"><a href="structgrpc__op.html#ae460836040d79eb2bd0a6d581b36c461">grpc_op::status_details</a></div><div class="ttdeci">const char * status_details</div><div class="ttdef"><b>Definition:</b> grpc.h:302</div></div>
+<div class="ttc" id="grpc_8h_html_adce32a3168cfc0048423af94a3961878"><div class="ttname"><a href="grpc_8h.html#adce32a3168cfc0048423af94a3961878">grpc_call_cancel</a></div><div class="ttdeci">grpc_call_error grpc_call_cancel(grpc_call *call)</div><div class="ttdoc">Called by clients to cancel an RPC on the server. </div><div class="ttdef"><b>Definition:</b> call.c:1189</div></div>
+<div class="ttc" id="structgrpc__metadata_html"><div class="ttname"><a href="structgrpc__metadata.html">grpc_metadata</a></div><div class="ttdoc">A single metadata element. </div><div class="ttdef"><b>Definition:</b> grpc.h:197</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8">GRPC_CALL_ERROR_NOT_ON_SERVER</a></div><div class="ttdoc">this method is not available on the server </div><div class="ttdef"><b>Definition:</b> grpc.h:162</div></div>
+<div class="ttc" id="grpc_8h_html_ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5"><div class="ttname"><a href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5">GRPC_QUEUE_SHUTDOWN</a></div><div class="ttdoc">Shutting down. </div><div class="ttdef"><b>Definition:</b> grpc.h:214</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078">GRPC_OP_RECV_INITIAL_METADATA</a></div><div class="ttdoc">Receive initial metadata: one and only one MUST be made on the client, must not be made on the server...</div><div class="ttdef"><b>Definition:</b> grpc.h:271</div></div>
+<div class="ttc" id="structgrpc__op_html"><div class="ttname"><a href="structgrpc__op.html">grpc_op</a></div><div class="ttdoc">Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) ...</div><div class="ttdef"><b>Definition:</b> grpc.h:287</div></div>
+<div class="ttc" id="grpc_8h_html_a636d8fd8c888ba0a0fefacf8dcab7257"><div class="ttname"><a href="grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257">grpc_server_request_call</a></div><div class="ttdeci">grpc_call_error grpc_server_request_call(grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *request_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new)</div><div class="ttdoc">Request notification of a new call. </div><div class="ttdef"><b>Definition:</b> server.c:1148</div></div>
+<div class="ttc" id="structgrpc__metadata_html_ae7478a66f65862018cd89768a578ff4f"><div class="ttname"><a href="structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f">grpc_metadata::obfuscated</a></div><div class="ttdeci">void * obfuscated[3]</div><div class="ttdef"><b>Definition:</b> grpc.h:207</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70">GRPC_OP_SEND_MESSAGE</a></div><div class="ttdoc">Send a message: 0 or more of these operations can occur for each call. </div><div class="ttdef"><b>Definition:</b> grpc.h:260</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8">GRPC_CALL_OK</a></div><div class="ttdoc">everything went ok </div><div class="ttdef"><b>Definition:</b> grpc.h:158</div></div>
+<div class="ttc" id="grpc_8h_html_a56a4ff1f046393205c3418c24f5d5587"><div class="ttname"><a href="grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587">grpc_completion_queue_next</a></div><div class="ttdeci">grpc_event grpc_completion_queue_next(grpc_completion_queue *cq, gpr_timespec deadline)</div><div class="ttdoc">Blocks until an event is available, the completion queue is being shut down, or deadline is reached...</div><div class="ttdef"><b>Definition:</b> completion_queue.c:147</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63">GRPC_CALL_ERROR_ALREADY_FINISHED</a></div><div class="ttdoc">this call is already finished (writes_done or write_status has already been called) ...</div><div class="ttdef"><b>Definition:</b> grpc.h:173</div></div>
+<div class="ttc" id="grpc_8h_html_a07990645ca218f6965fd83edf3f421b7"><div class="ttname"><a href="grpc_8h.html#a07990645ca218f6965fd83edf3f421b7">grpc_event</a></div><div class="ttdeci">struct grpc_event grpc_event</div><div class="ttdoc">The result of an operation. </div></div>
+<div class="ttc" id="grpc_8h_html_ab6454071421a36ebc25952ed448d5b87"><div class="ttname"><a href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a></div><div class="ttdeci">grpc_completion_type</div><div class="ttdoc">The type of completion (for grpc_event) </div><div class="ttdef"><b>Definition:</b> grpc.h:212</div></div>
+<div class="ttc" id="structgrpc__completion__queue_html"><div class="ttname"><a href="structgrpc__completion__queue.html">grpc_completion_queue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.c:49</div></div>
+<div class="ttc" id="structgrpc__op_html_a4b9454278c105e08d54142adff37b5ab"><div class="ttname"><a href="structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab">grpc_op::trailing_metadata_count</a></div><div class="ttdeci">size_t trailing_metadata_count</div><div class="ttdef"><b>Definition:</b> grpc.h:299</div></div>
+<div class="ttc" id="structgrpc__call__details_html_aeab0d9e754bbb1aac1a21ad4ef63d8b1"><div class="ttname"><a href="structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1">grpc_call_details::host_capacity</a></div><div class="ttdeci">size_t host_capacity</div><div class="ttdef"><b>Definition:</b> grpc.h:248</div></div>
+<div class="ttc" id="grpc_8h_html_a283062a2209f464f234b0e645c6fffb2"><div class="ttname"><a href="grpc_8h.html#a283062a2209f464f234b0e645c6fffb2">grpc_server_register_method</a></div><div class="ttdeci">void * grpc_server_register_method(grpc_server *server, const char *method, const char *host)</div><div class="ttdoc">Registers a method in the server. </div><div class="ttdef"><b>Definition:</b> server.c:820</div></div>
+<div class="ttc" id="grpc_8h_html_a108ef86bc0e5ebcb05f744315e2a6499"><div class="ttname"><a href="grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499">grpc_channel_get_target</a></div><div class="ttdeci">char * grpc_channel_get_target(grpc_channel *channel)</div><div class="ttdoc">Return a newly allocated string representing the target a channel was created for. </div><div class="ttdef"><b>Definition:</b> channel.c:144</div></div>
+<div class="ttc" id="grpc_8h_html_a16e4b95581ad12e8e0af2af8d41b71b3"><div class="ttname"><a href="grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3">grpc_channel_destroy</a></div><div class="ttdeci">void grpc_channel_destroy(grpc_channel *channel)</div><div class="ttdoc">Close and destroy a grpc channel. </div><div class="ttdef"><b>Definition:</b> channel.c:257</div></div>
+<div class="ttc" id="structgrpc__op_html_a8e6202e19130ecb872de211a95dcee83"><div class="ttname"><a href="structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83">grpc_op::send_initial_metadata</a></div><div class="ttdeci">struct grpc_op::@6::@7 send_initial_metadata</div></div>
+<div class="ttc" id="grpc_8h_html_a250ca547d790874bd7b5ceec25f18c51"><div class="ttname"><a href="grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51">grpc_version_string</a></div><div class="ttdeci">const char * grpc_version_string(void)</div><div class="ttdoc">Return a string representing the current version of grpc. </div><div class="ttdef"><b>Definition:</b> version.c:39</div></div>
+<div class="ttc" id="structgrpc__metadata_html_a342799d4f78fcc6dd29ee44f56a6d553"><div class="ttname"><a href="structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553">grpc_metadata::internal_data</a></div><div class="ttdeci">struct grpc_metadata::@5 internal_data</div><div class="ttdoc">The following fields are reserved for grpc internal use. </div></div>
+<div class="ttc" id="structgrpc__channel__args_html_a41e5d0b22449f062b3a7798dd528afde"><div class="ttname"><a href="structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde">grpc_channel_args::num_args</a></div><div class="ttdeci">size_t num_args</div><div class="ttdef"><b>Definition:</b> grpc.h:114</div></div>
+<div class="ttc" id="structcensus__context_html"><div class="ttname"><a href="structcensus__context.html">census_context</a></div><div class="ttdef"><b>Definition:</b> context.h:41</div></div>
+<div class="ttc" id="structgrpc__metadata__array_html_a314ce51b22a5934cc672f3736d44b9e4"><div class="ttname"><a href="structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4">grpc_metadata_array::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> grpc.h:236</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17">GRPC_OP_RECV_STATUS_ON_CLIENT</a></div><div class="ttdoc">Receive status on the client: one and only one must be made on the client. </div><div class="ttdef"><b>Definition:</b> grpc.h:279</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea">GRPC_CHANNEL_READY</a></div><div class="ttdoc">channel is ready for work </div><div class="ttdef"><b>Definition:</b> grpc.h:145</div></div>
+<div class="ttc" id="structgrpc__arg_html_aeb230fbd50daacfe654abc3500a44968"><div class="ttname"><a href="structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968">grpc_arg::key</a></div><div class="ttdeci">char * key</div><div class="ttdef"><b>Definition:</b> grpc.h:93</div></div>
+<div class="ttc" id="grpc_8h_html_a48cab64480658b97a775b2c7837456f9"><div class="ttname"><a href="grpc_8h.html#a48cab64480658b97a775b2c7837456f9">grpc_server_add_http2_port</a></div><div class="ttdeci">int grpc_server_add_http2_port(grpc_server *server, const char *addr)</div><div class="ttdoc">Add a HTTP2 over plaintext over tcp listener. </div><div class="ttdef"><b>Definition:</b> server_chttp2.c:83</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="grpc_8h_html_adf4ac8b78da7b957ce05dc0f62719ada"><div class="ttname"><a href="grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada">grpc_call_get_peer</a></div><div class="ttdeci">char * grpc_call_get_peer(grpc_call *call)</div><div class="ttdoc">Returns a newly allocated string representing the endpoint to which this call is communicating with...</div><div class="ttdef"><b>Definition:</b> call.c:1256</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6">GRPC_CHANNEL_TRANSIENT_FAILURE</a></div><div class="ttdoc">channel has seen a failure but expects to recover </div><div class="ttdef"><b>Definition:</b> grpc.h:147</div></div>
+<div class="ttc" id="grpc_8h_html_a1da84eaead787d991c5a0c87aed7c30b"><div class="ttname"><a href="grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b">grpc_metadata</a></div><div class="ttdeci">struct grpc_metadata grpc_metadata</div><div class="ttdoc">A single metadata element. </div></div>
+<div class="ttc" id="structgrpc__metadata_html_a57b63d7b7a3e4720a0cc0d20bb2ecf36"><div class="ttname"><a href="structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36">grpc_metadata::value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> grpc.h:199</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6">GRPC_CALL_ERROR_NOT_ON_CLIENT</a></div><div class="ttdoc">this method is not available on the client </div><div class="ttdef"><b>Definition:</b> grpc.h:164</div></div>
+<div class="ttc" id="grpc_8h_html_ae0e60993c9d6e5ceccaf2e61f690b101"><div class="ttname"><a href="grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101">grpc_call_start_batch</a></div><div class="ttdeci">grpc_call_error grpc_call_start_batch(grpc_call *call, const grpc_op *ops, size_t nops, void *tag)</div><div class="ttdoc">Start a batch of operations defined in the array ops; when complete, post a completion of type &#39;tag&#39; ...</div><div class="ttdef"><b>Definition:</b> call.c:1431</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77">GRPC_CHANNEL_IDLE</a></div><div class="ttdoc">channel is idle </div><div class="ttdef"><b>Definition:</b> grpc.h:141</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6">GRPC_CHANNEL_FATAL_FAILURE</a></div><div class="ttdoc">channel has seen a failure that it cannot recover from </div><div class="ttdef"><b>Definition:</b> grpc.h:149</div></div>
+<div class="ttc" id="structgrpc__op_html_af327bcd87b609572c39ca6bfe8dbd9f1"><div class="ttname"><a href="structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1">grpc_op::recv_close_on_server</a></div><div class="ttdeci">struct grpc_op::@6::@10 recv_close_on_server</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="grpc_8h_html_a368ca2e4f76495c3c4bfbb27eb88936e"><div class="ttname"><a href="grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e">grpc_channel_create_call</a></div><div class="ttdeci">grpc_call * grpc_channel_create_call(grpc_channel *channel, grpc_completion_queue *completion_queue, const char *method, const char *host, gpr_timespec deadline)</div><div class="ttdoc">Create a call given a grpc_channel, in order to call &#39;method&#39;. </div><div class="ttdef"><b>Definition:</b> channel.c:165</div></div>
+<div class="ttc" id="grpc_8h_html_a0f2c6a97262a251d18b76ad470af0e66"><div class="ttname"><a href="grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66">grpc_census_call_get_context</a></div><div class="ttdeci">struct census_context * grpc_census_call_get_context(grpc_call *call)</div><div class="ttdef"><b>Definition:</b> grpc_context.c:60</div></div>
+<div class="ttc" id="grpc_8h_html_aad125726d8b689cc5fc1a0444c91ed44"><div class="ttname"><a href="grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44">grpc_metadata_array_destroy</a></div><div class="ttdeci">void grpc_metadata_array_destroy(grpc_metadata_array *array)</div><div class="ttdef"><b>Definition:</b> metadata_array.c:43</div></div>
+<div class="ttc" id="grpc_8h_html_ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6"><div class="ttname"><a href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6">GRPC_QUEUE_TIMEOUT</a></div><div class="ttdoc">No event before timeout. </div><div class="ttdef"><b>Definition:</b> grpc.h:216</div></div>
+<div class="ttc" id="grpc_8h_html_aa78606c93951c49eadd8d83d739798d6"><div class="ttname"><a href="grpc_8h.html#aa78606c93951c49eadd8d83d739798d6">grpc_init</a></div><div class="ttdeci">void grpc_init(void)</div><div class="ttdoc">Initialize the grpc library. </div><div class="ttdef"><b>Definition:</b> init.c:61</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299">GRPC_CHANNEL_CONNECTING</a></div><div class="ttdoc">channel is connecting </div><div class="ttdef"><b>Definition:</b> grpc.h:143</div></div>
+<div class="ttc" id="structgrpc__op_html_afe7b3ae8f4c495a187f155a5fd6956bb"><div class="ttname"><a href="structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb">grpc_op::send_status_from_server</a></div><div class="ttdeci">struct grpc_op::@6::@8 send_status_from_server</div></div>
+<div class="ttc" id="structgrpc__op_html_a3b6c1b3456306a802f6eb0e3e8d0e434"><div class="ttname"><a href="structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434">grpc_op::send_message</a></div><div class="ttdeci">grpc_byte_buffer * send_message</div><div class="ttdef"><b>Definition:</b> grpc.h:297</div></div>
+<div class="ttc" id="structgrpc__op_html_abb4d84434a0b74283c8b5d8d6501baf1"><div class="ttname"><a href="structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1">grpc_op::trailing_metadata</a></div><div class="ttdeci">grpc_metadata_array * trailing_metadata</div><div class="ttdoc">ownership of the array is with the caller, but ownership of the elements stays with the call object (...</div><div class="ttdef"><b>Definition:</b> grpc.h:321</div></div>
+<div class="ttc" id="grpc_8h_html_a7207900db3bba2f1ae2e3f2dfc2822de"><div class="ttname"><a href="grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de">grpc_server_request_registered_call</a></div><div class="ttdeci">grpc_call_error grpc_server_request_registered_call(grpc_server *server, void *registered_method, grpc_call **call, gpr_timespec *deadline, grpc_metadata_array *request_metadata, grpc_byte_buffer **optional_payload, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new)</div><div class="ttdoc">Request notification of a new pre-registered call. </div><div class="ttdef"><b>Definition:</b> server.c:1173</div></div>
+<div class="ttc" id="grpc_8h_html_af1130720e50ffedd0bb065c84843b032"><div class="ttname"><a href="grpc_8h.html#af1130720e50ffedd0bb065c84843b032">grpc_shutdown</a></div><div class="ttdeci">void grpc_shutdown(void)</div><div class="ttdoc">Shut down the grpc library. </div><div class="ttdef"><b>Definition:</b> init.c:94</div></div>
+<div class="ttc" id="grpc_8h_html_a52cfda44034115720a0e88037dedbfb5"><div class="ttname"><a href="grpc_8h.html#a52cfda44034115720a0e88037dedbfb5">grpc_metadata_array_init</a></div><div class="ttdeci">void grpc_metadata_array_init(grpc_metadata_array *array)</div><div class="ttdef"><b>Definition:</b> metadata_array.c:39</div></div>
+<div class="ttc" id="grpc_8h_html_a629a77a358721f1a3bbb8fef34c3996e"><div class="ttname"><a href="grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e">grpc_completion_queue_destroy</a></div><div class="ttdeci">void grpc_completion_queue_destroy(grpc_completion_queue *cq)</div><div class="ttdoc">Destroy a completion queue. </div><div class="ttdef"><b>Definition:</b> completion_queue.c:255</div></div>
+<div class="ttc" id="grpc_8h_html_a38aa45cdbc3d9a9529bcb6ee8b2c68aa"><div class="ttname"><a href="grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa">grpc_channel_create_registered_call</a></div><div class="ttdeci">grpc_call * grpc_channel_create_registered_call(grpc_channel *channel, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline)</div><div class="ttdoc">Create a call given a handle returned from grpc_channel_register_call. </div><div class="ttdef"><b>Definition:</b> channel.c:197</div></div>
+<div class="ttc" id="structgrpc__metadata_html_a2084add9ffe64cf337576114d189af3f"><div class="ttname"><a href="structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f">grpc_metadata::value_length</a></div><div class="ttdeci">size_t value_length</div><div class="ttdef"><b>Definition:</b> grpc.h:200</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454">GRPC_CALL_ERROR_TOO_MANY_OPERATIONS</a></div><div class="ttdoc">there is already an outstanding read/write operation on the call </div><div class="ttdef"><b>Definition:</b> grpc.h:175</div></div>
+<div class="ttc" id="grpc_8h_html_a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6"><div class="ttname"><a href="grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6">GRPC_OP_RECV_CLOSE_ON_SERVER</a></div><div class="ttdoc">Receive close on the server: one and only one must be made on the server. </div><div class="ttdef"><b>Definition:</b> grpc.h:282</div></div>
+<div class="ttc" id="structgrpc__event_html_a8e7f571b759f55db4f6bebc2a4f56ad7"><div class="ttname"><a href="structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7">grpc_event::type</a></div><div class="ttdeci">grpc_completion_type type</div><div class="ttdoc">The type of the completion. </div><div class="ttdef"><b>Definition:</b> grpc.h:226</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a">GRPC_CALL_ERROR_ALREADY_ACCEPTED</a></div><div class="ttdoc">this method must be called before server_accept </div><div class="ttdef"><b>Definition:</b> grpc.h:166</div></div>
+<div class="ttc" id="structgrpc__arg_html_aa26f2d3c4b1649c9eb061d24a8c10fd4"><div class="ttname"><a href="structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4">grpc_arg::type</a></div><div class="ttdeci">grpc_arg_type type</div><div class="ttdef"><b>Definition:</b> grpc.h:92</div></div>
+<div class="ttc" id="grpc_8h_html_a4051b4036c5132f02064430f67420ecd"><div class="ttname"><a href="grpc_8h.html#a4051b4036c5132f02064430f67420ecd">grpc_completion_queue_shutdown</a></div><div class="ttdeci">void grpc_completion_queue_shutdown(grpc_completion_queue *cq)</div><div class="ttdoc">Begin destruction of a completion queue. </div><div class="ttdef"><b>Definition:</b> completion_queue.c:237</div></div>
+<div class="ttc" id="grpc_8h_html_a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d"><div class="ttname"><a href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d">GRPC_ARG_STRING</a></div><div class="ttdef"><b>Definition:</b> grpc.h:74</div></div>
+<div class="ttc" id="structgrpc__op_html_a2e0f0c709658960593d5a36915c8d079"><div class="ttname"><a href="structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079">grpc_op::metadata</a></div><div class="ttdeci">grpc_metadata * metadata</div><div class="ttdef"><b>Definition:</b> grpc.h:295</div></div>
+<div class="ttc" id="grpc_8h_html_a8332e3ac6611ae4012ed17707d7dbcf2"><div class="ttname"><a href="grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2">grpc_call_cancel_with_status</a></div><div class="ttdeci">grpc_call_error grpc_call_cancel_with_status(grpc_call *call, grpc_status_code status, const char *description)</div><div class="ttdoc">Called by clients to cancel an RPC on the server. </div><div class="ttdef"><b>Definition:</b> call.c:1193</div></div>
+<div class="ttc" id="structgrpc__call_html"><div class="ttname"><a href="structgrpc__call.html">grpc_call</a></div><div class="ttdef"><b>Definition:</b> call.c:143</div></div>
+<div class="ttc" id="structgrpc__op_html_ae5a9717d4a69c46f343381596e223874"><div class="ttname"><a href="structgrpc__op.html#ae5a9717d4a69c46f343381596e223874">grpc_op::cancelled</a></div><div class="ttdeci">int * cancelled</div><div class="ttdoc">out argument, set to 1 if the call failed in any way (seen as a cancellation on the server)...</div><div class="ttdef"><b>Definition:</b> grpc.h:349</div></div>
+<div class="ttc" id="grpc_8h_html_a9f69c76c26125e6581491864a06ea44a"><div class="ttname"><a href="grpc_8h.html#a9f69c76c26125e6581491864a06ea44a">grpc_completion_queue_create</a></div><div class="ttdeci">grpc_completion_queue * grpc_completion_queue_create(void)</div><div class="ttdoc">Create a completion queue. </div><div class="ttdef"><b>Definition:</b> completion_queue.c:65</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296">GRPC_CALL_ERROR_NOT_INVOKED</a></div><div class="ttdoc">this method must be called after invoke </div><div class="ttdef"><b>Definition:</b> grpc.h:170</div></div>
+<div class="ttc" id="structgrpc__call__details_html_a97c8019d8fa7cbe2014d97c91f9ed0a5"><div class="ttname"><a href="structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5">grpc_call_details::method</a></div><div class="ttdeci">char * method</div><div class="ttdef"><b>Definition:</b> grpc.h:245</div></div>
+<div class="ttc" id="grpc_8h_html_ae6984d3f0c3b9bc9a47859fd4dddc350"><div class="ttname"><a href="grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350">grpc_tracer_set_enabled</a></div><div class="ttdeci">int grpc_tracer_set_enabled(const char *name, int enabled)</div><div class="ttdoc">Enable or disable a tracer. </div><div class="ttdef"><b>Definition:</b> trace.c:112</div></div>
+<div class="ttc" id="structgrpc__server_html"><div class="ttname"><a href="structgrpc__server.html">grpc_server</a></div><div class="ttdef"><b>Definition:</b> server.c:181</div></div>
+<div class="ttc" id="grpc_8h_html_a9d5bbdac3a9068747ef3639c4e52af9a"><div class="ttname"><a href="grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a">grpc_census_call_set_context</a></div><div class="ttdeci">void grpc_census_call_set_context(grpc_call *call, struct census_context *context)</div><div class="ttdef"><b>Definition:</b> grpc_context.c:42</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/grpc__context_8c.html b/doc/ref/core.internal/html/grpc__context_8c.html
new file mode 100644
index 0000000000..4108aa8f07
--- /dev/null
+++ b/doc/ref/core.internal/html/grpc__context_8c.html
@@ -0,0 +1,155 @@
+<!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: src/core/census/grpc_context.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc_context.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="census_8h_source.html">grpc/census.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afe9f71e9469141cc38cf3ec1375830ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__context_8c.html#afe9f71e9469141cc38cf3ec1375830ce">grpc_census_call_set_context</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="structcensus__context.html">census_context</a> *context)</td></tr>
+<tr class="separator:afe9f71e9469141cc38cf3ec1375830ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a333e4c9a18683ab7a0db218df7a5fc6e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcensus__context.html">census_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__context_8c.html#a333e4c9a18683ab7a0db218df7a5fc6e">grpc_census_call_get_context</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a333e4c9a18683ab7a0db218df7a5fc6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a333e4c9a18683ab7a0db218df7a5fc6e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcensus__context.html">census_context</a>* grpc_census_call_get_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe9f71e9469141cc38cf3ec1375830ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_census_call_set_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/grpc__security_8h.html b/doc/ref/core.internal/html/grpc__security_8h.html
new file mode 100644
index 0000000000..63bf90dfcf
--- /dev/null
+++ b/doc/ref/core.internal/html/grpc__security_8h.html
@@ -0,0 +1,863 @@
+<!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: include/grpc/grpc_security.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">grpc_security.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc/status.h</a>&gt;</code><br/>
+</div>
+<p><a href="grpc__security_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a3874f70577fc9fe15fd2c4ce68a36ecd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a3874f70577fc9fe15fd2c4ce68a36ecd">GRPC_GOOGLE_CREDENTIALS_ENV_VAR</a>&#160;&#160;&#160;&quot;GOOGLE_APPLICATION_CREDENTIALS&quot;</td></tr>
+<tr class="separator:a3874f70577fc9fe15fd2c4ce68a36ecd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48565da473b7c82fa2453798f620fd59"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a48565da473b7c82fa2453798f620fd59">GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR</a>&#160;&#160;&#160;&quot;GRPC_DEFAULT_SSL_ROOTS_FILE_PATH&quot;</td></tr>
+<tr class="separator:a48565da473b7c82fa2453798f620fd59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a218bf55b665134a11baf07ada5980825"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a218bf55b665134a11baf07ada5980825">GRPC_SSL_TARGET_NAME_OVERRIDE_ARG</a>&#160;&#160;&#160;&quot;grpc.ssl_target_name_override&quot;</td></tr>
+<tr class="separator:a218bf55b665134a11baf07ada5980825"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff82fdff9e7c40c4dd4bdc650e38e25a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#aff82fdff9e7c40c4dd4bdc650e38e25a">GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME</a>&#160;&#160;&#160;&quot;transport_security_type&quot;</td></tr>
+<tr class="separator:aff82fdff9e7c40c4dd4bdc650e38e25a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35a35c597b7090b8ac7e2d854c9bcc7a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a35a35c597b7090b8ac7e2d854c9bcc7a">GRPC_SSL_TRANSPORT_SECURITY_TYPE</a>&#160;&#160;&#160;&quot;ssl&quot;</td></tr>
+<tr class="separator:a35a35c597b7090b8ac7e2d854c9bcc7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afee5e0fade6e0af1954529f1f08afe0c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#afee5e0fade6e0af1954529f1f08afe0c">GRPC_X509_CN_PROPERTY_NAME</a>&#160;&#160;&#160;&quot;x509_common_name&quot;</td></tr>
+<tr class="separator:afee5e0fade6e0af1954529f1f08afe0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1412421653b7999544296f56025a0f36"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a1412421653b7999544296f56025a0f36">GRPC_X509_SAN_PROPERTY_NAME</a>&#160;&#160;&#160;&quot;x509_subject_alternative_name&quot;</td></tr>
+<tr class="separator:a1412421653b7999544296f56025a0f36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a17768c857575e4500cdd12bb94d3f33e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a17768c857575e4500cdd12bb94d3f33e">grpc_credentials</a></td></tr>
+<tr class="separator:a17768c857575e4500cdd12bb94d3f33e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa724192e56fdc03827846f16752deccc"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#aa724192e56fdc03827846f16752deccc">grpc_server_credentials</a></td></tr>
+<tr class="separator:aa724192e56fdc03827846f16752deccc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa13f0724cb7ff99995d7f0881c01d553"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#aa13f0724cb7ff99995d7f0881c01d553">grpc_auth_context</a></td></tr>
+<tr class="separator:aa13f0724cb7ff99995d7f0881c01d553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26981fdcb987d885b25d34c7dc66e4cf"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf">grpc_auth_property_iterator</a></td></tr>
+<tr class="separator:a26981fdcb987d885b25d34c7dc66e4cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a010fe7d27deaa2ea50b765b48dbad429"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429">grpc_auth_property</a></td></tr>
+<tr class="separator:a010fe7d27deaa2ea50b765b48dbad429"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6c01e107d41e964458fdf701b8b81440"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440">grpc_credentials_release</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a6c01e107d41e964458fdf701b8b81440"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e3fb8f208c302245a1392c7ef16d170"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170">grpc_google_default_credentials_create</a> (void)</td></tr>
+<tr class="separator:a5e3fb8f208c302245a1392c7ef16d170"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d627ca897718091e4ceca5dce3ef10e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e">grpc_ssl_credentials_create</a> (const char *pem_root_certs, <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *pem_key_cert_pair)</td></tr>
+<tr class="separator:a0d627ca897718091e4ceca5dce3ef10e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f65f01fb23e963cc88bcdfbede70da7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7">grpc_composite_credentials_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds1, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds2)</td></tr>
+<tr class="separator:a4f65f01fb23e963cc88bcdfbede70da7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3beb3fe683139856e1a13c27d760eb95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95">grpc_compute_engine_credentials_create</a> (void)</td></tr>
+<tr class="separator:a3beb3fe683139856e1a13c27d760eb95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15aa83608fad085b6244de659d322b27"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a15aa83608fad085b6244de659d322b27">grpc_service_account_credentials_create</a> (const char *json_key, const char *scope, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime)</td></tr>
+<tr class="separator:a15aa83608fad085b6244de659d322b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af26993774cc991debd61e4a84ed49187"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#af26993774cc991debd61e4a84ed49187">grpc_service_account_jwt_access_credentials_create</a> (const char *json_key, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime)</td></tr>
+<tr class="separator:af26993774cc991debd61e4a84ed49187"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a2440ad02b6a96adbd2c6e5d66fd7d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">grpc_refresh_token_credentials_create</a> (const char *json_refresh_token)</td></tr>
+<tr class="separator:a7a2440ad02b6a96adbd2c6e5d66fd7d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ef8e179bb5d15c81dfd363924db0041"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041">grpc_access_token_credentials_create</a> (const char *access_token)</td></tr>
+<tr class="separator:a7ef8e179bb5d15c81dfd363924db0041"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae42c358e718847c988aa690cb0fccab3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3">grpc_iam_credentials_create</a> (const char *authorization_token, const char *authority_selector)</td></tr>
+<tr class="separator:ae42c358e718847c988aa690cb0fccab3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d63d4cac74652ec3fac7782acb4a2d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4">grpc_secure_channel_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a4d63d4cac74652ec3fac7782acb4a2d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e9f9320f4f8d2d534d04ed642f032ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea">grpc_server_credentials_release</a> (<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds)</td></tr>
+<tr class="separator:a6e9f9320f4f8d2d534d04ed642f032ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3382907a4689c034a6f55bab4d5135b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9">grpc_ssl_server_credentials_create</a> (const char *pem_root_certs, <a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth)</td></tr>
+<tr class="separator:a3382907a4689c034a6f55bab4d5135b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d0db200d00b62b79138472dc9b1fe59"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59">grpc_server_add_secure_http2_port</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, const char *addr, <a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds)</td></tr>
+<tr class="separator:a5d0db200d00b62b79138472dc9b1fe59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56de54ae2563e67e236c10e8fa419f60"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60">grpc_call_set_credentials</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a56de54ae2563e67e236c10e8fa419f60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac20e3890d5e5e0de6ae6b5cb57cae1ae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">grpc_auth_property_iterator_next</a> (<a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> *it)</td></tr>
+<tr class="separator:ac20e3890d5e5e0de6ae6b5cb57cae1ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaad9fed074f7aebed63ed075bb6ff780"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780">grpc_auth_context_property_iterator</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:aaad9fed074f7aebed63ed075bb6ff780"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a144c6f3a56c8592489b3978e0c5caced"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced">grpc_auth_context_peer_identity</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:a144c6f3a56c8592489b3978e0c5caced"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5298ac64614986581fc314f63fa9afd7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7">grpc_auth_context_find_properties_by_name</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx, const char *name)</td></tr>
+<tr class="separator:a5298ac64614986581fc314f63fa9afd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac05022ccd5b972ba089950437727ff23"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23">grpc_auth_context_peer_identity_property_name</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:ac05022ccd5b972ba089950437727ff23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af33fe6681dedb389edbf708020680093"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#af33fe6681dedb389edbf708020680093">grpc_auth_context_peer_is_authenticated</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:af33fe6681dedb389edbf708020680093"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b439e6d2875c8b5e2e901a959f6a2fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe">grpc_call_auth_context</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a0b439e6d2875c8b5e2e901a959f6a2fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2eea99f76030b21ad58afdf615f4d2b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9">grpc_auth_context_release</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *context)</td></tr>
+<tr class="separator:a2eea99f76030b21ad58afdf615f4d2b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6112c5b60b1c0197531f80fdc56f7772"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772">grpc_max_auth_token_lifetime</a></td></tr>
+<tr class="separator:a6112c5b60b1c0197531f80fdc56f7772"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a48565da473b7c82fa2453798f620fd59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR&#160;&#160;&#160;&quot;GRPC_DEFAULT_SSL_ROOTS_FILE_PATH&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3874f70577fc9fe15fd2c4ce68a36ecd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_CREDENTIALS_ENV_VAR&#160;&#160;&#160;&quot;GOOGLE_APPLICATION_CREDENTIALS&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a218bf55b665134a11baf07ada5980825"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SSL_TARGET_NAME_OVERRIDE_ARG&#160;&#160;&#160;&quot;grpc.ssl_target_name_override&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a35a35c597b7090b8ac7e2d854c9bcc7a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SSL_TRANSPORT_SECURITY_TYPE&#160;&#160;&#160;&quot;ssl&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aff82fdff9e7c40c4dd4bdc650e38e25a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME&#160;&#160;&#160;&quot;transport_security_type&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afee5e0fade6e0af1954529f1f08afe0c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_X509_CN_PROPERTY_NAME&#160;&#160;&#160;&quot;x509_common_name&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1412421653b7999544296f56025a0f36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_X509_SAN_PROPERTY_NAME&#160;&#160;&#160;&quot;x509_subject_alternative_name&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aa13f0724cb7ff99995d7f0881c01d553"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a010fe7d27deaa2ea50b765b48dbad429"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a26981fdcb987d885b25d34c7dc66e4cf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> <a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a17768c857575e4500cdd12bb94d3f33e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> <a class="el" href="structgrpc__credentials.html">grpc_credentials</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa724192e56fdc03827846f16752deccc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> <a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7ef8e179bb5d15c81dfd363924db0041"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_access_token_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>access_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5298ac64614986581fc314f63fa9afd7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> grpc_auth_context_find_properties_by_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a144c6f3a56c8592489b3978e0c5caced"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> grpc_auth_context_peer_identity </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac05022ccd5b972ba089950437727ff23"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_auth_context_peer_identity_property_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af33fe6681dedb389edbf708020680093"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_auth_context_peer_is_authenticated </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaad9fed074f7aebed63ed075bb6ff780"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> grpc_auth_context_property_iterator </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2eea99f76030b21ad58afdf615f4d2b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_context_release </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac20e3890d5e5e0de6ae6b5cb57cae1ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>* grpc_auth_property_iterator_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> *&#160;</td>
+ <td class="paramname"><em>it</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0b439e6d2875c8b5e2e901a959f6a2fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_call_auth_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a56de54ae2563e67e236c10e8fa419f60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_set_credentials </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f65f01fb23e963cc88bcdfbede70da7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_composite_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3beb3fe683139856e1a13c27d760eb95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_compute_engine_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c01e107d41e964458fdf701b8b81440"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_credentials_release </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e3fb8f208c302245a1392c7ef16d170"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_google_default_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae42c358e718847c988aa690cb0fccab3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_iam_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>authorization_token</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>authority_selector</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a2440ad02b6a96adbd2c6e5d66fd7d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_refresh_token_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d63d4cac74652ec3fac7782acb4a2d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_secure_channel_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5d0db200d00b62b79138472dc9b1fe59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_add_secure_http2_port </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e9f9320f4f8d2d534d04ed642f032ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_credentials_release </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15aa83608fad085b6244de659d322b27"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_service_account_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>scope</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af26993774cc991debd61e4a84ed49187"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_service_account_jwt_access_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d627ca897718091e4ceca5dce3ef10e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_ssl_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *&#160;</td>
+ <td class="paramname"><em>pem_key_cert_pair</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3382907a4689c034a6f55bab4d5135b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>* grpc_ssl_server_credentials_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *&#160;</td>
+ <td class="paramname"><em>pem_key_cert_pairs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_key_cert_pairs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>force_client_auth</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a6112c5b60b1c0197531f80fdc56f7772"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_max_auth_token_lifetime</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/grpc__security_8h_source.html b/doc/ref/core.internal/html/grpc__security_8h_source.html
new file mode 100644
index 0000000000..5159560794
--- /dev/null
+++ b/doc/ref/core.internal/html/grpc__security_8h_source.html
@@ -0,0 +1,409 @@
+<!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: include/grpc/grpc_security.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc_security.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="grpc__security_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_GRPC_SECURITY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_GRPC_SECURITY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* --- grpc_credentials object. ---</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> A credentials object represents a way to authenticate a client. */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#a17768c857575e4500cdd12bb94d3f33e"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__credentials.html">grpc_credentials</a> <a class="code" href="structgrpc__credentials.html">grpc_credentials</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* Releases a credentials object.</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> The creator of the credentials object is responsible for its release. */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440">grpc_credentials_release</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* Environment variable that points to the google default application</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> credentials json key or refresh token. Used in the</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> grpc_google_default_credentials_create function. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#a3874f70577fc9fe15fd2c4ce68a36ecd"> 57</a></span>&#160;<span class="preprocessor">#define GRPC_GOOGLE_CREDENTIALS_ENV_VAR &quot;GOOGLE_APPLICATION_CREDENTIALS&quot;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment">/* Creates default credentials to connect to a google gRPC service.</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> WARNING: Do NOT use this credentials to connect to a non-google service as</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> this could result in an oauth2 token leak. */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170">grpc_google_default_credentials_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Environment variable that points to the default SSL roots file. This file</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> must be a PEM encoded file with all the roots such as the one that can be</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> downloaded from https://pki.google.com/roots.pem. */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#a48565da473b7c82fa2453798f620fd59"> 67</a></span>&#160;<span class="preprocessor">#define GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR \</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"> &quot;GRPC_DEFAULT_SSL_ROOTS_FILE_PATH&quot;</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">/* Object that holds a private key / certificate chain pair in PEM format. */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__ssl__pem__key__cert__pair.html"> 71</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* private_key is the NULL-terminated string containing the PEM encoding of</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> the client&#39;s private key. */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72"> 74</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72">private_key</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">/* cert_chain is the NULL-terminated string containing the PEM encoding of</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> the client&#39;s certificate chain. */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656"> 78</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656">cert_chain</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;} <a class="code" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* Creates an SSL credentials object.</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> - pem_roots_cert is the NULL-terminated string containing the PEM encoding</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> of the server root certificates. If this parameter is NULL, the</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> implementation will first try to dereference the file pointed by the</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> GRPC_DEFAULT_SSL_ROOTS_FILE_PATH environment variable, and if that fails,</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> get the roots from a well-known place on disk (in the grpc install</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> directory).</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> - pem_key_cert_pair is a pointer on the object containing client&#39;s private</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> key and certificate chain. This parameter can be NULL if the client does</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> not have such a key/cert pair. */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e">grpc_ssl_credentials_create</a>(</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *pem_root_certs, <a class="code" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *pem_key_cert_pair);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment">/* Creates a composite credentials object. */</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7">grpc_composite_credentials_create</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds1,</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds2);</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment">/* Creates a compute engine credentials object.</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> WARNING: Do NOT use this credentials to connect to a non-google service as</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> this could result in an oauth2 token leak. */</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95">grpc_compute_engine_credentials_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772">grpc_max_auth_token_lifetime</a>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment">/* Creates a service account credentials object. May return NULL if the input is</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> invalid.</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> WARNING: Do NOT use this credentials to connect to a non-google service as</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> this could result in an oauth2 token leak.</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> - json_key is the JSON key string containing the client&#39;s private key.</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> - scope is a space-delimited list of the requested permissions.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> - token_lifetime is the lifetime of each token acquired through this service</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> account credentials. It should not exceed grpc_max_auth_token_lifetime</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> or will be cropped to this value. */</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a15aa83608fad085b6244de659d322b27">grpc_service_account_credentials_create</a>(</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *json_key, <span class="keyword">const</span> <span class="keywordtype">char</span> *scope, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">/* Creates a JWT credentials object. May return NULL if the input is invalid.</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> - json_key is the JSON key string containing the client&#39;s private key.</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> - token_lifetime is the lifetime of each Json Web Token (JWT) created with</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> this credentials. It should not exceed grpc_max_auth_token_lifetime or</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> will be cropped to this value. */</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#af26993774cc991debd61e4a84ed49187">grpc_service_account_jwt_access_credentials_create</a>(</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *json_key, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime);</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment">/* Creates an Oauth2 Refresh Token credentials object. May return NULL if the</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> input is invalid.</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> WARNING: Do NOT use this credentials to connect to a non-google service as</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> this could result in an oauth2 token leak.</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> - json_refresh_token is the JSON string containing the refresh token itself</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> along with a client_id and client_secret. */</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">grpc_refresh_token_credentials_create</a>(</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *json_refresh_token);</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment">/* Creates an Oauth2 Access Token credentials with an access token that was</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> aquired by an out of band mechanism. */</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041">grpc_access_token_credentials_create</a>(</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *access_token);</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment">/* Creates an IAM credentials object. */</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3">grpc_iam_credentials_create</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *authorization_token,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *authority_selector);</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">/* --- Secure channel creation. --- */</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment">/* The caller of the secure_channel_create functions may override the target</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> name used for SSL host name checking using this channel argument which is of</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> type GRPC_ARG_STRING. This *should* be used for testing only.</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> If this argument is not specified, the name used for SSL host name checking</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> will be the target parameter (assuming that the secure channel is an SSL</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> channel). If this parameter is specified and the underlying is not an SSL</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> channel, it will just be ignored. */</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#a218bf55b665134a11baf07ada5980825"> 152</a></span>&#160;<span class="preprocessor">#define GRPC_SSL_TARGET_NAME_OVERRIDE_ARG &quot;grpc.ssl_target_name_override&quot;</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment">/* Creates a secure channel using the passed-in credentials. */</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<a class="code" href="structgrpc__channel.html">grpc_channel</a> *<a class="code" href="grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4">grpc_secure_channel_create</a>(<a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds,</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *target,</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment">/* --- grpc_server_credentials object. ---</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> A server credentials object represents a way to authenticate a server. */</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
+<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#aa724192e56fdc03827846f16752deccc"> 163</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> <a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a>;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment">/* Releases a server_credentials object.</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> The creator of the server_credentials object is responsible for its release.</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea">grpc_server_credentials_release</a>(<a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds);</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment">/* Creates an SSL server_credentials object.</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> - pem_roots_cert is the NULL-terminated string containing the PEM encoding of</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> the client root certificates. This parameter may be NULL if the server does</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment"> not want the client to be authenticated with SSL.</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> - pem_key_cert_pairs is an array private key / certificate chains of the</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> server. This parameter cannot be NULL.</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> - num_key_cert_pairs indicates the number of items in the private_key_files</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> and cert_chain_files parameters. It should be at least 1.</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> - force_client_auth, if set to non-zero will force the client to authenticate</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"> with an SSL cert. Note that this option is ignored if pem_root_certs is</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> NULL. */</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *<a class="code" href="grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9">grpc_ssl_server_credentials_create</a>(</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *pem_root_certs, <a class="code" href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a> *pem_key_cert_pairs,</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordtype">size_t</span> num_key_cert_pairs, <span class="keywordtype">int</span> force_client_auth);</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment">/* --- Server-side secure ports. --- */</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment">/* Add a HTTP2 over an encrypted link over tcp listener.</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment"> Returns bound port number on success, 0 on failure.</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment"> REQUIRES: server not started */</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keywordtype">int</span> <a class="code" href="grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59">grpc_server_add_secure_http2_port</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keyword">const</span> <span class="keywordtype">char</span> *addr,</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <a class="code" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds);</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment">/* --- Call specific credentials. --- */</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment">/* Sets a credentials to a call. Can only be called on the client side before</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> grpc_call_start_batch. */</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<a class="code" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60">grpc_call_set_credentials</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call,</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *creds);</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment">/* --- Authentication Context. --- */</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment">/* TODO(jboeuf): Define some well-known property names. */</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#aff82fdff9e7c40c4dd4bdc650e38e25a"> 204</a></span>&#160;<span class="preprocessor">#define GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME &quot;transport_security_type&quot;</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#a35a35c597b7090b8ac7e2d854c9bcc7a"> 205</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SSL_TRANSPORT_SECURITY_TYPE &quot;ssl&quot;</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#afee5e0fade6e0af1954529f1f08afe0c"> 207</a></span>&#160;<span class="preprocessor">#define GRPC_X509_CN_PROPERTY_NAME &quot;x509_common_name&quot;</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#a1412421653b7999544296f56025a0f36"> 208</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_X509_SAN_PROPERTY_NAME &quot;x509_subject_alternative_name&quot;</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="grpc__security_8h.html#aa13f0724cb7ff99995d7f0881c01d553"> 210</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a>;</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;</div>
+<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="structgrpc__auth__property__iterator.html"> 212</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> {</div>
+<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58"> 213</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58">ctx</a>;</div>
+<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6"> 214</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6">index</a>;</div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7"> 215</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7">name</a>;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;} <a class="code" href="grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf">grpc_auth_property_iterator</a>;</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment">/* value, if not NULL, is guaranteed to be NULL terminated. */</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="structgrpc__auth__property.html"> 219</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__auth__property.html">grpc_auth_property</a> {</div>
+<div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27"> 220</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27">name</a>;</div>
+<div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e"> 221</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e">value</a>;</div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101"> 222</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101">value_length</a>;</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;} <a class="code" href="grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429">grpc_auth_property</a>;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment">/* Returns NULL when the iterator is at the end. */</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="keyword">const</span> <a class="code" href="structgrpc__auth__property.html">grpc_auth_property</a> *<a class="code" href="grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">grpc_auth_property_iterator_next</a>(</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> *it);</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment">/* Iterates over the auth context. */</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<a class="code" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> <a class="code" href="grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780">grpc_auth_context_property_iterator</a>(</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx);</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment">/* Gets the peer identity. Returns an empty iterator (first _next will return</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment"> NULL) if the peer is not authenticated. */</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<a class="code" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> <a class="code" href="grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced">grpc_auth_context_peer_identity</a>(</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx);</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="comment">/* Finds a property in the context. May return an empty iterator (first _next</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> will return NULL) if no property with this name was found in the context. */</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<a class="code" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> <a class="code" href="grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7">grpc_auth_context_find_properties_by_name</a>(</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx, <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment">/* Gets the name of the property that indicates the peer identity. Will return</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"> NULL if the peer is not authenticated. */</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23">grpc_auth_context_peer_identity_property_name</a>(</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx);</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment">/* Returns 1 if the peer is authenticated, 0 otherwise. */</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="keywordtype">int</span> <a class="code" href="grpc__security_8h.html#af33fe6681dedb389edbf708020680093">grpc_auth_context_peer_is_authenticated</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx);</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="comment">/* Gets the auth context from the call. Caller needs to call</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"> grpc_auth_context_release on the returned context. */</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe">grpc_call_auth_context</a>(<a class="code" href="structgrpc__call.html">grpc_call</a> *call);</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment">/* Releases the auth context returned from grpc_call_auth_context. */</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="keywordtype">void</span> <a class="code" href="grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9">grpc_auth_context_release</a>(<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *context);</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_GRPC_SECURITY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__auth__context_html"><div class="ttname"><a href="structgrpc__auth__context.html">grpc_auth_context</a></div><div class="ttdef"><b>Definition:</b> security_context.h:49</div></div>
+<div class="ttc" id="grpc__security_8h_html_a5d0db200d00b62b79138472dc9b1fe59"><div class="ttname"><a href="grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59">grpc_server_add_secure_http2_port</a></div><div class="ttdeci">int grpc_server_add_secure_http2_port(grpc_server *server, const char *addr, grpc_server_credentials *creds)</div><div class="ttdef"><b>Definition:</b> server_secure_chttp2.c:196</div></div>
+<div class="ttc" id="structgrpc__auth__property_html_a07359a178c29240cab42a89ef047b101"><div class="ttname"><a href="structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101">grpc_auth_property::value_length</a></div><div class="ttdeci">size_t value_length</div><div class="ttdef"><b>Definition:</b> grpc_security.h:222</div></div>
+<div class="ttc" id="grpc__security_8h_html_a56de54ae2563e67e236c10e8fa419f60"><div class="ttname"><a href="grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60">grpc_call_set_credentials</a></div><div class="ttdeci">grpc_call_error grpc_call_set_credentials(grpc_call *call, grpc_credentials *creds)</div><div class="ttdef"><b>Definition:</b> security_context.c:47</div></div>
+<div class="ttc" id="grpc__security_8h_html_a4d63d4cac74652ec3fac7782acb4a2d4"><div class="ttname"><a href="grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4">grpc_secure_channel_create</a></div><div class="ttdeci">grpc_channel * grpc_secure_channel_create(grpc_credentials *creds, const char *target, const grpc_channel_args *args)</div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:185</div></div>
+<div class="ttc" id="grpc__security_8h_html_a6c01e107d41e964458fdf701b8b81440"><div class="ttname"><a href="grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440">grpc_credentials_release</a></div><div class="ttdeci">void grpc_credentials_release(grpc_credentials *creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:93</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="structgrpc__channel_html"><div class="ttname"><a href="structgrpc__channel.html">grpc_channel</a></div><div class="ttdef"><b>Definition:</b> channel.c:61</div></div>
+<div class="ttc" id="structgrpc__auth__property_html_af44f45ac4673a0298d00354c47d0907e"><div class="ttname"><a href="structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e">grpc_auth_property::value</a></div><div class="ttdeci">char * value</div><div class="ttdef"><b>Definition:</b> grpc_security.h:221</div></div>
+<div class="ttc" id="grpc__security_8h_html_a4f65f01fb23e963cc88bcdfbede70da7"><div class="ttname"><a href="grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7">grpc_composite_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_composite_credentials_create(grpc_credentials *creds1, grpc_credentials *creds2)</div><div class="ttdef"><b>Definition:</b> credentials.c:1097</div></div>
+<div class="ttc" id="grpc__security_8h_html_a6112c5b60b1c0197531f80fdc56f7772"><div class="ttname"><a href="grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772">grpc_max_auth_token_lifetime</a></div><div class="ttdeci">const gpr_timespec grpc_max_auth_token_lifetime</div><div class="ttdef"><b>Definition:</b> json_token.c:52</div></div>
+<div class="ttc" id="grpc__security_8h_html_a5e3fb8f208c302245a1392c7ef16d170"><div class="ttname"><a href="grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170">grpc_google_default_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_google_default_credentials_create(void)</div><div class="ttdef"><b>Definition:</b> google_default_credentials.c:164</div></div>
+<div class="ttc" id="structgrpc__ssl__pem__key__cert__pair_html_a2d4e3bdbc59d906bc9ca8b873120fd72"><div class="ttname"><a href="structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72">grpc_ssl_pem_key_cert_pair::private_key</a></div><div class="ttdeci">const char * private_key</div><div class="ttdef"><b>Definition:</b> grpc_security.h:74</div></div>
+<div class="ttc" id="grpc__security_8h_html_ac20e3890d5e5e0de6ae6b5cb57cae1ae"><div class="ttname"><a href="grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">grpc_auth_property_iterator_next</a></div><div class="ttdeci">const grpc_auth_property * grpc_auth_property_iterator_next(grpc_auth_property_iterator *it)</div><div class="ttdef"><b>Definition:</b> security_context.c:193</div></div>
+<div class="ttc" id="structgrpc__auth__property_html_a83fb830ffe7321265dc9b628e9246a27"><div class="ttname"><a href="structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27">grpc_auth_property::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> grpc_security.h:220</div></div>
+<div class="ttc" id="structgrpc__auth__property__iterator_html_a971904d29fa6f6ca6a853d078cae2f58"><div class="ttname"><a href="structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58">grpc_auth_property_iterator::ctx</a></div><div class="ttdeci">const grpc_auth_context * ctx</div><div class="ttdef"><b>Definition:</b> grpc_security.h:213</div></div>
+<div class="ttc" id="grpc__security_8h_html_ac05022ccd5b972ba089950437727ff23"><div class="ttname"><a href="grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23">grpc_auth_context_peer_identity_property_name</a></div><div class="ttdeci">const char * grpc_auth_context_peer_identity_property_name(const grpc_auth_context *ctx)</div><div class="ttdef"><b>Definition:</b> security_context.c:175</div></div>
+<div class="ttc" id="grpc__security_8h_html_af33fe6681dedb389edbf708020680093"><div class="ttname"><a href="grpc__security_8h.html#af33fe6681dedb389edbf708020680093">grpc_auth_context_peer_is_authenticated</a></div><div class="ttdeci">int grpc_auth_context_peer_is_authenticated(const grpc_auth_context *ctx)</div><div class="ttdef"><b>Definition:</b> security_context.c:180</div></div>
+<div class="ttc" id="grpc__security_8h_html_a0d627ca897718091e4ceca5dce3ef10e"><div class="ttname"><a href="grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e">grpc_ssl_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_ssl_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pair)</div><div class="ttdef"><b>Definition:</b> credentials.c:294</div></div>
+<div class="ttc" id="structgrpc__server__credentials_html"><div class="ttname"><a href="structgrpc__server__credentials.html">grpc_server_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:216</div></div>
+<div class="ttc" id="structgrpc__credentials_html"><div class="ttname"><a href="structgrpc__credentials.html">grpc_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:145</div></div>
+<div class="ttc" id="structgrpc__auth__property__iterator_html_a3838efa5eb622c7e2c071497132b1cc7"><div class="ttname"><a href="structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7">grpc_auth_property_iterator::name</a></div><div class="ttdeci">const char * name</div><div class="ttdef"><b>Definition:</b> grpc_security.h:215</div></div>
+<div class="ttc" id="grpc_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785b"><div class="ttname"><a href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a></div><div class="ttdeci">grpc_call_error</div><div class="ttdoc">Result of a grpc call. </div><div class="ttdef"><b>Definition:</b> grpc.h:156</div></div>
+<div class="ttc" id="structgrpc__auth__property__iterator_html_ac2b2a0501f097562a6d8856e3da5e7e6"><div class="ttname"><a href="structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6">grpc_auth_property_iterator::index</a></div><div class="ttdeci">size_t index</div><div class="ttdef"><b>Definition:</b> grpc_security.h:214</div></div>
+<div class="ttc" id="grpc__security_8h_html_a7ef8e179bb5d15c81dfd363924db0041"><div class="ttname"><a href="grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041">grpc_access_token_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_access_token_credentials_create(const char *access_token)</div><div class="ttdef"><b>Definition:</b> credentials.c:864</div></div>
+<div class="ttc" id="grpc__security_8h_html_ae42c358e718847c988aa690cb0fccab3"><div class="ttname"><a href="grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3">grpc_iam_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_iam_credentials_create(const char *authorization_token, const char *authority_selector)</div><div class="ttdef"><b>Definition:</b> credentials.c:1205</div></div>
+<div class="ttc" id="structgrpc__auth__property__iterator_html"><div class="ttname"><a href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a></div><div class="ttdef"><b>Definition:</b> grpc_security.h:212</div></div>
+<div class="ttc" id="structgrpc__ssl__pem__key__cert__pair_html"><div class="ttname"><a href="structgrpc__ssl__pem__key__cert__pair.html">grpc_ssl_pem_key_cert_pair</a></div><div class="ttdef"><b>Definition:</b> grpc_security.h:71</div></div>
+<div class="ttc" id="grpc__security_8h_html_a26981fdcb987d885b25d34c7dc66e4cf"><div class="ttname"><a href="grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf">grpc_auth_property_iterator</a></div><div class="ttdeci">struct grpc_auth_property_iterator grpc_auth_property_iterator</div></div>
+<div class="ttc" id="grpc__security_8h_html_a7a2440ad02b6a96adbd2c6e5d66fd7d2"><div class="ttname"><a href="grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2">grpc_refresh_token_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_refresh_token_credentials_create(const char *json_refresh_token)</div><div class="ttdef"><b>Definition:</b> credentials.c:762</div></div>
+<div class="ttc" id="structgrpc__ssl__pem__key__cert__pair_html_a483c3601705853f48dfbc8ee66d5e656"><div class="ttname"><a href="structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656">grpc_ssl_pem_key_cert_pair::cert_chain</a></div><div class="ttdeci">const char * cert_chain</div><div class="ttdef"><b>Definition:</b> grpc_security.h:78</div></div>
+<div class="ttc" id="grpc__security_8h_html_a15aa83608fad085b6244de659d322b27"><div class="ttname"><a href="grpc__security_8h.html#a15aa83608fad085b6244de659d322b27">grpc_service_account_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_service_account_credentials_create(const char *json_key, const char *scope, gpr_timespec token_lifetime)</div><div class="ttdef"><b>Definition:</b> credentials.c:689</div></div>
+<div class="ttc" id="grpc__security_8h_html_a144c6f3a56c8592489b3978e0c5caced"><div class="ttname"><a href="grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced">grpc_auth_context_peer_identity</a></div><div class="ttdeci">grpc_auth_property_iterator grpc_auth_context_peer_identity(const grpc_auth_context *ctx)</div><div class="ttdef"><b>Definition:</b> security_context.c:225</div></div>
+<div class="ttc" id="structgrpc__auth__property_html"><div class="ttname"><a href="structgrpc__auth__property.html">grpc_auth_property</a></div><div class="ttdef"><b>Definition:</b> grpc_security.h:219</div></div>
+<div class="ttc" id="grpc__security_8h_html_a3beb3fe683139856e1a13c27d760eb95"><div class="ttname"><a href="grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95">grpc_compute_engine_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_compute_engine_credentials_create(void)</div><div class="ttdef"><b>Definition:</b> credentials.c:632</div></div>
+<div class="ttc" id="grpc__security_8h_html_a010fe7d27deaa2ea50b765b48dbad429"><div class="ttname"><a href="grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429">grpc_auth_property</a></div><div class="ttdeci">struct grpc_auth_property grpc_auth_property</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="grpc__security_8h_html_aaad9fed074f7aebed63ed075bb6ff780"><div class="ttname"><a href="grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780">grpc_auth_context_property_iterator</a></div><div class="ttdeci">grpc_auth_property_iterator grpc_auth_context_property_iterator(const grpc_auth_context *ctx)</div><div class="ttdef"><b>Definition:</b> security_context.c:185</div></div>
+<div class="ttc" id="grpc__security_8h_html_af26993774cc991debd61e4a84ed49187"><div class="ttname"><a href="grpc__security_8h.html#af26993774cc991debd61e4a84ed49187">grpc_service_account_jwt_access_credentials_create</a></div><div class="ttdeci">grpc_credentials * grpc_service_account_jwt_access_credentials_create(const char *json_key, gpr_timespec token_lifetime)</div><div class="ttdef"><b>Definition:</b> credentials.c:426</div></div>
+<div class="ttc" id="grpc__security_8h_html_a0b439e6d2875c8b5e2e901a959f6a2fe"><div class="ttname"><a href="grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe">grpc_call_auth_context</a></div><div class="ttdeci">grpc_auth_context * grpc_call_auth_context(grpc_call *call)</div><div class="ttdef"><b>Definition:</b> security_context.c:72</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="grpc__security_8h_html_a6e9f9320f4f8d2d534d04ed642f032ea"><div class="ttname"><a href="grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea">grpc_server_credentials_release</a></div><div class="ttdeci">void grpc_server_credentials_release(grpc_server_credentials *creds)</div><div class="ttdef"><b>Definition:</b> credentials.c:138</div></div>
+<div class="ttc" id="grpc__security_8h_html_a5298ac64614986581fc314f63fa9afd7"><div class="ttname"><a href="grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7">grpc_auth_context_find_properties_by_name</a></div><div class="ttdeci">grpc_auth_property_iterator grpc_auth_context_find_properties_by_name(const grpc_auth_context *ctx, const char *name)</div><div class="ttdef"><b>Definition:</b> security_context.c:216</div></div>
+<div class="ttc" id="grpc__security_8h_html_a2eea99f76030b21ad58afdf615f4d2b9"><div class="ttname"><a href="grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9">grpc_auth_context_release</a></div><div class="ttdeci">void grpc_auth_context_release(grpc_auth_context *context)</div><div class="ttdef"><b>Definition:</b> security_context.c:84</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="structgrpc__call_html"><div class="ttname"><a href="structgrpc__call.html">grpc_call</a></div><div class="ttdef"><b>Definition:</b> call.c:143</div></div>
+<div class="ttc" id="grpc__security_8h_html_a3382907a4689c034a6f55bab4d5135b9"><div class="ttname"><a href="grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9">grpc_ssl_server_credentials_create</a></div><div class="ttdeci">grpc_server_credentials * grpc_ssl_server_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth)</div><div class="ttdef"><b>Definition:</b> credentials.c:305</div></div>
+<div class="ttc" id="structgrpc__server_html"><div class="ttname"><a href="structgrpc__server.html">grpc_server</a></div><div class="ttdef"><b>Definition:</b> server.c:181</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/histogram_8c.html b/doc/ref/core.internal/html/histogram_8c.html
new file mode 100644
index 0000000000..858f762c24
--- /dev/null
+++ b/doc/ref/core.internal/html/histogram_8c.html
@@ -0,0 +1,486 @@
+<!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: src/core/support/histogram.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">histogram.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="histogram_8h_source.html">grpc/support/histogram.h</a>&gt;</code><br/>
+<code>#include &lt;math.h&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html">gpr_histogram</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5da9d3dac4262c5ae1e974a649edbd5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a5da9d3dac4262c5ae1e974a649edbd5c">gpr_histogram_create</a> (double resolution, double max_bucket_start)</td></tr>
+<tr class="separator:a5da9d3dac4262c5ae1e974a649edbd5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7411a760aa075c1c27eeb9249d951c6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a7411a760aa075c1c27eeb9249d951c6c">gpr_histogram_destroy</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a7411a760aa075c1c27eeb9249d951c6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63815a52b0236626a30480915ff51847"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a63815a52b0236626a30480915ff51847">gpr_histogram_add</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h, double x)</td></tr>
+<tr class="separator:a63815a52b0236626a30480915ff51847"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41caac8747588e75cf5fed974fcd90f2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a41caac8747588e75cf5fed974fcd90f2">gpr_histogram_merge</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *dst, <a class="el" href="structgpr__histogram.html">gpr_histogram</a> *src)</td></tr>
+<tr class="separator:a41caac8747588e75cf5fed974fcd90f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4092227c6ba42490fd0311f5f8223e73"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a4092227c6ba42490fd0311f5f8223e73">gpr_histogram_merge_contents</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *dst, const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count)</td></tr>
+<tr class="separator:a4092227c6ba42490fd0311f5f8223e73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29c6f43aed5d521d17bf7677b2fbee39"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a29c6f43aed5d521d17bf7677b2fbee39">gpr_histogram_percentile</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h, double percentile)</td></tr>
+<tr class="separator:a29c6f43aed5d521d17bf7677b2fbee39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fe371014a644b04cb7a3cc10d0c4d54"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a5fe371014a644b04cb7a3cc10d0c4d54">gpr_histogram_mean</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a5fe371014a644b04cb7a3cc10d0c4d54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36846d8c0ae93fa49fb4a1d07d8a2872"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a36846d8c0ae93fa49fb4a1d07d8a2872">gpr_histogram_stddev</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a36846d8c0ae93fa49fb4a1d07d8a2872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36df07c41d7d9e92e2b7cfce5cba2083"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a36df07c41d7d9e92e2b7cfce5cba2083">gpr_histogram_variance</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a36df07c41d7d9e92e2b7cfce5cba2083"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aede32c052f8cfb6c645773dc02abb269"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#aede32c052f8cfb6c645773dc02abb269">gpr_histogram_maximum</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:aede32c052f8cfb6c645773dc02abb269"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02493e2e022e463dcaf0738cc2f57e9e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a02493e2e022e463dcaf0738cc2f57e9e">gpr_histogram_minimum</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a02493e2e022e463dcaf0738cc2f57e9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9789e9d2bfe80302771cb7037ff67109"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a9789e9d2bfe80302771cb7037ff67109">gpr_histogram_count</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a9789e9d2bfe80302771cb7037ff67109"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f5945872847d0d3e460181bb11c8414"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a6f5945872847d0d3e460181bb11c8414">gpr_histogram_sum</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a6f5945872847d0d3e460181bb11c8414"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a651cd46647b768e4c7ffceb20d4ac523"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#a651cd46647b768e4c7ffceb20d4ac523">gpr_histogram_sum_of_squares</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a651cd46647b768e4c7ffceb20d4ac523"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcd82f9ac3a24d76fa43d6ee38cd03d9"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8c.html#adcd82f9ac3a24d76fa43d6ee38cd03d9">gpr_histogram_get_contents</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h, size_t *size)</td></tr>
+<tr class="separator:adcd82f9ac3a24d76fa43d6ee38cd03d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a63815a52b0236626a30480915ff51847"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_histogram_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>x</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9789e9d2bfe80302771cb7037ff67109"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_count </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5da9d3dac4262c5ae1e974a649edbd5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__histogram.html">gpr_histogram</a>* gpr_histogram_create </td>
+ <td>(</td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>resolution</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>max_bucket_start</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7411a760aa075c1c27eeb9249d951c6c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_histogram_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adcd82f9ac3a24d76fa43d6ee38cd03d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>* gpr_histogram_get_contents </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aede32c052f8cfb6c645773dc02abb269"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_maximum </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fe371014a644b04cb7a3cc10d0c4d54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_mean </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a41caac8747588e75cf5fed974fcd90f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_histogram_merge </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>src</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4092227c6ba42490fd0311f5f8223e73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_histogram_merge_contents </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>data_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>min_seen</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>max_seen</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>sum</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>sum_of_squares</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02493e2e022e463dcaf0738cc2f57e9e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_minimum </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29c6f43aed5d521d17bf7677b2fbee39"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_percentile </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>percentile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a36846d8c0ae93fa49fb4a1d07d8a2872"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_stddev </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f5945872847d0d3e460181bb11c8414"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_sum </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a651cd46647b768e4c7ffceb20d4ac523"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_sum_of_squares </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a36df07c41d7d9e92e2b7cfce5cba2083"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_variance </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/histogram_8h.html b/doc/ref/core.internal/html/histogram_8h.html
new file mode 100644
index 0000000000..784a5e5dc2
--- /dev/null
+++ b/doc/ref/core.internal/html/histogram_8h.html
@@ -0,0 +1,495 @@
+<!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: include/grpc/support/histogram.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">histogram.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+</div>
+<p><a href="histogram_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7125b0cef0e61a441a17f887dbc073fc"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgpr__histogram.html">gpr_histogram</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a7125b0cef0e61a441a17f887dbc073fc">gpr_histogram</a></td></tr>
+<tr class="separator:a7125b0cef0e61a441a17f887dbc073fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5da9d3dac4262c5ae1e974a649edbd5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c">gpr_histogram_create</a> (double resolution, double max_bucket_start)</td></tr>
+<tr class="separator:a5da9d3dac4262c5ae1e974a649edbd5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7411a760aa075c1c27eeb9249d951c6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c">gpr_histogram_destroy</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h)</td></tr>
+<tr class="separator:a7411a760aa075c1c27eeb9249d951c6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63815a52b0236626a30480915ff51847"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a63815a52b0236626a30480915ff51847">gpr_histogram_add</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *h, double x)</td></tr>
+<tr class="separator:a63815a52b0236626a30480915ff51847"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a41caac8747588e75cf5fed974fcd90f2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2">gpr_histogram_merge</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *dst, <a class="el" href="structgpr__histogram.html">gpr_histogram</a> *src)</td></tr>
+<tr class="separator:a41caac8747588e75cf5fed974fcd90f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a0a1b854c2af4d29175872fe5bb4431"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431">gpr_histogram_percentile</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram, double percentile)</td></tr>
+<tr class="separator:a1a0a1b854c2af4d29175872fe5bb4431"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14d68ff71978bda93a07d019d993d83c"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a14d68ff71978bda93a07d019d993d83c">gpr_histogram_mean</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a14d68ff71978bda93a07d019d993d83c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0979c6470e9192e5f83bcab01542dd91"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91">gpr_histogram_stddev</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a0979c6470e9192e5f83bcab01542dd91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ef00ceaa619ca09da4de17fc5a5769b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b">gpr_histogram_variance</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a4ef00ceaa619ca09da4de17fc5a5769b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71e5aa88087c8595c7f5d01750f919cb"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb">gpr_histogram_maximum</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a71e5aa88087c8595c7f5d01750f919cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab89af54f76a690d82d1f065ceeda6a76"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76">gpr_histogram_minimum</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:ab89af54f76a690d82d1f065ceeda6a76"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a242b0541ee25271812d867d8f2734255"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a242b0541ee25271812d867d8f2734255">gpr_histogram_count</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a242b0541ee25271812d867d8f2734255"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0332c47f841d8b0607e3327d8bc9a933"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933">gpr_histogram_sum</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a0332c47f841d8b0607e3327d8bc9a933"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5788652eb5350afcc534f563fd0265d3"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#a5788652eb5350afcc534f563fd0265d3">gpr_histogram_sum_of_squares</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram)</td></tr>
+<tr class="separator:a5788652eb5350afcc534f563fd0265d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7807dc3f06172d1513498761c3ad8c4"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4">gpr_histogram_get_contents</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram, size_t *count)</td></tr>
+<tr class="separator:aa7807dc3f06172d1513498761c3ad8c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1acf09b75809398b4e45729e6a3ba30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30">gpr_histogram_merge_contents</a> (<a class="el" href="structgpr__histogram.html">gpr_histogram</a> *histogram, const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count)</td></tr>
+<tr class="separator:aa1acf09b75809398b4e45729e6a3ba30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7125b0cef0e61a441a17f887dbc073fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgpr__histogram.html">gpr_histogram</a> <a class="el" href="structgpr__histogram.html">gpr_histogram</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a63815a52b0236626a30480915ff51847"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_histogram_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>x</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a242b0541ee25271812d867d8f2734255"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_count </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5da9d3dac4262c5ae1e974a649edbd5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__histogram.html">gpr_histogram</a>* gpr_histogram_create </td>
+ <td>(</td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>resolution</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>max_bucket_start</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7411a760aa075c1c27eeb9249d951c6c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_histogram_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>h</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7807dc3f06172d1513498761c3ad8c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>* gpr_histogram_get_contents </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a71e5aa88087c8595c7f5d01750f919cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_maximum </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14d68ff71978bda93a07d019d993d83c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_mean </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a41caac8747588e75cf5fed974fcd90f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_histogram_merge </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>src</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa1acf09b75809398b4e45729e6a3ba30"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_histogram_merge_contents </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>data_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>min_seen</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>max_seen</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>sum</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>sum_of_squares</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab89af54f76a690d82d1f065ceeda6a76"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_minimum </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a0a1b854c2af4d29175872fe5bb4431"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_percentile </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>percentile</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0979c6470e9192e5f83bcab01542dd91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_stddev </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0332c47f841d8b0607e3327d8bc9a933"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_sum </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5788652eb5350afcc534f563fd0265d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_sum_of_squares </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4ef00ceaa619ca09da4de17fc5a5769b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram_variance </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__histogram.html">gpr_histogram</a> *&#160;</td>
+ <td class="paramname"><em>histogram</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/histogram_8h_source.html b/doc/ref/core.internal/html/histogram_8h_source.html
new file mode 100644
index 0000000000..42df144854
--- /dev/null
+++ b/doc/ref/core.internal/html/histogram_8h_source.html
@@ -0,0 +1,198 @@
+<!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: include/grpc/support/histogram.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">histogram.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="histogram_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_HISTOGRAM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_HISTOGRAM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="histogram_8h.html#a7125b0cef0e61a441a17f887dbc073fc"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgpr__histogram.html">gpr_histogram</a> <a class="code" href="structgpr__histogram.html">gpr_histogram</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *<a class="code" href="histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c">gpr_histogram_create</a>(<span class="keywordtype">double</span> resolution, <span class="keywordtype">double</span> max_bucket_start);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c">gpr_histogram_destroy</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *h);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="histogram_8h.html#a63815a52b0236626a30480915ff51847">gpr_histogram_add</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *h, <span class="keywordtype">double</span> x);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* The following merges the second histogram into the first. It only works</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> if they have the same buckets and resolution. Returns 0 on failure, 1</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> on success */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">int</span> <a class="code" href="histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2">gpr_histogram_merge</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *dst, <a class="code" href="structgpr__histogram.html">gpr_histogram</a> *src);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431">gpr_histogram_percentile</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram, <span class="keywordtype">double</span> percentile);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a14d68ff71978bda93a07d019d993d83c">gpr_histogram_mean</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91">gpr_histogram_stddev</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b">gpr_histogram_variance</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb">gpr_histogram_maximum</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76">gpr_histogram_minimum</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a242b0541ee25271812d867d8f2734255">gpr_histogram_count</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933">gpr_histogram_sum</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keywordtype">double</span> <a class="code" href="histogram_8h.html#a5788652eb5350afcc534f563fd0265d3">gpr_histogram_sum_of_squares</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *<a class="code" href="histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4">gpr_histogram_get_contents</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">size_t</span> *<a class="code" href="structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d">count</a>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">void</span> <a class="code" href="histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30">gpr_histogram_merge_contents</a>(<a class="code" href="structgpr__histogram.html">gpr_histogram</a> *histogram,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *data, <span class="keywordtype">size_t</span> data_count,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf">min_seen</a>, <span class="keywordtype">double</span> <a class="code" href="structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1">max_seen</a>, <span class="keywordtype">double</span> <a class="code" href="structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a">sum</a>,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1">sum_of_squares</a>, <span class="keywordtype">double</span> <a class="code" href="structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d">count</a>);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_HISTOGRAM_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgpr__histogram_html"><div class="ttname"><a href="structgpr__histogram.html">gpr_histogram</a></div><div class="ttdef"><b>Definition:</b> histogram.c:50</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="histogram_8h_html_a0332c47f841d8b0607e3327d8bc9a933"><div class="ttname"><a href="histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933">gpr_histogram_sum</a></div><div class="ttdeci">double gpr_histogram_sum(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:232</div></div>
+<div class="ttc" id="histogram_8h_html_ab89af54f76a690d82d1f065ceeda6a76"><div class="ttname"><a href="histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76">gpr_histogram_minimum</a></div><div class="ttdeci">double gpr_histogram_minimum(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:228</div></div>
+<div class="ttc" id="structgpr__histogram_html_a4b675fe1da756eba043d76ead28089a1"><div class="ttname"><a href="structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1">gpr_histogram::sum_of_squares</a></div><div class="ttdeci">double sum_of_squares</div><div class="ttdef"><b>Definition:</b> histogram.c:54</div></div>
+<div class="ttc" id="histogram_8h_html_a4ef00ceaa619ca09da4de17fc5a5769b"><div class="ttname"><a href="histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b">gpr_histogram_variance</a></div><div class="ttdeci">double gpr_histogram_variance(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:220</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="histogram_8h_html_a41caac8747588e75cf5fed974fcd90f2"><div class="ttname"><a href="histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2">gpr_histogram_merge</a></div><div class="ttdeci">int gpr_histogram_merge(gpr_histogram *dst, gpr_histogram *src)</div><div class="ttdef"><b>Definition:</b> histogram.c:128</div></div>
+<div class="ttc" id="structgpr__histogram_html_abbeba96ddecdda3b716922c510fc1cbf"><div class="ttname"><a href="structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf">gpr_histogram::min_seen</a></div><div class="ttdeci">double min_seen</div><div class="ttdef"><b>Definition:</b> histogram.c:61</div></div>
+<div class="ttc" id="histogram_8h_html_aa1acf09b75809398b4e45729e6a3ba30"><div class="ttname"><a href="histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30">gpr_histogram_merge_contents</a></div><div class="ttdeci">void gpr_histogram_merge_contents(gpr_histogram *histogram, const gpr_uint32 *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count)</div><div class="ttdef"><b>Definition:</b> histogram.c:140</div></div>
+<div class="ttc" id="histogram_8h_html_a71e5aa88087c8595c7f5d01750f919cb"><div class="ttname"><a href="histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb">gpr_histogram_maximum</a></div><div class="ttdeci">double gpr_histogram_maximum(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:226</div></div>
+<div class="ttc" id="structgpr__histogram_html_a283be15ea1e5ba755f9b4b7d0d70402d"><div class="ttname"><a href="structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d">gpr_histogram::count</a></div><div class="ttdeci">double count</div><div class="ttdef"><b>Definition:</b> histogram.c:56</div></div>
+<div class="ttc" id="histogram_8h_html_a14d68ff71978bda93a07d019d993d83c"><div class="ttname"><a href="histogram_8h.html#a14d68ff71978bda93a07d019d993d83c">gpr_histogram_mean</a></div><div class="ttdeci">double gpr_histogram_mean(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:211</div></div>
+<div class="ttc" id="histogram_8h_html_a5da9d3dac4262c5ae1e974a649edbd5c"><div class="ttname"><a href="histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c">gpr_histogram_create</a></div><div class="ttdeci">gpr_histogram * gpr_histogram_create(double resolution, double max_bucket_start)</div><div class="ttdef"><b>Definition:</b> histogram.c:89</div></div>
+<div class="ttc" id="histogram_8h_html_a5788652eb5350afcc534f563fd0265d3"><div class="ttname"><a href="histogram_8h.html#a5788652eb5350afcc534f563fd0265d3">gpr_histogram_sum_of_squares</a></div><div class="ttdeci">double gpr_histogram_sum_of_squares(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:234</div></div>
+<div class="ttc" id="histogram_8h_html_a242b0541ee25271812d867d8f2734255"><div class="ttname"><a href="histogram_8h.html#a242b0541ee25271812d867d8f2734255">gpr_histogram_count</a></div><div class="ttdeci">double gpr_histogram_count(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:230</div></div>
+<div class="ttc" id="histogram_8h_html_a63815a52b0236626a30480915ff51847"><div class="ttname"><a href="histogram_8h.html#a63815a52b0236626a30480915ff51847">gpr_histogram_add</a></div><div class="ttdeci">void gpr_histogram_add(gpr_histogram *h, double x)</div><div class="ttdef"><b>Definition:</b> histogram.c:115</div></div>
+<div class="ttc" id="structgpr__histogram_html_a1e154b0be9b7d5b4ee4ccbf955cd0b8a"><div class="ttname"><a href="structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a">gpr_histogram::sum</a></div><div class="ttdeci">double sum</div><div class="ttdef"><b>Definition:</b> histogram.c:52</div></div>
+<div class="ttc" id="structgpr__histogram_html_ac2fa92c952ba4d7edccefd7702701ee1"><div class="ttname"><a href="structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1">gpr_histogram::max_seen</a></div><div class="ttdeci">double max_seen</div><div class="ttdef"><b>Definition:</b> histogram.c:63</div></div>
+<div class="ttc" id="histogram_8h_html_a7411a760aa075c1c27eeb9249d951c6c"><div class="ttname"><a href="histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c">gpr_histogram_destroy</a></div><div class="ttdeci">void gpr_histogram_destroy(gpr_histogram *h)</div><div class="ttdef"><b>Definition:</b> histogram.c:110</div></div>
+<div class="ttc" id="histogram_8h_html_a0979c6470e9192e5f83bcab01542dd91"><div class="ttname"><a href="histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91">gpr_histogram_stddev</a></div><div class="ttdeci">double gpr_histogram_stddev(gpr_histogram *histogram)</div><div class="ttdef"><b>Definition:</b> histogram.c:216</div></div>
+<div class="ttc" id="histogram_8h_html_a1a0a1b854c2af4d29175872fe5bb4431"><div class="ttname"><a href="histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431">gpr_histogram_percentile</a></div><div class="ttdeci">double gpr_histogram_percentile(gpr_histogram *histogram, double percentile)</div><div class="ttdef"><b>Definition:</b> histogram.c:207</div></div>
+<div class="ttc" id="histogram_8h_html_aa7807dc3f06172d1513498761c3ad8c4"><div class="ttname"><a href="histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4">gpr_histogram_get_contents</a></div><div class="ttdeci">const gpr_uint32 * gpr_histogram_get_contents(gpr_histogram *histogram, size_t *count)</div><div class="ttdef"><b>Definition:</b> histogram.c:238</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/host__port_8c.html b/doc/ref/core.internal/html/host__port_8c.html
new file mode 100644
index 0000000000..56d782dcb4
--- /dev/null
+++ b/doc/ref/core.internal/html/host__port_8c.html
@@ -0,0 +1,179 @@
+<!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: src/core/support/host_port.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">host_port.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="host__port_8h_source.html">grpc/support/host_port.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a75d6ea0faeed039dc132873afce91508"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="host__port_8c.html#a75d6ea0faeed039dc132873afce91508">gpr_join_host_port</a> (char **out, const char *host, int port)</td></tr>
+<tr class="separator:a75d6ea0faeed039dc132873afce91508"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb0efdff2bb1b15d5e7edeb62ae4aea"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="host__port_8c.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">gpr_split_host_port</a> (const char *name, char **host, char **port)</td></tr>
+<tr class="separator:aacb0efdff2bb1b15d5e7edeb62ae4aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a75d6ea0faeed039dc132873afce91508"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_join_host_port </td>
+ <td>(</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>out</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aacb0efdff2bb1b15d5e7edeb62ae4aea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_split_host_port </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/host__port_8h.html b/doc/ref/core.internal/html/host__port_8h.html
new file mode 100644
index 0000000000..a8811d4598
--- /dev/null
+++ b/doc/ref/core.internal/html/host__port_8h.html
@@ -0,0 +1,176 @@
+<!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: include/grpc/support/host_port.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">host_port.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="host__port_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a75d6ea0faeed039dc132873afce91508"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="host__port_8h.html#a75d6ea0faeed039dc132873afce91508">gpr_join_host_port</a> (char **out, const char *host, int port)</td></tr>
+<tr class="separator:a75d6ea0faeed039dc132873afce91508"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb0efdff2bb1b15d5e7edeb62ae4aea"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">gpr_split_host_port</a> (const char *name, char **host, char **port)</td></tr>
+<tr class="separator:aacb0efdff2bb1b15d5e7edeb62ae4aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a75d6ea0faeed039dc132873afce91508"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_join_host_port </td>
+ <td>(</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>out</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aacb0efdff2bb1b15d5e7edeb62ae4aea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_split_host_port </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/host__port_8h_source.html b/doc/ref/core.internal/html/host__port_8h_source.html
new file mode 100644
index 0000000000..a75578f00c
--- /dev/null
+++ b/doc/ref/core.internal/html/host__port_8h_source.html
@@ -0,0 +1,165 @@
+<!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: include/grpc/support/host_port.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">host_port.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="host__port_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_HOST_PORT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_HOST_PORT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Given a host and port, creates a newly-allocated string of the form</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> &quot;host:port&quot; or &quot;[ho:st]:port&quot;, depending on whether the host contains colons</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> like an IPv6 literal. If the host is already bracketed, then additional</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> brackets will not be added.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> Usage is similar to gpr_asprintf: returns the number of bytes written</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> (excluding the final &#39;\0&#39;), and *out points to a string which must later be</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> destroyed using gpr_free().</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> In the unlikely event of an error, returns -1 and sets *out to NULL. */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">int</span> <a class="code" href="host__port_8h.html#a75d6ea0faeed039dc132873afce91508">gpr_join_host_port</a>(<span class="keywordtype">char</span> **out, <span class="keyword">const</span> <span class="keywordtype">char</span> *host, <span class="keywordtype">int</span> port);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Given a name in the form &quot;host:port&quot; or &quot;[ho:st]:port&quot;, split into hostname</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> and port number, into newly allocated strings, which must later be</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> destroyed using gpr_free().</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> Return 1 on success, 0 on failure. Guarantees *host and *port == NULL on</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> failure. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">int</span> <a class="code" href="host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">gpr_split_host_port</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keywordtype">char</span> **host, <span class="keywordtype">char</span> **port);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_HOST_PORT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="host__port_8h_html_aacb0efdff2bb1b15d5e7edeb62ae4aea"><div class="ttname"><a href="host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea">gpr_split_host_port</a></div><div class="ttdeci">int gpr_split_host_port(const char *name, char **host, char **port)</div><div class="ttdef"><b>Definition:</b> host_port.c:53</div></div>
+<div class="ttc" id="host__port_8h_html_a75d6ea0faeed039dc132873afce91508"><div class="ttname"><a href="host__port_8h.html#a75d6ea0faeed039dc132873afce91508">gpr_join_host_port</a></div><div class="ttdeci">int gpr_join_host_port(char **out, const char *host, int port)</div><div class="ttdef"><b>Definition:</b> host_port.c:43</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/hpack__parser_8c.html b/doc/ref/core.internal/html/hpack__parser_8c.html
new file mode 100644
index 0000000000..b2195f6bf8
--- /dev/null
+++ b/doc/ref/core.internal/html/hpack__parser_8c.html
@@ -0,0 +1,387 @@
+<!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: src/core/transport/chttp2/hpack_parser.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hpack_parser.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="hpack__parser_8h_source.html">src/core/transport/chttp2/hpack_parser.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;assert.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="bin__encoder_8h_source.html">src/core/transport/chttp2/bin_encoder.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ad3a7b3c7f62a05667162fb28247a07c2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2">binary_state</a> { <br/>
+&#160;&#160;<a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a36e0cd08af8b9cec8a5ae17c6a5c5124">NOT_BINARY</a>,
+<a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a500a293aa7eb4d4757a1f8c68e6130a2">B64_BYTE0</a>,
+<a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a55a85d993feb4d0602aa7321264b6803">B64_BYTE1</a>,
+<a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a67574c0700ab2dd5156af220443386d2">B64_BYTE2</a>,
+<br/>
+&#160;&#160;<a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2aabf8c05acae26139d5ba70316b749524">B64_BYTE3</a>
+<br/>
+ }</td></tr>
+<tr class="separator:ad3a7b3c7f62a05667162fb28247a07c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82ea1fc72cfd46090df5eb5f87ba1918"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918">first_byte_type</a> { <br/>
+&#160;&#160;<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acf55dbd5b43747a8de2b3475e776b2a9">INDEXED_FIELD</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab2d9a731d5c6871093edecbab8ec1b8a">INDEXED_FIELD_X</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ad521ba7e26b2f29b70f24ebe99a7b6d4">LITHDR_INCIDX</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918abc7a5a868dc1b4304662225ded589449">LITHDR_INCIDX_X</a>,
+<br/>
+&#160;&#160;<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acc616dbc2d6e6d99eb2879bc55a85e8c">LITHDR_INCIDX_V</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a21b8279ee1879c395b696774c516b925">LITHDR_NOTIDX</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a17dbb369763076fa7714c613ca4778b4">LITHDR_NOTIDX_X</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9108c78104ce0a038a1ee76f9d56ebb4">LITHDR_NOTIDX_V</a>,
+<br/>
+&#160;&#160;<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918aa4c98da3a42fad37a7eaaa74e76590e2">LITHDR_NVRIDX</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9e86cc54448658713f683983a377d364">LITHDR_NVRIDX_X</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab3fbe40c948e7abb4b587700f295c508">LITHDR_NVRIDX_V</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a01c9e4f4b7e8c618841fab7c6fab28d8">MAX_TBL_SIZE</a>,
+<br/>
+&#160;&#160;<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918adb841f9eb9a97d6b2cbcdbc72ecceca4">MAX_TBL_SIZE_X</a>,
+<a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a64b291c78f4399005e7e6d35274ac792">ILLEGAL</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a82ea1fc72cfd46090df5eb5f87ba1918"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71eda0fd38f30d8005251eb895de35ee"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35ee">is_binary_header</a> { <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea4940041097c06eed1076f5dc2de17d9a">BINARY_HEADER</a>,
+<a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea6b3fea68a44cbdbcd96fbdcf35d98a4c">PLAINTEXT_HEADER</a>,
+<a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea57e2b3994258d7216de08793daaa2b35">ERROR_HEADER</a>
+ }</td></tr>
+<tr class="separator:a71eda0fd38f30d8005251eb895de35ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae9f87d2fc6cdda2cfcedd228feff9a43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#ae9f87d2fc6cdda2cfcedd228feff9a43">grpc_chttp2_hpack_parser_init</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:ae9f87d2fc6cdda2cfcedd228feff9a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fc7e7f152280acc512689e138805eee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#a9fc7e7f152280acc512689e138805eee">grpc_chttp2_hpack_parser_set_has_priority</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p)</td></tr>
+<tr class="separator:a9fc7e7f152280acc512689e138805eee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae43cb55b0e7102694c68c29d93cd3573"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#ae43cb55b0e7102694c68c29d93cd3573">grpc_chttp2_hpack_parser_destroy</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p)</td></tr>
+<tr class="separator:ae43cb55b0e7102694c68c29d93cd3573"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a883d1c556ca6aaea2fbb04dda7928ebc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#a883d1c556ca6aaea2fbb04dda7928ebc">grpc_chttp2_hpack_parser_parse</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *beg, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *end)</td></tr>
+<tr class="separator:a883d1c556ca6aaea2fbb04dda7928ebc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a92d332cfe4cdd2fe066d8c187a19c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8c.html#a7a92d332cfe4cdd2fe066d8c187a19c3">grpc_chttp2_header_parser_parse</a> (void *hpack_parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:a7a92d332cfe4cdd2fe066d8c187a19c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="ad3a7b3c7f62a05667162fb28247a07c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2">binary_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ad3a7b3c7f62a05667162fb28247a07c2a36e0cd08af8b9cec8a5ae17c6a5c5124"></a>NOT_BINARY</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ad3a7b3c7f62a05667162fb28247a07c2a500a293aa7eb4d4757a1f8c68e6130a2"></a>B64_BYTE0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ad3a7b3c7f62a05667162fb28247a07c2a55a85d993feb4d0602aa7321264b6803"></a>B64_BYTE1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ad3a7b3c7f62a05667162fb28247a07c2a67574c0700ab2dd5156af220443386d2"></a>B64_BYTE2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ad3a7b3c7f62a05667162fb28247a07c2aabf8c05acae26139d5ba70316b749524"></a>B64_BYTE3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918">first_byte_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918acf55dbd5b43747a8de2b3475e776b2a9"></a>INDEXED_FIELD</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918ab2d9a731d5c6871093edecbab8ec1b8a"></a>INDEXED_FIELD_X</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918ad521ba7e26b2f29b70f24ebe99a7b6d4"></a>LITHDR_INCIDX</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918abc7a5a868dc1b4304662225ded589449"></a>LITHDR_INCIDX_X</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918acc616dbc2d6e6d99eb2879bc55a85e8c"></a>LITHDR_INCIDX_V</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918a21b8279ee1879c395b696774c516b925"></a>LITHDR_NOTIDX</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918a17dbb369763076fa7714c613ca4778b4"></a>LITHDR_NOTIDX_X</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918a9108c78104ce0a038a1ee76f9d56ebb4"></a>LITHDR_NOTIDX_V</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918aa4c98da3a42fad37a7eaaa74e76590e2"></a>LITHDR_NVRIDX</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918a9e86cc54448658713f683983a377d364"></a>LITHDR_NVRIDX_X</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918ab3fbe40c948e7abb4b587700f295c508"></a>LITHDR_NVRIDX_V</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918a01c9e4f4b7e8c618841fab7c6fab28d8"></a>MAX_TBL_SIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918adb841f9eb9a97d6b2cbcdbc72ecceca4"></a>MAX_TBL_SIZE_X</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a82ea1fc72cfd46090df5eb5f87ba1918a64b291c78f4399005e7e6d35274ac792"></a>ILLEGAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a71eda0fd38f30d8005251eb895de35ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35ee">is_binary_header</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a71eda0fd38f30d8005251eb895de35eea4940041097c06eed1076f5dc2de17d9a"></a>BINARY_HEADER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a71eda0fd38f30d8005251eb895de35eea6b3fea68a44cbdbcd96fbdcf35d98a4c"></a>PLAINTEXT_HEADER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a71eda0fd38f30d8005251eb895de35eea57e2b3994258d7216de08793daaa2b35"></a>ERROR_HEADER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7a92d332cfe4cdd2fe066d8c187a19c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_header_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>hpack_parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae43cb55b0e7102694c68c29d93cd3573"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae9f87d2fc6cdda2cfcedd228feff9a43"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a883d1c556ca6aaea2fbb04dda7928ebc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_hpack_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>beg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>end</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9fc7e7f152280acc512689e138805eee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_parser_set_has_priority </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/hpack__parser_8h.html b/doc/ref/core.internal/html/hpack__parser_8h.html
new file mode 100644
index 0000000000..ffcdac3605
--- /dev/null
+++ b/doc/ref/core.internal/html/hpack__parser_8h.html
@@ -0,0 +1,299 @@
+<!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: src/core/transport/chttp2/hpack_parser.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hpack_parser.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="hpack__table_8h_source.html">src/core/transport/chttp2/hpack_table.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="metadata_8h_source.html">src/core/transport/metadata.h</a>&quot;</code><br/>
+</div>
+<p><a href="hpack__parser_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ae66f95f470e6a67afa580dd7d1d3d39b"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#ae66f95f470e6a67afa580dd7d1d3d39b">grpc_chttp2_hpack_parser</a></td></tr>
+<tr class="separator:ae66f95f470e6a67afa580dd7d1d3d39b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d59a71bfcb4d8ae6c14950f0cb67507"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> )(<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *beg, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *end)</td></tr>
+<tr class="separator:a8d59a71bfcb4d8ae6c14950f0cb67507"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae9f87d2fc6cdda2cfcedd228feff9a43"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43">grpc_chttp2_hpack_parser_init</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:ae9f87d2fc6cdda2cfcedd228feff9a43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae43cb55b0e7102694c68c29d93cd3573"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573">grpc_chttp2_hpack_parser_destroy</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p)</td></tr>
+<tr class="separator:ae43cb55b0e7102694c68c29d93cd3573"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fc7e7f152280acc512689e138805eee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee">grpc_chttp2_hpack_parser_set_has_priority</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p)</td></tr>
+<tr class="separator:a9fc7e7f152280acc512689e138805eee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a883d1c556ca6aaea2fbb04dda7928ebc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc">grpc_chttp2_hpack_parser_parse</a> (<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *beg, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *end)</td></tr>
+<tr class="separator:a883d1c556ca6aaea2fbb04dda7928ebc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a92d332cfe4cdd2fe066d8c187a19c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3">grpc_chttp2_header_parser_parse</a> (void *hpack_parser, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:a7a92d332cfe4cdd2fe066d8c187a19c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ae66f95f470e6a67afa580dd7d1d3d39b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> <a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8d59a71bfcb4d8ae6c14950f0cb67507"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef int(* grpc_chttp2_hpack_parser_state)(<a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *beg, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *end)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7a92d332cfe4cdd2fe066d8c187a19c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> grpc_chttp2_header_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>hpack_parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_last</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae43cb55b0e7102694c68c29d93cd3573"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae9f87d2fc6cdda2cfcedd228feff9a43"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a883d1c556ca6aaea2fbb04dda7928ebc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_hpack_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>beg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>end</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9fc7e7f152280acc512689e138805eee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_parser_set_has_priority </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/hpack__parser_8h_source.html b/doc/ref/core.internal/html/hpack__parser_8h_source.html
new file mode 100644
index 0000000000..7f16d1fa30
--- /dev/null
+++ b/doc/ref/core.internal/html/hpack__parser_8h_source.html
@@ -0,0 +1,257 @@
+<!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: src/core/transport/chttp2/hpack_parser.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">hpack_parser.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="hpack__parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HPACK_PARSER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HPACK_PARSER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="hpack__table_8h.html">src/core/transport/chttp2/hpack_table.h</a>&quot;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="metadata_8h.html">src/core/transport/metadata.h</a>&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="hpack__parser_8h.html#ae66f95f470e6a67afa580dd7d1d3d39b"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507"> 46</a></span>&#160;<span class="keyword">typedef</span> int (*<a class="code" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a>)(<a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *beg,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *end);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser__string.html"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c"> 51</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c">str</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5"> 52</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5">length</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613"> 53</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613">capacity</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html"> 56</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> {</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">/* user specified callback for each header output */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f"> 58</a></span>&#160; void (*<a class="code" href="structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f">on_header</a>)(<span class="keywordtype">void</span> *user_data, <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b"> 59</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b">on_header_user_data</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">/* current parse state - or a function that implements it */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4"> 62</a></span>&#160; <a class="code" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4">state</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* future states dependent on the opening op code */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1"> 64</a></span>&#160; <span class="keyword">const</span> <a class="code" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> *<a class="code" href="structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1">next_state</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* what to do after skipping prioritization data */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0"> 66</a></span>&#160; <a class="code" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0">after_prioritization</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">/* the value we&#39;re currently parsing */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e"> 69</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *<a class="code" href="structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e">value</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe"> 70</a></span>&#160; <a class="code" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a> *<a class="code" href="structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe">str</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; } <a class="code" href="structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae">parsing</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* string parameters for each chunk */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10"> 73</a></span>&#160; <a class="code" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10">key</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a5291e99e19d95c5e130b62958750adef"> 74</a></span>&#160; <a class="code" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a5291e99e19d95c5e130b62958750adef">value</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">/* parsed index */</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef"> 76</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef">index</a>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="comment">/* length of source bytes for the currently parsing string */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab"> 78</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab">strlen</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="comment">/* number of source bytes read for the currently parsing string */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6"> 80</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6">strgot</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* huffman decoding state */</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c"> 82</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c">huff_state</a>;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">/* is the string being decoded binary? */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f"> 84</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f">binary</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">/* is the current string huffman encoded? */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5"> 86</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5">huff</a>;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">/* set by higher layers, used by grpc_chttp2_header_parser_parse to signal</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> it should append a metadata boundary at the end of frame */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec"> 89</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec">is_boundary</a>;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b"> 90</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b">is_eof</a>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e"> 91</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e">base64_buffer</a>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">/* hpack table */</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17"> 94</a></span>&#160; <a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> <a class="code" href="structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17">table</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;};</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43">grpc_chttp2_hpack_parser_init</a>(<a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573">grpc_chttp2_hpack_parser_destroy</a>(<a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee">grpc_chttp2_hpack_parser_set_has_priority</a>(<a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* returns 1 on success, 0 on error */</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="keywordtype">int</span> <a class="code" href="hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc">grpc_chttp2_hpack_parser_parse</a>(<a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> *p,</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *beg, <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *end);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment">/* wraps grpc_chttp2_hpack_parser_parse to provide a frame level parser for</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> the transport */</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> <a class="code" href="hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3">grpc_chttp2_header_parser_parse</a>(</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordtype">void</span> *hpack_parser, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HPACK_PARSER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__parser_8h_html_ae9f87d2fc6cdda2cfcedd228feff9a43"><div class="ttname"><a href="hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43">grpc_chttp2_hpack_parser_init</a></div><div class="ttdeci">void grpc_chttp2_hpack_parser_init(grpc_chttp2_hpack_parser *p, grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> hpack_parser.c:1343</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="hpack__parser_8h_html_a883d1c556ca6aaea2fbb04dda7928ebc"><div class="ttname"><a href="hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc">grpc_chttp2_hpack_parser_parse</a></div><div class="ttdeci">int grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end)</div><div class="ttdef"><b>Definition:</b> hpack_parser.c:1368</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a></div><div class="ttdef"><b>Definition:</b> hpack_table.h:59</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="metadata_8h_html"><div class="ttname"><a href="metadata_8h.html">metadata.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a></div><div class="ttdef"><b>Definition:</b> hpack_parser.h:56</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser__string_html_a21d97a477e18ea3973332a21fe664613"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613">grpc_chttp2_hpack_parser_string::capacity</a></div><div class="ttdeci">gpr_uint32 capacity</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:53</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a70ad6a4061f4f49362959615eb0c3ca4"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4">grpc_chttp2_hpack_parser::state</a></div><div class="ttdeci">grpc_chttp2_hpack_parser_state state</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:62</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a72b104abd60bed440243eab839b6d1e5"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5">grpc_chttp2_hpack_parser::huff</a></div><div class="ttdeci">gpr_uint8 huff</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:86</div></div>
+<div class="ttc" id="hpack__table_8h_html"><div class="ttname"><a href="hpack__table_8h.html">hpack_table.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_ace46342325728ee279253c5ee146d6d0"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0">grpc_chttp2_hpack_parser::after_prioritization</a></div><div class="ttdeci">grpc_chttp2_hpack_parser_state after_prioritization</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:66</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_aefbc0edc85975abf14cd4f52ca1b823c"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c">grpc_chttp2_hpack_parser::huff_state</a></div><div class="ttdeci">gpr_uint16 huff_state</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:82</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a0fdab43244f12be74b24f284fa0df8ab"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab">grpc_chttp2_hpack_parser::strlen</a></div><div class="ttdeci">gpr_uint32 strlen</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:78</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser__string_html_a26e2d9594af6c89057408a16e1132fe5"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5">grpc_chttp2_hpack_parser_string::length</a></div><div class="ttdeci">gpr_uint32 length</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:52</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="hpack__parser_8h_html_ae43cb55b0e7102694c68c29d93cd3573"><div class="ttname"><a href="hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573">grpc_chttp2_hpack_parser_destroy</a></div><div class="ttdeci">void grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser *p)</div><div class="ttdef"><b>Definition:</b> hpack_parser.c:1362</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_adc642ac806512e13229d13c5d4a64aec"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec">grpc_chttp2_hpack_parser::is_boundary</a></div><div class="ttdeci">gpr_uint8 is_boundary</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:89</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_af48331853250257b1640d07e06d6e47e"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e">grpc_chttp2_hpack_parser::base64_buffer</a></div><div class="ttdeci">gpr_uint32 base64_buffer</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:91</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_ac7bd236697b3923633920b3dcc26079f"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f">grpc_chttp2_hpack_parser::binary</a></div><div class="ttdeci">gpr_uint8 binary</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:84</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a8f94c4cc12d5f84f639914d59491ae17"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17">grpc_chttp2_hpack_parser::table</a></div><div class="ttdeci">grpc_chttp2_hptbl table</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:94</div></div>
+<div class="ttc" id="port__platform_8h_html_abb7bceac4325643af77af51c7b6af371"><div class="ttname"><a href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></div><div class="ttdeci">uint16_t gpr_uint16</div><div class="ttdef"><b>Definition:</b> port_platform.h:308</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_aa2150e272b5d12395b762aef039b58f6"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6">grpc_chttp2_hpack_parser::strgot</a></div><div class="ttdeci">gpr_uint32 strgot</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:80</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser__string_html"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a></div><div class="ttdef"><b>Definition:</b> hpack_parser.h:50</div></div>
+<div class="ttc" id="hpack__parser_8h_html_a9fc7e7f152280acc512689e138805eee"><div class="ttname"><a href="hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee">grpc_chttp2_hpack_parser_set_has_priority</a></div><div class="ttdeci">void grpc_chttp2_hpack_parser_set_has_priority(grpc_chttp2_hpack_parser *p)</div><div class="ttdef"><b>Definition:</b> hpack_parser.c:1357</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a75cd26cf599e1a3762287726f8f9a7b1"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1">grpc_chttp2_hpack_parser::next_state</a></div><div class="ttdeci">const grpc_chttp2_hpack_parser_state * next_state</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:64</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_aca1b62cf2179b2ce2c815f80434d408f"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f">grpc_chttp2_hpack_parser::on_header</a></div><div class="ttdeci">void(* on_header)(void *user_data, grpc_mdelem *md)</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:58</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser__string_html_abf43da36039226667926801751825b3c"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c">grpc_chttp2_hpack_parser_string::str</a></div><div class="ttdeci">char * str</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:51</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a5291e99e19d95c5e130b62958750adef"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a5291e99e19d95c5e130b62958750adef">grpc_chttp2_hpack_parser::value</a></div><div class="ttdeci">grpc_chttp2_hpack_parser_string value</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:74</div></div>
+<div class="ttc" id="hpack__parser_8h_html_a8d59a71bfcb4d8ae6c14950f0cb67507"><div class="ttname"><a href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a></div><div class="ttdeci">int(* grpc_chttp2_hpack_parser_state)(grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end)</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:46</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a0ced7637ac446a9c535391ffdeb7990b"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b">grpc_chttp2_hpack_parser::is_eof</a></div><div class="ttdeci">gpr_uint8 is_eof</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:90</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a4d3edf20019517c6ba89d16183287f10"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10">grpc_chttp2_hpack_parser::key</a></div><div class="ttdeci">grpc_chttp2_hpack_parser_string key</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:73</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a032576122c56272a9546fb4cb4628aef"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef">grpc_chttp2_hpack_parser::index</a></div><div class="ttdeci">gpr_uint32 index</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:76</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a4dda24b6baf059519437033ace4239fe"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe">grpc_chttp2_hpack_parser::str</a></div><div class="ttdeci">grpc_chttp2_hpack_parser_string * str</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:70</div></div>
+<div class="ttc" id="hpack__parser_8h_html_a7a92d332cfe4cdd2fe066d8c187a19c3"><div class="ttname"><a href="hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3">grpc_chttp2_header_parser_parse</a></div><div class="ttdeci">grpc_chttp2_parse_error grpc_chttp2_header_parser_parse(void *hpack_parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> hpack_parser.c:1377</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a98070825a1d0d4d2c3adabbe127d5eae"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae">grpc_chttp2_hpack_parser::parsing</a></div><div class="ttdeci">union grpc_chttp2_hpack_parser::@19 parsing</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a8a8a711d5609cf6886cdddbe3c245d1b"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b">grpc_chttp2_hpack_parser::on_header_user_data</a></div><div class="ttdeci">void * on_header_user_data</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:59</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html_a3098a6ec6adb9222dd0d64681eb9af6e"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e">grpc_chttp2_hpack_parser::value</a></div><div class="ttdeci">gpr_uint32 * value</div><div class="ttdef"><b>Definition:</b> hpack_parser.h:69</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/hpack__table_8c.html b/doc/ref/core.internal/html/hpack__table_8c.html
new file mode 100644
index 0000000000..dca6c0b788
--- /dev/null
+++ b/doc/ref/core.internal/html/hpack__table_8c.html
@@ -0,0 +1,266 @@
+<!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: src/core/transport/chttp2/hpack_table.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hpack_table.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="hpack__table_8h_source.html">src/core/transport/chttp2/hpack_table.h</a>&quot;</code><br/>
+<code>#include &lt;assert.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="murmur__hash_8h_source.html">src/core/support/murmur_hash.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a17492a855a901fafa3086087e74a16f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8c.html#a17492a855a901fafa3086087e74a16f0">grpc_chttp2_hptbl_init</a> (<a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:a17492a855a901fafa3086087e74a16f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeef559491f324858e464dff14851d857"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8c.html#aeef559491f324858e464dff14851d857">grpc_chttp2_hptbl_destroy</a> (<a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl)</td></tr>
+<tr class="separator:aeef559491f324858e464dff14851d857"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e857648df8d6b50e5faac502bd5fe5b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8c.html#a3e857648df8d6b50e5faac502bd5fe5b">grpc_chttp2_hptbl_lookup</a> (const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> index)</td></tr>
+<tr class="separator:a3e857648df8d6b50e5faac502bd5fe5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ad3f82e2b6f66cf022f672861b65b84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8c.html#a1ad3f82e2b6f66cf022f672861b65b84">grpc_chttp2_hptbl_add</a> (<a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:a1ad3f82e2b6f66cf022f672861b65b84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa946e97b0f962e4d7e8fb8b4886f1ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8c.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">grpc_chttp2_hptbl_find</a> (const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:aaa946e97b0f962e4d7e8fb8b4886f1ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1ad3f82e2b6f66cf022f672861b65b84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hptbl_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeef559491f324858e464dff14851d857"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hptbl_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa946e97b0f962e4d7e8fb8b4886f1ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a> grpc_chttp2_hptbl_find </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a17492a855a901fafa3086087e74a16f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hptbl_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3e857648df8d6b50e5faac502bd5fe5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_chttp2_hptbl_lookup </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>index</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="acd3d88da3c0e0313c3645ff34f62f542"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8556878012feffc9e0beb86cd78f424d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/hpack__table_8h.html b/doc/ref/core.internal/html/hpack__table_8h.html
new file mode 100644
index 0000000000..255d17c94a
--- /dev/null
+++ b/doc/ref/core.internal/html/hpack__table_8h.html
@@ -0,0 +1,328 @@
+<!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: src/core/transport/chttp2/hpack_table.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">hpack_table.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="metadata_8h_source.html">src/core/transport/metadata.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="hpack__table_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab62c846bb1b82ae0a56b84c746dc83b3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3">GRPC_CHTTP2_LAST_STATIC_ENTRY</a>&#160;&#160;&#160;61</td></tr>
+<tr class="separator:ab62c846bb1b82ae0a56b84c746dc83b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aced1f8ce84e3964a961ad9361e0a24aa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa">GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE</a>&#160;&#160;&#160;4096</td></tr>
+<tr class="separator:aced1f8ce84e3964a961ad9361e0a24aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a376305051742470529655dacf911329e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#a376305051742470529655dacf911329e">GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE</a>&#160;&#160;&#160;<a class="el" href="hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa">GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE</a></td></tr>
+<tr class="separator:a376305051742470529655dacf911329e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4d722ec8e6df216cfb2c180c6a605b8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8">GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD</a>&#160;&#160;&#160;32</td></tr>
+<tr class="separator:ad4d722ec8e6df216cfb2c180c6a605b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a292186cdaec230cfca45f2b7703d2fb5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5">GRPC_CHTTP2_MAX_TABLE_COUNT</a></td></tr>
+<tr class="separator:a292186cdaec230cfca45f2b7703d2fb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a17492a855a901fafa3086087e74a16f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0">grpc_chttp2_hptbl_init</a> (<a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:a17492a855a901fafa3086087e74a16f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeef559491f324858e464dff14851d857"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#aeef559491f324858e464dff14851d857">grpc_chttp2_hptbl_destroy</a> (<a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl)</td></tr>
+<tr class="separator:aeef559491f324858e464dff14851d857"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e857648df8d6b50e5faac502bd5fe5b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b">grpc_chttp2_hptbl_lookup</a> (const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> index)</td></tr>
+<tr class="separator:a3e857648df8d6b50e5faac502bd5fe5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ad3f82e2b6f66cf022f672861b65b84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84">grpc_chttp2_hptbl_add</a> (<a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:a1ad3f82e2b6f66cf022f672861b65b84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa946e97b0f962e4d7e8fb8b4886f1ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">grpc_chttp2_hptbl_find</a> (const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:aaa946e97b0f962e4d7e8fb8b4886f1ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ad4d722ec8e6df216cfb2c180c6a605b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD&#160;&#160;&#160;32</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aced1f8ce84e3964a961ad9361e0a24aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE&#160;&#160;&#160;4096</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab62c846bb1b82ae0a56b84c746dc83b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_LAST_STATIC_ENTRY&#160;&#160;&#160;61</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a376305051742470529655dacf911329e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE&#160;&#160;&#160;<a class="el" href="hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa">GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a292186cdaec230cfca45f2b7703d2fb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_MAX_TABLE_COUNT</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="hpack__table_8h.html#a376305051742470529655dacf911329e">GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE</a> + <a class="code" href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8">GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD</a> - 1) / \</div>
+<div class="line"> <a class="code" href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8">GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD</a>)</div>
+<div class="ttc" id="hpack__table_8h_html_ad4d722ec8e6df216cfb2c180c6a605b8"><div class="ttname"><a href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8">GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD</a></div><div class="ttdeci">#define GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD</div><div class="ttdef"><b>Definition:</b> hpack_table.h:51</div></div>
+<div class="ttc" id="hpack__table_8h_html_a376305051742470529655dacf911329e"><div class="ttname"><a href="hpack__table_8h.html#a376305051742470529655dacf911329e">GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE</a></div><div class="ttdeci">#define GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE</div><div class="ttdef"><b>Definition:</b> hpack_table.h:49</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1ad3f82e2b6f66cf022f672861b65b84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hptbl_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeef559491f324858e464dff14851d857"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hptbl_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa946e97b0f962e4d7e8fb8b4886f1ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a> grpc_chttp2_hptbl_find </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a17492a855a901fafa3086087e74a16f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hptbl_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3e857648df8d6b50e5faac502bd5fe5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_chttp2_hptbl_lookup </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *&#160;</td>
+ <td class="paramname"><em>tbl</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>index</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/hpack__table_8h_source.html b/doc/ref/core.internal/html/hpack__table_8h_source.html
new file mode 100644
index 0000000000..285e07d0c5
--- /dev/null
+++ b/doc/ref/core.internal/html/hpack__table_8h_source.html
@@ -0,0 +1,221 @@
+<!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: src/core/transport/chttp2/hpack_table.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">hpack_table.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="hpack__table_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HPACK_TABLE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HPACK_TABLE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="metadata_8h.html">src/core/transport/metadata.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* HPACK header table */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* last index in the static table */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3"> 44</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_LAST_STATIC_ENTRY 61</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* Initial table size as per the spec */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa"> 47</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE 4096</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span><span class="comment">/* Maximum table size that we&#39;ll use */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="hpack__table_8h.html#a376305051742470529655dacf911329e"> 49</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span><span class="comment">/* Per entry overhead bytes as per the spec */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8"> 51</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD 32</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span><span class="comment">/* Maximum number of entries we could possibly fit in the table, given defined</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> overheads */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5"> 54</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_MAX_TABLE_COUNT \</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"> ((GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE + GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD - 1) / \</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD)</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">/* hpack decoder table */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b"> 60</a></span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b">mdctx</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">/* the first used entry in ents */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77"> 62</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77">first_ent</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* the last used entry in ents */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b"> 64</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b">last_ent</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* how many entries are in the table */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1"> 66</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1">num_ents</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">/* the amount of memory used by the table, according to the hpack algorithm */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878"> 68</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878">mem_used</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">/* the max memory allowed to be used by the table, according to the hpack</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> algorithm */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b"> 71</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b">max_bytes</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* a circular buffer of headers - this is stored in the opposite order to</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> what hpack specifies, in order to simplify table management a little...</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> meaning lookups need to SUBTRACT from the end position */</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#af14d20a9a16ee86be7d9f18b2f5334eb"> 75</a></span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *ents[<a class="code" href="hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5">GRPC_CHTTP2_MAX_TABLE_COUNT</a>];</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl.html#afe1cceb7c0988d6c29df983ad3764344"> 76</a></span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *static_ents[<a class="code" href="hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3">GRPC_CHTTP2_LAST_STATIC_ENTRY</a>];</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;} <a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">/* initialize a hpack table */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0">grpc_chttp2_hptbl_init</a>(<a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hpack__table_8h.html#aeef559491f324858e464dff14851d857">grpc_chttp2_hptbl_destroy</a>(<a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* lookup a table entry based on its hpack index */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b">grpc_chttp2_hptbl_lookup</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> index);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* add a table entry to the index */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84">grpc_chttp2_hptbl_add</a>(<a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Find a key/value pair in the table... returns the index in the table of the</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> most similar entry, or 0 if the value was not found */</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl__find__result.html"> 90</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea"> 91</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea">index</a>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7"> 92</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7">has_value</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;} <a class="code" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<a class="code" href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a> <a class="code" href="hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">grpc_chttp2_hptbl_find</a>(</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> *tbl, <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HPACK_TABLE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8h_html_aeef559491f324858e464dff14851d857"><div class="ttname"><a href="hpack__table_8h.html#aeef559491f324858e464dff14851d857">grpc_chttp2_hptbl_destroy</a></div><div class="ttdeci">void grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl *tbl)</div><div class="ttdef"><b>Definition:</b> hpack_table.c:122</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl__find__result_html_afde6a296e3d2b379395ccf89141e7aea"><div class="ttname"><a href="structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea">grpc_chttp2_hptbl_find_result::index</a></div><div class="ttdeci">gpr_uint16 index</div><div class="ttdef"><b>Definition:</b> hpack_table.h:91</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html_a3cd55ea4e1f534ff161788d6609ff27b"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b">grpc_chttp2_hptbl::max_bytes</a></div><div class="ttdeci">gpr_uint16 max_bytes</div><div class="ttdef"><b>Definition:</b> hpack_table.h:71</div></div>
+<div class="ttc" id="hpack__table_8h_html_ab62c846bb1b82ae0a56b84c746dc83b3"><div class="ttname"><a href="hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3">GRPC_CHTTP2_LAST_STATIC_ENTRY</a></div><div class="ttdeci">#define GRPC_CHTTP2_LAST_STATIC_ENTRY</div><div class="ttdef"><b>Definition:</b> hpack_table.h:44</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a></div><div class="ttdef"><b>Definition:</b> hpack_table.h:59</div></div>
+<div class="ttc" id="metadata_8h_html"><div class="ttname"><a href="metadata_8h.html">metadata.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="hpack__table_8h_html_a3e857648df8d6b50e5faac502bd5fe5b"><div class="ttname"><a href="hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b">grpc_chttp2_hptbl_lookup</a></div><div class="ttdeci">grpc_mdelem * grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl *tbl, gpr_uint32 index)</div><div class="ttdef"><b>Definition:</b> hpack_table.c:133</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html_a3bd6b0eec3b771fb745295fe4ea57ff1"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1">grpc_chttp2_hptbl::num_ents</a></div><div class="ttdeci">gpr_uint16 num_ents</div><div class="ttdef"><b>Definition:</b> hpack_table.h:66</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html_a6c63d76ec5273e0eb935906636d1325b"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b">grpc_chttp2_hptbl::mdctx</a></div><div class="ttdeci">grpc_mdctx * mdctx</div><div class="ttdef"><b>Definition:</b> hpack_table.h:60</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html_a396719b339f0d4d2d7425b5db960536b"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b">grpc_chttp2_hptbl::last_ent</a></div><div class="ttdeci">gpr_uint16 last_ent</div><div class="ttdef"><b>Definition:</b> hpack_table.h:64</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="hpack__table_8h_html_a1ad3f82e2b6f66cf022f672861b65b84"><div class="ttname"><a href="hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84">grpc_chttp2_hptbl_add</a></div><div class="ttdeci">void grpc_chttp2_hptbl_add(grpc_chttp2_hptbl *tbl, grpc_mdelem *md)</div><div class="ttdef"><b>Definition:</b> hpack_table.c:161</div></div>
+<div class="ttc" id="port__platform_8h_html_abb7bceac4325643af77af51c7b6af371"><div class="ttname"><a href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></div><div class="ttdeci">uint16_t gpr_uint16</div><div class="ttdef"><b>Definition:</b> port_platform.h:308</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html_a4b28482c4a9c59a1ce11cad63b2eeb77"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77">grpc_chttp2_hptbl::first_ent</a></div><div class="ttdeci">gpr_uint16 first_ent</div><div class="ttdef"><b>Definition:</b> hpack_table.h:62</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="hpack__table_8h_html_aaa946e97b0f962e4d7e8fb8b4886f1ba"><div class="ttname"><a href="hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba">grpc_chttp2_hptbl_find</a></div><div class="ttdeci">grpc_chttp2_hptbl_find_result grpc_chttp2_hptbl_find(const grpc_chttp2_hptbl *tbl, grpc_mdelem *md)</div><div class="ttdef"><b>Definition:</b> hpack_table.c:198</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl__find__result_html_ae93485f3e3efeb1b621e2307aa53c2b7"><div class="ttname"><a href="structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7">grpc_chttp2_hptbl_find_result::has_value</a></div><div class="ttdeci">gpr_uint8 has_value</div><div class="ttdef"><b>Definition:</b> hpack_table.h:92</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl__find__result_html"><div class="ttname"><a href="structgrpc__chttp2__hptbl__find__result.html">grpc_chttp2_hptbl_find_result</a></div><div class="ttdef"><b>Definition:</b> hpack_table.h:90</div></div>
+<div class="ttc" id="hpack__table_8h_html_a292186cdaec230cfca45f2b7703d2fb5"><div class="ttname"><a href="hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5">GRPC_CHTTP2_MAX_TABLE_COUNT</a></div><div class="ttdeci">#define GRPC_CHTTP2_MAX_TABLE_COUNT</div><div class="ttdef"><b>Definition:</b> hpack_table.h:54</div></div>
+<div class="ttc" id="structgrpc__chttp2__hptbl_html_ab542479dd03d89957ea9920213371878"><div class="ttname"><a href="structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878">grpc_chttp2_hptbl::mem_used</a></div><div class="ttdeci">gpr_uint16 mem_used</div><div class="ttdef"><b>Definition:</b> hpack_table.h:68</div></div>
+<div class="ttc" id="hpack__table_8h_html_a17492a855a901fafa3086087e74a16f0"><div class="ttname"><a href="hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0">grpc_chttp2_hptbl_init</a></div><div class="ttdeci">void grpc_chttp2_hptbl_init(grpc_chttp2_hptbl *tbl, grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> hpack_table.c:110</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/http2__errors_8h.html b/doc/ref/core.internal/html/http2__errors_8h.html
new file mode 100644
index 0000000000..237aff1ccb
--- /dev/null
+++ b/doc/ref/core.internal/html/http2__errors_8h.html
@@ -0,0 +1,171 @@
+<!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: src/core/transport/chttp2/http2_errors.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">http2_errors.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="http2__errors_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a093974eee0aaf09397d243c7dcebd4da"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a> { <br/>
+&#160;&#160;<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6">GRPC_CHTTP2_NO_ERROR</a> = 0x0,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d">GRPC_CHTTP2_PROTOCOL_ERROR</a> = 0x1,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf">GRPC_CHTTP2_INTERNAL_ERROR</a> = 0x2,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc">GRPC_CHTTP2_FLOW_CONTROL_ERROR</a> = 0x3,
+<br/>
+&#160;&#160;<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f">GRPC_CHTTP2_SETTINGS_TIMEOUT</a> = 0x4,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2">GRPC_CHTTP2_STREAM_CLOSED</a> = 0x5,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf">GRPC_CHTTP2_FRAME_SIZE_ERROR</a> = 0x6,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b">GRPC_CHTTP2_REFUSED_STREAM</a> = 0x7,
+<br/>
+&#160;&#160;<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada">GRPC_CHTTP2_CANCEL</a> = 0x8,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14">GRPC_CHTTP2_COMPRESSION_ERROR</a> = 0x9,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95">GRPC_CHTTP2_CONNECT_ERROR</a> = 0xa,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602">GRPC_CHTTP2_ENHANCE_YOUR_CALM</a> = 0xb,
+<br/>
+&#160;&#160;<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07">GRPC_CHTTP2_INADEQUATE_SECURITY</a> = 0xc,
+<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98">GRPC_CHTTP2__ERROR_DO_NOT_USE</a> = -1
+<br/>
+ }</td></tr>
+<tr class="separator:a093974eee0aaf09397d243c7dcebd4da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a093974eee0aaf09397d243c7dcebd4da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6"></a>GRPC_CHTTP2_NO_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d"></a>GRPC_CHTTP2_PROTOCOL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf"></a>GRPC_CHTTP2_INTERNAL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc"></a>GRPC_CHTTP2_FLOW_CONTROL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f"></a>GRPC_CHTTP2_SETTINGS_TIMEOUT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2"></a>GRPC_CHTTP2_STREAM_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf"></a>GRPC_CHTTP2_FRAME_SIZE_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b"></a>GRPC_CHTTP2_REFUSED_STREAM</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada"></a>GRPC_CHTTP2_CANCEL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14"></a>GRPC_CHTTP2_COMPRESSION_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95"></a>GRPC_CHTTP2_CONNECT_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602"></a>GRPC_CHTTP2_ENHANCE_YOUR_CALM</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07"></a>GRPC_CHTTP2_INADEQUATE_SECURITY</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98"></a>GRPC_CHTTP2__ERROR_DO_NOT_USE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/http2__errors_8h_source.html b/doc/ref/core.internal/html/http2__errors_8h_source.html
new file mode 100644
index 0000000000..c03552fa18
--- /dev/null
+++ b/doc/ref/core.internal/html/http2__errors_8h_source.html
@@ -0,0 +1,170 @@
+<!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: src/core/transport/chttp2/http2_errors.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">http2_errors.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="http2__errors_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HTTP2_ERRORS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HTTP2_ERRORS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* error codes for RST_STREAM from http2 draft 14 section 7 */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da"> 38</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6"> 39</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6">GRPC_CHTTP2_NO_ERROR</a> = 0x0,</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d"> 40</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d">GRPC_CHTTP2_PROTOCOL_ERROR</a> = 0x1,</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf"> 41</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf">GRPC_CHTTP2_INTERNAL_ERROR</a> = 0x2,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc"> 42</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc">GRPC_CHTTP2_FLOW_CONTROL_ERROR</a> = 0x3,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f"> 43</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f">GRPC_CHTTP2_SETTINGS_TIMEOUT</a> = 0x4,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2"> 44</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2">GRPC_CHTTP2_STREAM_CLOSED</a> = 0x5,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf"> 45</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf">GRPC_CHTTP2_FRAME_SIZE_ERROR</a> = 0x6,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b"> 46</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b">GRPC_CHTTP2_REFUSED_STREAM</a> = 0x7,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada"> 47</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada">GRPC_CHTTP2_CANCEL</a> = 0x8,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14"> 48</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14">GRPC_CHTTP2_COMPRESSION_ERROR</a> = 0x9,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95"> 49</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95">GRPC_CHTTP2_CONNECT_ERROR</a> = 0xa,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602"> 50</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602">GRPC_CHTTP2_ENHANCE_YOUR_CALM</a> = 0xb,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07"> 51</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07">GRPC_CHTTP2_INADEQUATE_SECURITY</a> = 0xc,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="comment">/* force use of a default clause */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98"> 53</a></span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98">GRPC_CHTTP2__ERROR_DO_NOT_USE</a> = -1</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;} <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HTTP2_ERRORS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07">GRPC_CHTTP2_INADEQUATE_SECURITY</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:51</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc">GRPC_CHTTP2_FLOW_CONTROL_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:42</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602">GRPC_CHTTP2_ENHANCE_YOUR_CALM</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:50</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada">GRPC_CHTTP2_CANCEL</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:47</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98">GRPC_CHTTP2__ERROR_DO_NOT_USE</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:53</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b">GRPC_CHTTP2_REFUSED_STREAM</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:46</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95">GRPC_CHTTP2_CONNECT_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:49</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d">GRPC_CHTTP2_PROTOCOL_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:40</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6">GRPC_CHTTP2_NO_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:39</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2">GRPC_CHTTP2_STREAM_CLOSED</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:44</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf">GRPC_CHTTP2_INTERNAL_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:41</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf">GRPC_CHTTP2_FRAME_SIZE_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:45</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4da"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a></div><div class="ttdeci">grpc_chttp2_error_code</div><div class="ttdef"><b>Definition:</b> http2_errors.h:38</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14">GRPC_CHTTP2_COMPRESSION_ERROR</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:48</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f">GRPC_CHTTP2_SETTINGS_TIMEOUT</a></div><div class="ttdef"><b>Definition:</b> http2_errors.h:43</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/http__client__filter_8c.html b/doc/ref/core.internal/html/http__client__filter_8c.html
new file mode 100644
index 0000000000..3b7988a776
--- /dev/null
+++ b/doc/ref/core.internal/html/http__client__filter_8c.html
@@ -0,0 +1,175 @@
+<!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: src/core/channel/http_client_filter.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">http_client_filter.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="http__client__filter_8h_source.html">src/core/channel/http_client_filter.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></td></tr>
+<tr class="separator:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e660c9a52a9795338faf0c2188cff84"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">channel_data</a></td></tr>
+<tr class="separator:a5e660c9a52a9795338faf0c2188cff84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a0c9d14fbc933d24f599b259ccfea9324"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8c.html#a0c9d14fbc933d24f599b259ccfea9324">grpc_http_client_filter</a></td></tr>
+<tr class="separator:a0c9d14fbc933d24f599b259ccfea9324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7237e4a998a071b454b0d6b1bdfb42e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e660c9a52a9795338faf0c2188cff84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__data.html">channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a0c9d14fbc933d24f599b259ccfea9324"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_http_client_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> hc_start_transport_op, <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>, <span class="keyword">sizeof</span>(<a class="code" href="http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a>),</div>
+<div class="line"> init_call_elem, destroy_call_elem, <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem, destroy_channel_elem, <a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>,</div>
+<div class="line"> <span class="stringliteral">&quot;http-client&quot;</span>}</div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+<div class="ttc" id="http__client__filter_8c_html_a7237e4a998a071b454b0d6b1bdfb42e1"><div class="ttname"><a href="http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></div><div class="ttdeci">struct call_data call_data</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/http__client__filter_8h.html b/doc/ref/core.internal/html/http__client__filter_8h.html
new file mode 100644
index 0000000000..d5629dc59c
--- /dev/null
+++ b/doc/ref/core.internal/html/http__client__filter_8h.html
@@ -0,0 +1,142 @@
+<!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: src/core/channel/http_client_filter.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">http_client_filter.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="http__client__filter_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7797da9f3f5a1381484b2cabca1920fc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8h.html#a7797da9f3f5a1381484b2cabca1920fc">GRPC_ARG_HTTP2_SCHEME</a>&#160;&#160;&#160;&quot;grpc.http2_scheme&quot;</td></tr>
+<tr class="separator:a7797da9f3f5a1381484b2cabca1920fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a0c9d14fbc933d24f599b259ccfea9324"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324">grpc_http_client_filter</a></td></tr>
+<tr class="separator:a0c9d14fbc933d24f599b259ccfea9324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a7797da9f3f5a1381484b2cabca1920fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_ARG_HTTP2_SCHEME&#160;&#160;&#160;&quot;grpc.http2_scheme&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a0c9d14fbc933d24f599b259ccfea9324"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_http_client_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/http__client__filter_8h_source.html b/doc/ref/core.internal/html/http__client__filter_8h_source.html
new file mode 100644
index 0000000000..d384695581
--- /dev/null
+++ b/doc/ref/core.internal/html/http__client__filter_8h_source.html
@@ -0,0 +1,146 @@
+<!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: src/core/channel/http_client_filter.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">http_client_filter.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="http__client__filter_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_HTTP_CLIENT_FILTER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_HTTP_CLIENT_FILTER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Processes metadata on the client side for HTTP2 transports */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324">grpc_http_client_filter</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="http__client__filter_8h.html#a7797da9f3f5a1381484b2cabca1920fc"> 42</a></span>&#160;<span class="preprocessor">#define GRPC_ARG_HTTP2_SCHEME &quot;grpc.http2_scheme&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_HTTP_CLIENT_FILTER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="http__client__filter_8h_html_a0c9d14fbc933d24f599b259ccfea9324"><div class="ttname"><a href="http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324">grpc_http_client_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_http_client_filter</div><div class="ttdef"><b>Definition:</b> http_client_filter.c:314</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/http__server__filter_8c.html b/doc/ref/core.internal/html/http__server__filter_8c.html
new file mode 100644
index 0000000000..d8db199993
--- /dev/null
+++ b/doc/ref/core.internal/html/http__server__filter_8c.html
@@ -0,0 +1,174 @@
+<!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: src/core/channel/http_server_filter.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">http_server_filter.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="http__server__filter_8h_source.html">src/core/channel/http_server_filter.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></td></tr>
+<tr class="separator:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e660c9a52a9795338faf0c2188cff84"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__server__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">channel_data</a></td></tr>
+<tr class="separator:a5e660c9a52a9795338faf0c2188cff84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:af08554bdf22a17e82db905b74a959503"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__server__filter_8c.html#af08554bdf22a17e82db905b74a959503">grpc_http_server_filter</a></td></tr>
+<tr class="separator:af08554bdf22a17e82db905b74a959503"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7237e4a998a071b454b0d6b1bdfb42e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e660c9a52a9795338faf0c2188cff84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__data.html">channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="af08554bdf22a17e82db905b74a959503"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_http_server_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> hs_start_transport_op, <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>, <span class="keyword">sizeof</span>(<a class="code" href="http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a>),</div>
+<div class="line"> init_call_elem, destroy_call_elem, <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem, destroy_channel_elem, <a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>,</div>
+<div class="line"> <span class="stringliteral">&quot;http-server&quot;</span>}</div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+<div class="ttc" id="http__server__filter_8c_html_a7237e4a998a071b454b0d6b1bdfb42e1"><div class="ttname"><a href="http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></div><div class="ttdeci">struct call_data call_data</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/http__server__filter_8h.html b/doc/ref/core.internal/html/http__server__filter_8h.html
new file mode 100644
index 0000000000..453ea8a396
--- /dev/null
+++ b/doc/ref/core.internal/html/http__server__filter_8h.html
@@ -0,0 +1,123 @@
+<!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: src/core/channel/http_server_filter.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">http_server_filter.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="http__server__filter_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:af08554bdf22a17e82db905b74a959503"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503">grpc_http_server_filter</a></td></tr>
+<tr class="separator:af08554bdf22a17e82db905b74a959503"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="af08554bdf22a17e82db905b74a959503"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_http_server_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/http__server__filter_8h_source.html b/doc/ref/core.internal/html/http__server__filter_8h_source.html
new file mode 100644
index 0000000000..0b2e3f92d0
--- /dev/null
+++ b/doc/ref/core.internal/html/http__server__filter_8h_source.html
@@ -0,0 +1,144 @@
+<!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: src/core/channel/http_server_filter.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">http_server_filter.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="http__server__filter_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_HTTP_SERVER_FILTER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_HTTP_SERVER_FILTER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Processes metadata on the client side for HTTP2 transports */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503">grpc_http_server_filter</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_HTTP_SERVER_FILTER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="http__server__filter_8h_html_af08554bdf22a17e82db905b74a959503"><div class="ttname"><a href="http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503">grpc_http_server_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_http_server_filter</div><div class="ttdef"><b>Definition:</b> http_server_filter.c:288</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/httpcli_8c.html b/doc/ref/core.internal/html/httpcli_8c.html
new file mode 100644
index 0000000000..80043e34ba
--- /dev/null
+++ b/doc/ref/core.internal/html/httpcli_8c.html
@@ -0,0 +1,305 @@
+<!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: src/core/httpcli/httpcli.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">httpcli.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="sockaddr_8h_source.html">src/core/iomgr/sockaddr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolve__address_8h_source.html">src/core/iomgr/resolve_address.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="tcp__client_8h_source.html">src/core/iomgr/tcp_client.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="format__request_8h_source.html">src/core/httpcli/format_request.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="httpcli__security__connector_8h_source.html">src/core/httpcli/httpcli_security_connector.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="parser_8h_source.html">src/core/httpcli/parser.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="secure__transport__setup_8h_source.html">src/core/security/secure_transport_setup.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html">internal_request</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:accc8da3837feac14f5f0b64e4cff8d1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8c.html#accc8da3837feac14f5f0b64e4cff8d1b">grpc_httpcli_context_init</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context)</td></tr>
+<tr class="separator:accc8da3837feac14f5f0b64e4cff8d1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d47084af44bf387790281f288f78d7b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8c.html#a6d47084af44bf387790281f288f78d7b">grpc_httpcli_context_destroy</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context)</td></tr>
+<tr class="separator:a6d47084af44bf387790281f288f78d7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a594371d2c96d499a5a3bcccb27ece0da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8c.html#a594371d2c96d499a5a3bcccb27ece0da">grpc_httpcli_get</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td></tr>
+<tr class="separator:a594371d2c96d499a5a3bcccb27ece0da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96f034743193848e966d61192e406c70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8c.html#a96f034743193848e966d61192e406c70">grpc_httpcli_post</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, const char *body_bytes, size_t body_size, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td></tr>
+<tr class="separator:a96f034743193848e966d61192e406c70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15ab7c87e0d5e42341c9652d5045d8ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8c.html#a15ab7c87e0d5e42341c9652d5045d8ce">grpc_httpcli_set_override</a> (<a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a> get, <a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a> post)</td></tr>
+<tr class="separator:a15ab7c87e0d5e42341c9652d5045d8ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a6d47084af44bf387790281f288f78d7b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accc8da3837feac14f5f0b64e4cff8d1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_context_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a594371d2c96d499a5a3bcccb27ece0da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a>&#160;</td>
+ <td class="paramname"><em>on_response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a96f034743193848e966d61192e406c70"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_post </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>body_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>body_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a>&#160;</td>
+ <td class="paramname"><em>on_response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15ab7c87e0d5e42341c9652d5045d8ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_set_override </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a>&#160;</td>
+ <td class="paramname"><em>get</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a>&#160;</td>
+ <td class="paramname"><em>post</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/httpcli_8h.html b/doc/ref/core.internal/html/httpcli_8h.html
new file mode 100644
index 0000000000..8ab22e1d1b
--- /dev/null
+++ b/doc/ref/core.internal/html/httpcli_8h.html
@@ -0,0 +1,440 @@
+<!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: src/core/httpcli/httpcli.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">httpcli.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="pollset__set_8h_source.html">src/core/iomgr/pollset_set.h</a>&quot;</code><br/>
+</div>
+<p><a href="httpcli_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aad8b996f269fd3671a7c6fa829bdec95"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#aad8b996f269fd3671a7c6fa829bdec95">GRPC_HTTPCLI_USER_AGENT</a>&#160;&#160;&#160;&quot;grpc-httpcli/0.0&quot;</td></tr>
+<tr class="separator:aad8b996f269fd3671a7c6fa829bdec95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a20ed031787f50e2fbbf09a5f1ab4ccec"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">GRPC_HTTPCLI_MAX_HEADER_LENGTH</a>&#160;&#160;&#160;4096</td></tr>
+<tr class="separator:a20ed031787f50e2fbbf09a5f1ab4ccec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3b84c74398894ce993b1e32daf468575"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a3b84c74398894ce993b1e32daf468575">grpc_httpcli_header</a></td></tr>
+<tr class="separator:a3b84c74398894ce993b1e32daf468575"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb6a69953113d6b548366871b884345"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#aacb6a69953113d6b548366871b884345">grpc_httpcli_context</a></td></tr>
+<tr class="separator:aacb6a69953113d6b548366871b884345"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e0f0352ec7906d948f9dc046f9b4e79"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79">grpc_httpcli_request</a></td></tr>
+<tr class="separator:a4e0f0352ec7906d948f9dc046f9b4e79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b9787db48bc2c77f38575943dc8dad0"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0">grpc_httpcli_response</a></td></tr>
+<tr class="separator:a9b9787db48bc2c77f38575943dc8dad0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00129a2e0bb8e9d9a6632e88f7a8c887"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> )(void *user_data, const <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *response)</td></tr>
+<tr class="separator:a00129a2e0bb8e9d9a6632e88f7a8c887"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a789e91e8c276aedb1c32873c3d6fa217"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a> )(const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td></tr>
+<tr class="separator:a789e91e8c276aedb1c32873c3d6fa217"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0591ce896f1a3f9b1b86e4eb6e9ac225"><td class="memItemLeft" align="right" valign="top">typedef int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a> )(const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, const char *body_bytes, size_t body_size, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td></tr>
+<tr class="separator:a0591ce896f1a3f9b1b86e4eb6e9ac225"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:accc8da3837feac14f5f0b64e4cff8d1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b">grpc_httpcli_context_init</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context)</td></tr>
+<tr class="separator:accc8da3837feac14f5f0b64e4cff8d1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d47084af44bf387790281f288f78d7b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a6d47084af44bf387790281f288f78d7b">grpc_httpcli_context_destroy</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context)</td></tr>
+<tr class="separator:a6d47084af44bf387790281f288f78d7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a594371d2c96d499a5a3bcccb27ece0da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da">grpc_httpcli_get</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td></tr>
+<tr class="separator:a594371d2c96d499a5a3bcccb27ece0da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96f034743193848e966d61192e406c70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a96f034743193848e966d61192e406c70">grpc_httpcli_post</a> (<a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, const char *body_bytes, size_t body_size, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td></tr>
+<tr class="separator:a96f034743193848e966d61192e406c70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15ab7c87e0d5e42341c9652d5045d8ce"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce">grpc_httpcli_set_override</a> (<a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a> get, <a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a> post)</td></tr>
+<tr class="separator:a15ab7c87e0d5e42341c9652d5045d8ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a20ed031787f50e2fbbf09a5f1ab4ccec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_HTTPCLI_MAX_HEADER_LENGTH&#160;&#160;&#160;4096</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aad8b996f269fd3671a7c6fa829bdec95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_HTTPCLI_USER_AGENT&#160;&#160;&#160;&quot;grpc-httpcli/0.0&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aacb6a69953113d6b548366871b884345"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> <a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a789e91e8c276aedb1c32873c3d6fa217"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef int(* grpc_httpcli_get_override)(const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3b84c74398894ce993b1e32daf468575"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a> <a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0591ce896f1a3f9b1b86e4eb6e9ac225"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef int(* grpc_httpcli_post_override)(const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request, const char *body_bytes, size_t body_size, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e0f0352ec7906d948f9dc046f9b4e79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b9787db48bc2c77f38575943dc8dad0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a00129a2e0bb8e9d9a6632e88f7a8c887"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_httpcli_response_cb)(void *user_data, const <a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *response)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a6d47084af44bf387790281f288f78d7b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accc8da3837feac14f5f0b64e4cff8d1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_context_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a594371d2c96d499a5a3bcccb27ece0da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a>&#160;</td>
+ <td class="paramname"><em>on_response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a96f034743193848e966d61192e406c70"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_post </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>body_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>body_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a>&#160;</td>
+ <td class="paramname"><em>on_response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15ab7c87e0d5e42341c9652d5045d8ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_set_override </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a>&#160;</td>
+ <td class="paramname"><em>get</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a>&#160;</td>
+ <td class="paramname"><em>post</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/httpcli_8h_source.html b/doc/ref/core.internal/html/httpcli_8h_source.html
new file mode 100644
index 0000000000..d517882338
--- /dev/null
+++ b/doc/ref/core.internal/html/httpcli_8h_source.html
@@ -0,0 +1,279 @@
+<!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: src/core/httpcli/httpcli.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">httpcli.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="httpcli_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_HTTPCLI_HTTPCLI_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_HTTPCLI_HTTPCLI_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset__set_8h.html">src/core/iomgr/pollset_set.h</a>&quot;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* User agent this library reports */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="httpcli_8h.html#aad8b996f269fd3671a7c6fa829bdec95"> 44</a></span>&#160;<span class="preprocessor">#define GRPC_HTTPCLI_USER_AGENT &quot;grpc-httpcli/0.0&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="comment">/* Maximum length of a header string of the form &#39;Key: Value\r\n&#39; */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec"> 46</a></span>&#160;<span class="preprocessor">#define GRPC_HTTPCLI_MAX_HEADER_LENGTH 4096</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* A single header to be passed in a request */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__header.html"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e"> 50</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e">key</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa"> 51</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa">value</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;} <a class="code" href="httpcli_8h.html#a3b84c74398894ce993b1e32daf468575">grpc_httpcli_header</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* Tracks in-progress http requests</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> TODO(ctiller): allow caching and capturing multiple requests for the</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> same content and combining them */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__context.html"> 57</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2"> 58</a></span>&#160; <a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> <a class="code" href="structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2">pollset_set</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="httpcli_8h.html#aacb6a69953113d6b548366871b884345">grpc_httpcli_context</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* A request */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__request.html"> 62</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* The host name to connect to */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d"> 64</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d">host</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* The path of the resource to fetch */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa"> 66</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa">path</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">/* Additional headers: count and key/values; the following are supplied</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> automatically and MUST NOT be set here:</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> Host, Connection, User-Agent */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0"> 70</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0">hdr_count</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6"> 71</a></span>&#160; <a class="code" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a> *<a class="code" href="structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6">hdrs</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* whether to use ssl for the request */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3"> 73</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3">use_ssl</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;} <a class="code" href="httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79">grpc_httpcli_request</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* A response */</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__response.html"> 77</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> {</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">/* HTTP status code */</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243"> 79</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243">status</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">/* Headers: count and key/values */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e"> 81</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e">hdr_count</a>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d"> 82</a></span>&#160; <a class="code" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a> *<a class="code" href="structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d">hdrs</a>;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">/* Body: length and contents; contents are NOT null-terminated */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb"> 84</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb">body_length</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90"> 85</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90">body</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;} <a class="code" href="httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0">grpc_httpcli_response</a>;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Callback for grpc_httpcli_get and grpc_httpcli_post. */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887"> 89</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a>)(<span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> *response);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">void</span> <a class="code" href="httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b">grpc_httpcli_context_init</a>(<a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">void</span> <a class="code" href="httpcli_8h.html#a6d47084af44bf387790281f288f78d7b">grpc_httpcli_context_destroy</a>(<a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment">/* Asynchronously perform a HTTP GET.</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> &#39;context&#39; specifies the http context under which to do the get</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> &#39;pollset&#39; indicates a grpc_pollset that is interested in the result</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> of the get - work on this pollset may be used to progress the get</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> operation</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> &#39;request&#39; contains request parameters - these are caller owned and can be</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> destroyed once the call returns</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> &#39;deadline&#39; contains a deadline for the request (or gpr_inf_future)</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> &#39;on_response&#39; is a callback to report results to (and &#39;user_data&#39; is a user</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> supplied pointer to pass to said call) */</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keywordtype">void</span> <a class="code" href="httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da">grpc_httpcli_get</a>(<a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">/* Asynchronously perform a HTTP POST.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> &#39;context&#39; specifies the http context under which to do the post</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> &#39;pollset&#39; indicates a grpc_pollset that is interested in the result</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> of the post - work on this pollset may be used to progress the post</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> operation</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> &#39;request&#39; contains request parameters - these are caller owned and can be</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> destroyed once the call returns</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> &#39;body_bytes&#39; and &#39;body_size&#39; specify the payload for the post.</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> When there is no body, pass in NULL as body_bytes.</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> &#39;deadline&#39; contains a deadline for the request (or gpr_inf_future)</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> &#39;em&#39; points to a caller owned event manager that must be alive for the</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> lifetime of the request</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> &#39;on_response&#39; is a callback to report results to (and &#39;user_data&#39; is a user</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> supplied pointer to pass to said call)</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> Does not support ?var1=val1&amp;var2=val2 in the path. */</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keywordtype">void</span> <a class="code" href="httpcli_8h.html#a96f034743193848e966d61192e406c70">grpc_httpcli_post</a>(<a class="code" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *context, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request,</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *body_bytes, <span class="keywordtype">size_t</span> body_size,</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response, <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment">/* override functions return 1 if they handled the request, 0 otherwise */</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217"> 132</a></span>&#160;<span class="keyword">typedef</span> int (*<a class="code" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a>)(<span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response,</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225"> 136</a></span>&#160;<span class="keyword">typedef</span> int (*<a class="code" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a>)(<span class="keyword">const</span> <a class="code" href="structgrpc__httpcli__request.html">grpc_httpcli_request</a> *request,</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *body_bytes,</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordtype">size_t</span> body_size,</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> on_response,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keywordtype">void</span> <a class="code" href="httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce">grpc_httpcli_set_override</a>(<a class="code" href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a> <span class="keyword">get</span>,</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a> post);</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_HTTPCLI_HTTPCLI_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__httpcli__header_html_af1d05b8dfdd2f2f433efc955116cb2aa"><div class="ttname"><a href="structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa">grpc_httpcli_header::value</a></div><div class="ttdeci">char * value</div><div class="ttdef"><b>Definition:</b> httpcli.h:51</div></div>
+<div class="ttc" id="httpcli_8h_html_a594371d2c96d499a5a3bcccb27ece0da"><div class="ttname"><a href="httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da">grpc_httpcli_get</a></div><div class="ttdeci">void grpc_httpcli_get(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data)</div><div class="ttdef"><b>Definition:</b> httpcli.c:231</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html_a8525db277ee594e9e806884aa3e4430d"><div class="ttname"><a href="structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d">grpc_httpcli_response::hdrs</a></div><div class="ttdeci">grpc_httpcli_header * hdrs</div><div class="ttdef"><b>Definition:</b> httpcli.h:82</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html_a907d00d1b3d1b8b0b8dddc0e7adbd48d"><div class="ttname"><a href="structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d">grpc_httpcli_request::host</a></div><div class="ttdeci">char * host</div><div class="ttdef"><b>Definition:</b> httpcli.h:64</div></div>
+<div class="ttc" id="httpcli_8h_html_a3b84c74398894ce993b1e32daf468575"><div class="ttname"><a href="httpcli_8h.html#a3b84c74398894ce993b1e32daf468575">grpc_httpcli_header</a></div><div class="ttdeci">struct grpc_httpcli_header grpc_httpcli_header</div></div>
+<div class="ttc" id="httpcli_8h_html_a4e0f0352ec7906d948f9dc046f9b4e79"><div class="ttname"><a href="httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79">grpc_httpcli_request</a></div><div class="ttdeci">struct grpc_httpcli_request grpc_httpcli_request</div></div>
+<div class="ttc" id="httpcli_8h_html_accc8da3837feac14f5f0b64e4cff8d1b"><div class="ttname"><a href="httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b">grpc_httpcli_context_init</a></div><div class="ttdeci">void grpc_httpcli_context_init(grpc_httpcli_context *context)</div><div class="ttdef"><b>Definition:</b> httpcli.c:71</div></div>
+<div class="ttc" id="httpcli_8h_html_a6d47084af44bf387790281f288f78d7b"><div class="ttname"><a href="httpcli_8h.html#a6d47084af44bf387790281f288f78d7b">grpc_httpcli_context_destroy</a></div><div class="ttdeci">void grpc_httpcli_context_destroy(grpc_httpcli_context *context)</div><div class="ttdef"><b>Definition:</b> httpcli.c:75</div></div>
+<div class="ttc" id="structgrpc__httpcli__context_html_aafa3ada73c3704d7e5d2971266e499f2"><div class="ttname"><a href="structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2">grpc_httpcli_context::pollset_set</a></div><div class="ttdeci">grpc_pollset_set pollset_set</div><div class="ttdef"><b>Definition:</b> httpcli.h:58</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="httpcli_8h_html_a0591ce896f1a3f9b1b86e4eb6e9ac225"><div class="ttname"><a href="httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225">grpc_httpcli_post_override</a></div><div class="ttdeci">int(* grpc_httpcli_post_override)(const grpc_httpcli_request *request, const char *body_bytes, size_t body_size, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data)</div><div class="ttdef"><b>Definition:</b> httpcli.h:136</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html_a8f37c239a412de970f3489c71ad08b90"><div class="ttname"><a href="structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90">grpc_httpcli_response::body</a></div><div class="ttdeci">char * body</div><div class="ttdef"><b>Definition:</b> httpcli.h:85</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html_ad43f89eff8a4ab84b0364eca501ad243"><div class="ttname"><a href="structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243">grpc_httpcli_response::status</a></div><div class="ttdeci">int status</div><div class="ttdef"><b>Definition:</b> httpcli.h:79</div></div>
+<div class="ttc" id="httpcli_8h_html_a9b9787db48bc2c77f38575943dc8dad0"><div class="ttname"><a href="httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0">grpc_httpcli_response</a></div><div class="ttdeci">struct grpc_httpcli_response grpc_httpcli_response</div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html_a00525596b5530699a64fa1baa90576c6"><div class="ttname"><a href="structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6">grpc_httpcli_request::hdrs</a></div><div class="ttdeci">grpc_httpcli_header * hdrs</div><div class="ttdef"><b>Definition:</b> httpcli.h:71</div></div>
+<div class="ttc" id="httpcli_8h_html_a789e91e8c276aedb1c32873c3d6fa217"><div class="ttname"><a href="httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217">grpc_httpcli_get_override</a></div><div class="ttdeci">int(* grpc_httpcli_get_override)(const grpc_httpcli_request *request, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data)</div><div class="ttdef"><b>Definition:</b> httpcli.h:132</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html_a5a190ad146f03dcf9c8db0031f3e592e"><div class="ttname"><a href="structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e">grpc_httpcli_response::hdr_count</a></div><div class="ttdeci">size_t hdr_count</div><div class="ttdef"><b>Definition:</b> httpcli.h:81</div></div>
+<div class="ttc" id="httpcli_8h_html_aacb6a69953113d6b548366871b884345"><div class="ttname"><a href="httpcli_8h.html#aacb6a69953113d6b548366871b884345">grpc_httpcli_context</a></div><div class="ttdeci">struct grpc_httpcli_context grpc_httpcli_context</div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html"><div class="ttname"><a href="structgrpc__httpcli__request.html">grpc_httpcli_request</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:62</div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html_a5e51c4eefce49db4c5406e884ce8a4aa"><div class="ttname"><a href="structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa">grpc_httpcli_request::path</a></div><div class="ttdeci">char * path</div><div class="ttdef"><b>Definition:</b> httpcli.h:66</div></div>
+<div class="ttc" id="pollset__set_8h_html"><div class="ttname"><a href="pollset__set_8h.html">pollset_set.h</a></div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html_a26967529714ef3cba3a5ce5f6a34d9cb"><div class="ttname"><a href="structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb">grpc_httpcli_response::body_length</a></div><div class="ttdeci">size_t body_length</div><div class="ttdef"><b>Definition:</b> httpcli.h:84</div></div>
+<div class="ttc" id="structgrpc__httpcli__header_html_aa5504b4e9fba5978e4026dbeadb6619e"><div class="ttname"><a href="structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e">grpc_httpcli_header::key</a></div><div class="ttdeci">char * key</div><div class="ttdef"><b>Definition:</b> httpcli.h:50</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="httpcli_8h_html_a00129a2e0bb8e9d9a6632e88f7a8c887"><div class="ttname"><a href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a></div><div class="ttdeci">void(* grpc_httpcli_response_cb)(void *user_data, const grpc_httpcli_response *response)</div><div class="ttdef"><b>Definition:</b> httpcli.h:89</div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html_a3f21a167ba2c1a4afcb00023a707cde0"><div class="ttname"><a href="structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0">grpc_httpcli_request::hdr_count</a></div><div class="ttdeci">size_t hdr_count</div><div class="ttdef"><b>Definition:</b> httpcli.h:70</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="structgrpc__httpcli__context_html"><div class="ttname"><a href="structgrpc__httpcli__context.html">grpc_httpcli_context</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:57</div></div>
+<div class="ttc" id="httpcli_8h_html_a96f034743193848e966d61192e406c70"><div class="ttname"><a href="httpcli_8h.html#a96f034743193848e966d61192e406c70">grpc_httpcli_post</a></div><div class="ttdeci">void grpc_httpcli_post(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, const char *body_bytes, size_t body_size, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data)</div><div class="ttdef"><b>Definition:</b> httpcli.c:263</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html"><div class="ttname"><a href="structgrpc__httpcli__response.html">grpc_httpcli_response</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:77</div></div>
+<div class="ttc" id="structgrpc__httpcli__request_html_ab2502ce6e5c0362a8a0c0d02f571ceb3"><div class="ttname"><a href="structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3">grpc_httpcli_request::use_ssl</a></div><div class="ttdeci">int use_ssl</div><div class="ttdef"><b>Definition:</b> httpcli.h:73</div></div>
+<div class="ttc" id="httpcli_8h_html_a15ab7c87e0d5e42341c9652d5045d8ce"><div class="ttname"><a href="httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce">grpc_httpcli_set_override</a></div><div class="ttdeci">void grpc_httpcli_set_override(grpc_httpcli_get_override get, grpc_httpcli_post_override post)</div><div class="ttdef"><b>Definition:</b> httpcli.c:297</div></div>
+<div class="ttc" id="structgrpc__httpcli__header_html"><div class="ttname"><a href="structgrpc__httpcli__header.html">grpc_httpcli_header</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:49</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/httpcli__security__connector_8c.html b/doc/ref/core.internal/html/httpcli__security__connector_8c.html
new file mode 100644
index 0000000000..3d2c976389
--- /dev/null
+++ b/doc/ref/core.internal/html/httpcli__security__connector_8c.html
@@ -0,0 +1,159 @@
+<!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: src/core/httpcli/httpcli_security_connector.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">httpcli_security_connector.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="httpcli__security__connector_8h_source.html">src/core/httpcli/httpcli_security_connector.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="secure__transport__setup_8h_source.html">src/core/security/secure_transport_setup.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="ssl__transport__security_8h_source.html">src/core/tsi/ssl_transport_security.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html">grpc_httpcli_ssl_channel_security_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2738fc49f8c3103a4e43ef68cd9b15de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli__security__connector_8c.html#a2738fc49f8c3103a4e43ef68cd9b15de">grpc_httpcli_ssl_channel_security_connector_create</a> (const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc)</td></tr>
+<tr class="separator:a2738fc49f8c3103a4e43ef68cd9b15de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2738fc49f8c3103a4e43ef68cd9b15de"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_httpcli_ssl_channel_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_root_certs_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>secure_peer_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/httpcli__security__connector_8h.html b/doc/ref/core.internal/html/httpcli__security__connector_8h.html
new file mode 100644
index 0000000000..10d48bba49
--- /dev/null
+++ b/doc/ref/core.internal/html/httpcli__security__connector_8h.html
@@ -0,0 +1,149 @@
+<!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: src/core/httpcli/httpcli_security_connector.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">httpcli_security_connector.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+</div>
+<p><a href="httpcli__security__connector_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2738fc49f8c3103a4e43ef68cd9b15de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de">grpc_httpcli_ssl_channel_security_connector_create</a> (const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc)</td></tr>
+<tr class="separator:a2738fc49f8c3103a4e43ef68cd9b15de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2738fc49f8c3103a4e43ef68cd9b15de"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_httpcli_ssl_channel_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_root_certs_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>secure_peer_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/httpcli__security__connector_8h_source.html b/doc/ref/core.internal/html/httpcli__security__connector_8h_source.html
new file mode 100644
index 0000000000..c97470c72d
--- /dev/null
+++ b/doc/ref/core.internal/html/httpcli__security__connector_8h_source.html
@@ -0,0 +1,146 @@
+<!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: src/core/httpcli/httpcli_security_connector.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">httpcli_security_connector.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="httpcli__security__connector_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_HTTPCLI_HTTPCLI_SECURITY_CONNECTOR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_HTTPCLI_HTTPCLI_SECURITY_CONNECTOR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="security__connector_8h.html">src/core/security/security_connector.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de">grpc_httpcli_ssl_channel_security_connector_create</a>(</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *pem_root_certs, <span class="keywordtype">size_t</span> pem_root_certs_size,</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *secure_peer_name, <a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_HTTPCLI_HTTPCLI_SECURITY_CONNECTOR_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="httpcli__security__connector_8h_html_a2738fc49f8c3103a4e43ef68cd9b15de"><div class="ttname"><a href="httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de">grpc_httpcli_ssl_channel_security_connector_create</a></div><div class="ttdeci">grpc_security_status grpc_httpcli_ssl_channel_security_connector_create(const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, grpc_channel_security_connector **sc)</div><div class="ttdef"><b>Definition:</b> httpcli_security_connector.c:99</div></div>
+<div class="ttc" id="security__connector_8h_html"><div class="ttname"><a href="security__connector_8h.html">security_connector.h</a></div></div>
+<div class="ttc" id="structgrpc__channel__security__connector_html"><div class="ttname"><a href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:135</div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a></div><div class="ttdeci">grpc_security_status</div><div class="ttdef"><b>Definition:</b> security_connector.h:43</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/huffsyms_8c.html b/doc/ref/core.internal/html/huffsyms_8c.html
new file mode 100644
index 0000000000..5469053198
--- /dev/null
+++ b/doc/ref/core.internal/html/huffsyms_8c.html
@@ -0,0 +1,121 @@
+<!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: src/core/transport/chttp2/huffsyms.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">huffsyms.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="huffsyms_8h_source.html">src/core/transport/chttp2/huffsyms.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a8cbea7cb59b983d744943eab38e8d55f"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="huffsyms_8c.html#a8cbea7cb59b983d744943eab38e8d55f">grpc_chttp2_huffsyms</a> [<a class="el" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">GRPC_CHTTP2_NUM_HUFFSYMS</a>]</td></tr>
+<tr class="separator:a8cbea7cb59b983d744943eab38e8d55f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a8cbea7cb59b983d744943eab38e8d55f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a> grpc_chttp2_huffsyms[<a class="el" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">GRPC_CHTTP2_NUM_HUFFSYMS</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/huffsyms_8h.html b/doc/ref/core.internal/html/huffsyms_8h.html
new file mode 100644
index 0000000000..b632e13831
--- /dev/null
+++ b/doc/ref/core.internal/html/huffsyms_8h.html
@@ -0,0 +1,147 @@
+<!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: src/core/transport/chttp2/huffsyms.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">huffsyms.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="huffsyms_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ae3db52e9200db6e4b14b35f5f3d678cb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">GRPC_CHTTP2_NUM_HUFFSYMS</a>&#160;&#160;&#160;257</td></tr>
+<tr class="separator:ae3db52e9200db6e4b14b35f5f3d678cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a03277352c8049d68a2ab3e26086aa79c"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c">grpc_chttp2_huffsyms</a> [257]</td></tr>
+<tr class="separator:a03277352c8049d68a2ab3e26086aa79c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ae3db52e9200db6e4b14b35f5f3d678cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_NUM_HUFFSYMS&#160;&#160;&#160;257</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a03277352c8049d68a2ab3e26086aa79c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a> grpc_chttp2_huffsyms[257]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/huffsyms_8h_source.html b/doc/ref/core.internal/html/huffsyms_8h_source.html
new file mode 100644
index 0000000000..7545124111
--- /dev/null
+++ b/doc/ref/core.internal/html/huffsyms_8h_source.html
@@ -0,0 +1,152 @@
+<!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: src/core/transport/chttp2/huffsyms.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">huffsyms.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="huffsyms_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HUFFSYMS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HUFFSYMS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* HPACK static huffman table */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb"> 39</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_NUM_HUFFSYMS 257</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__huffsym.html"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88"> 42</a></span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88">bits</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88"> 43</a></span>&#160; <span class="keywordtype">unsigned</span> <a class="code" href="structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88">length</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a> <a class="code" href="huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c">grpc_chttp2_huffsyms</a>[<a class="code" href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">GRPC_CHTTP2_NUM_HUFFSYMS</a>];</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_HUFFSYMS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="huffsyms_8h_html_ae3db52e9200db6e4b14b35f5f3d678cb"><div class="ttname"><a href="huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb">GRPC_CHTTP2_NUM_HUFFSYMS</a></div><div class="ttdeci">#define GRPC_CHTTP2_NUM_HUFFSYMS</div><div class="ttdef"><b>Definition:</b> huffsyms.h:39</div></div>
+<div class="ttc" id="huffsyms_8h_html_a03277352c8049d68a2ab3e26086aa79c"><div class="ttname"><a href="huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c">grpc_chttp2_huffsyms</a></div><div class="ttdeci">const grpc_chttp2_huffsym grpc_chttp2_huffsyms[257]</div><div class="ttdef"><b>Definition:</b> huffsyms.c:39</div></div>
+<div class="ttc" id="structgrpc__chttp2__huffsym_html_a11ba8572355dad4e35ac61f2289d1e88"><div class="ttname"><a href="structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88">grpc_chttp2_huffsym::length</a></div><div class="ttdeci">unsigned length</div><div class="ttdef"><b>Definition:</b> huffsyms.h:43</div></div>
+<div class="ttc" id="structgrpc__chttp2__huffsym_html_a90ee6b96d9c7946f78271d280f881b88"><div class="ttname"><a href="structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88">grpc_chttp2_huffsym::bits</a></div><div class="ttdeci">unsigned bits</div><div class="ttdef"><b>Definition:</b> huffsyms.h:42</div></div>
+<div class="ttc" id="structgrpc__chttp2__huffsym_html"><div class="ttname"><a href="structgrpc__chttp2__huffsym.html">grpc_chttp2_huffsym</a></div><div class="ttdef"><b>Definition:</b> huffsyms.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/incoming__metadata_8c.html b/doc/ref/core.internal/html/incoming__metadata_8c.html
new file mode 100644
index 0000000000..e38a4c599e
--- /dev/null
+++ b/doc/ref/core.internal/html/incoming__metadata_8c.html
@@ -0,0 +1,351 @@
+<!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: src/core/transport/chttp2/incoming_metadata.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">incoming_metadata.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="incoming__metadata_8h_source.html">src/core/transport/chttp2/incoming_metadata.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acb327575a569f6d7fbb40c309119bc00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#acb327575a569f6d7fbb40c309119bc00">grpc_chttp2_incoming_metadata_buffer_init</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer)</td></tr>
+<tr class="memdesc:acb327575a569f6d7fbb40c309119bc00"><td class="mdescLeft">&#160;</td><td class="mdescRight">assumes everything initially zeroed <a href="#acb327575a569f6d7fbb40c309119bc00">More...</a><br/></td></tr>
+<tr class="separator:acb327575a569f6d7fbb40c309119bc00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a640db57113d389432d42bda5e1169b31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#a640db57113d389432d42bda5e1169b31">grpc_chttp2_incoming_metadata_buffer_destroy</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer)</td></tr>
+<tr class="separator:a640db57113d389432d42bda5e1169b31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b7de798f56d0202db1102c2c87313d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#a0b7de798f56d0202db1102c2c87313d0">grpc_chttp2_incoming_metadata_buffer_add</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem)</td></tr>
+<tr class="separator:a0b7de798f56d0202db1102c2c87313d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba03088316cada64053b68851b5a5603"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#aba03088316cada64053b68851b5a5603">grpc_chttp2_incoming_metadata_buffer_set_deadline</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="separator:aba03088316cada64053b68851b5a5603"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b987a9d3099c62ad4a6c198242b884e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#a5b987a9d3099c62ad4a6c198242b884e">grpc_chttp2_incoming_metadata_live_op_buffer_end</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *buffer)</td></tr>
+<tr class="separator:a5b987a9d3099c62ad4a6c198242b884e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b6375d9d949b70f2d38ceeb57437137"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#a6b6375d9d949b70f2d38ceeb57437137">grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="memdesc:a6b6375d9d949b70f2d38ceeb57437137"><td class="mdescLeft">&#160;</td><td class="mdescRight">extend sopb with a metadata batch; this must be post-processed by grpc_chttp2_incoming_metadata_buffer_postprocess_sopb before being handed out of the transport <a href="#a6b6375d9d949b70f2d38ceeb57437137">More...</a><br/></td></tr>
+<tr class="separator:a6b6375d9d949b70f2d38ceeb57437137"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ae615483b18241fe3a8fe7c9897cee4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#a3ae615483b18241fe3a8fe7c9897cee4">grpc_chttp2_incoming_metadata_buffer_swap</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *a, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *b)</td></tr>
+<tr class="separator:a3ae615483b18241fe3a8fe7c9897cee4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a6bd4407d08e21bc48a6f9cd7167cd0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">grpc_incoming_metadata_buffer_move_to_referencing_sopb</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *src, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *dst, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:a0a6bd4407d08e21bc48a6f9cd7167cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe1950af666833c29b8086f4931be4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8c.html#aafe1950af666833c29b8086f4931be4d">grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *live_op_buffer)</td></tr>
+<tr class="separator:aafe1950af666833c29b8086f4931be4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0b7de798f56d0202db1102c2c87313d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a640db57113d389432d42bda5e1169b31"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb327575a569f6d7fbb40c309119bc00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>assumes everything initially zeroed </p>
+
+</div>
+</div>
+<a class="anchor" id="a6b6375d9d949b70f2d38ceeb57437137"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>extend sopb with a metadata batch; this must be post-processed by grpc_chttp2_incoming_metadata_buffer_postprocess_sopb before being handed out of the transport </p>
+
+</div>
+</div>
+<a class="anchor" id="aafe1950af666833c29b8086f4931be4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>live_op_buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba03088316cada64053b68851b5a5603"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_set_deadline </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ae615483b18241fe3a8fe7c9897cee4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_swap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b987a9d3099c62ad4a6c198242b884e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_live_op_buffer_end </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a6bd4407d08e21bc48a6f9cd7167cd0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_incoming_metadata_buffer_move_to_referencing_sopb </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/incoming__metadata_8h.html b/doc/ref/core.internal/html/incoming__metadata_8h.html
new file mode 100644
index 0000000000..d12cce0427
--- /dev/null
+++ b/doc/ref/core.internal/html/incoming__metadata_8h.html
@@ -0,0 +1,347 @@
+<!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: src/core/transport/chttp2/incoming_metadata.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">incoming_metadata.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div>
+<p><a href="incoming__metadata_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acb327575a569f6d7fbb40c309119bc00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00">grpc_chttp2_incoming_metadata_buffer_init</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer)</td></tr>
+<tr class="memdesc:acb327575a569f6d7fbb40c309119bc00"><td class="mdescLeft">&#160;</td><td class="mdescRight">assumes everything initially zeroed <a href="#acb327575a569f6d7fbb40c309119bc00">More...</a><br/></td></tr>
+<tr class="separator:acb327575a569f6d7fbb40c309119bc00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a640db57113d389432d42bda5e1169b31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31">grpc_chttp2_incoming_metadata_buffer_destroy</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer)</td></tr>
+<tr class="separator:a640db57113d389432d42bda5e1169b31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1f653fae150dc145f909b855a28e883"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883">grpc_chttp2_incoming_metadata_buffer_reset</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer)</td></tr>
+<tr class="separator:ad1f653fae150dc145f909b855a28e883"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b7de798f56d0202db1102c2c87313d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0">grpc_chttp2_incoming_metadata_buffer_add</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem)</td></tr>
+<tr class="separator:a0b7de798f56d0202db1102c2c87313d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba03088316cada64053b68851b5a5603"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603">grpc_chttp2_incoming_metadata_buffer_set_deadline</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="separator:aba03088316cada64053b68851b5a5603"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b6375d9d949b70f2d38ceeb57437137"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137">grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="memdesc:a6b6375d9d949b70f2d38ceeb57437137"><td class="mdescLeft">&#160;</td><td class="mdescRight">extend sopb with a metadata batch; this must be post-processed by grpc_chttp2_incoming_metadata_buffer_postprocess_sopb before being handed out of the transport <a href="#a6b6375d9d949b70f2d38ceeb57437137">More...</a><br/></td></tr>
+<tr class="separator:a6b6375d9d949b70f2d38ceeb57437137"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a6bd4407d08e21bc48a6f9cd7167cd0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">grpc_incoming_metadata_buffer_move_to_referencing_sopb</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *src, <a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *dst, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:a0a6bd4407d08e21bc48a6f9cd7167cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafe1950af666833c29b8086f4931be4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d">grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *live_op_buffer)</td></tr>
+<tr class="separator:aafe1950af666833c29b8086f4931be4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84fcf79fb151ceab04531f8921ed51f2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2">grpc_chttp2_incoming_metadata_live_op_buffer_end</a> (<a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *live_op_buffer)</td></tr>
+<tr class="separator:a84fcf79fb151ceab04531f8921ed51f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0b7de798f56d0202db1102c2c87313d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a640db57113d389432d42bda5e1169b31"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb327575a569f6d7fbb40c309119bc00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>assumes everything initially zeroed </p>
+
+</div>
+</div>
+<a class="anchor" id="a6b6375d9d949b70f2d38ceeb57437137"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>extend sopb with a metadata batch; this must be post-processed by grpc_chttp2_incoming_metadata_buffer_postprocess_sopb before being handed out of the transport </p>
+
+</div>
+</div>
+<a class="anchor" id="aafe1950af666833c29b8086f4931be4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>live_op_buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1f653fae150dc145f909b855a28e883"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_reset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba03088316cada64053b68851b5a5603"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_buffer_set_deadline </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a84fcf79fb151ceab04531f8921ed51f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_incoming_metadata_live_op_buffer_end </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>live_op_buffer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a6bd4407d08e21bc48a6f9cd7167cd0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_incoming_metadata_buffer_move_to_referencing_sopb </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/incoming__metadata_8h_source.html b/doc/ref/core.internal/html/incoming__metadata_8h_source.html
new file mode 100644
index 0000000000..0c761c9027
--- /dev/null
+++ b/doc/ref/core.internal/html/incoming__metadata_8h_source.html
@@ -0,0 +1,196 @@
+<!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: src/core/transport/chttp2/incoming_metadata.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">incoming_metadata.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="incoming__metadata_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHTTP2_INCOMING_METADATA_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHTTP2_INCOMING_METADATA_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport_8h.html">src/core/transport/transport.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__buffer.html"> 39</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92"> 40</a></span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *<a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92">elems</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd"> 41</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd">count</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd"> 42</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd">capacity</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589"> 43</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589">deadline</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d"> 47</a></span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *<a class="code" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d">elems</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;} <a class="code" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00">grpc_chttp2_incoming_metadata_buffer_init</a>(</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31">grpc_chttp2_incoming_metadata_buffer_destroy</a>(</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883">grpc_chttp2_incoming_metadata_buffer_reset</a>(</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0">grpc_chttp2_incoming_metadata_buffer_add</a>(</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603">grpc_chttp2_incoming_metadata_buffer_set_deadline</a>(</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137">grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into</a>(</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">grpc_incoming_metadata_buffer_move_to_referencing_sopb</a>(</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *src,</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *dst, <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d">grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op</a>(</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> *buffer, <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *live_op_buffer);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2">grpc_chttp2_incoming_metadata_live_op_buffer_end</a>(</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> *live_op_buffer);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHTTP2_INCOMING_METADATA_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__live__op__buffer_html"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a></div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:46</div></div>
+<div class="ttc" id="transport_8h_html"><div class="ttname"><a href="transport_8h.html">transport.h</a></div></div>
+<div class="ttc" id="incoming__metadata_8h_html_a6b6375d9d949b70f2d38ceeb57437137"><div class="ttname"><a href="incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137">grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb)</div><div class="ttdoc">extend sopb with a metadata batch; this must be post-processed by grpc_chttp2_incoming_metadata_buffe...</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:78</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_a0a6bd4407d08e21bc48a6f9cd7167cd0"><div class="ttname"><a href="incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0">grpc_incoming_metadata_buffer_move_to_referencing_sopb</a></div><div class="ttdeci">void grpc_incoming_metadata_buffer_move_to_referencing_sopb(grpc_chttp2_incoming_metadata_buffer *src, grpc_chttp2_incoming_metadata_buffer *dst, grpc_stream_op_buffer *sopb)</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:101</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__buffer_html_ab5170826c627b8191d4def6aa2959589"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589">grpc_chttp2_incoming_metadata_buffer::deadline</a></div><div class="ttdeci">gpr_timespec deadline</div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:43</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_aba03088316cada64053b68851b5a5603"><div class="ttname"><a href="incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603">grpc_chttp2_incoming_metadata_buffer_set_deadline</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_set_deadline(grpc_chttp2_incoming_metadata_buffer *buffer, gpr_timespec deadline)</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:67</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__buffer_html_ae83511b7dc5b74ca64f15a23e552c0cd"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd">grpc_chttp2_incoming_metadata_buffer::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:42</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_a640db57113d389432d42bda5e1169b31"><div class="ttname"><a href="incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31">grpc_chttp2_incoming_metadata_buffer_destroy</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_destroy(grpc_chttp2_incoming_metadata_buffer *buffer)</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:48</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_acb327575a569f6d7fbb40c309119bc00"><div class="ttname"><a href="incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00">grpc_chttp2_incoming_metadata_buffer_init</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_init(grpc_chttp2_incoming_metadata_buffer *buffer)</div><div class="ttdoc">assumes everything initially zeroed </div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:43</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__live__op__buffer_html_ae11e8fc642ff7d933c26992dee443b9d"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d">grpc_chttp2_incoming_metadata_live_op_buffer::elems</a></div><div class="ttdeci">grpc_linked_mdelem * elems</div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:47</div></div>
+<div class="ttc" id="structgrpc__linked__mdelem_html"><div class="ttname"><a href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:76</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__buffer_html"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a></div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:39</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_aafe1950af666833c29b8086f4931be4d"><div class="ttname"><a href="incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d">grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb, grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer)</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:130</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__buffer_html_a899a942462aa9b89bec8e0589cde8a92"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92">grpc_chttp2_incoming_metadata_buffer::elems</a></div><div class="ttdeci">grpc_linked_mdelem * elems</div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:40</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html"><div class="ttname"><a href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div><div class="ttdef"><b>Definition:</b> stream_op.h:176</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_ad1f653fae150dc145f909b855a28e883"><div class="ttname"><a href="incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883">grpc_chttp2_incoming_metadata_buffer_reset</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_reset(grpc_chttp2_incoming_metadata_buffer *buffer)</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_a0b7de798f56d0202db1102c2c87313d0"><div class="ttname"><a href="incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0">grpc_chttp2_incoming_metadata_buffer_add</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_buffer_add(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_mdelem *elem)</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:57</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__buffer_html_a82dc3f5a9b456b6fd15b5d559eb2c4bd"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd">grpc_chttp2_incoming_metadata_buffer::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:41</div></div>
+<div class="ttc" id="incoming__metadata_8h_html_a84fcf79fb151ceab04531f8921ed51f2"><div class="ttname"><a href="incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2">grpc_chttp2_incoming_metadata_live_op_buffer_end</a></div><div class="ttdeci">void grpc_chttp2_incoming_metadata_live_op_buffer_end(grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer)</div><div class="ttdef"><b>Definition:</b> incoming_metadata.c:72</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/index.html b/doc/ref/core.internal/html/index.html
new file mode 100644
index 0000000000..a9967e667b
--- /dev/null
+++ b/doc/ref/core.internal/html/index.html
@@ -0,0 +1,93 @@
+<!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 Core</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 class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><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><!-- top -->
+<!-- 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 class="header">
+ <div class="headertitle">
+<div class="title">GRPC Core </div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><h1><a class="anchor" id="intro_sec"></a>
+The GRPC Core library is a low-level library designed</h1>
+<p>to be wrapped by higher level libraries.</p>
+<p>The top-level API is provided in <a class="el" href="grpc_8h.html">grpc.h</a>. Security related functionality lives in <a class="el" href="grpc__security_8h.html">grpc_security.h</a>. </p>
+</div></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>
diff --git a/doc/ref/core.internal/html/init_8c.html b/doc/ref/core.internal/html/init_8c.html
new file mode 100644
index 0000000000..177718606c
--- /dev/null
+++ b/doc/ref/core.internal/html/init_8c.html
@@ -0,0 +1,184 @@
+<!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: src/core/surface/init.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">init.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="census_8h_source.html">grpc/census.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolver__registry_8h_source.html">src/core/client_config/resolver_registry.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="dns__resolver_8h_source.html">src/core/client_config/resolvers/dns_resolver.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="sockaddr__resolver_8h_source.html">src/core/client_config/resolvers/sockaddr_resolver.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="timers_8h_source.html">src/core/profiling/timers.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="init_8h_source.html">src/core/surface/init.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="surface__trace_8h_source.html">src/core/surface/surface_trace.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connectivity__state_8h_source.html">src/core/transport/connectivity_state.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa78606c93951c49eadd8d83d739798d6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8c.html#aa78606c93951c49eadd8d83d739798d6">grpc_init</a> (void)</td></tr>
+<tr class="memdesc:aa78606c93951c49eadd8d83d739798d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the grpc library. <a href="#aa78606c93951c49eadd8d83d739798d6">More...</a><br/></td></tr>
+<tr class="separator:aa78606c93951c49eadd8d83d739798d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1130720e50ffedd0bb065c84843b032"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8c.html#af1130720e50ffedd0bb065c84843b032">grpc_shutdown</a> (void)</td></tr>
+<tr class="memdesc:af1130720e50ffedd0bb065c84843b032"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shut down the grpc library. <a href="#af1130720e50ffedd0bb065c84843b032">More...</a><br/></td></tr>
+<tr class="separator:af1130720e50ffedd0bb065c84843b032"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e672384642d6dc0e98df16188beba55"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8c.html#a9e672384642d6dc0e98df16188beba55">grpc_is_initialized</a> (void)</td></tr>
+<tr class="separator:a9e672384642d6dc0e98df16188beba55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa78606c93951c49eadd8d83d739798d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initialize the grpc library. </p>
+<p>It is not safe to call any other grpc functions before calling this. (To avoid overhead, little checking is done, and some things may work. We do not warrant that they will continue to do so in future revisions of this library). </p>
+
+</div>
+</div>
+<a class="anchor" id="a9e672384642d6dc0e98df16188beba55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_is_initialized </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af1130720e50ffedd0bb065c84843b032"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Shut down the grpc library. </p>
+<p>No memory is used by grpc after this call returns, nor are any instructions executing within the grpc library. Prior to calling, all application owned grpc objects must have been destroyed. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/init_8h.html b/doc/ref/core.internal/html/init_8h.html
new file mode 100644
index 0000000000..3b082820d4
--- /dev/null
+++ b/doc/ref/core.internal/html/init_8h.html
@@ -0,0 +1,144 @@
+<!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: src/core/surface/init.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">init.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="init_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7cfa0e02a966bf937b5d69e10fad2ef7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7">grpc_security_pre_init</a> (void)</td></tr>
+<tr class="separator:a7cfa0e02a966bf937b5d69e10fad2ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e672384642d6dc0e98df16188beba55"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init_8h.html#a9e672384642d6dc0e98df16188beba55">grpc_is_initialized</a> (void)</td></tr>
+<tr class="separator:a9e672384642d6dc0e98df16188beba55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a9e672384642d6dc0e98df16188beba55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_is_initialized </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7cfa0e02a966bf937b5d69e10fad2ef7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_security_pre_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/init_8h_source.html b/doc/ref/core.internal/html/init_8h_source.html
new file mode 100644
index 0000000000..19e5432daa
--- /dev/null
+++ b/doc/ref/core.internal/html/init_8h_source.html
@@ -0,0 +1,141 @@
+<!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: src/core/surface/init.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">init.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="init_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_INIT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_INIT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keywordtype">void</span> <a class="code" href="init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7">grpc_security_pre_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keywordtype">int</span> <a class="code" href="init_8h.html#a9e672384642d6dc0e98df16188beba55">grpc_is_initialized</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_INIT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="init_8h_html_a9e672384642d6dc0e98df16188beba55"><div class="ttname"><a href="init_8h.html#a9e672384642d6dc0e98df16188beba55">grpc_is_initialized</a></div><div class="ttdeci">int grpc_is_initialized(void)</div><div class="ttdef"><b>Definition:</b> init.c:106</div></div>
+<div class="ttc" id="init_8h_html_a7cfa0e02a966bf937b5d69e10fad2ef7"><div class="ttname"><a href="init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7">grpc_security_pre_init</a></div><div class="ttdeci">void grpc_security_pre_init(void)</div><div class="ttdef"><b>Definition:</b> init_secure.c:39</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/init__secure_8c.html b/doc/ref/core.internal/html/init__secure_8c.html
new file mode 100644
index 0000000000..d3560da4eb
--- /dev/null
+++ b/doc/ref/core.internal/html/init__secure_8c.html
@@ -0,0 +1,128 @@
+<!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: src/core/surface/init_secure.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">init_secure.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="init_8h_source.html">src/core/surface/init.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="secure__endpoint_8h_source.html">src/core/security/secure_endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7cfa0e02a966bf937b5d69e10fad2ef7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="init__secure_8c.html#a7cfa0e02a966bf937b5d69e10fad2ef7">grpc_security_pre_init</a> (void)</td></tr>
+<tr class="separator:a7cfa0e02a966bf937b5d69e10fad2ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a7cfa0e02a966bf937b5d69e10fad2ef7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_security_pre_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/initialize_8c.html b/doc/ref/core.internal/html/initialize_8c.html
new file mode 100644
index 0000000000..72808eecf3
--- /dev/null
+++ b/doc/ref/core.internal/html/initialize_8c.html
@@ -0,0 +1,189 @@
+<!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: src/core/census/initialize.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">initialize.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="census_8h_source.html">grpc/census.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4cea92157f3de215724f6bf4aeaee1b6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="initialize_8c.html#a4cea92157f3de215724f6bf4aeaee1b6">census_initialize</a> (int features)</td></tr>
+<tr class="memdesc:a4cea92157f3de215724f6bf4aeaee1b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Shutdown and startup census subsystem. <a href="#a4cea92157f3de215724f6bf4aeaee1b6">More...</a><br/></td></tr>
+<tr class="separator:a4cea92157f3de215724f6bf4aeaee1b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa792b067548ecdd987d560b492c83d85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="initialize_8c.html#aa792b067548ecdd987d560b492c83d85">census_shutdown</a> (void)</td></tr>
+<tr class="separator:aa792b067548ecdd987d560b492c83d85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5f627a64ac4febbc61d2b89801d40e9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="initialize_8c.html#ad5f627a64ac4febbc61d2b89801d40e9">census_supported</a> (void)</td></tr>
+<tr class="memdesc:ad5f627a64ac4febbc61d2b89801d40e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the features supported by the current census implementation (not all features will be available on all platforms). <a href="#ad5f627a64ac4febbc61d2b89801d40e9">More...</a><br/></td></tr>
+<tr class="separator:ad5f627a64ac4febbc61d2b89801d40e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a742616973e78aaf969389cea20feea9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="initialize_8c.html#a742616973e78aaf969389cea20feea9f">census_enabled</a> (void)</td></tr>
+<tr class="memdesc:a742616973e78aaf969389cea20feea9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the census features currently enabled. <a href="#a742616973e78aaf969389cea20feea9f">More...</a><br/></td></tr>
+<tr class="separator:a742616973e78aaf969389cea20feea9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a742616973e78aaf969389cea20feea9f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_enabled </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the census features currently enabled. </p>
+
+</div>
+</div>
+<a class="anchor" id="a4cea92157f3de215724f6bf4aeaee1b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_initialize </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>features</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Shutdown and startup census subsystem. </p>
+<p>The 'features' argument should be the OR (|) of census_features values. If census fails to initialize, then <a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6" title="Shutdown and startup census subsystem. ">census_initialize()</a> will return a non-zero value. It is an error to call <a class="el" href="census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6" title="Shutdown and startup census subsystem. ">census_initialize()</a> more than once (without an intervening <a class="el" href="census_8h.html#aa792b067548ecdd987d560b492c83d85">census_shutdown()</a>). </p>
+
+</div>
+</div>
+<a class="anchor" id="aa792b067548ecdd987d560b492c83d85"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void census_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad5f627a64ac4febbc61d2b89801d40e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_supported </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return the features supported by the current census implementation (not all features will be available on all platforms). </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/internal_8h.html b/doc/ref/core.internal/html/internal_8h.html
new file mode 100644
index 0000000000..2ccba9d5f0
--- /dev/null
+++ b/doc/ref/core.internal/html/internal_8h.html
@@ -0,0 +1,1841 @@
+<!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: src/core/transport/chttp2/internal.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">internal.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame__data_8h_source.html">src/core/transport/chttp2/frame_data.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame__goaway_8h_source.html">src/core/transport/chttp2/frame_goaway.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame__ping_8h_source.html">src/core/transport/chttp2/frame_ping.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame__rst__stream_8h_source.html">src/core/transport/chttp2/frame_rst_stream.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame__settings_8h_source.html">src/core/transport/chttp2/frame_settings.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="frame__window__update_8h_source.html">src/core/transport/chttp2/frame_window_update.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="hpack__parser_8h_source.html">src/core/transport/chttp2/hpack_parser.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="incoming__metadata_8h_source.html">src/core/transport/chttp2/incoming_metadata.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="stream__encoder_8h_source.html">src/core/transport/chttp2/stream_encoder.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="stream__map_8h_source.html">src/core/transport/chttp2/stream_map.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connectivity__state_8h_source.html">src/core/transport/connectivity_state.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport__impl_8h_source.html">src/core/transport/transport_impl.h</a>&quot;</code><br/>
+</div>
+<p><a href="internal_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a4c51a6034ac0f34ecffc582732ad68a4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4">GRPC_CHTTP2_CLIENT_CONNECT_STRING</a>&#160;&#160;&#160;&quot;PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n&quot;</td></tr>
+<tr class="separator:a4c51a6034ac0f34ecffc582732ad68a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fd119b62e9b3648496dbb7c2f2a0025"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a5fd119b62e9b3648496dbb7c2f2a0025">GRPC_CHTTP2_CLIENT_CONNECT_STRLEN</a>&#160;&#160;&#160;(sizeof(<a class="el" href="internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4">GRPC_CHTTP2_CLIENT_CONNECT_STRING</a>) - 1)</td></tr>
+<tr class="separator:a5fd119b62e9b3648496dbb7c2f2a0025"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4ecd954e779c49a6159f842dc5a2ab4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ab4ecd954e779c49a6159f842dc5a2ab4">GRPC_CHTTP2_IF_TRACING</a>(stmt)</td></tr>
+<tr class="separator:ab4ecd954e779c49a6159f842dc5a2ab4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a927cb1449b541fcb1812761184135ca1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a927cb1449b541fcb1812761184135ca1">GRPC_CHTTP2_FLOWCTL_TRACE_STREAM</a>(reason, transport, context, var,delta)</td></tr>
+<tr class="separator:a927cb1449b541fcb1812761184135ca1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6d86669b104a248fbee4d8f63237a06"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ad6d86669b104a248fbee4d8f63237a06">GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT</a>(reason, context, var, delta)</td></tr>
+<tr class="separator:ad6d86669b104a248fbee4d8f63237a06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a83a9a1c265dc0fede61598c7cd1aaec2"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a83a9a1c265dc0fede61598c7cd1aaec2">grpc_chttp2_transport</a></td></tr>
+<tr class="separator:a83a9a1c265dc0fede61598c7cd1aaec2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50089f57f93d9eb16569dd3b63f879d1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a50089f57f93d9eb16569dd3b63f879d1">grpc_chttp2_stream</a></td></tr>
+<tr class="separator:a50089f57f93d9eb16569dd3b63f879d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b8e11ec16028f6adaa9355602a9c591"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591">grpc_chttp2_outstanding_ping</a></td></tr>
+<tr class="separator:a4b8e11ec16028f6adaa9355602a9c591"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:abddcdf3ebb4034fd86a102d86aff5539"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539">grpc_chttp2_stream_list_id</a> { <br/>
+&#160;&#160;<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4">GRPC_CHTTP2_LIST_ALL_STREAMS</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec">GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0">GRPC_CHTTP2_LIST_WRITABLE</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a">GRPC_CHTTP2_LIST_WRITING</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673">GRPC_CHTTP2_LIST_WRITTEN</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e">GRPC_CHTTP2_LIST_PARSING_SEEN</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f">GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21">GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09">GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a">GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY</a>,
+<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>
+<br/>
+ }</td></tr>
+<tr class="separator:abddcdf3ebb4034fd86a102d86aff5539"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f98ba3b22480becf1bcc47253326a62"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a> { <br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085">GRPC_DTS_CLIENT_PREFIX_0</a> = 0,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506">GRPC_DTS_CLIENT_PREFIX_1</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0">GRPC_DTS_CLIENT_PREFIX_2</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912">GRPC_DTS_CLIENT_PREFIX_3</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355">GRPC_DTS_CLIENT_PREFIX_4</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74">GRPC_DTS_CLIENT_PREFIX_5</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835">GRPC_DTS_CLIENT_PREFIX_6</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90">GRPC_DTS_CLIENT_PREFIX_7</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a">GRPC_DTS_CLIENT_PREFIX_8</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e">GRPC_DTS_CLIENT_PREFIX_9</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3">GRPC_DTS_CLIENT_PREFIX_10</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1">GRPC_DTS_CLIENT_PREFIX_11</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a">GRPC_DTS_CLIENT_PREFIX_12</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19">GRPC_DTS_CLIENT_PREFIX_13</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa">GRPC_DTS_CLIENT_PREFIX_14</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d">GRPC_DTS_CLIENT_PREFIX_15</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f">GRPC_DTS_CLIENT_PREFIX_16</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795">GRPC_DTS_CLIENT_PREFIX_17</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8">GRPC_DTS_CLIENT_PREFIX_18</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257">GRPC_DTS_CLIENT_PREFIX_19</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc">GRPC_DTS_CLIENT_PREFIX_20</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674">GRPC_DTS_CLIENT_PREFIX_21</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75">GRPC_DTS_CLIENT_PREFIX_22</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e">GRPC_DTS_CLIENT_PREFIX_23</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1">GRPC_DTS_FH_0</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1">GRPC_DTS_FH_1</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab">GRPC_DTS_FH_2</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922">GRPC_DTS_FH_3</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd">GRPC_DTS_FH_4</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc">GRPC_DTS_FH_5</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c">GRPC_DTS_FH_6</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976">GRPC_DTS_FH_7</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a">GRPC_DTS_FH_8</a>,
+<a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586">GRPC_DTS_FRAME</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a6f98ba3b22480becf1bcc47253326a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b93cb6f95aff10ba74b6aa06d7e99cc"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a> { <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883">GRPC_WRITE_STATE_OPEN</a>,
+<a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633">GRPC_WRITE_STATE_QUEUED_CLOSE</a>,
+<a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693">GRPC_WRITE_STATE_SENT_CLOSE</a>
+ }</td></tr>
+<tr class="separator:a3b93cb6f95aff10ba74b6aa06d7e99cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d3b30dd29e854143c461aa7e03cbfb9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a> { <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c">GRPC_DONT_SEND_CLOSED</a> = 0,
+<a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02">GRPC_SEND_CLOSED</a>,
+<a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508">GRPC_SEND_CLOSED_WITH_RST_STREAM</a>
+ }</td></tr>
+<tr class="separator:a9d3b30dd29e854143c461aa7e03cbfb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c14b42c5aba744e7f99831e0b7901ad"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad">grpc_chttp2_setting_set</a> { <br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572">GRPC_PEER_SETTINGS</a> = 0,
+<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0">GRPC_LOCAL_SETTINGS</a>,
+<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5">GRPC_SENT_SETTINGS</a>,
+<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42">GRPC_ACKED_SETTINGS</a>,
+<br/>
+&#160;&#160;<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">GRPC_NUM_SETTING_SETS</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a6c14b42c5aba744e7f99831e0b7901ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a154399c46a1f7b901491acb4c04d19d3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a154399c46a1f7b901491acb4c04d19d3">grpc_chttp2_unlocking_check_writes</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *writing)</td></tr>
+<tr class="memdesc:a154399c46a1f7b901491acb4c04d19d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transport writing call flow: <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_unlocking_check_writes to see if writes are required; if they are, <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_perform_writes to do the writes. <a href="#a154399c46a1f7b901491acb4c04d19d3">More...</a><br/></td></tr>
+<tr class="separator:a154399c46a1f7b901491acb4c04d19d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fa6e3087336e9d487f3987148cc3930"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a8fa6e3087336e9d487f3987148cc3930">grpc_chttp2_perform_writes</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *endpoint)</td></tr>
+<tr class="separator:a8fa6e3087336e9d487f3987148cc3930"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83baade3ee315270b6d34fc6fbecb30c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c">grpc_chttp2_terminate_writing</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, int success)</td></tr>
+<tr class="separator:a83baade3ee315270b6d34fc6fbecb30c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a309e83a79f87a133dee17a1a7dd592b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9">grpc_chttp2_cleanup_writing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *writing)</td></tr>
+<tr class="separator:a309e83a79f87a133dee17a1a7dd592b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae444a83dc73e9a658e7df625a04b101a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ae444a83dc73e9a658e7df625a04b101a">grpc_chttp2_prepare_to_read</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *parsing)</td></tr>
+<tr class="separator:ae444a83dc73e9a658e7df625a04b101a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abeaab2fead1bddefe92af0bc61a3a33f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f">grpc_chttp2_perform_read</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="memdesc:abeaab2fead1bddefe92af0bc61a3a33f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process one slice of incoming data; return 1 if the connection is still viable after reading, or 0 if the connection should be torn down. <a href="#abeaab2fead1bddefe92af0bc61a3a33f">More...</a><br/></td></tr>
+<tr class="separator:abeaab2fead1bddefe92af0bc61a3a33f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d137f455d722521fd7dab4fd13e1697"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a4d137f455d722521fd7dab4fd13e1697">grpc_chttp2_publish_reads</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *parsing)</td></tr>
+<tr class="separator:a4d137f455d722521fd7dab4fd13e1697"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a117877f5202f072aa35e7ada0379d0db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a117877f5202f072aa35e7ada0379d0db">grpc_chttp2_list_add_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="memdesc:a117877f5202f072aa35e7ada0379d0db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a writable stream returns non-zero if there was a stream available. <a href="#a117877f5202f072aa35e7ada0379d0db">More...</a><br/></td></tr>
+<tr class="separator:a117877f5202f072aa35e7ada0379d0db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8858ea6e4f6e7c363985793b403a0ac9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9">grpc_chttp2_list_add_first_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a8858ea6e4f6e7c363985793b403a0ac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeac970afdd6294bac9d1dcb84b702167"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#aeac970afdd6294bac9d1dcb84b702167">grpc_chttp2_list_pop_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing)</td></tr>
+<tr class="separator:aeac970afdd6294bac9d1dcb84b702167"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a789d5bcd10c0f1c7ad2fc32190fd87a0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">grpc_chttp2_list_remove_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a789d5bcd10c0f1c7ad2fc32190fd87a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d99597284d4c0a0bd3cbf102ff415a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2">grpc_chttp2_list_add_incoming_window_updated</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a1d99597284d4c0a0bd3cbf102ff415a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90a6cb6d111a750ab1f28bf4e438bb62"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62">grpc_chttp2_list_pop_incoming_window_updated</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **stream_parsing)</td></tr>
+<tr class="separator:a90a6cb6d111a750ab1f28bf4e438bb62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a7f981b74e1e99b0a1afe0c45702d89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89">grpc_chttp2_list_remove_incoming_window_updated</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a8a7f981b74e1e99b0a1afe0c45702d89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5740bd38b626e875166e60e697e099e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#af5740bd38b626e875166e60e697e099e">grpc_chttp2_list_add_writing_stream</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *stream_writing)</td></tr>
+<tr class="separator:af5740bd38b626e875166e60e697e099e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c7a37cef27c29528850701b9cf772d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a2c7a37cef27c29528850701b9cf772d4">grpc_chttp2_list_have_writing_streams</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing)</td></tr>
+<tr class="separator:a2c7a37cef27c29528850701b9cf772d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba4771272cd49e3012d81c05fad1bdb7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7">grpc_chttp2_list_pop_writing_stream</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing)</td></tr>
+<tr class="separator:aba4771272cd49e3012d81c05fad1bdb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6b7a089de78b67a9650e42b4a76ac69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69">grpc_chttp2_list_add_written_stream</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *stream_writing)</td></tr>
+<tr class="separator:ac6b7a089de78b67a9650e42b4a76ac69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3107afcec2694dd7c7855d540a560090"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a3107afcec2694dd7c7855d540a560090">grpc_chttp2_list_pop_written_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing)</td></tr>
+<tr class="separator:a3107afcec2694dd7c7855d540a560090"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a771e6e4a553060bfac71d00b5f866877"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a771e6e4a553060bfac71d00b5f866877">grpc_chttp2_list_add_parsing_seen_stream</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing)</td></tr>
+<tr class="separator:a771e6e4a553060bfac71d00b5f866877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d1ec9b2edce465d2fd18002a403878d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d">grpc_chttp2_list_pop_parsing_seen_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **stream_parsing)</td></tr>
+<tr class="separator:a1d1ec9b2edce465d2fd18002a403878d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71d9dea1ff323c374d7ea47818defc2e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e">grpc_chttp2_list_add_waiting_for_concurrency</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a71d9dea1ff323c374d7ea47818defc2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b62b98b415b3984616d4e851f0ff5c0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0">grpc_chttp2_list_pop_waiting_for_concurrency</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:a6b62b98b415b3984616d4e851f0ff5c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1208f234dcb6b2a73be3c875b2b52907"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907">grpc_chttp2_list_add_closed_waiting_for_parsing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a1208f234dcb6b2a73be3c875b2b52907"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0434ee720b66a5ee51c9904548857af"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ad0434ee720b66a5ee51c9904548857af">grpc_chttp2_list_pop_closed_waiting_for_parsing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:ad0434ee720b66a5ee51c9904548857af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad26dae5e10a026530f50b133359b3ee2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ad26dae5e10a026530f50b133359b3ee2">grpc_chttp2_list_add_cancelled_waiting_for_writing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:ad26dae5e10a026530f50b133359b3ee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2d2a802b9072505d1e6f8bb68727f44"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44">grpc_chttp2_list_pop_cancelled_waiting_for_writing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:ad2d2a802b9072505d1e6f8bb68727f44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b5168e8b96d0bc9f9d84a4cbef653a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">grpc_chttp2_list_add_read_write_state_changed</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:aa6b5168e8b96d0bc9f9d84a4cbef653a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9e8165e01d872ed42c0333aee9d31c4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4">grpc_chttp2_list_pop_read_write_state_changed</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:ac9e8165e01d872ed42c0333aee9d31c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f8b16bb6048f85107966a4be9ff4a4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d">grpc_chttp2_schedule_closure</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure, int success)</td></tr>
+<tr class="memdesc:a6f8b16bb6048f85107966a4be9ff4a4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">schedule a closure to run without the transport lock taken <a href="#a6f8b16bb6048f85107966a4be9ff4a4d">More...</a><br/></td></tr>
+<tr class="separator:a6f8b16bb6048f85107966a4be9ff4a4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae19b5968ebea2a077650652f1a3af46d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ae19b5968ebea2a077650652f1a3af46d">grpc_chttp2_parsing_lookup_stream</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id)</td></tr>
+<tr class="separator:ae19b5968ebea2a077650652f1a3af46d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25a39d1d95e7140c1ae8f765ffd92847"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847">grpc_chttp2_parsing_accept_stream</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id)</td></tr>
+<tr class="separator:a25a39d1d95e7140c1ae8f765ffd92847"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb6a160980622d4e5d1b8e9e608c6771"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771">grpc_chttp2_add_incoming_goaway</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> goaway_error, <a class="el" href="structgpr__slice.html">gpr_slice</a> goaway_text)</td></tr>
+<tr class="separator:aeb6a160980622d4e5d1b8e9e608c6771"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb6dbbacb57c3f9860e6ec6eca2390e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e">grpc_chttp2_register_stream</a> (<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t, <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *s)</td></tr>
+<tr class="separator:accb6dbbacb57c3f9860e6ec6eca2390e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a558d8331836125098834d28a94e39bcc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a558d8331836125098834d28a94e39bcc">grpc_chttp2_unregister_stream</a> (<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t, <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *s) <a class="el" href="port__platform_8h.html#aef49047a3be38448a61332117b306686">GRPC_MUST_USE_RESULT</a></td></tr>
+<tr class="separator:a558d8331836125098834d28a94e39bcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19ad8f2b321787a1255a888d5d5923f1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1">grpc_chttp2_has_streams</a> (<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t)</td></tr>
+<tr class="separator:a19ad8f2b321787a1255a888d5d5923f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62031f6afc6643cc2f34b4af2d547576"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a62031f6afc6643cc2f34b4af2d547576">grpc_chttp2_for_all_streams</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, void *user_data, void(*cb)(<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, void *user_data, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global))</td></tr>
+<tr class="separator:a62031f6afc6643cc2f34b4af2d547576"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6a13571d6666f45a64c8e0f6b234e60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60">grpc_chttp2_parsing_become_skip_parser</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing)</td></tr>
+<tr class="separator:ad6a13571d6666f45a64c8e0f6b234e60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac054ecf6e743093e5527787063f3acaa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">grpc_chttp2_flowctl_trace</a> (const char *file, int line, const char *reason, const char *context, const char *var, int is_client, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id, <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> current_value, <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> delta)</td></tr>
+<tr class="separator:ac054ecf6e743093e5527787063f3acaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6bb76c8188f883af2fb738233abdeea0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a></td></tr>
+<tr class="separator:a6bb76c8188f883af2fb738233abdeea0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd0f83d780e8ddeac885163c45aab0a8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a></td></tr>
+<tr class="separator:afd0f83d780e8ddeac885163c45aab0a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a4c51a6034ac0f34ecffc582732ad68a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_CLIENT_CONNECT_STRING&#160;&#160;&#160;&quot;PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fd119b62e9b3648496dbb7c2f2a0025"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_CLIENT_CONNECT_STRLEN&#160;&#160;&#160;(sizeof(<a class="el" href="internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4">GRPC_CHTTP2_CLIENT_CONNECT_STRING</a>) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a927cb1449b541fcb1812761184135ca1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FLOWCTL_TRACE_STREAM</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">transport, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">context, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">var, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">delta&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(<a class="code" href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a>)) { \</div>
+<div class="line"> } <span class="keywordflow">else</span> { <a class="code" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">\</a></div>
+<div class="line"><a class="code" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa"> grpc_chttp2_flowctl_trace</a>(__FILE__, __LINE__, reason, #context, #var, \</div>
+<div class="line"> transport-&gt;is_client, context-&gt;id, context-&gt;var, \</div>
+<div class="line"> delta); \</div>
+<div class="line"> }</div>
+<div class="ttc" id="internal_8h_html_afd0f83d780e8ddeac885163c45aab0a8"><div class="ttname"><a href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a></div><div class="ttdeci">int grpc_flowctl_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:61</div></div>
+<div class="ttc" id="internal_8h_html_ac054ecf6e743093e5527787063f3acaa"><div class="ttname"><a href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">grpc_chttp2_flowctl_trace</a></div><div class="ttdeci">void grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:1069</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ad6d86669b104a248fbee4d8f63237a06"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">reason, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">context, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">var, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">delta&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(<a class="code" href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a>)) { \</div>
+<div class="line"> } <span class="keywordflow">else</span> { <a class="code" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">\</a></div>
+<div class="line"><a class="code" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa"> grpc_chttp2_flowctl_trace</a>(__FILE__, __LINE__, reason, #context, #var, \</div>
+<div class="line"> context-&gt;is_client, 0, context-&gt;var, delta); \</div>
+<div class="line"> }</div>
+<div class="ttc" id="internal_8h_html_afd0f83d780e8ddeac885163c45aab0a8"><div class="ttname"><a href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a></div><div class="ttdeci">int grpc_flowctl_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:61</div></div>
+<div class="ttc" id="internal_8h_html_ac054ecf6e743093e5527787063f3acaa"><div class="ttname"><a href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">grpc_chttp2_flowctl_trace</a></div><div class="ttdeci">void grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:1069</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ab4ecd954e779c49a6159f842dc5a2ab4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_IF_TRACING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">stmt</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (!(<a class="code" href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a>)) \</div>
+<div class="line"> ; \</div>
+<div class="line"> else \</div>
+<div class="line"> stmt</div>
+<div class="ttc" id="internal_8h_html_a6bb76c8188f883af2fb738233abdeea0"><div class="ttname"><a href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a></div><div class="ttdeci">int grpc_http_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:60</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a4b8e11ec16028f6adaa9355602a9c591"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> <a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a50089f57f93d9eb16569dd3b63f879d1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83a9a1c265dc0fede61598c7cd1aaec2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> <a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085"></a>GRPC_DTS_CLIENT_PREFIX_0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506"></a>GRPC_DTS_CLIENT_PREFIX_1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0"></a>GRPC_DTS_CLIENT_PREFIX_2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912"></a>GRPC_DTS_CLIENT_PREFIX_3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355"></a>GRPC_DTS_CLIENT_PREFIX_4</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74"></a>GRPC_DTS_CLIENT_PREFIX_5</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835"></a>GRPC_DTS_CLIENT_PREFIX_6</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90"></a>GRPC_DTS_CLIENT_PREFIX_7</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a"></a>GRPC_DTS_CLIENT_PREFIX_8</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e"></a>GRPC_DTS_CLIENT_PREFIX_9</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3"></a>GRPC_DTS_CLIENT_PREFIX_10</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1"></a>GRPC_DTS_CLIENT_PREFIX_11</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a"></a>GRPC_DTS_CLIENT_PREFIX_12</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19"></a>GRPC_DTS_CLIENT_PREFIX_13</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa"></a>GRPC_DTS_CLIENT_PREFIX_14</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d"></a>GRPC_DTS_CLIENT_PREFIX_15</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f"></a>GRPC_DTS_CLIENT_PREFIX_16</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795"></a>GRPC_DTS_CLIENT_PREFIX_17</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8"></a>GRPC_DTS_CLIENT_PREFIX_18</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257"></a>GRPC_DTS_CLIENT_PREFIX_19</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc"></a>GRPC_DTS_CLIENT_PREFIX_20</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674"></a>GRPC_DTS_CLIENT_PREFIX_21</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75"></a>GRPC_DTS_CLIENT_PREFIX_22</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e"></a>GRPC_DTS_CLIENT_PREFIX_23</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1"></a>GRPC_DTS_FH_0</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1"></a>GRPC_DTS_FH_1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab"></a>GRPC_DTS_FH_2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922"></a>GRPC_DTS_FH_3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd"></a>GRPC_DTS_FH_4</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc"></a>GRPC_DTS_FH_5</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c"></a>GRPC_DTS_FH_6</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976"></a>GRPC_DTS_FH_7</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a"></a>GRPC_DTS_FH_8</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586"></a>GRPC_DTS_FRAME</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a9d3b30dd29e854143c461aa7e03cbfb9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c"></a>GRPC_DONT_SEND_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02"></a>GRPC_SEND_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508"></a>GRPC_SEND_CLOSED_WITH_RST_STREAM</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a6c14b42c5aba744e7f99831e0b7901ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad">grpc_chttp2_setting_set</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572"></a>GRPC_PEER_SETTINGS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0"></a>GRPC_LOCAL_SETTINGS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5"></a>GRPC_SENT_SETTINGS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42"></a>GRPC_ACKED_SETTINGS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641"></a>GRPC_NUM_SETTING_SETS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539">grpc_chttp2_stream_list_id</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4"></a>GRPC_CHTTP2_LIST_ALL_STREAMS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec"></a>GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0"></a>GRPC_CHTTP2_LIST_WRITABLE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a"></a>GRPC_CHTTP2_LIST_WRITING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673"></a>GRPC_CHTTP2_LIST_WRITTEN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e"></a>GRPC_CHTTP2_LIST_PARSING_SEEN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f"></a>GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21"></a>GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09"></a>GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a"></a>GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY</em>&#160;</td><td class="fielddoc">
+<p>streams that are waiting to start because there are too many concurrent streams on the connection </p>
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5"></a>STREAM_LIST_COUNT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a3b93cb6f95aff10ba74b6aa06d7e99cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883"></a>GRPC_WRITE_STATE_OPEN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633"></a>GRPC_WRITE_STATE_QUEUED_CLOSE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693"></a>GRPC_WRITE_STATE_SENT_CLOSE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aeb6a160980622d4e5d1b8e9e608c6771"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_add_incoming_goaway </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>goaway_error</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>goaway_text</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a309e83a79f87a133dee17a1a7dd592b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_cleanup_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac054ecf6e743093e5527787063f3acaa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_flowctl_trace </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>reason</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>var</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>is_client</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>&#160;</td>
+ <td class="paramname"><em>current_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>&#160;</td>
+ <td class="paramname"><em>delta</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a62031f6afc6643cc2f34b4af2d547576"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_for_all_streams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, void *user_data, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)&#160;</td>
+ <td class="paramname"><em>cb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19ad8f2b321787a1255a888d5d5923f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_has_streams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad26dae5e10a026530f50b133359b3ee2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_cancelled_waiting_for_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1208f234dcb6b2a73be3c875b2b52907"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_closed_waiting_for_parsing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8858ea6e4f6e7c363985793b403a0ac9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_first_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d99597284d4c0a0bd3cbf102ff415a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_incoming_window_updated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a771e6e4a553060bfac71d00b5f866877"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_parsing_seen_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa6b5168e8b96d0bc9f9d84a4cbef653a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_read_write_state_changed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a71d9dea1ff323c374d7ea47818defc2e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_waiting_for_concurrency </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a117877f5202f072aa35e7ada0379d0db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a writable stream returns non-zero if there was a stream available. </p>
+
+</div>
+</div>
+<a class="anchor" id="af5740bd38b626e875166e60e697e099e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_writing_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac6b7a089de78b67a9650e42b4a76ac69"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_written_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2c7a37cef27c29528850701b9cf772d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_have_writing_streams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad2d2a802b9072505d1e6f8bb68727f44"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_cancelled_waiting_for_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad0434ee720b66a5ee51c9904548857af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_closed_waiting_for_parsing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90a6cb6d111a750ab1f28bf4e438bb62"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_incoming_window_updated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d1ec9b2edce465d2fd18002a403878d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_parsing_seen_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9e8165e01d872ed42c0333aee9d31c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_read_write_state_changed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b62b98b415b3984616d4e851f0ff5c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_waiting_for_concurrency </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeac970afdd6294bac9d1dcb84b702167"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba4771272cd49e3012d81c05fad1bdb7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_writing_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3107afcec2694dd7c7855d540a560090"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_written_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8a7f981b74e1e99b0a1afe0c45702d89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_remove_incoming_window_updated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a789d5bcd10c0f1c7ad2fc32190fd87a0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_remove_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a25a39d1d95e7140c1ae8f765ffd92847"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>* grpc_chttp2_parsing_accept_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad6a13571d6666f45a64c8e0f6b234e60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_parsing_become_skip_parser </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae19b5968ebea2a077650652f1a3af46d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>* grpc_chttp2_parsing_lookup_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abeaab2fead1bddefe92af0bc61a3a33f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_perform_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Process one slice of incoming data; return 1 if the connection is still viable after reading, or 0 if the connection should be torn down. </p>
+
+</div>
+</div>
+<a class="anchor" id="a8fa6e3087336e9d487f3987148cc3930"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_perform_writes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>endpoint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae444a83dc73e9a658e7df625a04b101a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_prepare_to_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d137f455d722521fd7dab4fd13e1697"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_publish_reads </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accb6dbbacb57c3f9860e6ec6eca2390e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_register_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f8b16bb6048f85107966a4be9ff4a4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_schedule_closure </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>schedule a closure to run without the transport lock taken </p>
+
+</div>
+</div>
+<a class="anchor" id="a83baade3ee315270b6d34fc6fbecb30c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_terminate_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a154399c46a1f7b901491acb4c04d19d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_unlocking_check_writes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Transport writing call flow: <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_unlocking_check_writes to see if writes are required; if they are, <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_perform_writes to do the writes. </p>
+<p>Once writes have been completed (meaning another write could potentially be started), grpc_chttp2_terminate_writing is called. This will call grpc_chttp2_cleanup_writing, at which point the write phase is complete. Someone is unlocking the transport mutex: check to see if writes are required, and schedule them if so </p>
+
+</div>
+</div>
+<a class="anchor" id="a558d8331836125098834d28a94e39bcc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_unregister_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="afd0f83d780e8ddeac885163c45aab0a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_flowctl_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6bb76c8188f883af2fb738233abdeea0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_http_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/internal_8h_source.html b/doc/ref/core.internal/html/internal_8h_source.html
new file mode 100644
index 0000000000..ad70c2f466
--- /dev/null
+++ b/doc/ref/core.internal/html/internal_8h_source.html
@@ -0,0 +1,887 @@
+<!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: src/core/transport/chttp2/internal.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">internal.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="internal_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHTTP2_INTERNAL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHTTP2_INTERNAL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame__data_8h.html">src/core/transport/chttp2/frame_data.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame__goaway_8h.html">src/core/transport/chttp2/frame_goaway.h</a>&quot;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame__ping_8h.html">src/core/transport/chttp2/frame_ping.h</a>&quot;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame__rst__stream_8h.html">src/core/transport/chttp2/frame_rst_stream.h</a>&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame__settings_8h.html">src/core/transport/chttp2/frame_settings.h</a>&quot;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame__window__update_8h.html">src/core/transport/chttp2/frame_window_update.h</a>&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="hpack__parser_8h.html">src/core/transport/chttp2/hpack_parser.h</a>&quot;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="incoming__metadata_8h.html">src/core/transport/chttp2/incoming_metadata.h</a>&quot;</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="stream__encoder_8h.html">src/core/transport/chttp2/stream_encoder.h</a>&quot;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="stream__map_8h.html">src/core/transport/chttp2/stream_map.h</a>&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="connectivity__state_8h.html">src/core/transport/connectivity_state.h</a>&quot;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport__impl_8h.html">src/core/transport/transport_impl.h</a>&quot;</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="internal_8h.html#a83a9a1c265dc0fede61598c7cd1aaec2"> 52</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> <a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="internal_8h.html#a50089f57f93d9eb16569dd3b63f879d1"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">/* streams are kept in various linked lists depending on what things need to</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> happen to them... this enum labels each list */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539"> 57</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4"> 58</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4">GRPC_CHTTP2_LIST_ALL_STREAMS</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec"> 59</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec">GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED</a>,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0"> 60</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0">GRPC_CHTTP2_LIST_WRITABLE</a>,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a"> 61</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a">GRPC_CHTTP2_LIST_WRITING</a>,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673"> 62</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673">GRPC_CHTTP2_LIST_WRITTEN</a>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e"> 63</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e">GRPC_CHTTP2_LIST_PARSING_SEEN</a>,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f"> 64</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f">GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING</a>,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21"> 65</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21">GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING</a>,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09"> 66</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09">GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED</a>,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a"> 69</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a">GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY</a>,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5"> 70</a></span>&#160; <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a> <span class="comment">/* must be last */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;} <a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539">grpc_chttp2_stream_list_id</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/* deframer state for the overall http2 stream of bytes */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62"> 74</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">/* prefix: one entry per http2 connection prefix byte */</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085"> 76</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085">GRPC_DTS_CLIENT_PREFIX_0</a> = 0,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506"> 77</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506">GRPC_DTS_CLIENT_PREFIX_1</a>,</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0"> 78</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0">GRPC_DTS_CLIENT_PREFIX_2</a>,</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912"> 79</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912">GRPC_DTS_CLIENT_PREFIX_3</a>,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355"> 80</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355">GRPC_DTS_CLIENT_PREFIX_4</a>,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74"> 81</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74">GRPC_DTS_CLIENT_PREFIX_5</a>,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835"> 82</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835">GRPC_DTS_CLIENT_PREFIX_6</a>,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90"> 83</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90">GRPC_DTS_CLIENT_PREFIX_7</a>,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a"> 84</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a">GRPC_DTS_CLIENT_PREFIX_8</a>,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e"> 85</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e">GRPC_DTS_CLIENT_PREFIX_9</a>,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3"> 86</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3">GRPC_DTS_CLIENT_PREFIX_10</a>,</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1"> 87</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1">GRPC_DTS_CLIENT_PREFIX_11</a>,</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a"> 88</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a">GRPC_DTS_CLIENT_PREFIX_12</a>,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19"> 89</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19">GRPC_DTS_CLIENT_PREFIX_13</a>,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa"> 90</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa">GRPC_DTS_CLIENT_PREFIX_14</a>,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d"> 91</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d">GRPC_DTS_CLIENT_PREFIX_15</a>,</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f"> 92</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f">GRPC_DTS_CLIENT_PREFIX_16</a>,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795"> 93</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795">GRPC_DTS_CLIENT_PREFIX_17</a>,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8"> 94</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8">GRPC_DTS_CLIENT_PREFIX_18</a>,</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257"> 95</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257">GRPC_DTS_CLIENT_PREFIX_19</a>,</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc"> 96</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc">GRPC_DTS_CLIENT_PREFIX_20</a>,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674"> 97</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674">GRPC_DTS_CLIENT_PREFIX_21</a>,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75"> 98</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75">GRPC_DTS_CLIENT_PREFIX_22</a>,</div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e"> 99</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e">GRPC_DTS_CLIENT_PREFIX_23</a>,</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">/* frame header byte 0... */</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="comment">/* must follow from the prefix states */</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1"> 102</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1">GRPC_DTS_FH_0</a>,</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1"> 103</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1">GRPC_DTS_FH_1</a>,</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab"> 104</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab">GRPC_DTS_FH_2</a>,</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922"> 105</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922">GRPC_DTS_FH_3</a>,</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd"> 106</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd">GRPC_DTS_FH_4</a>,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc"> 107</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc">GRPC_DTS_FH_5</a>,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c"> 108</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c">GRPC_DTS_FH_6</a>,</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976"> 109</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976">GRPC_DTS_FH_7</a>,</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* ... frame header byte 8 */</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a"> 111</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a">GRPC_DTS_FH_8</a>,</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">/* inside a http2 frame */</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586"> 113</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586">GRPC_DTS_FRAME</a></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;} <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a>;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc"> 116</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883"> 117</a></span>&#160; <a class="code" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883">GRPC_WRITE_STATE_OPEN</a>,</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633"> 118</a></span>&#160; <a class="code" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633">GRPC_WRITE_STATE_QUEUED_CLOSE</a>,</div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693"> 119</a></span>&#160; <a class="code" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693">GRPC_WRITE_STATE_SENT_CLOSE</a></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;} <a class="code" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9"> 122</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c"> 123</a></span>&#160; <a class="code" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c">GRPC_DONT_SEND_CLOSED</a> = 0,</div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02"> 124</a></span>&#160; <a class="code" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02">GRPC_SEND_CLOSED</a>,</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508"> 125</a></span>&#160; <a class="code" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508">GRPC_SEND_CLOSED_WITH_RST_STREAM</a></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;} <a class="code" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a>;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__list.html"> 128</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73"> 129</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *<a class="code" href="structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73">head</a>;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620"> 130</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *<a class="code" href="structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620">tail</a>;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;} <a class="code" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a>;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__link.html"> 133</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de"> 134</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *<a class="code" href="structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de">next</a>;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400"> 135</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *<a class="code" href="structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400">prev</a>;</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;} <a class="code" href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment">/* We keep several sets of connection wide parameters */</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad"> 139</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="comment">/* The settings our peer has asked for (and we have acked) */</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572"> 141</a></span>&#160; <a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572">GRPC_PEER_SETTINGS</a> = 0,</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="comment">/* The settings we&#39;d like to have */</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0"> 143</a></span>&#160; <a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0">GRPC_LOCAL_SETTINGS</a>,</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="comment">/* The settings we&#39;ve published to our peer */</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5"> 145</a></span>&#160; <a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5">GRPC_SENT_SETTINGS</a>,</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="comment">/* The settings the peer has acked */</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42"> 147</a></span>&#160; <a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42">GRPC_ACKED_SETTINGS</a>,</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641"> 148</a></span>&#160; <a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">GRPC_NUM_SETTING_SETS</a></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;} <a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad">grpc_chttp2_setting_set</a>;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment">/* Outstanding ping request data */</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__outstanding__ping.html"> 152</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> {</div>
+<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__outstanding__ping.html#a3cf40734ac72489211630654aaa02bd9"> 153</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <span class="keywordtype">id</span>[8];</div>
+<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c"> 154</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c">on_recv</a>;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f"> 155</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> *<a class="code" href="structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f">next</a>;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6"> 156</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> *<a class="code" href="structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6">prev</a>;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;} <a class="code" href="internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591">grpc_chttp2_outstanding_ping</a>;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html"> 159</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4"> 161</a></span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> <a class="code" href="structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4">qbuf</a>;</div>
+<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84"> 163</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84">pending_closures_head</a>;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf"> 164</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf">pending_closures_tail</a>;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
+<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7"> 167</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7">outgoing_window</a>;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3"> 169</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3">incoming_window</a>;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06"> 171</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06">connection_window_target</a>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829"> 174</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829">seen_goaway</a>;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8"> 176</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8">sent_goaway</a>;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e"> 179</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e">is_client</a>;</div>
+<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e"> 181</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e">dirtied_local_settings</a>;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d"> 183</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d">sent_local_settings</a>;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027"> 185</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027">force_send_settings</a>;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#ab25f0c4b45d1c12d29eaf856e7b1b4a7"> 187</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> settings[<a class="code" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">GRPC_NUM_SETTING_SETS</a>][<a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>];</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f"> 191</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f">next_stream_id</a>;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362"> 194</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362">last_incoming_stream_id</a>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad"> 197</a></span>&#160; <a class="code" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad">pings</a>;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7"> 199</a></span>&#160; <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7">ping_counter</a>;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div>
+<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995"> 203</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995">concurrent_stream_count</a>;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;} <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a>;</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div>
+<div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__writing.html"> 206</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0"> 208</a></span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> <a class="code" href="structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0">outbuf</a>;</div>
+<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460"> 210</a></span>&#160; <a class="code" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> <a class="code" href="structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460">hpack_compressor</a>;</div>
+<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57"> 212</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57">is_client</a>;</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;} <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a>;</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html"> 215</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> {</div>
+<div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58"> 217</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58">is_client</a>;</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div>
+<div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013"> 220</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013">settings_updated</a>;</div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586"> 222</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586">settings_ack_received</a>;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5"> 224</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5">goaway_received</a>;</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div>
+<div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c"> 227</a></span>&#160; <a class="code" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c">initial_window_update</a>;</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308"> 230</a></span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308">qbuf</a>;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="comment">/* metadata object cache */</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c"> 232</a></span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c">str_grpc_timeout</a>;</div>
+<div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d"> 234</a></span>&#160; <a class="code" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d">hpack_parser</a>;</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d"> 237</a></span>&#160; <a class="code" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d">window_update</a>;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31"> 238</a></span>&#160; <a class="code" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31">settings</a>;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30"> 239</a></span>&#160; <a class="code" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30">ping</a>;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04"> 240</a></span>&#160; <a class="code" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04">rst_stream</a>;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; } <a class="code" href="structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f">simple</a>;</div>
+<div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b"> 243</a></span>&#160; <a class="code" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b">goaway_parser</a>;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div>
+<div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498"> 246</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498">incoming_window</a>;</div>
+<div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9"> 247</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9">incoming_window_delta</a>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div>
+<div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9"> 250</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9">next_stream_id</a>;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542"> 251</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542">last_incoming_stream_id</a>;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="comment">/* deframing */</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250"> 254</a></span>&#160; <a class="code" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250">deframe_state</a>;</div>
+<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781"> 255</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781">incoming_frame_type</a>;</div>
+<div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f"> 256</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f">incoming_frame_flags</a>;</div>
+<div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50"> 257</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50">header_eof</a>;</div>
+<div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060"> 258</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060">expect_continuation_stream_id</a>;</div>
+<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0"> 259</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0">incoming_frame_size</a>;</div>
+<div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732"> 260</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732">incoming_stream_id</a>;</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="comment">/* active parser */</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442"> 263</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442">parser_data</a>;</div>
+<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445"> 264</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *<a class="code" href="structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445">incoming_stream</a>;</div>
+<div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61"> 265</a></span>&#160; <a class="code" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a> (*<a class="code" href="structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61">parser</a>)(</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordtype">void</span> *parser_user_data, <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <span class="keywordtype">int</span> is_last);</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="comment">/* received settings */</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a629d17756af481ff81ea339acb751751"> 270</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31">settings</a>[<a class="code" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>];</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="comment">/* goaway data */</span></div>
+<div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d"> 273</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d">goaway_error</a>;</div>
+<div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f"> 274</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f">goaway_last_stream_index</a>;</div>
+<div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8"> 275</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8">goaway_text</a>;</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;</div>
+<div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a"> 277</a></span>&#160; <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a">outgoing_window_update</a>;</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;</div>
+<div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b"> 280</a></span>&#160; <a class="code" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> <a class="code" href="structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b">pings</a>;</div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;};</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;</div>
+<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html"> 283</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> {</div>
+<div class="line"><a name="l00284"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f"> 284</a></span>&#160; <a class="code" href="structgrpc__transport.html">grpc_transport</a> <a class="code" href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f">base</a>; <span class="comment">/* must be first */</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff"> 285</a></span>&#160; <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff">ep</a>;</div>
+<div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2"> 286</a></span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2">metadata_context</a>;</div>
+<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69"> 287</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69">refs</a>;</div>
+<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7"> 288</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7">peer_string</a>;</div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div>
+<div class="line"><a name="l00290"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e"> 290</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e">mu</a>;</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;</div>
+<div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f"> 293</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f">destroying</a>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405"> 295</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405">closed</a>;</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div>
+<div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b"> 298</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b">writing_active</a>;</div>
+<div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3"> 300</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3">parsing_active</a>;</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div>
+<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905"> 303</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905">endpoint_reading</a>;</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;</div>
+<div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a"> 306</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a> <a class="code" href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a">lists</a>[<a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>];</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694"> 309</a></span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> <a class="code" href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694">global</a>;</div>
+<div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf"> 312</a></span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> <a class="code" href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf">writing</a>;</div>
+<div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c"> 315</a></span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> <a class="code" href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c">parsing</a>;</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;</div>
+<div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937"> 319</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> <a class="code" href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937">parsing_stream_map</a>;</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div>
+<div class="line"><a name="l00324"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca"> 324</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> <a class="code" href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca">new_stream_map</a>;</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;</div>
+<div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224"> 327</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> <a class="code" href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224">writing_action</a>;</div>
+<div class="line"><a name="l00329"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885"> 329</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> <a class="code" href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885">reading_action</a>;</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;</div>
+<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e"> 334</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> **<a class="code" href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e">accepting_stream</a>;</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="comment">/* accept stream callback */</span></div>
+<div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a"> 338</a></span>&#160; void (*<a class="code" href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a">accept_stream</a>)(<span class="keywordtype">void</span> *user_data, <a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *server_data);</div>
+<div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f"> 340</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f">accept_stream_user_data</a>;</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;</div>
+<div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857"> 343</a></span>&#160; <a class="code" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> <a class="code" href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857">state_tracker</a>;</div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; } <a class="code" href="structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb">channel_callback</a>;</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;};</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div>
+<div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html"> 347</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00349"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4"> 349</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4">id</a>;</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;</div>
+<div class="line"><a name="l00351"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905"> 351</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905">send_done_closure</a>;</div>
+<div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c"> 352</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c">recv_done_closure</a>;</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;</div>
+<div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec"> 355</a></span>&#160; <a class="code" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> <a class="code" href="structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec">outgoing_window</a>;</div>
+<div class="line"><a name="l00359"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7"> 359</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7">max_recv_bytes</a>;</div>
+<div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9"> 364</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9">unannounced_incoming_window</a>;</div>
+<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363"> 369</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363">incoming_window</a>;</div>
+<div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d"> 371</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *<a class="code" href="structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d">outgoing_sopb</a>;</div>
+<div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9"> 375</a></span>&#160; <a class="code" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a> <a class="code" href="structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9">write_state</a>;</div>
+<div class="line"><a name="l00377"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a"> 377</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a">read_closed</a>;</div>
+<div class="line"><a name="l00379"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312"> 379</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312">cancelled</a>;</div>
+<div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098"> 380</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098">cancelled_status</a>;</div>
+<div class="line"><a name="l00382"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be"> 382</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be">published_cancelled</a>;</div>
+<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4"> 384</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4">in_stream_map</a>;</div>
+<div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c"> 386</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c">writing_now</a>;</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div>
+<div class="line"><a name="l00389"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665"> 389</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> <a class="code" href="structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665">published_state</a>;</div>
+<div class="line"><a name="l00391"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3"> 391</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> *<a class="code" href="structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3">publish_state</a>;</div>
+<div class="line"><a name="l00393"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe"> 393</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *<a class="code" href="structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe">publish_sopb</a>;</div>
+<div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e"> 394</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> <a class="code" href="structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e">incoming_sopb</a>;</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;</div>
+<div class="line"><a name="l00397"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5"> 397</a></span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> <a class="code" href="structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5">incoming_metadata</a>;</div>
+<div class="line"><a name="l00398"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0"> 398</a></span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> <a class="code" href="structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0">outstanding_metadata</a>;</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;} <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a>;</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;</div>
+<div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__writing.html"> 401</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832"> 403</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832">id</a>;</div>
+<div class="line"><a name="l00405"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120"> 405</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> <a class="code" href="structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120">sopb</a>;</div>
+<div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0"> 407</a></span>&#160; <a class="code" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a> <a class="code" href="structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0">send_closed</a>;</div>
+<div class="line"><a name="l00409"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17"> 409</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17">announce_window</a>;</div>
+<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;} <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a>;</div>
+<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div>
+<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html"> 412</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> {</div>
+<div class="line"><a name="l00414"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83"> 414</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83">id</a>;</div>
+<div class="line"><a name="l00416"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b"> 416</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b">received_close</a>;</div>
+<div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b"> 418</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b">saw_rst_stream</a>;</div>
+<div class="line"><a name="l00420"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed"> 420</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed">incoming_window_delta</a>;</div>
+<div class="line"><a name="l00422"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622"> 422</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622">incoming_window</a>;</div>
+<div class="line"><a name="l00424"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54"> 424</a></span>&#160; <a class="code" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54">data_parser</a>;</div>
+<div class="line"><a name="l00426"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2"> 426</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2">rst_stream_reason</a>;</div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="comment">/* amount of window given */</span></div>
+<div class="line"><a name="l00428"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196"> 428</a></span>&#160; <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196">outgoing_window_update</a>;</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;</div>
+<div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc"> 431</a></span>&#160; <a class="code" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> <a class="code" href="structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc">incoming_metadata</a>;</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;};</div>
+<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;</div>
+<div class="line"><a name="l00434"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream.html"> 434</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> {</div>
+<div class="line"><a name="l00435"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5"> 435</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> <a class="code" href="structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5">global</a>;</div>
+<div class="line"><a name="l00436"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e"> 436</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> <a class="code" href="structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e">writing</a>;</div>
+<div class="line"><a name="l00437"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9"> 437</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> <a class="code" href="structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9">parsing</a>;</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;</div>
+<div class="line"><a name="l00439"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624"> 439</a></span>&#160; <a class="code" href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a> <a class="code" href="structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624">links</a>[<a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>];</div>
+<div class="line"><a name="l00440"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95"> 440</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95">included</a>[<a class="code" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>];</div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;};</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;</div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a154399c46a1f7b901491acb4c04d19d3">grpc_chttp2_unlocking_check_writes</a>(<a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global,</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *writing);</div>
+<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a8fa6e3087336e9d487f3987148cc3930">grpc_chttp2_perform_writes</a>(</div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *endpoint);</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c">grpc_chttp2_terminate_writing</a>(</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <span class="keywordtype">int</span> success);</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9">grpc_chttp2_cleanup_writing</a>(<a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global,</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *writing);</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#ae444a83dc73e9a658e7df625a04b101a">grpc_chttp2_prepare_to_read</a>(<a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global,</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *parsing);</div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f">grpc_chttp2_perform_read</a>(<a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> slice);</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a4d137f455d722521fd7dab4fd13e1697">grpc_chttp2_publish_reads</a>(<a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *global,</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *parsing);</div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div>
+<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a117877f5202f072aa35e7ada0379d0db">grpc_chttp2_list_add_writable_stream</a>(</div>
+<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9">grpc_chttp2_list_add_first_writable_stream</a>(</div>
+<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#aeac970afdd6294bac9d1dcb84b702167">grpc_chttp2_list_pop_writable_stream</a>(</div>
+<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing,</div>
+<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global,</div>
+<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing);</div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">grpc_chttp2_list_remove_writable_stream</a>(</div>
+<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2">grpc_chttp2_list_add_incoming_window_updated</a>(</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62">grpc_chttp2_list_pop_incoming_window_updated</a>(</div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global,</div>
+<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **stream_parsing);</div>
+<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89">grpc_chttp2_list_remove_incoming_window_updated</a>(</div>
+<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div>
+<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#af5740bd38b626e875166e60e697e099e">grpc_chttp2_list_add_writing_stream</a>(</div>
+<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing,</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *stream_writing);</div>
+<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a2c7a37cef27c29528850701b9cf772d4">grpc_chttp2_list_have_writing_streams</a>(</div>
+<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing);</div>
+<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7">grpc_chttp2_list_pop_writing_stream</a>(</div>
+<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing,</div>
+<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing);</div>
+<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div>
+<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69">grpc_chttp2_list_add_written_stream</a>(</div>
+<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing,</div>
+<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *stream_writing);</div>
+<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a3107afcec2694dd7c7855d540a560090">grpc_chttp2_list_pop_written_stream</a>(</div>
+<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <a class="code" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing,</div>
+<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global,</div>
+<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <a class="code" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing);</div>
+<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;</div>
+<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a771e6e4a553060bfac71d00b5f866877">grpc_chttp2_list_add_parsing_seen_stream</a>(</div>
+<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing);</div>
+<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d">grpc_chttp2_list_pop_parsing_seen_stream</a>(</div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing,</div>
+<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global,</div>
+<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **stream_parsing);</div>
+<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160;</div>
+<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e">grpc_chttp2_list_add_waiting_for_concurrency</a>(</div>
+<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0">grpc_chttp2_list_pop_waiting_for_concurrency</a>(</div>
+<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global);</div>
+<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;</div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907">grpc_chttp2_list_add_closed_waiting_for_parsing</a>(</div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#ad0434ee720b66a5ee51c9904548857af">grpc_chttp2_list_pop_closed_waiting_for_parsing</a>(</div>
+<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global);</div>
+<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;</div>
+<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#ad26dae5e10a026530f50b133359b3ee2">grpc_chttp2_list_add_cancelled_waiting_for_writing</a>(</div>
+<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44">grpc_chttp2_list_pop_cancelled_waiting_for_writing</a>(</div>
+<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global);</div>
+<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;</div>
+<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">grpc_chttp2_list_add_read_write_state_changed</a>(</div>
+<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global);</div>
+<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4">grpc_chttp2_list_pop_read_write_state_changed</a>(</div>
+<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global,</div>
+<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global);</div>
+<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;</div>
+<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d">grpc_chttp2_schedule_closure</a>(</div>
+<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure,</div>
+<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <span class="keywordtype">int</span> success);</div>
+<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;</div>
+<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *<a class="code" href="internal_8h.html#ae19b5968ebea2a077650652f1a3af46d">grpc_chttp2_parsing_lookup_stream</a>(</div>
+<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<a class="code" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *<a class="code" href="internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847">grpc_chttp2_parsing_accept_stream</a>(</div>
+<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <span class="keywordtype">id</span>);</div>
+<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;</div>
+<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771">grpc_chttp2_add_incoming_goaway</a>(</div>
+<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> goaway_error,</div>
+<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> goaway_text);</div>
+<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div>
+<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e">grpc_chttp2_register_stream</a>(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t,</div>
+<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *s);</div>
+<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;<span class="comment">/* returns 1 if this is the last stream, 0 otherwise */</span></div>
+<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a558d8331836125098834d28a94e39bcc">grpc_chttp2_unregister_stream</a>(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t,</div>
+<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <a class="code" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *s) <a class="code" href="port__platform_8h.html#aef49047a3be38448a61332117b306686">GRPC_MUST_USE_RESULT</a>;</div>
+<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;<span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1">grpc_chttp2_has_streams</a>(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t);</div>
+<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#a62031f6afc6643cc2f34b4af2d547576">grpc_chttp2_for_all_streams</a>(</div>
+<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <span class="keywordtype">void</span> (*cb)(<a class="code" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <a class="code" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global));</div>
+<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;</div>
+<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60">grpc_chttp2_parsing_become_skip_parser</a>(</div>
+<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <a class="code" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing);</div>
+<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div>
+<div class="line"><a name="l00586"></a><span class="lineno"><a class="line" href="internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4"> 586</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_CLIENT_CONNECT_STRING &quot;PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n&quot;</span></div>
+<div class="line"><a name="l00587"></a><span class="lineno"><a class="line" href="internal_8h.html#a5fd119b62e9b3648496dbb7c2f2a0025"> 587</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_CLIENT_CONNECT_STRLEN \</span></div>
+<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;<span class="preprocessor"> (sizeof(GRPC_CHTTP2_CLIENT_CONNECT_STRING) - 1)</span></div>
+<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a>;</div>
+<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a>;</div>
+<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;</div>
+<div class="line"><a name="l00593"></a><span class="lineno"><a class="line" href="internal_8h.html#ab4ecd954e779c49a6159f842dc5a2ab4"> 593</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_IF_TRACING(stmt) \</span></div>
+<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;<span class="preprocessor"> if (!(grpc_http_trace)) \</span></div>
+<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="preprocessor"> ; \</span></div>
+<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;<span class="preprocessor"> else \</span></div>
+<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;<span class="preprocessor"> stmt</span></div>
+<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00599"></a><span class="lineno"><a class="line" href="internal_8h.html#a927cb1449b541fcb1812761184135ca1"> 599</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_FLOWCTL_TRACE_STREAM(reason, transport, context, var, \</span></div>
+<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;<span class="preprocessor"> delta) \</span></div>
+<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;<span class="preprocessor"> if (!(grpc_flowctl_trace)) { \</span></div>
+<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;<span class="preprocessor"> } else { \</span></div>
+<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;<span class="preprocessor"> grpc_chttp2_flowctl_trace(__FILE__, __LINE__, reason, #context, #var, \</span></div>
+<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;<span class="preprocessor"> transport-&gt;is_client, context-&gt;id, context-&gt;var, \</span></div>
+<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;<span class="preprocessor"> delta); \</span></div>
+<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00608"></a><span class="lineno"><a class="line" href="internal_8h.html#ad6d86669b104a248fbee4d8f63237a06"> 608</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT(reason, context, var, delta) \</span></div>
+<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;<span class="preprocessor"> if (!(grpc_flowctl_trace)) { \</span></div>
+<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="preprocessor"> } else { \</span></div>
+<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;<span class="preprocessor"> grpc_chttp2_flowctl_trace(__FILE__, __LINE__, reason, #context, #var, \</span></div>
+<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;<span class="preprocessor"> context-&gt;is_client, 0, context-&gt;var, delta); \</span></div>
+<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;<span class="keywordtype">void</span> <a class="code" href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">grpc_chttp2_flowctl_trace</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason,</div>
+<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *context, <span class="keyword">const</span> <span class="keywordtype">char</span> *var,</div>
+<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; <span class="keywordtype">int</span> is_client, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id,</div>
+<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <a class="code" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> current_value, <a class="code" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> delta);</div>
+<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160;</div>
+<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="internal_8h_html_a117877f5202f072aa35e7ada0379d0db"><div class="ttname"><a href="internal_8h.html#a117877f5202f072aa35e7ada0379d0db">grpc_chttp2_list_add_writable_stream</a></div><div class="ttdeci">void grpc_chttp2_list_add_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdoc">Get a writable stream returns non-zero if there was a stream available. </div><div class="ttdef"><b>Definition:</b> stream_lists.c:155</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c">GRPC_DTS_FH_6</a></div><div class="ttdef"><b>Definition:</b> internal.h:108</div></div>
+<div class="ttc" id="internal_8h_html_a6bb76c8188f883af2fb738233abdeea0"><div class="ttname"><a href="internal_8h.html#a6bb76c8188f883af2fb738233abdeea0">grpc_http_trace</a></div><div class="ttdeci">int grpc_http_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:60</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__live__op__buffer_html"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a></div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:46</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257">GRPC_DTS_CLIENT_PREFIX_19</a></div><div class="ttdef"><b>Definition:</b> internal.h:95</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__link_html"><div class="ttname"><a href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a></div><div class="ttdef"><b>Definition:</b> internal.h:133</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a727a1168723b305b97a5dc2c25bd2405"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405">grpc_chttp2_transport::closed</a></div><div class="ttdeci">gpr_uint8 closed</div><div class="ttdoc">has the upper layer closed the transport? </div><div class="ttdef"><b>Definition:</b> internal.h:295</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__writing_html_a294162cbd6c888161e51278dde204832"><div class="ttname"><a href="structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832">grpc_chttp2_stream_writing::id</a></div><div class="ttdeci">gpr_uint32 id</div><div class="ttdoc">HTTP2 stream id for this stream, or zero if one has not been assigned. </div><div class="ttdef"><b>Definition:</b> internal.h:403</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75">GRPC_DTS_CLIENT_PREFIX_22</a></div><div class="ttdef"><b>Definition:</b> internal.h:98</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21">GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING</a></div><div class="ttdef"><b>Definition:</b> internal.h:65</div></div>
+<div class="ttc" id="internal_8h_html_a2c7a37cef27c29528850701b9cf772d4"><div class="ttname"><a href="internal_8h.html#a2c7a37cef27c29528850701b9cf772d4">grpc_chttp2_list_have_writing_streams</a></div><div class="ttdeci">int grpc_chttp2_list_have_writing_streams(grpc_chttp2_transport_writing *transport_writing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:204</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912">GRPC_DTS_CLIENT_PREFIX_3</a></div><div class="ttdef"><b>Definition:</b> internal.h:79</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ab961441cc12e57a8721e7cd1b726e445"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445">grpc_chttp2_transport_parsing::incoming_stream</a></div><div class="ttdeci">grpc_chttp2_stream_parsing * incoming_stream</div><div class="ttdef"><b>Definition:</b> internal.h:264</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a></div><div class="ttdef"><b>Definition:</b> internal.h:159</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a1e21a69530e1002dc3929ecd085aa2a7"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7">grpc_chttp2_transport_global::ping_counter</a></div><div class="ttdeci">gpr_uint64 ping_counter</div><div class="ttdoc">next payload for an outgoing ping </div><div class="ttdef"><b>Definition:</b> internal.h:199</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795">GRPC_DTS_CLIENT_PREFIX_17</a></div><div class="ttdef"><b>Definition:</b> internal.h:93</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539">grpc_chttp2_stream_list_id</a></div><div class="ttdeci">grpc_chttp2_stream_list_id</div><div class="ttdef"><b>Definition:</b> internal.h:57</div></div>
+<div class="ttc" id="internal_8h_html_a558d8331836125098834d28a94e39bcc"><div class="ttname"><a href="internal_8h.html#a558d8331836125098834d28a94e39bcc">grpc_chttp2_unregister_stream</a></div><div class="ttdeci">int grpc_chttp2_unregister_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s) GRPC_MUST_USE_RESULT</div><div class="ttdef"><b>Definition:</b> stream_lists.c:368</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a2b872c8382bfd778b44a882fe10916d8"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8">grpc_chttp2_transport_parsing::goaway_text</a></div><div class="ttdeci">gpr_slice goaway_text</div><div class="ttdef"><b>Definition:</b> internal.h:275</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ad437f5d052e56cd4bcb46f26a7ab4250"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250">grpc_chttp2_transport_parsing::deframe_state</a></div><div class="ttdeci">grpc_chttp2_deframe_transport_state deframe_state</div><div class="ttdef"><b>Definition:</b> internal.h:254</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a1afb189034e53b6596d41698cd3ce34d"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d">grpc_chttp2_transport_global::sent_local_settings</a></div><div class="ttdeci">gpr_uint8 sent_local_settings</div><div class="ttdoc">have local settings been sent? </div><div class="ttdef"><b>Definition:</b> internal.h:183</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_aaaf91745383884fd3b3df92021c7b542"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542">grpc_chttp2_transport_parsing::last_incoming_stream_id</a></div><div class="ttdeci">gpr_uint32 last_incoming_stream_id</div><div class="ttdef"><b>Definition:</b> internal.h:251</div></div>
+<div class="ttc" id="stream__encoder_8h_html"><div class="ttname"><a href="stream__encoder_8h.html">stream_encoder.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a563b98e58df202ea2654dcada575ff2a"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a">grpc_chttp2_transport::accept_stream</a></div><div class="ttdeci">void(* accept_stream)(void *user_data, grpc_transport *transport, const void *server_data)</div><div class="ttdef"><b>Definition:</b> internal.h:338</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ad6dbcdcca6123f0d8bea8061d6c01e30"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30">grpc_chttp2_transport_parsing::ping</a></div><div class="ttdeci">grpc_chttp2_ping_parser ping</div><div class="ttdef"><b>Definition:</b> internal.h:239</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_abc8dc77619b0938e2ffa35bdf35bbae4"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4">grpc_chttp2_transport_global::qbuf</a></div><div class="ttdeci">gpr_slice_buffer qbuf</div><div class="ttdoc">data to write next write </div><div class="ttdef"><b>Definition:</b> internal.h:161</div></div>
+<div class="ttc" id="internal_8h_html_a4b8e11ec16028f6adaa9355602a9c591"><div class="ttname"><a href="internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591">grpc_chttp2_outstanding_ping</a></div><div class="ttdeci">struct grpc_chttp2_outstanding_ping grpc_chttp2_outstanding_ping</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a5cce3879b45e4a8553d25aba1fe85ed7"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7">grpc_chttp2_stream_global::max_recv_bytes</a></div><div class="ttdeci">gpr_uint32 max_recv_bytes</div><div class="ttdoc">The number of bytes the upper layers have offered to receive. </div><div class="ttdef"><b>Definition:</b> internal.h:359</div></div>
+<div class="ttc" id="internal_8h_html_a309e83a79f87a133dee17a1a7dd592b9"><div class="ttname"><a href="internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9">grpc_chttp2_cleanup_writing</a></div><div class="ttdeci">void grpc_chttp2_cleanup_writing(grpc_chttp2_transport_global *global, grpc_chttp2_transport_writing *writing)</div><div class="ttdef"><b>Definition:</b> writing.c:210</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a80827ad1a2e6f7ddce4f73c1b8964c2c"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c">grpc_chttp2_stream_global::writing_now</a></div><div class="ttdeci">gpr_uint8 writing_now</div><div class="ttdoc">is this stream actively being written? </div><div class="ttdef"><b>Definition:</b> internal.h:386</div></div>
+<div class="ttc" id="internal_8h_html_a6f8b16bb6048f85107966a4be9ff4a4d"><div class="ttname"><a href="internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d">grpc_chttp2_schedule_closure</a></div><div class="ttdeci">void grpc_chttp2_schedule_closure(grpc_chttp2_transport_global *transport_global, grpc_iomgr_closure *closure, int success)</div><div class="ttdoc">schedule a closure to run without the transport lock taken </div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:1033</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a4038fcd84b5ed8d5be85871bbd7bf362"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362">grpc_chttp2_transport_global::last_incoming_stream_id</a></div><div class="ttdeci">gpr_uint32 last_incoming_stream_id</div><div class="ttdoc">last received stream id </div><div class="ttdef"><b>Definition:</b> internal.h:194</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a6d6d8e67e0200e9cd62a76e2e3020d2d"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d">grpc_chttp2_transport_parsing::window_update</a></div><div class="ttdeci">grpc_chttp2_window_update_parser window_update</div><div class="ttdef"><b>Definition:</b> internal.h:237</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a></div><div class="ttdef"><b>Definition:</b> internal.h:70</div></div>
+<div class="ttc" id="internal_8h_html_a90a6cb6d111a750ab1f28bf4e438bb62"><div class="ttname"><a href="internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62">grpc_chttp2_list_pop_incoming_window_updated</a></div><div class="ttdeci">int grpc_chttp2_list_pop_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:324</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a">GRPC_DTS_CLIENT_PREFIX_8</a></div><div class="ttdef"><b>Definition:</b> internal.h:84</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_ab2e898e62f398f90f830a543a4bb5b84"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84">grpc_chttp2_transport_global::pending_closures_head</a></div><div class="ttdeci">grpc_iomgr_closure * pending_closures_head</div><div class="ttdoc">queued callbacks </div><div class="ttdef"><b>Definition:</b> internal.h:163</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586">GRPC_DTS_FRAME</a></div><div class="ttdef"><b>Definition:</b> internal.h:113</div></div>
+<div class="ttc" id="internal_8h_html_aeac970afdd6294bac9d1dcb84b702167"><div class="ttname"><a href="internal_8h.html#aeac970afdd6294bac9d1dcb84b702167">grpc_chttp2_list_pop_writable_stream</a></div><div class="ttdeci">int grpc_chttp2_list_pop_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:175</div></div>
+<div class="ttc" id="internal_8h_html_aeb6a160980622d4e5d1b8e9e608c6771"><div class="ttname"><a href="internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771">grpc_chttp2_add_incoming_goaway</a></div><div class="ttdeci">void grpc_chttp2_add_incoming_goaway(grpc_chttp2_transport_global *transport_global, gpr_uint32 goaway_error, gpr_slice goaway_text)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:534</div></div>
+<div class="ttc" id="internal_8h_html_a8858ea6e4f6e7c363985793b403a0ac9"><div class="ttname"><a href="internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9">grpc_chttp2_list_add_first_writable_stream</a></div><div class="ttdeci">void grpc_chttp2_list_add_first_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:163</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a460e875d57d437e6489aef4b7473f027"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027">grpc_chttp2_transport_global::force_send_settings</a></div><div class="ttdeci">gpr_uint32 force_send_settings</div><div class="ttdoc">bitmask of setting indexes to send out </div><div class="ttdef"><b>Definition:</b> internal.h:185</div></div>
+<div class="ttc" id="structgrpc__chttp2__rst__stream__parser_html"><div class="ttname"><a href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a></div><div class="ttdef"><b>Definition:</b> frame_rst_stream.h:40</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__writing_html_a8dbe82f6436d8ae4e3410d0ecb28dfc0"><div class="ttname"><a href="structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0">grpc_chttp2_transport_writing::outbuf</a></div><div class="ttdeci">gpr_slice_buffer outbuf</div><div class="ttdoc">data to write now </div><div class="ttdef"><b>Definition:</b> internal.h:208</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a></div><div class="ttdef"><b>Definition:</b> stream_map.h:47</div></div>
+<div class="ttc" id="frame__data_8h_html"><div class="ttname"><a href="frame__data_8h.html">frame_data.h</a></div></div>
+<div class="ttc" id="internal_8h_html_a1d99597284d4c0a0bd3cbf102ff415a2"><div class="ttname"><a href="internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2">grpc_chttp2_list_add_incoming_window_updated</a></div><div class="ttdeci">void grpc_chttp2_list_add_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:316</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4">GRPC_CHTTP2_LIST_ALL_STREAMS</a></div><div class="ttdef"><b>Definition:</b> internal.h:58</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_af9df25144aa81fccd8cb2fa0b30e9196"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196">grpc_chttp2_stream_parsing::outgoing_window_update</a></div><div class="ttdeci">gpr_uint64 outgoing_window_update</div><div class="ttdef"><b>Definition:</b> internal.h:428</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_ad6a925394f238fec8e6089fa07aaa03b"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b">grpc_chttp2_stream_parsing::saw_rst_stream</a></div><div class="ttdeci">gpr_uint8 saw_rst_stream</div><div class="ttdoc">saw a rst_stream </div><div class="ttdef"><b>Definition:</b> internal.h:418</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_acc4557af66848465ca976ea792575442"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442">grpc_chttp2_transport_parsing::parser_data</a></div><div class="ttdeci">void * parser_data</div><div class="ttdef"><b>Definition:</b> internal.h:263</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a0c6bdb40aa08bf5930307f3997961e50"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50">grpc_chttp2_transport_parsing::header_eof</a></div><div class="ttdeci">gpr_uint8 header_eof</div><div class="ttdef"><b>Definition:</b> internal.h:257</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a">GRPC_CHTTP2_LIST_WRITING</a></div><div class="ttdef"><b>Definition:</b> internal.h:61</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f">GRPC_DTS_CLIENT_PREFIX_16</a></div><div class="ttdef"><b>Definition:</b> internal.h:92</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674">GRPC_DTS_CLIENT_PREFIX_21</a></div><div class="ttdef"><b>Definition:</b> internal.h:97</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1">GRPC_DTS_CLIENT_PREFIX_11</a></div><div class="ttdef"><b>Definition:</b> internal.h:87</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_abbbb9c2b1f0667f1dd203faf76f0ca5e"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e">grpc_chttp2_transport_global::dirtied_local_settings</a></div><div class="ttdeci">gpr_uint8 dirtied_local_settings</div><div class="ttdoc">are the local settings dirty and need to be sent? </div><div class="ttdef"><b>Definition:</b> internal.h:181</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a1f45954c73c17a9a0cff3c0c7ac26d58"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58">grpc_chttp2_transport_parsing::is_client</a></div><div class="ttdeci">gpr_uint8 is_client</div><div class="ttdoc">is this transport a client? (boolean) </div><div class="ttdef"><b>Definition:</b> internal.h:217</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a></div><div class="ttdef"><b>Definition:</b> stream_encoder.h:48</div></div>
+<div class="ttc" id="port__platform_8h_html_aef49047a3be38448a61332117b306686"><div class="ttname"><a href="port__platform_8h.html#aef49047a3be38448a61332117b306686">GRPC_MUST_USE_RESULT</a></div><div class="ttdeci">#define GRPC_MUST_USE_RESULT</div><div class="ttdef"><b>Definition:</b> port_platform.h:327</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_ab5d0acae1272818f552268b1ecb2900f"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f">grpc_chttp2_transport_global::next_stream_id</a></div><div class="ttdeci">gpr_uint32 next_stream_id</div><div class="ttdoc">what is the next stream id to be allocated by this peer? copied to next_stream_id in parsing when par...</div><div class="ttdef"><b>Definition:</b> internal.h:191</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3">GRPC_DTS_CLIENT_PREFIX_10</a></div><div class="ttdef"><b>Definition:</b> internal.h:86</div></div>
+<div class="ttc" id="internal_8h_html_a8fa6e3087336e9d487f3987148cc3930"><div class="ttname"><a href="internal_8h.html#a8fa6e3087336e9d487f3987148cc3930">grpc_chttp2_perform_writes</a></div><div class="ttdeci">void grpc_chttp2_perform_writes(grpc_chttp2_transport_writing *transport_writing, grpc_endpoint *endpoint)</div><div class="ttdef"><b>Definition:</b> writing.c:152</div></div>
+<div class="ttc" id="frame_8h_html_ada474db64756bd411eeeaf3de4318e35"><div class="ttname"><a href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a></div><div class="ttdeci">grpc_chttp2_parse_error</div><div class="ttdef"><b>Definition:</b> frame.h:42</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_ae8dc6706fb9f342cca10ee7625630b2c"><div class="ttname"><a href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c">grpc_chttp2_transport::parsing</a></div><div class="ttdeci">grpc_chttp2_transport_parsing parsing</div><div class="ttdoc">state only accessible by the chain of execution that set parsing_active=1 </div><div class="ttdef"><b>Definition:</b> internal.h:315</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_af9b14729ff0c67e8b11f11bef74cc498"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498">grpc_chttp2_transport_parsing::incoming_window</a></div><div class="ttdeci">gpr_uint32 incoming_window</div><div class="ttdoc">window available for peer to send to us </div><div class="ttdef"><b>Definition:</b> internal.h:246</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__writing_html_a54f5afcc25f62a2e138a04c69f1be120"><div class="ttname"><a href="structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120">grpc_chttp2_stream_writing::sopb</a></div><div class="ttdeci">grpc_stream_op_buffer sopb</div><div class="ttdoc">sops that have passed flow control to be written </div><div class="ttdef"><b>Definition:</b> internal.h:405</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__parser_html"><div class="ttname"><a href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a></div><div class="ttdef"><b>Definition:</b> hpack_parser.h:56</div></div>
+<div class="ttc" id="internal_8h_html_aba4771272cd49e3012d81c05fad1bdb7"><div class="ttname"><a href="internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7">grpc_chttp2_list_pop_writing_stream</a></div><div class="ttdeci">int grpc_chttp2_list_pop_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing **stream_writing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:210</div></div>
+<div class="ttc" id="structgrpc__mdstr_html"><div class="ttname"><a href="structgrpc__mdstr.html">grpc_mdstr</a></div><div class="ttdef"><b>Definition:</b> metadata.h:70</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a62637fc6cff3b84aabacc3e9d9bdd1e3"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3">grpc_chttp2_stream_global::publish_state</a></div><div class="ttdeci">grpc_stream_state * publish_state</div><div class="ttdoc">address to publish next stream state to </div><div class="ttdef"><b>Definition:</b> internal.h:391</div></div>
+<div class="ttc" id="internal_8h_html_af5740bd38b626e875166e60e697e099e"><div class="ttname"><a href="internal_8h.html#af5740bd38b626e875166e60e697e099e">grpc_chttp2_list_add_writing_stream</a></div><div class="ttdeci">void grpc_chttp2_list_add_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:196</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673">GRPC_CHTTP2_LIST_WRITTEN</a></div><div class="ttdef"><b>Definition:</b> internal.h:62</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8">GRPC_DTS_CLIENT_PREFIX_18</a></div><div class="ttdef"><b>Definition:</b> internal.h:94</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a05c91e8c28afe70631f28384957044d7"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7">grpc_chttp2_transport::peer_string</a></div><div class="ttdeci">char * peer_string</div><div class="ttdef"><b>Definition:</b> internal.h:288</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976">GRPC_DTS_FH_7</a></div><div class="ttdef"><b>Definition:</b> internal.h:109</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa">GRPC_DTS_CLIENT_PREFIX_14</a></div><div class="ttdef"><b>Definition:</b> internal.h:90</div></div>
+<div class="ttc" id="structgrpc__chttp2__outstanding__ping_html"><div class="ttname"><a href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a></div><div class="ttdef"><b>Definition:</b> internal.h:152</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a2f16eb7d0da87fe60a2fcc35536f3905"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905">grpc_chttp2_stream_global::send_done_closure</a></div><div class="ttdeci">grpc_iomgr_closure * send_done_closure</div><div class="ttdef"><b>Definition:</b> internal.h:351</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d">GRPC_DTS_CLIENT_PREFIX_15</a></div><div class="ttdef"><b>Definition:</b> internal.h:91</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a9eb0479db2dffbb2637e771adab2ef06"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06">grpc_chttp2_transport_global::connection_window_target</a></div><div class="ttdeci">gpr_uint32 connection_window_target</div><div class="ttdoc">how much window would we like to have for incoming_window </div><div class="ttdef"><b>Definition:</b> internal.h:171</div></div>
+<div class="ttc" id="internal_8h_html_a154399c46a1f7b901491acb4c04d19d3"><div class="ttname"><a href="internal_8h.html#a154399c46a1f7b901491acb4c04d19d3">grpc_chttp2_unlocking_check_writes</a></div><div class="ttdeci">int grpc_chttp2_unlocking_check_writes(grpc_chttp2_transport_global *global, grpc_chttp2_transport_writing *writing)</div><div class="ttdoc">Transport writing call flow: chttp2_transport.c calls grpc_chttp2_unlocking_check_writes to see if wr...</div><div class="ttdef"><b>Definition:</b> writing.c:42</div></div>
+<div class="ttc" id="internal_8h_html_a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42"><div class="ttname"><a href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42">GRPC_ACKED_SETTINGS</a></div><div class="ttdef"><b>Definition:</b> internal.h:147</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a163a1ce9c8ff2f73e58f2867fada9586"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586">grpc_chttp2_transport_parsing::settings_ack_received</a></div><div class="ttdeci">gpr_uint8 settings_ack_received</div><div class="ttdoc">was a settings ack received? </div><div class="ttdef"><b>Definition:</b> internal.h:222</div></div>
+<div class="ttc" id="internal_8h_html_a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633"><div class="ttname"><a href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633">GRPC_WRITE_STATE_QUEUED_CLOSE</a></div><div class="ttdef"><b>Definition:</b> internal.h:118</div></div>
+<div class="ttc" id="internal_8h_html_accb6dbbacb57c3f9860e6ec6eca2390e"><div class="ttname"><a href="internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e">grpc_chttp2_register_stream</a></div><div class="ttdeci">void grpc_chttp2_register_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:363</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a3a0c36ded4c323b01b323643d9750c04"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04">grpc_chttp2_transport_parsing::rst_stream</a></div><div class="ttdeci">grpc_chttp2_rst_stream_parser rst_stream</div><div class="ttdef"><b>Definition:</b> internal.h:240</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a6ef8d064cc295865edf61d27ea8b71a2"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2">grpc_chttp2_transport::metadata_context</a></div><div class="ttdeci">grpc_mdctx * metadata_context</div><div class="ttdef"><b>Definition:</b> internal.h:286</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_aa5202346d6771ba38232b4d1fd290da5"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5">grpc_chttp2_stream_global::incoming_metadata</a></div><div class="ttdeci">grpc_chttp2_incoming_metadata_buffer incoming_metadata</div><div class="ttdoc">incoming metadata </div><div class="ttdef"><b>Definition:</b> internal.h:397</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a">GRPC_DTS_CLIENT_PREFIX_12</a></div><div class="ttdef"><b>Definition:</b> internal.h:88</div></div>
+<div class="ttc" id="internal_8h_html_a1d1ec9b2edce465d2fd18002a403878d"><div class="ttname"><a href="internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d">grpc_chttp2_list_pop_parsing_seen_stream</a></div><div class="ttdeci">int grpc_chttp2_list_pop_parsing_seen_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:249</div></div>
+<div class="ttc" id="internal_8h_html_afd0f83d780e8ddeac885163c45aab0a8"><div class="ttname"><a href="internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8">grpc_flowctl_trace</a></div><div class="ttdeci">int grpc_flowctl_trace</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:61</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_acb9aee1746f86d0af230f41898c2e060"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060">grpc_chttp2_transport_parsing::expect_continuation_stream_id</a></div><div class="ttdeci">gpr_uint32 expect_continuation_stream_id</div><div class="ttdef"><b>Definition:</b> internal.h:258</div></div>
+<div class="ttc" id="frame__ping_8h_html"><div class="ttname"><a href="frame__ping_8h.html">frame_ping.h</a></div></div>
+<div class="ttc" id="internal_8h_html_ae444a83dc73e9a658e7df625a04b101a"><div class="ttname"><a href="internal_8h.html#ae444a83dc73e9a658e7df625a04b101a">grpc_chttp2_prepare_to_read</a></div><div class="ttdeci">void grpc_chttp2_prepare_to_read(grpc_chttp2_transport_global *global, grpc_chttp2_transport_parsing *parsing)</div><div class="ttdef"><b>Definition:</b> parsing.c:64</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a3e1fc90d6a29169c350866557ff5903c"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c">grpc_chttp2_transport_parsing::initial_window_update</a></div><div class="ttdeci">gpr_int64 initial_window_update</div><div class="ttdoc">initial window change </div><div class="ttdef"><b>Definition:</b> internal.h:227</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a82b81ecf5d12a2c75978a343bad9abf5"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5">grpc_chttp2_transport_parsing::goaway_received</a></div><div class="ttdeci">gpr_uint8 goaway_received</div><div class="ttdoc">was a goaway frame received? </div><div class="ttdef"><b>Definition:</b> internal.h:224</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_af9836b789695d32031897da007fc3937"><div class="ttname"><a href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937">grpc_chttp2_transport::parsing_stream_map</a></div><div class="ttdeci">grpc_chttp2_stream_map parsing_stream_map</div><div class="ttdoc">maps stream id to grpc_chttp2_stream objects; owned by the parsing thread when parsing ...</div><div class="ttdef"><b>Definition:</b> internal.h:319</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_ac23343b063865623cab752f3882ef829"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829">grpc_chttp2_transport_global::seen_goaway</a></div><div class="ttdeci">gpr_uint8 seen_goaway</div><div class="ttdoc">have we seen a goaway </div><div class="ttdef"><b>Definition:</b> internal.h:174</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922">GRPC_DTS_FH_3</a></div><div class="ttdef"><b>Definition:</b> internal.h:105</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a5fe6b71fbaa164a3a755e274e94d970d"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d">grpc_chttp2_transport_parsing::goaway_error</a></div><div class="ttdeci">grpc_status_code goaway_error</div><div class="ttdef"><b>Definition:</b> internal.h:273</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_af978119004439db266373fc347d553d4"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4">grpc_chttp2_stream_global::id</a></div><div class="ttdeci">gpr_uint32 id</div><div class="ttdoc">HTTP2 stream id for this stream, or zero if one has not been assigned. </div><div class="ttdef"><b>Definition:</b> internal.h:349</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74">GRPC_DTS_CLIENT_PREFIX_5</a></div><div class="ttdef"><b>Definition:</b> internal.h:81</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream_html_a6ffcd70fca0b8574e024e572c3928624"><div class="ttname"><a href="structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624">grpc_chttp2_stream::links</a></div><div class="ttdeci">grpc_chttp2_stream_link links[STREAM_LIST_COUNT]</div><div class="ttdef"><b>Definition:</b> internal.h:439</div></div>
+<div class="ttc" id="internal_8h_html_ac054ecf6e743093e5527787063f3acaa"><div class="ttname"><a href="internal_8h.html#ac054ecf6e743093e5527787063f3acaa">grpc_chttp2_flowctl_trace</a></div><div class="ttdeci">void grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:1069</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ae25fb486225d5197c4532c374c04c79f"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f">grpc_chttp2_transport_parsing::goaway_last_stream_index</a></div><div class="ttdeci">gpr_uint32 goaway_last_stream_index</div><div class="ttdef"><b>Definition:</b> internal.h:274</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a42e022f4775a11184006e08ba9c1afbf"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf">grpc_chttp2_transport::writing</a></div><div class="ttdeci">grpc_chttp2_transport_writing writing</div><div class="ttdoc">state only accessible by the chain of execution that set writing_active=1 </div><div class="ttdef"><b>Definition:</b> internal.h:312</div></div>
+<div class="ttc" id="internal_8h_html_a6b62b98b415b3984616d4e851f0ff5c0"><div class="ttname"><a href="internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0">grpc_chttp2_list_pop_waiting_for_concurrency</a></div><div class="ttdeci">int grpc_chttp2_list_pop_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:270</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream_html_a56eaa3786a61b45591c0e3825ddd5e2e"><div class="ttname"><a href="structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e">grpc_chttp2_stream::writing</a></div><div class="ttdeci">grpc_chttp2_stream_writing writing</div><div class="ttdef"><b>Definition:</b> internal.h:436</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90">GRPC_DTS_CLIENT_PREFIX_7</a></div><div class="ttdef"><b>Definition:</b> internal.h:83</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085">GRPC_DTS_CLIENT_PREFIX_0</a></div><div class="ttdef"><b>Definition:</b> internal.h:76</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_ab66f69dae83b6afaa33709e97b75243a"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a">grpc_chttp2_stream_global::read_closed</a></div><div class="ttdeci">gpr_uint8 read_closed</div><div class="ttdoc">is this stream closed (boolean) </div><div class="ttdef"><b>Definition:</b> internal.h:377</div></div>
+<div class="ttc" id="internal_8h_html_a25a39d1d95e7140c1ae8f765ffd92847"><div class="ttname"><a href="internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847">grpc_chttp2_parsing_accept_stream</a></div><div class="ttdeci">grpc_chttp2_stream_parsing * grpc_chttp2_parsing_accept_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:434</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_a944472500c9ce6b5f9b3c217c465cf54"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54">grpc_chttp2_stream_parsing::data_parser</a></div><div class="ttdeci">grpc_chttp2_data_parser data_parser</div><div class="ttdoc">parsing state for data frames </div><div class="ttdef"><b>Definition:</b> internal.h:424</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__list_html"><div class="ttname"><a href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a></div><div class="ttdef"><b>Definition:</b> internal.h:128</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1">GRPC_DTS_FH_1</a></div><div class="ttdef"><b>Definition:</b> internal.h:103</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a760ff12814aea655f58e5ef78af31cc9"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9">grpc_chttp2_transport_parsing::next_stream_id</a></div><div class="ttdeci">gpr_uint32 next_stream_id</div><div class="ttdoc">next stream id available at the time of beginning parsing </div><div class="ttdef"><b>Definition:</b> internal.h:250</div></div>
+<div class="ttc" id="internal_8h_html_a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641"><div class="ttname"><a href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">GRPC_NUM_SETTING_SETS</a></div><div class="ttdef"><b>Definition:</b> internal.h:148</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__writing_html_a99f5a7439100ab7bab790117458af460"><div class="ttname"><a href="structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460">grpc_chttp2_transport_writing::hpack_compressor</a></div><div class="ttdeci">grpc_chttp2_hpack_compressor hpack_compressor</div><div class="ttdoc">hpack encoding </div><div class="ttdef"><b>Definition:</b> internal.h:210</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ad96b76072847c4d2824167bb3003798f"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f">grpc_chttp2_transport_parsing::incoming_frame_flags</a></div><div class="ttdeci">gpr_uint8 incoming_frame_flags</div><div class="ttdef"><b>Definition:</b> internal.h:256</div></div>
+<div class="ttc" id="structgrpc__chttp2__outstanding__ping_html_aaad08393f94e4da9275e8c5c113b08a6"><div class="ttname"><a href="structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6">grpc_chttp2_outstanding_ping::prev</a></div><div class="ttdeci">struct grpc_chttp2_outstanding_ping * prev</div><div class="ttdef"><b>Definition:</b> internal.h:156</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a2e550b67b429a603f37decfc8b29449b"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b">grpc_chttp2_transport::writing_active</a></div><div class="ttdeci">gpr_uint8 writing_active</div><div class="ttdoc">is a thread currently writing </div><div class="ttdef"><b>Definition:</b> internal.h:298</div></div>
+<div class="ttc" id="incoming__metadata_8h_html"><div class="ttname"><a href="incoming__metadata_8h.html">incoming_metadata.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_add21a685d25468b7e778b0a88f961a31"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31">grpc_chttp2_transport_parsing::settings</a></div><div class="ttdeci">grpc_chttp2_settings_parser settings</div><div class="ttdef"><b>Definition:</b> internal.h:238</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a77c29c9318b9c732bb57bac183abc995"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995">grpc_chttp2_transport_global::concurrent_stream_count</a></div><div class="ttdeci">gpr_uint32 concurrent_stream_count</div><div class="ttdoc">concurrent stream count: updated when not parsing, so this is a strict over-estimation on the client ...</div><div class="ttdef"><b>Definition:</b> internal.h:203</div></div>
+<div class="ttc" id="transport_8h_html_a5988f9c4b3b23409cda5a38636d97f7b"><div class="ttname"><a href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a></div><div class="ttdeci">grpc_stream_state</div><div class="ttdef"><b>Definition:</b> transport.h:53</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a480ae47b5ab8e7f2926cb83b79952c7e"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e">grpc_chttp2_transport::accepting_stream</a></div><div class="ttdeci">grpc_chttp2_stream ** accepting_stream</div><div class="ttdoc">address to place a newly accepted stream - set and unset by grpc_chttp2_parsing_accept_stream; used b...</div><div class="ttdef"><b>Definition:</b> internal.h:334</div></div>
+<div class="ttc" id="internal_8h_html_a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5"><div class="ttname"><a href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5">GRPC_SENT_SETTINGS</a></div><div class="ttdef"><b>Definition:</b> internal.h:145</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a9e33abb09685b8b27f46befe38c82665"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665">grpc_chttp2_stream_global::published_state</a></div><div class="ttdeci">grpc_stream_state published_state</div><div class="ttdoc">stream state already published to the upper layer </div><div class="ttdef"><b>Definition:</b> internal.h:389</div></div>
+<div class="ttc" id="internal_8h_html_ad0434ee720b66a5ee51c9904548857af"><div class="ttname"><a href="internal_8h.html#ad0434ee720b66a5ee51c9904548857af">grpc_chttp2_list_pop_closed_waiting_for_parsing</a></div><div class="ttdeci">int grpc_chttp2_list_pop_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:288</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream_html"><div class="ttname"><a href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a></div><div class="ttdef"><b>Definition:</b> internal.h:434</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_ab31ca67e25cd2f326a2e72cdfb67254e"><div class="ttname"><a href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e">grpc_chttp2_transport::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> internal.h:290</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a1b0ab60da80d6ffacf7966db31ff7013"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013">grpc_chttp2_transport_parsing::settings_updated</a></div><div class="ttdeci">gpr_uint8 settings_updated</div><div class="ttdoc">were settings updated? </div><div class="ttdef"><b>Definition:</b> internal.h:220</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__writing_html_abbea2f6f529041a009046136dcff99f0"><div class="ttname"><a href="structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0">grpc_chttp2_stream_writing::send_closed</a></div><div class="ttdeci">grpc_chttp2_send_closed send_closed</div><div class="ttdoc">how strongly should we indicate closure with the next write </div><div class="ttdef"><b>Definition:</b> internal.h:407</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a></div><div class="ttdeci">grpc_chttp2_deframe_transport_state</div><div class="ttdef"><b>Definition:</b> internal.h:74</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a0d452aa09888c083335eedc6df456bd3"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3">grpc_chttp2_transport_global::incoming_window</a></div><div class="ttdeci">gpr_uint32 incoming_window</div><div class="ttdoc">window available for peer to send to us - updated after parse </div><div class="ttdef"><b>Definition:</b> internal.h:169</div></div>
+<div class="ttc" id="internal_8h_html_a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508"><div class="ttname"><a href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508">GRPC_SEND_CLOSED_WITH_RST_STREAM</a></div><div class="ttdef"><b>Definition:</b> internal.h:125</div></div>
+<div class="ttc" id="frame__rst__stream_8h_html"><div class="ttname"><a href="frame__rst__stream_8h.html">frame_rst_stream.h</a></div></div>
+<div class="ttc" id="internal_8h_html_a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883"><div class="ttname"><a href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883">GRPC_WRITE_STATE_OPEN</a></div><div class="ttdef"><b>Definition:</b> internal.h:117</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ad78473e552fc03fcd84af1502bb6115c"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c">grpc_chttp2_transport_parsing::str_grpc_timeout</a></div><div class="ttdeci">grpc_mdstr * str_grpc_timeout</div><div class="ttdef"><b>Definition:</b> internal.h:232</div></div>
+<div class="ttc" id="structgrpc__chttp2__goaway__parser_html"><div class="ttname"><a href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a></div><div class="ttdef"><b>Definition:</b> frame_goaway.h:54</div></div>
+<div class="ttc" id="structgrpc__chttp2__outstanding__ping_html_a5e862f14887e10503dc72b98eb33e88c"><div class="ttname"><a href="structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c">grpc_chttp2_outstanding_ping::on_recv</a></div><div class="ttdeci">grpc_iomgr_closure * on_recv</div><div class="ttdef"><b>Definition:</b> internal.h:154</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a499f90a1aa3d67510b4f63191e04d08a"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a">grpc_chttp2_transport_parsing::outgoing_window_update</a></div><div class="ttdeci">gpr_uint64 outgoing_window_update</div><div class="ttdef"><b>Definition:</b> internal.h:277</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f">GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING</a></div><div class="ttdef"><b>Definition:</b> internal.h:64</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="transport__impl_8h_html"><div class="ttname"><a href="transport__impl_8h.html">transport_impl.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a3e785cf84303e183da7de8fd1b534732"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732">grpc_chttp2_transport_parsing::incoming_stream_id</a></div><div class="ttdeci">gpr_uint32 incoming_stream_id</div><div class="ttdef"><b>Definition:</b> internal.h:260</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:215</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_ac604ea7777d5d1c6d1ca243bd4caef0f"><div class="ttname"><a href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f">grpc_chttp2_transport::destroying</a></div><div class="ttdeci">gpr_uint8 destroying</div><div class="ttdoc">is the transport destroying itself? </div><div class="ttdef"><b>Definition:</b> internal.h:293</div></div>
+<div class="ttc" id="internal_8h_html_a9d3b30dd29e854143c461aa7e03cbfb9"><div class="ttname"><a href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a></div><div class="ttdeci">grpc_chttp2_send_closed</div><div class="ttdef"><b>Definition:</b> internal.h:122</div></div>
+<div class="ttc" id="internal_8h_html_a1208f234dcb6b2a73be3c875b2b52907"><div class="ttname"><a href="internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907">grpc_chttp2_list_add_closed_waiting_for_parsing</a></div><div class="ttdeci">void grpc_chttp2_list_add_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:280</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__list_html_af0f7bfa4b2e03157bd08f46091534e73"><div class="ttname"><a href="structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73">grpc_chttp2_stream_list::head</a></div><div class="ttdeci">grpc_chttp2_stream * head</div><div class="ttdef"><b>Definition:</b> internal.h:129</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a7b7f83db6f582e75152fbf85aeedd6be"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be">grpc_chttp2_stream_global::published_cancelled</a></div><div class="ttdeci">gpr_uint8 published_cancelled</div><div class="ttdoc">have we told the upper layer that this stream is cancelled? </div><div class="ttdef"><b>Definition:</b> internal.h:382</div></div>
+<div class="ttc" id="internal_8h_html_ad2d2a802b9072505d1e6f8bb68727f44"><div class="ttname"><a href="internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44">grpc_chttp2_list_pop_cancelled_waiting_for_writing</a></div><div class="ttdeci">int grpc_chttp2_list_pop_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:306</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a61488c0b537d712411fd90e1ea3bf363"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363">grpc_chttp2_stream_global::incoming_window</a></div><div class="ttdeci">gpr_uint32 incoming_window</div><div class="ttdoc">The number of bytes of HTTP2 flow control we have advertised. </div><div class="ttdef"><b>Definition:</b> internal.h:369</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a11bb4e6b13a37f1733f0348633e62ca9"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9">grpc_chttp2_transport_parsing::incoming_window_delta</a></div><div class="ttdeci">gpr_uint32 incoming_window_delta</div><div class="ttdef"><b>Definition:</b> internal.h:247</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a18d7c2fe14df07bc43840698aa5a3224"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224">grpc_chttp2_transport::writing_action</a></div><div class="ttdeci">grpc_iomgr_closure writing_action</div><div class="ttdoc">closure to execute writing </div><div class="ttdef"><b>Definition:</b> internal.h:327</div></div>
+<div class="ttc" id="internal_8h_html_ad6a13571d6666f45a64c8e0f6b234e60"><div class="ttname"><a href="internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60">grpc_chttp2_parsing_become_skip_parser</a></div><div class="ttdeci">void grpc_chttp2_parsing_become_skip_parser(grpc_chttp2_transport_parsing *transport_parsing)</div><div class="ttdef"><b>Definition:</b> parsing.c:492</div></div>
+<div class="ttc" id="port__platform_8h_html_a71edab4bc3421f129764e5cb342f7181"><div class="ttname"><a href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a></div><div class="ttdeci">int64_t gpr_int64</div><div class="ttdef"><b>Definition:</b> port_platform.h:306</div></div>
+<div class="ttc" id="structgrpc__chttp2__ping__parser_html"><div class="ttname"><a href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a></div><div class="ttdef"><b>Definition:</b> frame_ping.h:40</div></div>
+<div class="ttc" id="internal_8h_html_a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572"><div class="ttname"><a href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572">GRPC_PEER_SETTINGS</a></div><div class="ttdef"><b>Definition:</b> internal.h:141</div></div>
+<div class="ttc" id="internal_8h_html_a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02"><div class="ttname"><a href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02">GRPC_SEND_CLOSED</a></div><div class="ttdef"><b>Definition:</b> internal.h:124</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1">GRPC_DTS_FH_0</a></div><div class="ttdef"><b>Definition:</b> internal.h:102</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_aa15d7fee63a356880346a9f961b9bdff"><div class="ttname"><a href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff">grpc_chttp2_transport::ep</a></div><div class="ttdeci">grpc_endpoint * ep</div><div class="ttdef"><b>Definition:</b> internal.h:285</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__writing_html_a43f3459674012631937082d00d553f57"><div class="ttname"><a href="structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57">grpc_chttp2_transport_writing::is_client</a></div><div class="ttdeci">gpr_uint8 is_client</div><div class="ttdoc">is this a client? </div><div class="ttdef"><b>Definition:</b> internal.h:212</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09">GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED</a></div><div class="ttdef"><b>Definition:</b> internal.h:66</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19">GRPC_DTS_CLIENT_PREFIX_13</a></div><div class="ttdef"><b>Definition:</b> internal.h:89</div></div>
+<div class="ttc" id="internal_8h_html_ac9e8165e01d872ed42c0333aee9d31c4"><div class="ttname"><a href="internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4">grpc_chttp2_list_pop_read_write_state_changed</a></div><div class="ttdeci">int grpc_chttp2_list_pop_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:353</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e">GRPC_DTS_CLIENT_PREFIX_23</a></div><div class="ttdef"><b>Definition:</b> internal.h:99</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_adc911ee0c36b417e2da7a28a8d45675f"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f">grpc_chttp2_transport_parsing::simple</a></div><div class="ttdeci">union grpc_chttp2_transport_parsing::@20 simple</div><div class="ttdoc">simple one shot parsers </div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a></div><div class="ttdef"><b>Definition:</b> internal.h:347</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_a5cdeb7e94802970d5748ec4c218003cc"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc">grpc_chttp2_stream_parsing::incoming_metadata</a></div><div class="ttdeci">grpc_chttp2_incoming_metadata_buffer incoming_metadata</div><div class="ttdoc">incoming metadata </div><div class="ttdef"><b>Definition:</b> internal.h:431</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc">GRPC_DTS_FH_5</a></div><div class="ttdef"><b>Definition:</b> internal.h:107</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab">GRPC_DTS_FH_2</a></div><div class="ttdef"><b>Definition:</b> internal.h:104</div></div>
+<div class="ttc" id="hpack__parser_8h_html"><div class="ttname"><a href="hpack__parser_8h.html">hpack_parser.h</a></div></div>
+<div class="ttc" id="internal_8h_html_a19ad8f2b321787a1255a888d5d5923f1"><div class="ttname"><a href="internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1">grpc_chttp2_has_streams</a></div><div class="ttdeci">int grpc_chttp2_has_streams(grpc_chttp2_transport *t)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:374</div></div>
+<div class="ttc" id="connectivity__state_8h_html"><div class="ttname"><a href="connectivity__state_8h.html">connectivity_state.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ab12f37091dd64c63d7c175fc19410a61"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61">grpc_chttp2_transport_parsing::parser</a></div><div class="ttdeci">grpc_chttp2_parse_error(* parser)(void *parser_user_data, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)</div><div class="ttdef"><b>Definition:</b> internal.h:265</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506">GRPC_DTS_CLIENT_PREFIX_1</a></div><div class="ttdef"><b>Definition:</b> internal.h:77</div></div>
+<div class="ttc" id="stream__map_8h_html"><div class="ttname"><a href="stream__map_8h.html">stream_map.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a5c0031bc09c803f4b1440690a896812d"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d">grpc_chttp2_transport_parsing::hpack_parser</a></div><div class="ttdeci">grpc_chttp2_hpack_parser hpack_parser</div><div class="ttdoc">parser for headers </div><div class="ttdef"><b>Definition:</b> internal.h:234</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec">GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED</a></div><div class="ttdef"><b>Definition:</b> internal.h:59</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a">GRPC_DTS_FH_8</a></div><div class="ttdef"><b>Definition:</b> internal.h:111</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_af48fb355cfabb488dda83d994c1c04c7"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7">grpc_chttp2_transport_global::outgoing_window</a></div><div class="ttdeci">gpr_uint32 outgoing_window</div><div class="ttdoc">window available for us to send to peer </div><div class="ttdef"><b>Definition:</b> internal.h:167</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__writing_html_a261161be44a3f481f38c7d498da4aa17"><div class="ttname"><a href="structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17">grpc_chttp2_stream_writing::announce_window</a></div><div class="ttdeci">gpr_uint32 announce_window</div><div class="ttdoc">how much window should we announce? </div><div class="ttdef"><b>Definition:</b> internal.h:409</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_aea8ef0f5795a15621ca9e5e4c7ca0aec"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec">grpc_chttp2_stream_global::outgoing_window</a></div><div class="ttdeci">gpr_int64 outgoing_window</div><div class="ttdoc">window available for us to send to peer </div><div class="ttdef"><b>Definition:</b> internal.h:355</div></div>
+<div class="ttc" id="frame__settings_8h_html_a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205"><div class="ttname"><a href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:58</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__writing_html"><div class="ttname"><a href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a></div><div class="ttdef"><b>Definition:</b> internal.h:206</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a></div><div class="ttdef"><b>Definition:</b> internal.h:412</div></div>
+<div class="ttc" id="structgrpc__chttp2__incoming__metadata__buffer_html"><div class="ttname"><a href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a></div><div class="ttdef"><b>Definition:</b> incoming_metadata.h:39</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_acb27a0ca3039e6e2713467e7dcef539e"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e">grpc_chttp2_transport_global::is_client</a></div><div class="ttdeci">gpr_uint8 is_client</div><div class="ttdoc">is this transport a client? </div><div class="ttdef"><b>Definition:</b> internal.h:179</div></div>
+<div class="ttc" id="structgrpc__chttp2__settings__parser_html"><div class="ttname"><a href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a></div><div class="ttdef"><b>Definition:</b> frame_settings.h:61</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e">GRPC_CHTTP2_LIST_PARSING_SEEN</a></div><div class="ttdef"><b>Definition:</b> internal.h:63</div></div>
+<div class="ttc" id="structgrpc__chttp2__window__update__parser_html"><div class="ttname"><a href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a></div><div class="ttdef"><b>Definition:</b> frame_window_update.h:40</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a2011b2483741ec634614fc4240b26905"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905">grpc_chttp2_transport::endpoint_reading</a></div><div class="ttdeci">gpr_uint8 endpoint_reading</div><div class="ttdoc">is there a read request to the endpoint outstanding? </div><div class="ttdef"><b>Definition:</b> internal.h:303</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream_html_ab8404714b48a6b7921040a154e4d0d95"><div class="ttname"><a href="structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95">grpc_chttp2_stream::included</a></div><div class="ttdeci">gpr_uint8 included[STREAM_LIST_COUNT]</div><div class="ttdef"><b>Definition:</b> internal.h:440</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_a906592013b034420e0a9e8de6321322b"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b">grpc_chttp2_stream_parsing::received_close</a></div><div class="ttdeci">gpr_uint8 received_close</div><div class="ttdoc">has this stream received a close </div><div class="ttdef"><b>Definition:</b> internal.h:416</div></div>
+<div class="ttc" id="internal_8h_html_a83baade3ee315270b6d34fc6fbecb30c"><div class="ttname"><a href="internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c">grpc_chttp2_terminate_writing</a></div><div class="ttdeci">void grpc_chttp2_terminate_writing(grpc_chttp2_transport_writing *transport_writing, int success)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:501</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_ad06b0ee92495f66aa27bd606459fcaf8"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8">grpc_chttp2_transport_global::sent_goaway</a></div><div class="ttdeci">gpr_uint8 sent_goaway</div><div class="ttdoc">have we sent a goaway </div><div class="ttdef"><b>Definition:</b> internal.h:176</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream_html_a738b484ef0e8926cdd88fd38cdb7e8f9"><div class="ttname"><a href="structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9">grpc_chttp2_stream::parsing</a></div><div class="ttdeci">grpc_chttp2_stream_parsing parsing</div><div class="ttdef"><b>Definition:</b> internal.h:437</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e">GRPC_DTS_CLIENT_PREFIX_9</a></div><div class="ttdef"><b>Definition:</b> internal.h:85</div></div>
+<div class="ttc" id="frame__settings_8h_html"><div class="ttname"><a href="frame__settings_8h.html">frame_settings.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_a6764e27bf94c79201b4408c7b2deb622"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622">grpc_chttp2_stream_parsing::incoming_window</a></div><div class="ttdeci">gpr_uint32 incoming_window</div><div class="ttdoc">window available for peer to send to us </div><div class="ttdef"><b>Definition:</b> internal.h:422</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd">GRPC_DTS_FH_4</a></div><div class="ttdef"><b>Definition:</b> internal.h:106</div></div>
+<div class="ttc" id="internal_8h_html_a771e6e4a553060bfac71d00b5f866877"><div class="ttname"><a href="internal_8h.html#a771e6e4a553060bfac71d00b5f866877">grpc_chttp2_list_add_parsing_seen_stream</a></div><div class="ttdeci">void grpc_chttp2_list_add_parsing_seen_stream(grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:241</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__link_html_a19808cff31bc258c69411406e3f65400"><div class="ttname"><a href="structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400">grpc_chttp2_stream_link::prev</a></div><div class="ttdeci">grpc_chttp2_stream * prev</div><div class="ttdef"><b>Definition:</b> internal.h:135</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a187f56865b31b7a1a29a3d95e81ab308"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308">grpc_chttp2_transport_parsing::qbuf</a></div><div class="ttdeci">gpr_slice_buffer qbuf</div><div class="ttdoc">data to write later - after parsing </div><div class="ttdef"><b>Definition:</b> internal.h:230</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a230b4b34a38f62d1871ac3726c211312"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312">grpc_chttp2_stream_global::cancelled</a></div><div class="ttdeci">gpr_uint8 cancelled</div><div class="ttdoc">has this stream been cancelled? (boolean) </div><div class="ttdef"><b>Definition:</b> internal.h:379</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a8f38d1bd29aad2855ebf9d15bdcaaeca"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca">grpc_chttp2_transport::new_stream_map</a></div><div class="ttdeci">grpc_chttp2_stream_map new_stream_map</div><div class="ttdoc">streams created by the client (possibly during parsing); merged with parsing_stream_map during unlock...</div><div class="ttdef"><b>Definition:</b> internal.h:324</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_aca96799d31e4980af7c974d211534cc0"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0">grpc_chttp2_stream_global::outstanding_metadata</a></div><div class="ttdeci">grpc_chttp2_incoming_metadata_live_op_buffer outstanding_metadata</div><div class="ttdef"><b>Definition:</b> internal.h:398</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0">GRPC_DTS_CLIENT_PREFIX_2</a></div><div class="ttdef"><b>Definition:</b> internal.h:78</div></div>
+<div class="ttc" id="structgrpc__chttp2__data__parser_html"><div class="ttname"><a href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a></div><div class="ttdef"><b>Definition:</b> frame_data.h:53</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_aab4958ab848ae72e29c8161de9df1cf9"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9">grpc_chttp2_stream_global::write_state</a></div><div class="ttdeci">grpc_chttp2_write_state write_state</div><div class="ttdoc">when the application requests writes be closed, the write_closed is &#39;queued&#39;; when the close is flow ...</div><div class="ttdef"><b>Definition:</b> internal.h:375</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a3cc62ba8bd5b95de8d083421cc6f5781"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781">grpc_chttp2_transport_parsing::incoming_frame_type</a></div><div class="ttdeci">gpr_uint8 incoming_frame_type</div><div class="ttdef"><b>Definition:</b> internal.h:255</div></div>
+<div class="ttc" id="internal_8h_html_a71d9dea1ff323c374d7ea47818defc2e"><div class="ttname"><a href="internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e">grpc_chttp2_list_add_waiting_for_concurrency</a></div><div class="ttdeci">void grpc_chttp2_list_add_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:262</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a90319aafb59fb5c00ee8ae113e9a3d69"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69">grpc_chttp2_transport::refs</a></div><div class="ttdeci">gpr_refcount refs</div><div class="ttdef"><b>Definition:</b> internal.h:287</div></div>
+<div class="ttc" id="internal_8h_html_ae19b5968ebea2a077650652f1a3af46d"><div class="ttname"><a href="internal_8h.html#ae19b5968ebea2a077650652f1a3af46d">grpc_chttp2_parsing_lookup_stream</a></div><div class="ttdeci">grpc_chttp2_stream_parsing * grpc_chttp2_parsing_lookup_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id)</div><div class="ttdef"><b>Definition:</b> chttp2_transport.c:426</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream_html_ae6fe61537b60639a3d969eacde593be5"><div class="ttname"><a href="structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5">grpc_chttp2_stream::global</a></div><div class="ttdeci">grpc_chttp2_stream_global global</div><div class="ttdef"><b>Definition:</b> internal.h:435</div></div>
+<div class="ttc" id="frame__goaway_8h_html"><div class="ttname"><a href="frame__goaway_8h.html">frame_goaway.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a70e7155660cf0d3bc3dde94b9093a08d"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d">grpc_chttp2_stream_global::outgoing_sopb</a></div><div class="ttdeci">grpc_stream_op_buffer * outgoing_sopb</div><div class="ttdoc">stream ops the transport user would like to send </div><div class="ttdef"><b>Definition:</b> internal.h:371</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_ab28b069fc6b870de365928004832729b"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b">grpc_chttp2_transport_parsing::goaway_parser</a></div><div class="ttdeci">grpc_chttp2_goaway_parser goaway_parser</div><div class="ttdoc">parser for goaway frames </div><div class="ttdef"><b>Definition:</b> internal.h:243</div></div>
+<div class="ttc" id="internal_8h_html_a62031f6afc6643cc2f34b4af2d547576"><div class="ttname"><a href="internal_8h.html#a62031f6afc6643cc2f34b4af2d547576">grpc_chttp2_for_all_streams</a></div><div class="ttdeci">void grpc_chttp2_for_all_streams(grpc_chttp2_transport_global *transport_global, void *user_data, void(*cb)(grpc_chttp2_transport_global *transport_global, void *user_data, grpc_chttp2_stream_global *stream_global))</div><div class="ttdef"><b>Definition:</b> stream_lists.c:378</div></div>
+<div class="ttc" id="internal_8h_html_a8a7f981b74e1e99b0a1afe0c45702d89"><div class="ttname"><a href="internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89">grpc_chttp2_list_remove_incoming_window_updated</a></div><div class="ttdeci">void grpc_chttp2_list_remove_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:337</div></div>
+<div class="ttc" id="internal_8h_html_a4d137f455d722521fd7dab4fd13e1697"><div class="ttname"><a href="internal_8h.html#a4d137f455d722521fd7dab4fd13e1697">grpc_chttp2_publish_reads</a></div><div class="ttdeci">void grpc_chttp2_publish_reads(grpc_chttp2_transport_global *global, grpc_chttp2_transport_parsing *parsing)</div><div class="ttdef"><b>Definition:</b> parsing.c:93</div></div>
+<div class="ttc" id="internal_8h_html_a789d5bcd10c0f1c7ad2fc32190fd87a0"><div class="ttname"><a href="internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">grpc_chttp2_list_remove_writable_stream</a></div><div class="ttdeci">void grpc_chttp2_list_remove_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:188</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a23dec30ddec4c30cebc9e4110d1bb9f9"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9">grpc_chttp2_stream_global::unannounced_incoming_window</a></div><div class="ttdeci">gpr_uint32 unannounced_incoming_window</div><div class="ttdoc">The number of bytes the upper layer has offered to read but we have not yet announced to HTTP2 flow c...</div><div class="ttdef"><b>Definition:</b> internal.h:364</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__writing_html"><div class="ttname"><a href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a></div><div class="ttdef"><b>Definition:</b> internal.h:401</div></div>
+<div class="ttc" id="internal_8h_html_a6c14b42c5aba744e7f99831e0b7901ad"><div class="ttname"><a href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad">grpc_chttp2_setting_set</a></div><div class="ttdeci">grpc_chttp2_setting_set</div><div class="ttdef"><b>Definition:</b> internal.h:139</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355">GRPC_DTS_CLIENT_PREFIX_4</a></div><div class="ttdef"><b>Definition:</b> internal.h:80</div></div>
+<div class="ttc" id="internal_8h_html_a3b93cb6f95aff10ba74b6aa06d7e99cc"><div class="ttname"><a href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a></div><div class="ttdeci">grpc_chttp2_write_state</div><div class="ttdef"><b>Definition:</b> internal.h:116</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_a737bb95b7b58d90b4215602d36ed65b6"><div class="ttname"><a href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a></div><div class="ttdeci">uint64_t gpr_uint64</div><div class="ttdef"><b>Definition:</b> port_platform.h:310</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__list_html_ac8be7bdb2c4da40b8994790885ac7620"><div class="ttname"><a href="structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620">grpc_chttp2_stream_list::tail</a></div><div class="ttdeci">grpc_chttp2_stream * tail</div><div class="ttdef"><b>Definition:</b> internal.h:130</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_a177b90ba6af8f43e85ca7d96e6f3db83"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83">grpc_chttp2_stream_parsing::id</a></div><div class="ttdeci">gpr_uint32 id</div><div class="ttdoc">HTTP2 stream id for this stream, or zero if one has not been assigned. </div><div class="ttdef"><b>Definition:</b> internal.h:414</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_ad9b5d27432602aed7ad614427579643e"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e">grpc_chttp2_stream_global::incoming_sopb</a></div><div class="ttdeci">grpc_stream_op_buffer incoming_sopb</div><div class="ttdef"><b>Definition:</b> internal.h:394</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a8dc1af0f203166b32f22634edb3b47bb"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb">grpc_chttp2_transport::channel_callback</a></div><div class="ttdeci">struct grpc_chttp2_transport::@21 channel_callback</div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_aa6226c0cb8e4d6bd5830cc36f1efd4d2"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2">grpc_chttp2_stream_parsing::rst_stream_reason</a></div><div class="ttdeci">gpr_uint32 rst_stream_reason</div><div class="ttdoc">reason give to rst_stream </div><div class="ttdef"><b>Definition:</b> internal.h:426</div></div>
+<div class="ttc" id="frame__window__update_8h_html"><div class="ttname"><a href="frame__window__update_8h.html">frame_window_update.h</a></div></div>
+<div class="ttc" id="internal_8h_html_ad26dae5e10a026530f50b133359b3ee2"><div class="ttname"><a href="internal_8h.html#ad26dae5e10a026530f50b133359b3ee2">grpc_chttp2_list_add_cancelled_waiting_for_writing</a></div><div class="ttdeci">void grpc_chttp2_list_add_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:298</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835">GRPC_DTS_CLIENT_PREFIX_6</a></div><div class="ttdef"><b>Definition:</b> internal.h:82</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a9bd7506a4e310f2ebc1969250b3c7694"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694">grpc_chttp2_transport::global</a></div><div class="ttdeci">grpc_chttp2_transport_global global</div><div class="ttdoc">global state for reading/writing </div><div class="ttdef"><b>Definition:</b> internal.h:309</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a8fb7af1b8962b843978bd8f7fff400fe"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe">grpc_chttp2_stream_global::publish_sopb</a></div><div class="ttdeci">grpc_stream_op_buffer * publish_sopb</div><div class="ttdoc">pointer to sop buffer to fill in with new stream ops </div><div class="ttdef"><b>Definition:</b> internal.h:393</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_af27d45b43390f9dc4d1dc197d9864098"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098">grpc_chttp2_stream_global::cancelled_status</a></div><div class="ttdeci">grpc_status_code cancelled_status</div><div class="ttdef"><b>Definition:</b> internal.h:380</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html"><div class="ttname"><a href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div><div class="ttdef"><b>Definition:</b> stream_op.h:176</div></div>
+<div class="ttc" id="internal_8h_html_a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0"><div class="ttname"><a href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0">GRPC_LOCAL_SETTINGS</a></div><div class="ttdef"><b>Definition:</b> internal.h:143</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_aafdcf31c8c77411e25dfa9b94eeb283f"><div class="ttname"><a href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f">grpc_chttp2_transport::base</a></div><div class="ttdeci">grpc_transport base</div><div class="ttdef"><b>Definition:</b> internal.h:284</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0">GRPC_CHTTP2_LIST_WRITABLE</a></div><div class="ttdef"><b>Definition:</b> internal.h:60</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a1808fd9ed1150b5397b26461d4de7857"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857">grpc_chttp2_transport::state_tracker</a></div><div class="ttdeci">grpc_connectivity_state_tracker state_tracker</div><div class="ttdoc">connectivity tracking </div><div class="ttdef"><b>Definition:</b> internal.h:343</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_ab53eb8ec23d323a389f1a5456d3f1885"><div class="ttname"><a href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885">grpc_chttp2_transport::reading_action</a></div><div class="ttdeci">grpc_iomgr_closure reading_action</div><div class="ttdoc">closure to start reading from the endpoint </div><div class="ttdef"><b>Definition:</b> internal.h:329</div></div>
+<div class="ttc" id="structgrpc__chttp2__outstanding__ping_html_a5080d611692ac78edffef1ead748d34f"><div class="ttname"><a href="structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f">grpc_chttp2_outstanding_ping::next</a></div><div class="ttdeci">struct grpc_chttp2_outstanding_ping * next</div><div class="ttdef"><b>Definition:</b> internal.h:155</div></div>
+<div class="ttc" id="internal_8h_html_a3107afcec2694dd7c7855d540a560090"><div class="ttname"><a href="internal_8h.html#a3107afcec2694dd7c7855d540a560090">grpc_chttp2_list_pop_written_stream</a></div><div class="ttdeci">int grpc_chttp2_list_pop_written_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:228</div></div>
+<div class="ttc" id="internal_8h_html_a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693"><div class="ttname"><a href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693">GRPC_WRITE_STATE_SENT_CLOSE</a></div><div class="ttdef"><b>Definition:</b> internal.h:119</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a12c9f137d984cf478ab590b35e42f3c4"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4">grpc_chttp2_stream_global::in_stream_map</a></div><div class="ttdeci">gpr_uint8 in_stream_map</div><div class="ttdoc">is this stream in the stream map? (boolean) </div><div class="ttdef"><b>Definition:</b> internal.h:384</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a845e72fcdab9af17a971d064ca0fcfad"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad">grpc_chttp2_transport_global::pings</a></div><div class="ttdeci">grpc_chttp2_outstanding_ping pings</div><div class="ttdoc">pings awaiting responses </div><div class="ttdef"><b>Definition:</b> internal.h:197</div></div>
+<div class="ttc" id="internal_8h_html_a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c"><div class="ttname"><a href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c">GRPC_DONT_SEND_CLOSED</a></div><div class="ttdef"><b>Definition:</b> internal.h:123</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a1d4a217861aaa604dd9f5fc515afd0b0"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0">grpc_chttp2_transport_parsing::incoming_frame_size</a></div><div class="ttdeci">gpr_uint32 incoming_frame_size</div><div class="ttdef"><b>Definition:</b> internal.h:259</div></div>
+<div class="ttc" id="internal_8h_html_abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a"><div class="ttname"><a href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a">GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY</a></div><div class="ttdoc">streams that are waiting to start because there are too many concurrent streams on the connection ...</div><div class="ttdef"><b>Definition:</b> internal.h:69</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a039e50d9c69f5c8ea2faa685f41d4c8f"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f">grpc_chttp2_transport::accept_stream_user_data</a></div><div class="ttdeci">void * accept_stream_user_data</div><div class="ttdef"><b>Definition:</b> internal.h:340</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__link_html_a5797275d863aafdfa8342d0b73a890de"><div class="ttname"><a href="structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de">grpc_chttp2_stream_link::next</a></div><div class="ttdeci">grpc_chttp2_stream * next</div><div class="ttdef"><b>Definition:</b> internal.h:134</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__global_html_a4a353666e2dbff4aaebc6744de4dd08c"><div class="ttname"><a href="structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c">grpc_chttp2_stream_global::recv_done_closure</a></div><div class="ttdeci">grpc_iomgr_closure * recv_done_closure</div><div class="ttdef"><b>Definition:</b> internal.h:352</div></div>
+<div class="ttc" id="internal_8h_html_aa6b5168e8b96d0bc9f9d84a4cbef653a"><div class="ttname"><a href="internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">grpc_chttp2_list_add_read_write_state_changed</a></div><div class="ttdeci">void grpc_chttp2_list_add_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:345</div></div>
+<div class="ttc" id="internal_8h_html_ac6b7a089de78b67a9650e42b4a76ac69"><div class="ttname"><a href="internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69">grpc_chttp2_list_add_written_stream</a></div><div class="ttdeci">void grpc_chttp2_list_add_written_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing)</div><div class="ttdef"><b>Definition:</b> stream_lists.c:220</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__parsing_html_a6b235f899262d6aec77cb9995fc8e57b"><div class="ttname"><a href="structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b">grpc_chttp2_transport_parsing::pings</a></div><div class="ttdeci">grpc_chttp2_outstanding_ping pings</div><div class="ttdoc">pings awaiting responses </div><div class="ttdef"><b>Definition:</b> internal.h:280</div></div>
+<div class="ttc" id="internal_8h_html_abeaab2fead1bddefe92af0bc61a3a33f"><div class="ttname"><a href="internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f">grpc_chttp2_perform_read</a></div><div class="ttdeci">int grpc_chttp2_perform_read(grpc_chttp2_transport_parsing *transport_parsing, gpr_slice slice)</div><div class="ttdoc">Process one slice of incoming data; return 1 if the connection is still viable after reading...</div><div class="ttdef"><b>Definition:</b> parsing.c:236</div></div>
+<div class="ttc" id="internal_8h_html_a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc"><div class="ttname"><a href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc">GRPC_DTS_CLIENT_PREFIX_20</a></div><div class="ttdef"><b>Definition:</b> internal.h:96</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__parsing_html_a981536ef5bd42bfaf2940b005ae4d1ed"><div class="ttname"><a href="structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed">grpc_chttp2_stream_parsing::incoming_window_delta</a></div><div class="ttdeci">gpr_uint32 incoming_window_delta</div><div class="ttdoc">incoming_window has been reduced by this much during parsing </div><div class="ttdef"><b>Definition:</b> internal.h:420</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_ab922e6a980797f432ade63042db8a1a3"><div class="ttname"><a href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3">grpc_chttp2_transport::parsing_active</a></div><div class="ttdeci">gpr_uint8 parsing_active</div><div class="ttdoc">is a thread currently parsing </div><div class="ttdef"><b>Definition:</b> internal.h:300</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport__global_html_a725d69688880a644d58001be3526abaf"><div class="ttname"><a href="structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf">grpc_chttp2_transport_global::pending_closures_tail</a></div><div class="ttdeci">grpc_iomgr_closure * pending_closures_tail</div><div class="ttdef"><b>Definition:</b> internal.h:164</div></div>
+<div class="ttc" id="structgrpc__connectivity__state__tracker_html"><div class="ttname"><a href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a></div><div class="ttdef"><b>Definition:</b> connectivity_state.h:49</div></div>
+<div class="ttc" id="structgrpc__chttp2__transport_html_a70d937138945c07b53f7be848fb1cc4a"><div class="ttname"><a href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a">grpc_chttp2_transport::lists</a></div><div class="ttdeci">grpc_chttp2_stream_list lists[STREAM_LIST_COUNT]</div><div class="ttdoc">various lists of streams </div><div class="ttdef"><b>Definition:</b> internal.h:306</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/iocp__windows_8c.html b/doc/ref/core.internal/html/iocp__windows_8c.html
new file mode 100644
index 0000000000..330f3f054d
--- /dev/null
+++ b/doc/ref/core.internal/html/iocp__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/iocp_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iocp_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/iocp__windows_8h.html b/doc/ref/core.internal/html/iocp__windows_8h.html
new file mode 100644
index 0000000000..7fefa5c4e7
--- /dev/null
+++ b/doc/ref/core.internal/html/iocp__windows_8h.html
@@ -0,0 +1,268 @@
+<!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: src/core/iomgr/iocp_windows.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">iocp_windows.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="socket__windows_8h_source.html">src/core/iomgr/socket_windows.h</a>&quot;</code><br/>
+</div>
+<p><a href="iocp__windows_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a74907d635ceee6adf285291336d18807"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#a74907d635ceee6adf285291336d18807">grpc_iocp_init</a> (void)</td></tr>
+<tr class="separator:a74907d635ceee6adf285291336d18807"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd0c27d8288aa07c1b07d125cd0ad505"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505">grpc_iocp_kick</a> (void)</td></tr>
+<tr class="separator:abd0c27d8288aa07c1b07d125cd0ad505"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7198ba025cf05ae1a67b6f493caf5b16"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16">grpc_iocp_shutdown</a> (void)</td></tr>
+<tr class="separator:a7198ba025cf05ae1a67b6f493caf5b16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad206d7bc3468ecc2fb6ab52d80c6e2dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd">grpc_iocp_add_socket</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *)</td></tr>
+<tr class="separator:ad206d7bc3468ecc2fb6ab52d80c6e2dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a720ee7b4b498b7d477efa4fc3ff55aac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac">grpc_iocp_socket_orphan</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *)</td></tr>
+<tr class="separator:a720ee7b4b498b7d477efa4fc3ff55aac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4db8d3b4cc420a58c833e579a94bdd38"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38">grpc_socket_notify_on_write</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *, void(*cb)(void *, int success), void *opaque)</td></tr>
+<tr class="separator:a4db8d3b4cc420a58c833e579a94bdd38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08d522cb6d04a6f5895fae78fd645e00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00">grpc_socket_notify_on_read</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *, void(*cb)(void *, int success), void *opaque)</td></tr>
+<tr class="separator:a08d522cb6d04a6f5895fae78fd645e00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad206d7bc3468ecc2fb6ab52d80c6e2dd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iocp_add_socket </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a74907d635ceee6adf285291336d18807"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iocp_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abd0c27d8288aa07c1b07d125cd0ad505"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iocp_kick </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7198ba025cf05ae1a67b6f493caf5b16"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iocp_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a720ee7b4b498b7d477efa4fc3ff55aac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iocp_socket_orphan </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08d522cb6d04a6f5895fae78fd645e00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_socket_notify_on_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *, int success)&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>opaque</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4db8d3b4cc420a58c833e579a94bdd38"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_socket_notify_on_write </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *, int success)&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>opaque</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/iocp__windows_8h_source.html b/doc/ref/core.internal/html/iocp__windows_8h_source.html
new file mode 100644
index 0000000000..68906e65d8
--- /dev/null
+++ b/doc/ref/core.internal/html/iocp__windows_8h_source.html
@@ -0,0 +1,162 @@
+<!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: src/core/iomgr/iocp_windows.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iocp_windows.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="iocp__windows_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_IOCP_WINDOWS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_IOCP_WINDOWS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="socket__windows_8h.html">src/core/iomgr/socket_windows.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#a74907d635ceee6adf285291336d18807">grpc_iocp_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505">grpc_iocp_kick</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16">grpc_iocp_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd">grpc_iocp_add_socket</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac">grpc_iocp_socket_orphan</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38">grpc_socket_notify_on_write</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *, <span class="keywordtype">void</span>(*cb)(<span class="keywordtype">void</span> *, <span class="keywordtype">int</span> success),</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">void</span> *opaque);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00">grpc_socket_notify_on_read</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *, <span class="keywordtype">void</span>(*cb)(<span class="keywordtype">void</span> *, <span class="keywordtype">int</span> success),</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">void</span> *opaque);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_IOCP_WINDOWS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="socket__windows_8h_html"><div class="ttname"><a href="socket__windows_8h.html">socket_windows.h</a></div></div>
+<div class="ttc" id="iocp__windows_8h_html_a08d522cb6d04a6f5895fae78fd645e00"><div class="ttname"><a href="iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00">grpc_socket_notify_on_read</a></div><div class="ttdeci">void grpc_socket_notify_on_read(grpc_winsocket *, void(*cb)(void *, int success), void *opaque)</div></div>
+<div class="ttc" id="iocp__windows_8h_html_a4db8d3b4cc420a58c833e579a94bdd38"><div class="ttname"><a href="iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38">grpc_socket_notify_on_write</a></div><div class="ttdeci">void grpc_socket_notify_on_write(grpc_winsocket *, void(*cb)(void *, int success), void *opaque)</div></div>
+<div class="ttc" id="iocp__windows_8h_html_a7198ba025cf05ae1a67b6f493caf5b16"><div class="ttname"><a href="iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16">grpc_iocp_shutdown</a></div><div class="ttdeci">void grpc_iocp_shutdown(void)</div></div>
+<div class="ttc" id="iocp__windows_8h_html_ad206d7bc3468ecc2fb6ab52d80c6e2dd"><div class="ttname"><a href="iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd">grpc_iocp_add_socket</a></div><div class="ttdeci">void grpc_iocp_add_socket(grpc_winsocket *)</div></div>
+<div class="ttc" id="iocp__windows_8h_html_abd0c27d8288aa07c1b07d125cd0ad505"><div class="ttname"><a href="iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505">grpc_iocp_kick</a></div><div class="ttdeci">void grpc_iocp_kick(void)</div></div>
+<div class="ttc" id="iocp__windows_8h_html_a720ee7b4b498b7d477efa4fc3ff55aac"><div class="ttname"><a href="iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac">grpc_iocp_socket_orphan</a></div><div class="ttdeci">void grpc_iocp_socket_orphan(grpc_winsocket *)</div></div>
+<div class="ttc" id="iocp__windows_8h_html_a74907d635ceee6adf285291336d18807"><div class="ttname"><a href="iocp__windows_8h.html#a74907d635ceee6adf285291336d18807">grpc_iocp_init</a></div><div class="ttdeci">void grpc_iocp_init(void)</div></div>
+<div class="ttc" id="structgrpc__winsocket_html"><div class="ttname"><a href="structgrpc__winsocket.html">grpc_winsocket</a></div><div class="ttdef"><b>Definition:</b> socket_windows.h:84</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/iomgr_8c.html b/doc/ref/core.internal/html/iomgr_8c.html
new file mode 100644
index 0000000000..ca96533575
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr_8c.html
@@ -0,0 +1,340 @@
+<!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: src/core/iomgr/iomgr.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">iomgr.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr__internal_8h_source.html">src/core/iomgr/iomgr_internal.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alarm__internal_8h_source.html">src/core/iomgr/alarm_internal.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thd_8h_source.html">grpc/support/thd.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aac483dfd6e19fa9df68620e7f7a0697f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#aac483dfd6e19fa9df68620e7f7a0697f">grpc_kick_poller</a> (void)</td></tr>
+<tr class="separator:aac483dfd6e19fa9df68620e7f7a0697f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e26e83c3a2591cbc127dbbc50f5c504"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#a2e26e83c3a2591cbc127dbbc50f5c504">grpc_iomgr_init</a> (void)</td></tr>
+<tr class="memdesc:a2e26e83c3a2591cbc127dbbc50f5c504"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the iomgr. <a href="#a2e26e83c3a2591cbc127dbbc50f5c504">More...</a><br/></td></tr>
+<tr class="separator:a2e26e83c3a2591cbc127dbbc50f5c504"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a466909d4101b063c991bbb39ee38ae25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#a466909d4101b063c991bbb39ee38ae25">grpc_iomgr_shutdown</a> (void)</td></tr>
+<tr class="memdesc:a466909d4101b063c991bbb39ee38ae25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signals the intention to shutdown the iomgr. <a href="#a466909d4101b063c991bbb39ee38ae25">More...</a><br/></td></tr>
+<tr class="separator:a466909d4101b063c991bbb39ee38ae25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19ac63e9dff7d1543b1a3e556525773e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#a19ac63e9dff7d1543b1a3e556525773e">grpc_iomgr_register_object</a> (<a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *obj, const char *name)</td></tr>
+<tr class="separator:a19ac63e9dff7d1543b1a3e556525773e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82cf3ac6566867546afabf5f08f4aa8a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#a82cf3ac6566867546afabf5f08f4aa8a">grpc_iomgr_unregister_object</a> (<a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *obj)</td></tr>
+<tr class="separator:a82cf3ac6566867546afabf5f08f4aa8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8b4ae11b78ccbded903c14f69aa7a83"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#ac8b4ae11b78ccbded903c14f69aa7a83">grpc_iomgr_closure_init</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure, <a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> cb, void *cb_arg)</td></tr>
+<tr class="memdesc:ac8b4ae11b78ccbded903c14f69aa7a83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes <em>closure</em> with <em>cb</em> and <em>cb_arg</em>. <a href="#ac8b4ae11b78ccbded903c14f69aa7a83">More...</a><br/></td></tr>
+<tr class="separator:ac8b4ae11b78ccbded903c14f69aa7a83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d3b9286cc4434fad35b6017f6222431"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#a4d3b9286cc4434fad35b6017f6222431">grpc_iomgr_add_delayed_callback</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure, int success)</td></tr>
+<tr class="memdesc:a4d3b9286cc4434fad35b6017f6222431"><td class="mdescLeft">&#160;</td><td class="mdescRight">As per grpc_iomgr_add_callback, with the ability to set the success argument. <a href="#a4d3b9286cc4434fad35b6017f6222431">More...</a><br/></td></tr>
+<tr class="separator:a4d3b9286cc4434fad35b6017f6222431"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95b724dc6bbd9b75694251713db00619"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#a95b724dc6bbd9b75694251713db00619">grpc_iomgr_add_callback</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="memdesc:a95b724dc6bbd9b75694251713db00619"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a closure to be invoked at some point in the future. <a href="#a95b724dc6bbd9b75694251713db00619">More...</a><br/></td></tr>
+<tr class="separator:a95b724dc6bbd9b75694251713db00619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4e69eb5e3c51e00c2983df24c3c8c9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8c.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">grpc_maybe_call_delayed_callbacks</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *drop_mu, int success)</td></tr>
+<tr class="separator:ae4e69eb5e3c51e00c2983df24c3c8c9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a95b724dc6bbd9b75694251713db00619"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_add_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Registers a closure to be invoked at some point in the future. </p>
+<p>Can be called from within a callback or from anywhere else </p>
+
+</div>
+</div>
+<a class="anchor" id="a4d3b9286cc4434fad35b6017f6222431"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_add_delayed_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>iocb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>As per grpc_iomgr_add_callback, with the ability to set the success argument. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac8b4ae11b78ccbded903c14f69aa7a83"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_closure_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cb_arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initializes <em>closure</em> with <em>cb</em> and <em>cb_arg</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2e26e83c3a2591cbc127dbbc50f5c504"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initializes the iomgr. </p>
+
+</div>
+</div>
+<a class="anchor" id="a19ac63e9dff7d1543b1a3e556525773e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_register_object </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *&#160;</td>
+ <td class="paramname"><em>obj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a466909d4101b063c991bbb39ee38ae25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Signals the intention to shutdown the iomgr. </p>
+
+</div>
+</div>
+<a class="anchor" id="a82cf3ac6566867546afabf5f08f4aa8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_unregister_object </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *&#160;</td>
+ <td class="paramname"><em>obj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aac483dfd6e19fa9df68620e7f7a0697f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_kick_poller </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae4e69eb5e3c51e00c2983df24c3c8c9f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_maybe_call_delayed_callbacks </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>drop_mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/iomgr_8h.html b/doc/ref/core.internal/html/iomgr_8h.html
new file mode 100644
index 0000000000..0ce794235e
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr_8h.html
@@ -0,0 +1,293 @@
+<!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: src/core/iomgr/iomgr.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">iomgr.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="iomgr_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A closure over a grpc_iomgr_cb_func. <a href="structgrpc__iomgr__closure.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad4037ad983dff2d616a6fb90158baad3"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> )(void *<a class="el" href="structarg.html">arg</a>, int success)</td></tr>
+<tr class="memdesc:ad4037ad983dff2d616a6fb90158baad3"><td class="mdescLeft">&#160;</td><td class="mdescRight">gRPC Callback definition. <a href="#ad4037ad983dff2d616a6fb90158baad3">More...</a><br/></td></tr>
+<tr class="separator:ad4037ad983dff2d616a6fb90158baad3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab34430c3d713794f01b7d6114ad4db87"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87">grpc_iomgr_closure</a></td></tr>
+<tr class="memdesc:ab34430c3d713794f01b7d6114ad4db87"><td class="mdescLeft">&#160;</td><td class="mdescRight">A closure over a grpc_iomgr_cb_func. <a href="#ab34430c3d713794f01b7d6114ad4db87">More...</a><br/></td></tr>
+<tr class="separator:ab34430c3d713794f01b7d6114ad4db87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac8b4ae11b78ccbded903c14f69aa7a83"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83">grpc_iomgr_closure_init</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure, <a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> cb, void *cb_arg)</td></tr>
+<tr class="memdesc:ac8b4ae11b78ccbded903c14f69aa7a83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes <em>closure</em> with <em>cb</em> and <em>cb_arg</em>. <a href="#ac8b4ae11b78ccbded903c14f69aa7a83">More...</a><br/></td></tr>
+<tr class="separator:ac8b4ae11b78ccbded903c14f69aa7a83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e26e83c3a2591cbc127dbbc50f5c504"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504">grpc_iomgr_init</a> (void)</td></tr>
+<tr class="memdesc:a2e26e83c3a2591cbc127dbbc50f5c504"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes the iomgr. <a href="#a2e26e83c3a2591cbc127dbbc50f5c504">More...</a><br/></td></tr>
+<tr class="separator:a2e26e83c3a2591cbc127dbbc50f5c504"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a466909d4101b063c991bbb39ee38ae25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25">grpc_iomgr_shutdown</a> (void)</td></tr>
+<tr class="memdesc:a466909d4101b063c991bbb39ee38ae25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signals the intention to shutdown the iomgr. <a href="#a466909d4101b063c991bbb39ee38ae25">More...</a><br/></td></tr>
+<tr class="separator:a466909d4101b063c991bbb39ee38ae25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95b724dc6bbd9b75694251713db00619"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#a95b724dc6bbd9b75694251713db00619">grpc_iomgr_add_callback</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="memdesc:a95b724dc6bbd9b75694251713db00619"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a closure to be invoked at some point in the future. <a href="#a95b724dc6bbd9b75694251713db00619">More...</a><br/></td></tr>
+<tr class="separator:a95b724dc6bbd9b75694251713db00619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a9f23f29a410d705af2c6b6d5c3917b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">grpc_iomgr_add_delayed_callback</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *iocb, int success)</td></tr>
+<tr class="memdesc:a6a9f23f29a410d705af2c6b6d5c3917b"><td class="mdescLeft">&#160;</td><td class="mdescRight">As per grpc_iomgr_add_callback, with the ability to set the success argument. <a href="#a6a9f23f29a410d705af2c6b6d5c3917b">More...</a><br/></td></tr>
+<tr class="separator:a6a9f23f29a410d705af2c6b6d5c3917b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ad4037ad983dff2d616a6fb90158baad3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_iomgr_cb_func)(void *<a class="el" href="structarg.html">arg</a>, int success)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>gRPC Callback definition. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+ <table class="params">
+ <tr><td class="paramname">arg</td><td>Arbitrary input. </td></tr>
+ <tr><td class="paramname">success</td><td>An indication on the state of the iomgr. On false, cleanup actions should be taken (eg, shutdown). </td></tr>
+ </table>
+ </dd>
+</dl>
+
+</div>
+</div>
+<a class="anchor" id="ab34430c3d713794f01b7d6114ad4db87"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A closure over a grpc_iomgr_cb_func. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a95b724dc6bbd9b75694251713db00619"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_add_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Registers a closure to be invoked at some point in the future. </p>
+<p>Can be called from within a callback or from anywhere else </p>
+
+</div>
+</div>
+<a class="anchor" id="a6a9f23f29a410d705af2c6b6d5c3917b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_add_delayed_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>iocb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>As per grpc_iomgr_add_callback, with the ability to set the success argument. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac8b4ae11b78ccbded903c14f69aa7a83"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_closure_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cb_arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initializes <em>closure</em> with <em>cb</em> and <em>cb_arg</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2e26e83c3a2591cbc127dbbc50f5c504"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Initializes the iomgr. </p>
+
+</div>
+</div>
+<a class="anchor" id="a466909d4101b063c991bbb39ee38ae25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Signals the intention to shutdown the iomgr. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/iomgr_8h_source.html b/doc/ref/core.internal/html/iomgr_8h_source.html
new file mode 100644
index 0000000000..be4dc83596
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr_8h_source.html
@@ -0,0 +1,172 @@
+<!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: src/core/iomgr/iomgr.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iomgr.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="iomgr_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_IOMGR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_IOMGR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3"> 42</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>)(<span class="keywordtype">void</span> *<a class="code" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a>, <span class="keywordtype">int</span> success);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__closure.html"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1"> 47</a></span>&#160; <a class="code" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> <a class="code" href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1">cb</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293"> 50</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293">cb_arg</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0"> 55</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0">success</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef"> 58</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef">next</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87">grpc_iomgr_closure</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83">grpc_iomgr_closure_init</a>(<a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure, <a class="code" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> <a class="code" href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1">cb</a>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293">cb_arg</a>);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504">grpc_iomgr_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25">grpc_iomgr_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr_8h.html#a95b724dc6bbd9b75694251713db00619">grpc_iomgr_add_callback</a>(<a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">grpc_iomgr_add_delayed_callback</a>(<a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *iocb, <span class="keywordtype">int</span> <a class="code" href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0">success</a>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_IOMGR_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="iomgr_8h_html_a95b724dc6bbd9b75694251713db00619"><div class="ttname"><a href="iomgr_8h.html#a95b724dc6bbd9b75694251713db00619">grpc_iomgr_add_callback</a></div><div class="ttdeci">void grpc_iomgr_add_callback(grpc_iomgr_closure *closure)</div><div class="ttdoc">Registers a closure to be invoked at some point in the future. </div><div class="ttdef"><b>Definition:</b> iomgr.c:240</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html_a6c10e6b944c74f416a5ce5c1478f33ef"><div class="ttname"><a href="structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef">grpc_iomgr_closure::next</a></div><div class="ttdeci">struct grpc_iomgr_closure * next</div><div class="ttdef"><b>Definition:</b> iomgr.h:58</div></div>
+<div class="ttc" id="iomgr_8h_html_a2e26e83c3a2591cbc127dbbc50f5c504"><div class="ttname"><a href="iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504">grpc_iomgr_init</a></div><div class="ttdeci">void grpc_iomgr_init(void)</div><div class="ttdoc">Initializes the iomgr. </div><div class="ttdef"><b>Definition:</b> iomgr.c:89</div></div>
+<div class="ttc" id="iomgr_8h_html_ab34430c3d713794f01b7d6114ad4db87"><div class="ttname"><a href="iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87">grpc_iomgr_closure</a></div><div class="ttdeci">struct grpc_iomgr_closure grpc_iomgr_closure</div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="iomgr_8h_html_ac8b4ae11b78ccbded903c14f69aa7a83"><div class="ttname"><a href="iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83">grpc_iomgr_closure_init</a></div><div class="ttdeci">void grpc_iomgr_closure_init(grpc_iomgr_closure *closure, grpc_iomgr_cb_func cb, void *cb_arg)</div><div class="ttdoc">Initializes closure with cb and cb_arg. </div><div class="ttdef"><b>Definition:</b> iomgr.c:205</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html_a5029b88d47dd4da2b01a8eb44342fcb0"><div class="ttname"><a href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0">grpc_iomgr_closure::success</a></div><div class="ttdeci">int success</div><div class="ttdoc">Internal. </div><div class="ttdef"><b>Definition:</b> iomgr.h:55</div></div>
+<div class="ttc" id="iomgr_8h_html_ad4037ad983dff2d616a6fb90158baad3"><div class="ttname"><a href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a></div><div class="ttdeci">void(* grpc_iomgr_cb_func)(void *arg, int success)</div><div class="ttdoc">gRPC Callback definition. </div><div class="ttdef"><b>Definition:</b> iomgr.h:42</div></div>
+<div class="ttc" id="cmdline_8c_html_af240efb36795b416de0779ad5d5159e4"><div class="ttname"><a href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a></div><div class="ttdeci">struct arg arg</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html_ad5f1e2b27a85c6df37c7cbe94b911ce1"><div class="ttname"><a href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1">grpc_iomgr_closure::cb</a></div><div class="ttdeci">grpc_iomgr_cb_func cb</div><div class="ttdoc">Bound callback. </div><div class="ttdef"><b>Definition:</b> iomgr.h:47</div></div>
+<div class="ttc" id="iomgr_8h_html_a6a9f23f29a410d705af2c6b6d5c3917b"><div class="ttname"><a href="iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">grpc_iomgr_add_delayed_callback</a></div><div class="ttdeci">void grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *iocb, int success)</div><div class="ttdoc">As per grpc_iomgr_add_callback, with the ability to set the success argument. </div><div class="ttdef"><b>Definition:</b> iomgr.c:222</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html_a4b1d9ecdcc694af930895665b18f2293"><div class="ttname"><a href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293">grpc_iomgr_closure::cb_arg</a></div><div class="ttdeci">void * cb_arg</div><div class="ttdoc">Arguments to be passed to &quot;cb&quot;. </div><div class="ttdef"><b>Definition:</b> iomgr.h:50</div></div>
+<div class="ttc" id="iomgr_8h_html_a466909d4101b063c991bbb39ee38ae25"><div class="ttname"><a href="iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25">grpc_iomgr_shutdown</a></div><div class="ttdeci">void grpc_iomgr_shutdown(void)</div><div class="ttdoc">Signals the intention to shutdown the iomgr. </div><div class="ttdef"><b>Definition:</b> iomgr.c:111</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/iomgr__internal_8h.html b/doc/ref/core.internal/html/iomgr__internal_8h.html
new file mode 100644
index 0000000000..ad48f86f47
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr__internal_8h.html
@@ -0,0 +1,276 @@
+<!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: src/core/iomgr/iomgr_internal.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">iomgr_internal.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+</div>
+<p><a href="iomgr__internal_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a67a15c8c93d8195f1a6036d26b871814"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814">grpc_iomgr_object</a></td></tr>
+<tr class="separator:a67a15c8c93d8195f1a6036d26b871814"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae4e69eb5e3c51e00c2983df24c3c8c9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">grpc_maybe_call_delayed_callbacks</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *drop_mu, int success)</td></tr>
+<tr class="separator:ae4e69eb5e3c51e00c2983df24c3c8c9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a9f23f29a410d705af2c6b6d5c3917b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">grpc_iomgr_add_delayed_callback</a> (<a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *iocb, int success)</td></tr>
+<tr class="memdesc:a6a9f23f29a410d705af2c6b6d5c3917b"><td class="mdescLeft">&#160;</td><td class="mdescRight">As per grpc_iomgr_add_callback, with the ability to set the success argument. <a href="#a6a9f23f29a410d705af2c6b6d5c3917b">More...</a><br/></td></tr>
+<tr class="separator:a6a9f23f29a410d705af2c6b6d5c3917b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19ac63e9dff7d1543b1a3e556525773e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e">grpc_iomgr_register_object</a> (<a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *obj, const char *name)</td></tr>
+<tr class="separator:a19ac63e9dff7d1543b1a3e556525773e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82cf3ac6566867546afabf5f08f4aa8a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a">grpc_iomgr_unregister_object</a> (<a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *obj)</td></tr>
+<tr class="separator:a82cf3ac6566867546afabf5f08f4aa8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9d0385656f046d1c40023d1d9f5ec5e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e">grpc_iomgr_platform_init</a> (void)</td></tr>
+<tr class="separator:ae9d0385656f046d1c40023d1d9f5ec5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87a1f7804687c5ca784a8d9842e83624"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624">grpc_iomgr_platform_shutdown</a> (void)</td></tr>
+<tr class="separator:a87a1f7804687c5ca784a8d9842e83624"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a67a15c8c93d8195f1a6036d26b871814"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a6a9f23f29a410d705af2c6b6d5c3917b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_add_delayed_callback </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>iocb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>As per grpc_iomgr_add_callback, with the ability to set the success argument. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae9d0385656f046d1c40023d1d9f5ec5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_platform_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87a1f7804687c5ca784a8d9842e83624"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_platform_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19ac63e9dff7d1543b1a3e556525773e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_register_object </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *&#160;</td>
+ <td class="paramname"><em>obj</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a82cf3ac6566867546afabf5f08f4aa8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_iomgr_unregister_object </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *&#160;</td>
+ <td class="paramname"><em>obj</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae4e69eb5e3c51e00c2983df24c3c8c9f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_maybe_call_delayed_callbacks </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>drop_mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>success</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/iomgr__internal_8h_source.html b/doc/ref/core.internal/html/iomgr__internal_8h_source.html
new file mode 100644
index 0000000000..ec22d4f766
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr__internal_8h_source.html
@@ -0,0 +1,169 @@
+<!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: src/core/iomgr/iomgr_internal.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iomgr_internal.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="iomgr__internal_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_IOMGR_INTERNAL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_IOMGR_INTERNAL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr_8h.html">src/core/iomgr/iomgr.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__object.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf"> 41</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf">name</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c"> 42</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *<a class="code" href="structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c">next</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d"> 43</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *<a class="code" href="structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d">prev</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814">grpc_iomgr_object</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">int</span> <a class="code" href="iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">grpc_maybe_call_delayed_callbacks</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *drop_mu, <span class="keywordtype">int</span> success);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">grpc_iomgr_add_delayed_callback</a>(<a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *iocb, <span class="keywordtype">int</span> success);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e">grpc_iomgr_register_object</a>(<a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *obj, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf">name</a>);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a">grpc_iomgr_unregister_object</a>(<a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *obj);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e">grpc_iomgr_platform_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624">grpc_iomgr_platform_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_IOMGR_INTERNAL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="iomgr__internal_8h_html_ae4e69eb5e3c51e00c2983df24c3c8c9f"><div class="ttname"><a href="iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f">grpc_maybe_call_delayed_callbacks</a></div><div class="ttdeci">int grpc_maybe_call_delayed_callbacks(gpr_mu *drop_mu, int success)</div><div class="ttdef"><b>Definition:</b> iomgr.c:244</div></div>
+<div class="ttc" id="iomgr__internal_8h_html_a67a15c8c93d8195f1a6036d26b871814"><div class="ttname"><a href="iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814">grpc_iomgr_object</a></div><div class="ttdeci">struct grpc_iomgr_object grpc_iomgr_object</div></div>
+<div class="ttc" id="structgrpc__iomgr__object_html_a8de5f1d3fc1a38beeed3468afd0ae85d"><div class="ttname"><a href="structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d">grpc_iomgr_object::prev</a></div><div class="ttdeci">struct grpc_iomgr_object * prev</div><div class="ttdef"><b>Definition:</b> iomgr_internal.h:43</div></div>
+<div class="ttc" id="iomgr__internal_8h_html_ae9d0385656f046d1c40023d1d9f5ec5e"><div class="ttname"><a href="iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e">grpc_iomgr_platform_init</a></div><div class="ttdeci">void grpc_iomgr_platform_init(void)</div></div>
+<div class="ttc" id="structgrpc__iomgr__object_html"><div class="ttname"><a href="structgrpc__iomgr__object.html">grpc_iomgr_object</a></div><div class="ttdef"><b>Definition:</b> iomgr_internal.h:40</div></div>
+<div class="ttc" id="structgrpc__iomgr__object_html_ab784d00749f3e4deff50218c67993e0c"><div class="ttname"><a href="structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c">grpc_iomgr_object::next</a></div><div class="ttdeci">struct grpc_iomgr_object * next</div><div class="ttdef"><b>Definition:</b> iomgr_internal.h:42</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="iomgr__internal_8h_html_a19ac63e9dff7d1543b1a3e556525773e"><div class="ttname"><a href="iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e">grpc_iomgr_register_object</a></div><div class="ttdeci">void grpc_iomgr_register_object(grpc_iomgr_object *obj, const char *name)</div><div class="ttdef"><b>Definition:</b> iomgr.c:187</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="iomgr__internal_8h_html_a87a1f7804687c5ca784a8d9842e83624"><div class="ttname"><a href="iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624">grpc_iomgr_platform_shutdown</a></div><div class="ttdeci">void grpc_iomgr_platform_shutdown(void)</div></div>
+<div class="ttc" id="iomgr__internal_8h_html_a82cf3ac6566867546afabf5f08f4aa8a"><div class="ttname"><a href="iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a">grpc_iomgr_unregister_object</a></div><div class="ttdeci">void grpc_iomgr_unregister_object(grpc_iomgr_object *obj)</div><div class="ttdef"><b>Definition:</b> iomgr.c:196</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="iomgr__internal_8h_html_a6a9f23f29a410d705af2c6b6d5c3917b"><div class="ttname"><a href="iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b">grpc_iomgr_add_delayed_callback</a></div><div class="ttdeci">void grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *iocb, int success)</div><div class="ttdoc">As per grpc_iomgr_add_callback, with the ability to set the success argument. </div><div class="ttdef"><b>Definition:</b> iomgr.c:222</div></div>
+<div class="ttc" id="structgrpc__iomgr__object_html_a13e16e45166eec077cacc883824d3cbf"><div class="ttname"><a href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf">grpc_iomgr_object::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> iomgr_internal.h:41</div></div>
+<div class="ttc" id="iomgr_8h_html"><div class="ttname"><a href="iomgr_8h.html">iomgr.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/iomgr__posix_8c.html b/doc/ref/core.internal/html/iomgr__posix_8c.html
new file mode 100644
index 0000000000..cb58a469fd
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/iomgr_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iomgr_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/iomgr__posix_8h.html b/doc/ref/core.internal/html/iomgr__posix_8h.html
new file mode 100644
index 0000000000..a1df369e2c
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr__posix_8h.html
@@ -0,0 +1,145 @@
+<!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: src/core/iomgr/iomgr_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">iomgr_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="iomgr__internal_8h_source.html">src/core/iomgr/iomgr_internal.h</a>&quot;</code><br/>
+</div>
+<p><a href="iomgr__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4011ee1fbdad1603b7e55127594c200a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a">grpc_pollset_global_init</a> (void)</td></tr>
+<tr class="separator:a4011ee1fbdad1603b7e55127594c200a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d671f6f374e2ed27c2d81c3400e5688"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688">grpc_pollset_global_shutdown</a> (void)</td></tr>
+<tr class="separator:a8d671f6f374e2ed27c2d81c3400e5688"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4011ee1fbdad1603b7e55127594c200a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_global_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8d671f6f374e2ed27c2d81c3400e5688"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_global_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/iomgr__posix_8h_source.html b/doc/ref/core.internal/html/iomgr__posix_8h_source.html
new file mode 100644
index 0000000000..4cb1131b28
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr__posix_8h_source.html
@@ -0,0 +1,144 @@
+<!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: src/core/iomgr/iomgr_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iomgr_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="iomgr__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_IOMGR_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_IOMGR_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr__internal_8h.html">src/core/iomgr/iomgr_internal.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a">grpc_pollset_global_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keywordtype">void</span> <a class="code" href="iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688">grpc_pollset_global_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_IOMGR_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="iomgr__posix_8h_html_a4011ee1fbdad1603b7e55127594c200a"><div class="ttname"><a href="iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a">grpc_pollset_global_init</a></div><div class="ttdeci">void grpc_pollset_global_init(void)</div></div>
+<div class="ttc" id="iomgr__posix_8h_html_a8d671f6f374e2ed27c2d81c3400e5688"><div class="ttname"><a href="iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688">grpc_pollset_global_shutdown</a></div><div class="ttdeci">void grpc_pollset_global_shutdown(void)</div></div>
+<div class="ttc" id="iomgr__internal_8h_html"><div class="ttname"><a href="iomgr__internal_8h.html">iomgr_internal.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/iomgr__windows_8c.html b/doc/ref/core.internal/html/iomgr__windows_8c.html
new file mode 100644
index 0000000000..07825903c0
--- /dev/null
+++ b/doc/ref/core.internal/html/iomgr__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/iomgr_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">iomgr_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/jquery.js b/doc/ref/core.internal/html/jquery.js
new file mode 100644
index 0000000000..c197801c5d
--- /dev/null
+++ b/doc/ref/core.internal/html/jquery.js
@@ -0,0 +1,31 @@
+/*!
+ * jQuery JavaScript Library v1.7.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Mon Nov 21 21:11:03 2011 -0500
+ */
+(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b4<b3;b4++){if((b9=arguments[b4])!=null){for(b2 in b9){b0=b5[b2];b1=b9[b2];if(b5===b1){continue}if(b8&&b1&&(bF.isPlainObject(b1)||(b6=bF.isArray(b1)))){if(b6){b6=false;b7=b0&&bF.isArray(b0)?b0:[]}else{b7=b0&&bF.isPlainObject(b0)?b0:{}}b5[b2]=bF.extend(b8,b7,b1)}else{if(b1!==L){b5[b2]=b1}}}}}return b5};bF.extend({noConflict:function(b0){if(bb.$===bF){bb.$=bH}if(b0&&bb.jQuery===bF){bb.jQuery=bU}return bF},isReady:false,readyWait:1,holdReady:function(b0){if(b0){bF.readyWait++}else{bF.ready(true)}},ready:function(b0){if((b0===true&&!--bF.readyWait)||(b0!==true&&!bF.isReady)){if(!av.body){return setTimeout(bF.ready,1)}bF.isReady=true;if(b0!==true&&--bF.readyWait>0){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b4<b5;){if(b6.apply(b3[b4++],b2)===false){break}}}}else{if(b0){for(b1 in b3){if(b6.call(b3[b1],b1,b3[b1])===false){break}}}else{for(;b4<b5;){if(b6.call(b3[b4],b4,b3[b4++])===false){break}}}}return b3},trim:bO?function(b0){return b0==null?"":bO.call(b0)}:function(b0){return b0==null?"":b0.toString().replace(bI,"").replace(bE,"")},makeArray:function(b3,b1){var b0=b1||[];if(b3!=null){var b2=bF.type(b3);if(b3.length==null||b2==="string"||b2==="function"||b2==="regexp"||bF.isWindow(b3)){bz.call(b0,b3)}else{bF.merge(b0,b3)}}return b0},inArray:function(b2,b3,b1){var b0;if(b3){if(bv){return bv.call(b3,b2,b1)}b0=b3.length;b1=b1?b1<0?Math.max(0,b0+b1):b1:0;for(;b1<b0;b1++){if(b1 in b3&&b3[b1]===b2){return b1}}}return -1},merge:function(b4,b2){var b3=b4.length,b1=0;if(typeof b2.length==="number"){for(var b0=b2.length;b1<b0;b1++){b4[b3++]=b2[b1]}}else{while(b2[b1]!==L){b4[b3++]=b2[b1++]}}b4.length=b3;return b4},grep:function(b1,b6,b0){var b2=[],b5;b0=!!b0;for(var b3=0,b4=b1.length;b3<b4;b3++){b5=!!b6(b1[b3],b3);if(b0!==b5){b2.push(b1[b3])}}return b2},map:function(b0,b7,b8){var b5,b6,b4=[],b2=0,b1=b0.length,b3=b0 instanceof bF||b1!==L&&typeof b1==="number"&&((b1>0&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b2<b1;b2++){b5=b7(b0[b2],b2,b8);if(b5!=null){b4[b4.length]=b5}}}else{for(b6 in b0){b5=b7(b0[b6],b6,b8);if(b5!=null){b4[b4.length]=b5}}}return b4.concat.apply([],b4)},guid:1,proxy:function(b4,b3){if(typeof b3==="string"){var b2=b4[b3];b3=b4;b4=b2}if(!bF.isFunction(b4)){return L}var b0=bK.call(arguments,2),b1=function(){return b4.apply(b3,b0.concat(bK.call(arguments)))};b1.guid=b4.guid=b4.guid||b1.guid||bF.guid++;return b1},access:function(b0,b8,b6,b2,b5,b7){var b1=b0.length;if(typeof b8==="object"){for(var b3 in b8){bF.access(b0,b3,b8[b3],b2,b5,b6)}return b0}if(b6!==L){b2=!b7&&b2&&bF.isFunction(b6);for(var b4=0;b4<b1;b4++){b5(b0[b4],b8,b2?b6.call(b0[b4],b4,b5(b0[b4],b8)):b6,b7)}return b0}return b1?b5(b0[0],b8):L},now:function(){return(new Date()).getTime()},uaMatch:function(b1){b1=b1.toLowerCase();var b0=by.exec(b1)||bR.exec(b1)||bQ.exec(b1)||b1.indexOf("compatible")<0&&bS.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}},sub:function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bF.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bF&&!(b4 instanceof b0)){b4=b0(b4)}return bF.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(av);return b0},browser:{}});bF.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(b1,b0){bx["[object "+b0+"]"]=b0.toLowerCase()});bV=bF.uaMatch(bX);if(bV.browser){bF.browser[bV.browser]=true;bF.browser.version=bV.version}if(bF.browser.webkit){bF.browser.safari=true}if(bM.test("\xA0")){bI=/^[\s\xA0]+/;bE=/[\s\xA0]+$/}bD=bF(av);if(av.addEventListener){e=function(){av.removeEventListener("DOMContentLoaded",e,false);bF.ready()}}else{if(av.attachEvent){e=function(){if(av.readyState==="complete"){av.detachEvent("onreadystatechange",e);bF.ready()}}}}function bw(){if(bF.isReady){return}try{av.documentElement.doScroll("left")}catch(b0){setTimeout(bw,1);return}bF.ready()}return bF})();var a2={};function X(e){var bv=a2[e]={},bw,bx;e=e.split(/\s+/);for(bw=0,bx=e.length;bw<bx;bw++){bv[e[bw]]=true}return bv}b.Callbacks=function(bw){bw=bw?(a2[bw]||X(bw)):{};var bB=[],bC=[],bx,by,bv,bz,bA,bE=function(bF){var bG,bJ,bI,bH,bK;for(bG=0,bJ=bF.length;bG<bJ;bG++){bI=bF[bG];bH=b.type(bI);if(bH==="array"){bE(bI)}else{if(bH==="function"){if(!bw.unique||!bD.has(bI)){bB.push(bI)}}}}},e=function(bG,bF){bF=bF||[];bx=!bw.memory||[bG,bF];by=true;bA=bv||0;bv=0;bz=bB.length;for(;bB&&bA<bz;bA++){if(bB[bA].apply(bG,bF)===false&&bw.stopOnFalse){bx=true;break}}by=false;if(bB){if(!bw.once){if(bC&&bC.length){bx=bC.shift();bD.fireWith(bx[0],bx[1])}}else{if(bx===true){bD.disable()}else{bB=[]}}}},bD={add:function(){if(bB){var bF=bB.length;bE(arguments);if(by){bz=bB.length}else{if(bx&&bx!==true){bv=bF;e(bx[0],bx[1])}}}return this},remove:function(){if(bB){var bF=arguments,bH=0,bI=bF.length;for(;bH<bI;bH++){for(var bG=0;bG<bB.length;bG++){if(bF[bH]===bB[bG]){if(by){if(bG<=bz){bz--;if(bG<=bA){bA--}}}bB.splice(bG--,1);if(bw.unique){break}}}}}return this},has:function(bG){if(bB){var bF=0,bH=bB.length;for(;bF<bH;bF++){if(bG===bB[bF]){return true}}}return false},empty:function(){bB=[];return this},disable:function(){bB=bC=bx=L;return this},disabled:function(){return !bB},lock:function(){bC=L;if(!bx||bx===true){bD.disable()}return this},locked:function(){return !bC},fireWith:function(bG,bF){if(bC){if(by){if(!bw.once){bC.push([bG,bF])}}else{if(!(bw.once&&bx)){e(bG,bF)}}}return this},fire:function(){bD.fireWith(this,arguments);return this},fired:function(){return !!bx}};return bD};var aJ=[].slice;b.extend({Deferred:function(by){var bx=b.Callbacks("once memory"),bw=b.Callbacks("once memory"),bv=b.Callbacks("memory"),e="pending",bA={resolve:bx,reject:bw,notify:bv},bC={done:bx.add,fail:bw.add,progress:bv.add,state:function(){return e},isResolved:bx.fired,isRejected:bw.fired,then:function(bE,bD,bF){bB.done(bE).fail(bD).progress(bF);return this},always:function(){bB.done.apply(bB,arguments).fail.apply(bB,arguments);return this},pipe:function(bF,bE,bD){return b.Deferred(function(bG){b.each({done:[bF,"resolve"],fail:[bE,"reject"],progress:[bD,"notify"]},function(bI,bL){var bH=bL[0],bK=bL[1],bJ;if(b.isFunction(bH)){bB[bI](function(){bJ=bH.apply(this,arguments);if(bJ&&b.isFunction(bJ.promise)){bJ.promise().then(bG.resolve,bG.reject,bG.notify)}else{bG[bK+"With"](this===bB?bG:this,[bJ])}})}else{bB[bI](bG[bK])}})}).promise()},promise:function(bE){if(bE==null){bE=bC}else{for(var bD in bC){bE[bD]=bC[bD]}}return bE}},bB=bC.promise({}),bz;for(bz in bA){bB[bz]=bA[bz].fire;bB[bz+"With"]=bA[bz].fireWith}bB.done(function(){e="resolved"},bw.disable,bv.lock).fail(function(){e="rejected"},bx.disable,bv.lock);if(by){by.call(bB,bB)}return bB},when:function(bA){var bx=aJ.call(arguments,0),bv=0,e=bx.length,bB=new Array(e),bw=e,by=e,bC=e<=1&&bA&&b.isFunction(bA.promise)?bA:b.Deferred(),bE=bC.promise();function bD(bF){return function(bG){bx[bF]=arguments.length>1?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv<e;bv++){if(bx[bv]&&bx[bv].promise&&b.isFunction(bx[bv].promise)){bx[bv].promise().then(bD(bv),bC.reject,bz(bv))
+}else{--bw}}if(!bw){bC.resolveWith(bC,bx)}}else{if(bC!==bA){bC.resolveWith(bC,e?[bA]:[])}}return bE}});b.support=(function(){var bJ,bI,bF,bG,bx,bE,bA,bD,bz,bK,bB,by,bw,bv=av.createElement("div"),bH=av.documentElement;bv.setAttribute("className","t");bv.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="<div "+e+"><div></div></div><table "+e+" cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="<div style='width:4px;'></div>";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA<bz;bA++){delete bB[bv[bA]]}if(!(by?S:b.isEmptyObject)(bB)){return}}}if(!by){delete e[bw].data;if(!S(e[bw])){return}}if(b.support.deleteExpando||!e.setInterval){delete e[bw]}else{e[bw]=null}if(bD){if(b.support.deleteExpando){delete bx[bC]}else{if(bx.removeAttribute){bx.removeAttribute(bC)}else{bx[bC]=null}}}},_data:function(bv,e,bw){return b.data(bv,e,bw,true)},acceptData:function(bv){if(bv.nodeName){var e=b.noData[bv.nodeName.toLowerCase()];if(e){return !(e===true||bv.getAttribute("classid")!==e)}}return true}});b.fn.extend({data:function(by,bA){var bB,e,bw,bz=null;if(typeof by==="undefined"){if(this.length){bz=b.data(this[0]);if(this[0].nodeType===1&&!b._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var bx=0,bv=e.length;bx<bv;bx++){bw=e[bx].name;if(bw.indexOf("data-")===0){bw=b.camelCase(bw.substring(5));a5(this[0],bw,bz[bw])}}b._data(this[0],"parsedAttrs",true)}}return bz}else{if(typeof by==="object"){return this.each(function(){b.data(this,by)})}}bB=by.split(".");bB[1]=bB[1]?"."+bB[1]:"";if(bA===L){bz=this.triggerHandler("getData"+bB[1]+"!",[bB[0]]);if(bz===L&&this.length){bz=b.data(this[0],by);bz=a5(this[0],by,bz)}return bz===L&&bB[1]?this.data(bB[0]):bz}else{return this.each(function(){var bC=b(this),bD=[bB[0],bA];bC.triggerHandler("setData"+bB[1]+"!",bD);b.data(this,by,bA);bC.triggerHandler("changeData"+bB[1]+"!",bD)})}},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function a5(bx,bw,by){if(by===L&&bx.nodeType===1){var bv="data-"+bw.replace(aA,"-$1").toLowerCase();by=bx.getAttribute(bv);if(typeof by==="string"){try{by=by==="true"?true:by==="false"?false:by==="null"?null:b.isNumeric(by)?parseFloat(by):aS.test(by)?b.parseJSON(by):by}catch(bz){}b.data(bx,bw,by)}else{by=L}}return by}function S(bv){for(var e in bv){if(e==="data"&&b.isEmptyObject(bv[e])){continue}if(e!=="toJSON"){return false}}return true}function bi(by,bx,bA){var bw=bx+"defer",bv=bx+"queue",e=bx+"mark",bz=b._data(by,bw);if(bz&&(bA==="queue"||!b._data(by,bv))&&(bA==="mark"||!b._data(by,e))){setTimeout(function(){if(!b._data(by,bv)&&!b._data(by,e)){b.removeData(by,bw,true);bz.fire()}},0)}}b.extend({_mark:function(bv,e){if(bv){e=(e||"fx")+"mark";b._data(bv,e,(b._data(bv,e)||0)+1)}},_unmark:function(by,bx,bv){if(by!==true){bv=bx;bx=by;by=false}if(bx){bv=bv||"fx";var e=bv+"mark",bw=by?0:((b._data(bx,e)||1)-1);if(bw){b._data(bx,e,bw)}else{b.removeData(bx,e,true);bi(bx,bv,"mark")}}},queue:function(bv,e,bx){var bw;if(bv){e=(e||"fx")+"queue";bw=b._data(bv,e);if(bx){if(!bw||b.isArray(bx)){bw=b._data(bv,e,b.makeArray(bx))}else{bw.push(bx)}}return bw||[]}},dequeue:function(by,bx){bx=bx||"fx";var bv=b.queue(by,bx),bw=bv.shift(),e={};if(bw==="inprogress"){bw=bv.shift()}if(bw){if(bx==="fx"){bv.unshift("inprogress")}b._data(by,bx+".run",e);bw.call(by,function(){b.dequeue(by,bx)},e)}if(!bv.length){b.removeData(by,bx+"queue "+bx+".run",true);bi(by,bx,"queue")}}});b.fn.extend({queue:function(e,bv){if(typeof e!=="string"){bv=e;e="fx"}if(bv===L){return b.queue(this[0],e)}return this.each(function(){var bw=b.queue(this,e,bv);if(e==="fx"&&bw[0]!=="inprogress"){b.dequeue(this,e)}})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(bv,e){bv=b.fx?b.fx.speeds[bv]||bv:bv;e=e||"fx";return this.queue(e,function(bx,bw){var by=setTimeout(bx,bv);bw.stop=function(){clearTimeout(by)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(bD,bw){if(typeof bD!=="string"){bw=bD;bD=L}bD=bD||"fx";var e=b.Deferred(),bv=this,by=bv.length,bB=1,bz=bD+"defer",bA=bD+"queue",bC=bD+"mark",bx;function bE(){if(!(--bB)){e.resolveWith(bv,[bv])}}while(by--){if((bx=b.data(bv[by],bz,L,true)||(b.data(bv[by],bA,L,true)||b.data(bv[by],bC,L,true))&&b.data(bv[by],bz,b.Callbacks("once memory"),true))){bB++;bx.add(bE)}}bE();return e.promise()}});var aP=/[\n\t\r]/g,af=/\s+/,aU=/\r/g,g=/^(?:button|input)$/i,D=/^(?:button|input|object|select|textarea)$/i,l=/^a(?:rea)?$/i,ao=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,F=b.support.getSetAttribute,be,aY,aF;b.fn.extend({attr:function(e,bv){return b.access(this,e,bv,true,b.attr)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,bv){return b.access(this,e,bv,true,b.prop)},removeProp:function(e){e=b.propFix[e]||e;return this.each(function(){try{this[e]=L;delete this[e]}catch(bv){}})},addClass:function(by){var bA,bw,bv,bx,bz,bB,e;if(b.isFunction(by)){return this.each(function(bC){b(this).addClass(by.call(this,bC,this.className))})}if(by&&typeof by==="string"){bA=by.split(af);for(bw=0,bv=this.length;bw<bv;bw++){bx=this[bw];if(bx.nodeType===1){if(!bx.className&&bA.length===1){bx.className=by}else{bz=" "+bx.className+" ";for(bB=0,e=bA.length;bB<e;bB++){if(!~bz.indexOf(" "+bA[bB]+" ")){bz+=bA[bB]+" "}}bx.className=b.trim(bz)}}}}return this},removeClass:function(bz){var bA,bw,bv,by,bx,bB,e;if(b.isFunction(bz)){return this.each(function(bC){b(this).removeClass(bz.call(this,bC,this.className))})}if((bz&&typeof bz==="string")||bz===L){bA=(bz||"").split(af);for(bw=0,bv=this.length;bw<bv;bw++){by=this[bw];if(by.nodeType===1&&by.className){if(bz){bx=(" "+by.className+" ").replace(aP," ");for(bB=0,e=bA.length;bB<e;bB++){bx=bx.replace(" "+bA[bB]+" "," ")}by.className=b.trim(bx)}else{by.className=""}}}}return this},toggleClass:function(bx,bv){var bw=typeof bx,e=typeof bv==="boolean";if(b.isFunction(bx)){return this.each(function(by){b(this).toggleClass(bx.call(this,by,this.className,bv),bv)})}return this.each(function(){if(bw==="string"){var bA,bz=0,by=b(this),bB=bv,bC=bx.split(af);while((bA=bC[bz++])){bB=e?bB:!by.hasClass(bA);by[bB?"addClass":"removeClass"](bA)}}else{if(bw==="undefined"||bw==="boolean"){if(this.className){b._data(this,"__className__",this.className)}this.className=this.className||bx===false?"":b._data(this,"__className__")||""}}})},hasClass:function(e){var bx=" "+e+" ",bw=0,bv=this.length;for(;bw<bv;bw++){if(this[bw].nodeType===1&&(" "+this[bw].className+" ").replace(aP," ").indexOf(bx)>-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv<bz;bv++){bx=bC[bv];if(bx.selected&&(b.support.optDisabled?!bx.disabled:bx.getAttribute("disabled")===null)&&(!bx.parentNode.disabled||!b.nodeName(bx.parentNode,"optgroup"))){bA=b(bx).val();if(bw){return bA}bB.push(bA)}}if(bw&&!bB.length&&bC.length){return b(bC[by]).val()}return bB},set:function(bv,bw){var e=b.makeArray(bw);b(bv).find("option").each(function(){this.selected=b.inArray(b(this).val(),e)>=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;
+if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw<e;bw++){bv=bA[bw];if(bv){by=b.propFix[bv]||bv;b.attr(bx,bv,"");bx.removeAttribute(F?bv:by);if(ao.test(bv)&&by in bx){bx[by]=false}}}}},attrHooks:{type:{set:function(e,bv){if(g.test(e.nodeName)&&e.parentNode){b.error("type property can't be changed")}else{if(!b.support.radioValue&&bv==="radio"&&b.nodeName(e,"input")){var bw=e.value;e.setAttribute("type",bv);if(bw){e.value=bw}return bv}}}},value:{get:function(bv,e){if(be&&b.nodeName(bv,"button")){return be.get(bv,e)}return e in bv?bv.value:null},set:function(bv,bw,e){if(be&&b.nodeName(bv,"button")){return be.set(bv,bw,e)}bv.value=bw}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(bz,bx,bA){var bw,e,by,bv=bz.nodeType;if(!bz||bv===3||bv===8||bv===2){return}by=bv!==1||!b.isXMLDoc(bz);if(by){bx=b.propFix[bx]||bx;e=b.propHooks[bx]}if(bA!==L){if(e&&"set" in e&&(bw=e.set(bz,bA,bx))!==L){return bw}else{return(bz[bx]=bA)}}else{if(e&&"get" in e&&(bw=e.get(bz,bx))!==null){return bw}else{return bz[bx]}}},propHooks:{tabIndex:{get:function(bv){var e=bv.getAttributeNode("tabindex");return e&&e.specified?parseInt(e.value,10):D.test(bv.nodeName)||l.test(bv.nodeName)&&bv.href?0:L}}}});b.attrHooks.tabindex=b.propHooks.tabIndex;aY={get:function(bv,e){var bx,bw=b.prop(bv,e);return bw===true||typeof bw!=="boolean"&&(bx=bv.getAttributeNode(e))&&bx.nodeValue!==false?e.toLowerCase():L},set:function(bv,bx,e){var bw;if(bx===false){b.removeAttr(bv,e)}else{bw=b.propFix[e]||e;if(bw in bv){bv[bw]=true}bv.setAttribute(e,e.toLowerCase())}return e}};if(!F){aF={name:true,id:true};be=b.valHooks.button={get:function(bw,bv){var e;e=bw.getAttributeNode(bv);return e&&(aF[bv]?e.nodeValue!=="":e.specified)?e.nodeValue:L},set:function(bw,bx,bv){var e=bw.getAttributeNode(bv);if(!e){e=av.createAttribute(bv);bw.setAttributeNode(e)}return(e.nodeValue=bx+"")}};b.attrHooks.tabindex.set=be.set;b.each(["width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{set:function(bw,bx){if(bx===""){bw.setAttribute(e,"auto");return bx}}})});b.attrHooks.contenteditable={get:be.get,set:function(bv,bw,e){if(bw===""){bw="false"}be.set(bv,bw,e)}}}if(!b.support.hrefNormalized){b.each(["href","src","width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{get:function(bx){var bw=bx.getAttribute(e,2);return bw===null?L:bw}})})}if(!b.support.style){b.attrHooks.style={get:function(e){return e.style.cssText.toLowerCase()||L},set:function(e,bv){return(e.style.cssText=""+bv)}}}if(!b.support.optSelected){b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(bv){var e=bv.parentNode;if(e){e.selectedIndex;if(e.parentNode){e.parentNode.selectedIndex}}return null}})}if(!b.support.enctype){b.propFix.enctype="encoding"}if(!b.support.checkOn){b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return e.getAttribute("value")===null?"on":e.value}}})}b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,bv){if(b.isArray(bv)){return(e.checked=b.inArray(b(e).val(),bv)>=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI<bC.length;bI++){bH=n.exec(bC[bI])||[];bF=bH[1];e=(bH[2]||"").split(".").sort();bE=b.event.special[bF]||{};bF=(by?bE.delegateType:bE.bindType)||bF;bE=b.event.special[bF]||{};bG=b.extend({type:bF,origType:bH[1],data:bA,handler:bJ,guid:bJ.guid,selector:by,quick:Y(by),namespace:e.join(".")},bv);bw=bK[bF];if(!bw){bw=bK[bF]=[];bw.delegateCount=0;if(!bE.setup||bE.setup.call(bx,bA,e,bB)===false){if(bx.addEventListener){bx.addEventListener(bF,bB,false)}else{if(bx.attachEvent){bx.attachEvent("on"+bF,bB)}}}}if(bE.add){bE.add.call(bx,bG);if(!bG.handler.guid){bG.handler.guid=bJ.guid}}if(by){bw.splice(bw.delegateCount++,0,bG)}else{bw.push(bG)}b.event.global[bF]=true}bx=null},global:{},remove:function(bJ,bE,bv,bH,bB){var bI=b.hasData(bJ)&&b._data(bJ),bF,bx,bz,bL,bC,bA,bG,bw,by,bK,bD,e;if(!bI||!(bw=bI.events)){return}bE=b.trim(bt(bE||"")).split(" ");for(bF=0;bF<bE.length;bF++){bx=n.exec(bE[bF])||[];bz=bL=bx[1];bC=bx[2];if(!bz){for(bz in bw){b.event.remove(bJ,bz+bE[bF],bv,bH,true)}continue}by=b.event.special[bz]||{};bz=(bH?by.delegateType:by.bindType)||bz;bD=bw[bz]||[];bA=bD.length;bC=bC?new RegExp("(^|\\.)"+bC.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(bG=0;bG<bD.length;bG++){e=bD[bG];if((bB||bL===e.origType)&&(!bv||bv.guid===e.guid)&&(!bC||bC.test(e.namespace))&&(!bH||bH===e.selector||bH==="**"&&e.selector)){bD.splice(bG--,1);if(e.selector){bD.delegateCount--}if(by.remove){by.remove.call(bJ,e)}}}if(bD.length===0&&bA!==bD.length){if(!by.teardown||by.teardown.call(bJ,bC)===false){b.removeEvent(bJ,bz,bI.handle)}delete bw[bz]}}if(b.isEmptyObject(bw)){bK=bI.handle;if(bK){bK.elem=null}b.removeData(bJ,["events","handle"],true)}},customEvent:{getData:true,setData:true,changeData:true},trigger:function(bv,bD,bA,bJ){if(bA&&(bA.nodeType===3||bA.nodeType===8)){return}var bG=bv.type||bv,bx=[],e,bw,bC,bH,bz,by,bF,bE,bB,bI;if(T.test(bG+b.event.triggered)){return}if(bG.indexOf("!")>=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bC<bB.length&&!bv.isPropagationStopped();bC++){bH=bB[bC][0];bv.type=bB[bC][1];bE=(b._data(bH,"events")||{})[bv.type]&&b._data(bH,"handle");if(bE){bE.apply(bH,bD)}bE=by&&bH[by];if(bE&&b.acceptData(bH)&&bE.apply(bH,bD)===false){bv.preventDefault()}}bv.type=bG;if(!bJ&&!bv.isDefaultPrevented()){if((!bF._default||bF._default.apply(bA.ownerDocument,bD)===false)&&!(bG==="click"&&b.nodeName(bA,"a"))&&b.acceptData(bA)){if(by&&bA[bG]&&((bG!=="focus"&&bG!=="blur")||bv.target.offsetWidth!==0)&&!b.isWindow(bA)){bz=bA[by];if(bz){bA[by]=null}b.event.triggered=bG;bA[bG]();b.event.triggered=L;if(bz){bA[by]=bz}}}}return bv.result},dispatch:function(e){e=b.event.fix(e||bb.event);var bz=((b._data(this,"events")||{})[e.type]||[]),bA=bz.delegateCount,bG=[].slice.call(arguments,0),by=!e.exclusive&&!e.namespace,bH=[],bC,bB,bK,bx,bF,bE,bv,bD,bI,bw,bJ;bG[0]=e;e.delegateTarget=this;if(bA&&!e.target.disabled&&!(e.button&&e.type==="click")){bx=b(this);bx.context=this.ownerDocument||this;for(bK=e.target;bK!=this;bK=bK.parentNode||this){bE={};bD=[];bx[0]=bK;for(bC=0;bC<bA;bC++){bI=bz[bC];bw=bI.selector;if(bE[bw]===L){bE[bw]=(bI.quick?j(bK,bI.quick):bx.is(bw))}if(bE[bw]){bD.push(bI)}}if(bD.length){bH.push({elem:bK,matches:bD})}}}if(bz.length>bA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC<bH.length&&!e.isPropagationStopped();bC++){bv=bH[bC];e.currentTarget=bv.elem;for(bB=0;bB<bv.matches.length&&!e.isImmediatePropagationStopped();bB++){bI=bv.matches[bB];if(by||(!e.namespace&&!bI.namespace)||e.namespace_re&&e.namespace_re.test(bI.namespace)){e.data=bI.data;e.handleObj=bI;bF=((b.event.special[bI.origType]||{}).handle||bI.handler).apply(bv.elem,bG);if(bF!==L){e.result=bF;if(bF===false){e.preventDefault();e.stopPropagation()}}}}}return e.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(bv,e){if(bv.which==null){bv.which=e.charCode!=null?e.charCode:e.keyCode}return bv}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(bx,bw){var by,bz,e,bv=bw.button,bA=bw.fromElement;if(bx.pageX==null&&bw.clientX!=null){by=bx.target.ownerDocument||av;bz=by.documentElement;e=by.body;bx.pageX=bw.clientX+(bz&&bz.scrollLeft||e&&e.scrollLeft||0)-(bz&&bz.clientLeft||e&&e.clientLeft||0);bx.pageY=bw.clientY+(bz&&bz.scrollTop||e&&e.scrollTop||0)-(bz&&bz.clientTop||e&&e.clientTop||0)}if(!bx.relatedTarget&&bA){bx.relatedTarget=bA===bx.target?bw.toElement:bA}if(!bx.which&&bv!==L){bx.which=(bv&1?1:(bv&2?3:(bv&4?2:0)))}return bx}},fix:function(bw){if(bw[b.expando]){return bw}var bv,bz,e=bw,bx=b.event.fixHooks[bw.type]||{},by=bx.props?this.props.concat(bx.props):this.props;bw=b.Event(e);for(bv=by.length;bv;){bz=by[--bv];bw[bz]=e[bz]}if(!bw.target){bw.target=e.srcElement||av}if(bw.target.nodeType===3){bw.target=bw.target.parentNode}if(bw.metaKey===L){bw.metaKey=bw.ctrlKey}return bx.filter?bx.filter(bw,e):bw},special:{ready:{setup:b.bindReady},load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(bw,bv,e){if(b.isWindow(this)){this.onbeforeunload=e}},teardown:function(bv,e){if(this.onbeforeunload===e){this.onbeforeunload=null}}}},simulate:function(bw,by,bx,bv){var bz=b.extend(new b.Event(),bx,{type:bw,isSimulated:true,originalEvent:{}});if(bv){b.event.trigger(bz,null,by)}else{b.event.dispatch.call(by,bz)}if(bz.isDefaultPrevented()){bx.preventDefault()}}};b.event.handle=b.event.dispatch;b.removeEvent=av.removeEventListener?function(bv,e,bw){if(bv.removeEventListener){bv.removeEventListener(e,bw,false)}}:function(bv,e,bw){if(bv.detachEvent){bv.detachEvent("on"+e,bw)}};b.Event=function(bv,e){if(!(this instanceof b.Event)){return new b.Event(bv,e)}if(bv&&bv.type){this.originalEvent=bv;this.type=bv.type;this.isDefaultPrevented=(bv.defaultPrevented||bv.returnValue===false||bv.getPreventDefault&&bv.getPreventDefault())?i:bk}else{this.type=bv}if(e){b.extend(this,e)}this.timeStamp=bv&&bv.timeStamp||b.now();this[b.expando]=true};function bk(){return false}function i(){return true}b.Event.prototype={preventDefault:function(){this.isDefaultPrevented=i;var bv=this.originalEvent;if(!bv){return}if(bv.preventDefault){bv.preventDefault()}else{bv.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=i;var bv=this.originalEvent;if(!bv){return}if(bv.stopPropagation){bv.stopPropagation()}bv.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=i;this.stopPropagation()},isDefaultPrevented:bk,isPropagationStopped:bk,isImmediatePropagationStopped:bk};b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(bv,e){b.event.special[bv]={delegateType:e,bindType:e,handle:function(bz){var bB=this,bA=bz.relatedTarget,by=bz.handleObj,bw=by.selector,bx;if(!bA||(bA!==bB&&!b.contains(bB,bA))){bz.type=by.origType;bx=by.handler.apply(this,arguments);bz.type=e}return bx}}});if(!b.support.submitBubbles){b.event.special.submit={setup:function(){if(b.nodeName(this,"form")){return false
+}b.event.add(this,"click._submit keypress._submit",function(bx){var bw=bx.target,bv=b.nodeName(bw,"input")||b.nodeName(bw,"button")?bw.form:L;if(bv&&!bv._submit_attached){b.event.add(bv,"submit._submit",function(e){if(this.parentNode&&!e.isTrigger){b.event.simulate("submit",this.parentNode,e,true)}});bv._submit_attached=true}})},teardown:function(){if(b.nodeName(this,"form")){return false}b.event.remove(this,"._submit")}}}if(!b.support.changeBubbles){b.event.special.change={setup:function(){if(bd.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){b.event.add(this,"propertychange._change",function(e){if(e.originalEvent.propertyName==="checked"){this._just_changed=true}});b.event.add(this,"click._change",function(e){if(this._just_changed&&!e.isTrigger){this._just_changed=false;b.event.simulate("change",this,e,true)}})}return false}b.event.add(this,"beforeactivate._change",function(bw){var bv=bw.target;if(bd.test(bv.nodeName)&&!bv._change_attached){b.event.add(bv,"change._change",function(e){if(this.parentNode&&!e.isSimulated&&!e.isTrigger){b.event.simulate("change",this.parentNode,e,true)}});bv._change_attached=true}})},handle:function(bv){var e=bv.target;if(this!==e||bv.isSimulated||bv.isTrigger||(e.type!=="radio"&&e.type!=="checkbox")){return bv.handleObj.handler.apply(this,arguments)}},teardown:function(){b.event.remove(this,"._change");return bd.test(this.nodeName)}}}if(!b.support.focusinBubbles){b.each({focus:"focusin",blur:"focusout"},function(bx,e){var bv=0,bw=function(by){b.event.simulate(e,by.target,b.event.fix(by),true)};b.event.special[e]={setup:function(){if(bv++===0){av.addEventListener(bx,bw,true)}},teardown:function(){if(--bv===0){av.removeEventListener(bx,bw,true)}}}})}b.fn.extend({on:function(bw,e,bz,by,bv){var bA,bx;if(typeof bw==="object"){if(typeof e!=="string"){bz=e;e=L}for(bx in bw){this.on(bx,e,bz,bw[bx],bv)}return this}if(bz==null&&by==null){by=e;bz=e=L}else{if(by==null){if(typeof e==="string"){by=bz;bz=L}else{by=bz;bz=e;e=L}}}if(by===false){by=bk}else{if(!by){return this}}if(bv===1){bA=by;by=function(bB){b().off(bB);return bA.apply(this,arguments)};by.guid=bA.guid||(bA.guid=b.guid++)}return this.each(function(){b.event.add(this,bw,by,bz,e)})},one:function(bv,e,bx,bw){return this.on.call(this,bv,e,bx,bw,1)},off:function(bw,e,by){if(bw&&bw.preventDefault&&bw.handleObj){var bv=bw.handleObj;b(bw.delegateTarget).off(bv.namespace?bv.type+"."+bv.namespace:bv.type,bv.selector,bv.handler);return this}if(typeof bw==="object"){for(var bx in bw){this.off(bx,e,bw[bx])}return this}if(e===false||typeof e==="function"){by=e;e=L}if(by===false){by=bk}return this.each(function(){b.event.remove(this,bw,by,e)})},bind:function(e,bw,bv){return this.on(e,null,bw,bv)},unbind:function(e,bv){return this.off(e,null,bv)},live:function(e,bw,bv){b(this.context).on(e,this.selector,bw,bv);return this},die:function(e,bv){b(this.context).off(e,this.selector||"**",bv);return this},delegate:function(e,bv,bx,bw){return this.on(bv,e,bx,bw)},undelegate:function(e,bv,bw){return arguments.length==1?this.off(e,"**"):this.off(bv,e,bw)},trigger:function(e,bv){return this.each(function(){b.event.trigger(e,bv,this)})},triggerHandler:function(e,bv){if(this[0]){return b.event.trigger(e,bv,this[0],true)}},toggle:function(bx){var bv=arguments,e=bx.guid||b.guid++,bw=0,by=function(bz){var bA=(b._data(this,"lastToggle"+bx.guid)||0)%bw;b._data(this,"lastToggle"+bx.guid,bA+1);bz.preventDefault();return bv[bA].apply(this,arguments)||false};by.guid=e;while(bw<bv.length){bv[bw++].guid=e}return this.click(by)},hover:function(e,bv){return this.mouseenter(e).mouseleave(bv||e)}});b.each(("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu").split(" "),function(bv,e){b.fn[e]=function(bx,bw){if(bw==null){bw=bx;bx=null}return arguments.length>0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}});
+/*!
+ * Sizzle CSS Selector Engine
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ * More information: http://sizzlejs.com/
+ */
+(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e<bR.length;e++){if(bR[e]===bR[e-1]){bR.splice(e--,1)}}}}return bR};by.matches=function(e,bR){return by(e,null,null,bR)};by.matchesSelector=function(e,bR){return by(bR,null,null,[e]).length>0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS<bU;bS++){bV=bE.order[bS];if((bT=bE.leftMatch[bV].exec(bX))){bR=bT[1];bT.splice(1,1);if(bR.substr(bR.length-1)!=="\\"){bT[1]=(bT[1]||"").replace(bK,"");bW=bE.find[bV](bT,e,bY);if(bW!=null){bX=bX.replace(bE.match[bV],"");break}}}}if(!bW){bW=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:bW,expr:bX}};by.filter=function(b1,b0,b4,bU){var bW,e,bZ,b6,b3,bR,bT,bV,b2,bS=b1,b5=[],bY=b0,bX=b0&&b0[0]&&by.isXML(b0[0]);while(b1&&b0.length){for(bZ in bE.filter){if((bW=bE.leftMatch[bZ].exec(b1))!=null&&bW[2]){bR=bE.filter[bZ];bT=bW[1];e=false;bW.splice(1,1);if(bT.substr(bT.length-1)==="\\"){continue}if(bY===b5){b5=[]}if(bE.preFilter[bZ]){bW=bE.preFilter[bZ](bW,bY,b4,b5,bU,bX);if(!bW){e=b6=true}else{if(bW===true){continue}}}if(bW){for(bV=0;(b3=bY[bV])!=null;bV++){if(b3){b6=bR(b3,bW,bV,bY);b2=bU^b6;if(b4&&b6!=null){if(b2){e=true}else{bY[bV]=false}}else{if(b2){b5.push(b3);e=true}}}}}if(b6!==L){if(!b4){bY=b5}b1=b1.replace(bE.match[bZ],"");if(!e){return[]}break}}}if(b1===bS){if(e==null){by.error(b1)}else{break}}bS=b1}return bY};by.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var bw=by.getText=function(bU){var bS,bT,e=bU.nodeType,bR="";if(e){if(e===1||e===9){if(typeof bU.textContent==="string"){return bU.textContent}else{if(typeof bU.innerText==="string"){return bU.innerText.replace(bO,"")}else{for(bU=bU.firstChild;bU;bU=bU.nextSibling){bR+=bw(bU)}}}}else{if(e===3||e===4){return bU.nodeValue}}}else{for(bS=0;(bT=bU[bS]);bS++){if(bT.nodeType!==8){bR+=bw(bT)}}}return bR};var bE=by.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(bW,bR){var bT=typeof bR==="string",bV=bT&&!bQ.test(bR),bX=bT&&!bV;if(bV){bR=bR.toLowerCase()}for(var bS=0,e=bW.length,bU;bS<e;bS++){if((bU=bW[bS])){while((bU=bU.previousSibling)&&bU.nodeType!==1){}bW[bS]=bX||bU&&bU.nodeName.toLowerCase()===bR?bU||false:bU===bR}}if(bX){by.filter(bR,bW,true)}},">":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS<e;bS++){bV=bW[bS];if(bV){var bT=bV.parentNode;bW[bS]=bT.nodeName.toLowerCase()===bR?bT:false}}}else{for(;bS<e;bS++){bV=bW[bS];if(bV){bW[bS]=bU?bV.parentNode:bV.parentNode===bR}}if(bU){by.filter(bR,bW,true)}}},"":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("parentNode",bR,bS,bT,bU,bV)},"~":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("previousSibling",bR,bS,bT,bU,bV)}},find:{ID:function(bR,bS,bT){if(typeof bS.getElementById!=="undefined"&&!bT){var e=bS.getElementById(bR[1]);return e&&e.parentNode?[e]:[]}},NAME:function(bS,bV){if(typeof bV.getElementsByName!=="undefined"){var bR=[],bU=bV.getElementsByName(bS[1]);for(var bT=0,e=bU.length;bT<e;bT++){if(bU[bT].getAttribute("name")===bS[1]){bR.push(bU[bT])}}return bR.length===0?null:bR}},TAG:function(e,bR){if(typeof bR.getElementsByTagName!=="undefined"){return bR.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(bT,bR,bS,e,bW,bX){bT=" "+bT[1].replace(bK,"")+" ";if(bX){return bT}for(var bU=0,bV;(bV=bR[bU])!=null;bU++){if(bV){if(bW^(bV.className&&(" "+bV.className+" ").replace(/[\t\n\r]/g," ").indexOf(bT)>=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1
+},lt:function(bS,bR,e){return bR<e[3]-0},gt:function(bS,bR,e){return bR>e[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV<bU;bV++){if(bT[bV]===bS){return false}}return true}else{by.error(e)}}}},CHILD:function(bS,bU){var bT,b0,bW,bZ,e,bV,bY,bX=bU[1],bR=bS;switch(bX){case"only":case"first":while((bR=bR.previousSibling)){if(bR.nodeType===1){return false}}if(bX==="first"){return true}bR=bS;case"last":while((bR=bR.nextSibling)){if(bR.nodeType===1){return false}}return true;case"nth":bT=bU[2];b0=bU[3];if(bT===1&&b0===0){return true}bW=bU[0];bZ=bS.parentNode;if(bZ&&(bZ[bC]!==bW||!bS.nodeIndex)){bV=0;for(bR=bZ.firstChild;bR;bR=bR.nextSibling){if(bR.nodeType===1){bR.nodeIndex=++bV}}bZ[bC]=bW}bY=bS.nodeIndex-b0;if(bT===0){return bY===0}else{return(bY%bT===0&&bY/bT>=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS<e;bS++){bR.push(bU[bS])}}else{for(;bU[bS];bS++){bR.push(bU[bS])}}}return bR}}var bJ,bG;if(av.documentElement.compareDocumentPosition){bJ=function(bR,e){if(bR===e){bB=true;return 0}if(!bR.compareDocumentPosition||!e.compareDocumentPosition){return bR.compareDocumentPosition?-1:1}return bR.compareDocumentPosition(e)&4?-1:1}}else{bJ=function(bY,bX){if(bY===bX){bB=true;return 0}else{if(bY.sourceIndex&&bX.sourceIndex){return bY.sourceIndex-bX.sourceIndex}}var bV,bR,bS=[],e=[],bU=bY.parentNode,bW=bX.parentNode,bZ=bU;if(bU===bW){return bG(bY,bX)}else{if(!bU){return -1}else{if(!bW){return 1}}}while(bZ){bS.unshift(bZ);bZ=bZ.parentNode}bZ=bW;while(bZ){e.unshift(bZ);bZ=bZ.parentNode}bV=bS.length;bR=e.length;for(var bT=0;bT<bV&&bT<bR;bT++){if(bS[bT]!==e[bT]){return bG(bS[bT],e[bT])}}return bT===bV?bG(bY,e[bT],-1):bG(bS[bT],bX,1)};bG=function(bR,e,bS){if(bR===e){return bS}var bT=bR.nextSibling;while(bT){if(bT===e){return -1}bT=bT.nextSibling}return 1}}(function(){var bR=av.createElement("div"),bS="script"+(new Date()).getTime(),e=av.documentElement;bR.innerHTML="<a name='"+bS+"'/>";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="<p class='TEST'></p>";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1&&!bY){e[bC]=bV;e.sizset=bT}if(e.nodeName.toLowerCase()===bW){bU=e;break}e=e[bR]}bZ[bT]=bU}}}function bN(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1){if(!bY){e[bC]=bV;e.sizset=bT}if(typeof bW!=="string"){if(e===bW){bU=true;break}}else{if(by.filter(bW,[e]).length>0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT<bR;bT++){by(bS,bY[bT],bX,bW)}return by.filter(bU,bX)};by.attr=b.attr;by.selectors.attrMap={};b.find=by;b.expr=by.selectors;b.expr[":"]=b.expr.filters;b.unique=by.uniqueSort;b.text=by.getText;b.isXMLDoc=by.isXML;b.contains=by.contains})();var ab=/Until$/,aq=/^(?:parents|prevUntil|prevAll)/,a9=/,/,bp=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,H=b.expr.match.POS,ay={children:true,contents:true,next:true,prev:true};b.fn.extend({find:function(e){var bw=this,by,bv;if(typeof e!=="string"){return b(e).filter(function(){for(by=0,bv=bw.length;by<bv;by++){if(b.contains(bw[by],this)){return true}}})}var bx=this.pushStack("","find",e),bA,bB,bz;for(by=0,bv=this.length;by<bv;by++){bA=bx.length;b.find(e,this[by],bx);if(by>0){for(bB=bA;bB<bx.length;bB++){for(bz=0;bz<bA;bz++){if(bx[bz]===bx[bB]){bx.splice(bB--,1);break}}}}}return bx},has:function(bv){var e=b(bv);return this.filter(function(){for(var bx=0,bw=e.length;bx<bw;bx++){if(b.contains(this,e[bx])){return true}}})},not:function(e){return this.pushStack(aG(this,e,false),"not",e)},filter:function(e){return this.pushStack(aG(this,e,true),"filter",e)},is:function(e){return !!e&&(typeof e==="string"?H.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw<by.length;bw++){if(b(bz).is(by[bw])){bv.push({selector:by[bw],elem:bz,level:bB})}}bz=bz.parentNode;bB++}return bv}var bA=H.test(by)||typeof by!=="string"?b(by,bx||this.context):0;for(bw=0,e=this.length;bw<e;bw++){bz=this[bw];while(bz){if(bA?bA.index(bz)>-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/<tbody/i,W=/<|&#?\w+;/,ae=/<(?:script|style)/i,O=/<(?:script|object|embed|option|style)/i,ah=new RegExp("<(?:"+aR+")","i"),o=/checked\s*(?:[^=]|=\s*.checked.)/i,bm=/\/(java|ecma)script/i,aN=/^\s*<!(?:\[CDATA\[|\-\-)/,ax={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},ac=a(av);
+ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div<div>","</div>"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1></$2>");try{for(var bw=0,bv=this.length;bw<bv;bw++){if(this[bw].nodeType===1){b.cleanData(this[bw].getElementsByTagName("*"));this[bw].innerHTML=bx}}}catch(by){this.empty().append(bx)}}else{if(b.isFunction(bx)){this.each(function(bz){var e=b(this);e.html(bx.call(this,bz,e.html()))})}else{this.empty().append(bx)}}}return this},replaceWith:function(e){if(this[0]&&this[0].parentNode){if(b.isFunction(e)){return this.each(function(bx){var bw=b(this),bv=bw.html();bw.replaceWith(e.call(this,bx,bv))})}if(typeof e!=="string"){e=b(e).detach()}return this.each(function(){var bw=this.nextSibling,bv=this.parentNode;b(this).remove();if(bw){b(bw).before(e)}else{b(bv).append(e)}})}else{return this.length?this.pushStack(b(b.isFunction(e)?e():e),"replaceWith",e):this}},detach:function(e){return this.remove(e,true)},domManip:function(bB,bF,bE){var bx,by,bA,bD,bC=bB[0],bv=[];if(!b.support.checkClone&&arguments.length===3&&typeof bC==="string"&&o.test(bC)){return this.each(function(){b(this).domManip(bB,bF,bE,true)})}if(b.isFunction(bC)){return this.each(function(bH){var bG=b(this);bB[0]=bC.call(this,bH,bF?bG.html():L);bG.domManip(bB,bF,bE)})}if(this[0]){bD=bC&&bC.parentNode;if(b.support.parentNode&&bD&&bD.nodeType===11&&bD.childNodes.length===this.length){bx={fragment:bD}}else{bx=b.buildFragment(bB,this,bv)}bA=bx.fragment;if(bA.childNodes.length===1){by=bA=bA.firstChild}else{by=bA.firstChild}if(by){bF=bF&&b.nodeName(by,"tr");for(var bw=0,e=this.length,bz=e-1;bw<e;bw++){bE.call(bF?ba(this[bw],by):this[bw],bx.cacheable||(e>1&&bw<bz)?b.clone(bA,true,true):bA)}}if(bv.length){b.each(bv,bo)}}return this}});function ba(e,bv){return b.nodeName(e,"table")?(e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody"))):e}function t(bB,bv){if(bv.nodeType!==1||!b.hasData(bB)){return}var by,bx,e,bA=b._data(bB),bz=b._data(bv,bA),bw=bA.events;if(bw){delete bz.handle;bz.events={};for(by in bw){for(bx=0,e=bw[by].length;bx<e;bx++){b.event.add(bv,by+(bw[by][bx].namespace?".":"")+bw[by][bx].namespace,bw[by][bx],bw[by][bx].data)}}}if(bz.data){bz.data=b.extend({},bz.data)}}function ai(bv,e){var bw;if(e.nodeType!==1){return}if(e.clearAttributes){e.clearAttributes()}if(e.mergeAttributes){e.mergeAttributes(bv)}bw=e.nodeName.toLowerCase();if(bw==="object"){e.outerHTML=bv.outerHTML}else{if(bw==="input"&&(bv.type==="checkbox"||bv.type==="radio")){if(bv.checked){e.defaultChecked=e.checked=bv.checked}if(e.value!==bv.value){e.value=bv.value}}else{if(bw==="option"){e.selected=bv.defaultSelected}else{if(bw==="input"||bw==="textarea"){e.defaultValue=bv.defaultValue}}}}e.removeAttribute(b.expando)}b.buildFragment=function(bz,bx,bv){var by,e,bw,bA,bB=bz[0];if(bx&&bx[0]){bA=bx[0].ownerDocument||bx[0]}if(!bA.createDocumentFragment){bA=av}if(bz.length===1&&typeof bB==="string"&&bB.length<512&&bA===av&&bB.charAt(0)==="<"&&!O.test(bB)&&(b.support.checkClone||!o.test(bB))&&(b.support.html5Clone||!ah.test(bB))){e=true;bw=b.fragments[bB];if(bw&&bw!==1){by=bw}}if(!by){by=bA.createDocumentFragment();b.clean(bz,bA,by,bv)}if(e){b.fragments[bB]=bw?by:1}return{fragment:by,cacheable:e}};b.fragments={};b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,bv){b.fn[e]=function(bw){var bz=[],bC=b(bw),bB=this.length===1&&this[0].parentNode;if(bB&&bB.nodeType===11&&bB.childNodes.length===1&&bC.length===1){bC[bv](this[0]);return this}else{for(var bA=0,bx=bC.length;bA<bx;bA++){var by=(bA>0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1></$2>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]==="<table>"&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB<bG;bB++){E(bz[bB])}}else{E(bz)}}if(bz.nodeType){bI.push(bz)}else{bI=b.merge(bI,bz)}}if(bH){bF=function(bL){return !bL.type||bm.test(bL.type)};for(bE=0;bI[bE];bE++){if(bA&&b.nodeName(bI[bE],"script")&&(!bI[bE].type||bI[bE].type.toLowerCase()==="text/javascript")){bA.push(bI[bE].parentNode?bI[bE].parentNode.removeChild(bI[bE]):bI[bE])}else{if(bI[bE].nodeType===1){var bJ=b.grep(bI[bE].getElementsByTagName("script"),bF);bI.splice.apply(bI,[bE+1,0].concat(bJ))}bH.appendChild(bI[bE])}}}return bI},cleanData:function(bv){var by,bw,e=b.cache,bB=b.event.special,bA=b.support.deleteExpando;for(var bz=0,bx;(bx=bv[bz])!=null;bz++){if(bx.nodeName&&b.noData[bx.nodeName.toLowerCase()]){continue}bw=bx[b.expando];if(bw){by=e[bw];if(by&&by.events){for(var bC in by.events){if(bB[bC]){b.event.remove(bx,bC)}else{b.removeEvent(bx,bC,by.handle)}}if(by.handle){by.handle.elem=null}}if(bA){delete bx[b.expando]}else{if(bx.removeAttribute){bx.removeAttribute(b.expando)}}delete e[bw]}}}});function bo(e,bv){if(bv.src){b.ajax({url:bv.src,async:false,dataType:"script"})}else{b.globalEval((bv.text||bv.textContent||bv.innerHTML||"").replace(aN,"/*$0*/"))}if(bv.parentNode){bv.parentNode.removeChild(bv)}}var ak=/alpha\([^)]*\)/i,au=/opacity=([^)]*)/,z=/([A-Z]|^ms)/g,bc=/^-?\d+(?:px)?$/i,bn=/^-?\d/,I=/^([\-+])=([\-+.\de]+)/,a7={position:"absolute",visibility:"hidden",display:"block"},an=["Left","Right"],a1=["Top","Bottom"],Z,aI,aX;b.fn.css=function(e,bv){if(arguments.length===2&&bv===L){return this}return b.access(this,e,bv,true,function(bx,bw,by){return by!==L?b.style(bx,bw,by):b.css(bx,bw)})};b.extend({cssHooks:{opacity:{get:function(bw,bv){if(bv){var e=Z(bw,"opacity","opacity");return e===""?"1":e}else{return bw.style.opacity}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(bx,bw,bD,by){if(!bx||bx.nodeType===3||bx.nodeType===8||!bx.style){return}var bB,bC,bz=b.camelCase(bw),bv=bx.style,bE=b.cssHooks[bz];bw=b.cssProps[bz]||bz;if(bD!==L){bC=typeof bD;if(bC==="string"&&(bB=I.exec(bD))){bD=(+(bB[1]+1)*+bB[2])+parseFloat(b.css(bx,bw));bC="number"}if(bD==null||bC==="number"&&isNaN(bD)){return}if(bC==="number"&&!b.cssNumber[bz]){bD+="px"}if(!bE||!("set" in bE)||(bD=bE.set(bx,bD))!==L){try{bv[bw]=bD}catch(bA){}}}else{if(bE&&"get" in bE&&(bB=bE.get(bx,false,by))!==L){return bB}return bv[bw]}},css:function(by,bx,bv){var bw,e;bx=b.camelCase(bx);e=b.cssHooks[bx];bx=b.cssProps[bx]||bx;if(bx==="cssFloat"){bx="float"}if(e&&"get" in e&&(bw=e.get(by,true,bv))!==L){return bw}else{if(Z){return Z(by,bx)}}},swap:function(bx,bw,by){var e={};for(var bv in bw){e[bv]=bx.style[bv];bx.style[bv]=bw[bv]}by.call(bx);for(bv in bw){bx.style[bv]=e[bv]}}});b.curCSS=b.css;b.each(["height","width"],function(bv,e){b.cssHooks[e]={get:function(by,bx,bw){var bz;if(bx){if(by.offsetWidth!==0){return p(by,e,bw)}else{b.swap(by,a7,function(){bz=p(by,e,bw)})}return bz}},set:function(bw,bx){if(bc.test(bx)){bx=parseFloat(bx);if(bx>=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;
+if(bA>0){if(bv!=="border"){for(;bx<e;bx++){if(!bv){bA-=parseFloat(b.css(by,"padding"+bz[bx]))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}else{bA-=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}}}return bA+"px"}bA=Z(by,bw,bw);if(bA<0||bA==null){bA=by.style[bw]||0}bA=parseFloat(bA)||0;if(bv){for(;bx<e;bx++){bA+=parseFloat(b.css(by,"padding"+bz[bx]))||0;if(bv!=="padding"){bA+=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}}}return bA+"px"}if(b.expr&&b.expr.filters){b.expr.filters.hidden=function(bw){var bv=bw.offsetWidth,e=bw.offsetHeight;return(bv===0&&e===0)||(!b.support.reliableHiddenOffsets&&((bw.style&&bw.style.display)||b.css(bw,"display"))==="none")};b.expr.filters.visible=function(e){return !b.expr.filters.hidden(e)}}var k=/%20/g,ap=/\[\]$/,bs=/\r?\n/g,bq=/#.*$/,aD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,aZ=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aM=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,aQ=/^(?:GET|HEAD)$/,c=/^\/\//,M=/\?/,a6=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw<bz;bw++){bv=bx[bw];bC=/^\+/.test(bv);if(bC){bv=bv.substr(1)||"*"}bB=e[bv]=e[bv]||[];bB[bC?"unshift":"push"](bA)}}}}function aW(bv,bE,bz,bD,bB,bx){bB=bB||bE.dataTypes[0];bx=bx||{};bx[bB]=true;var bA=bv[bB],bw=0,e=bA?bA.length:0,by=(bv===aa),bC;for(;bw<e&&(by||!bC);bw++){bC=bA[bw](bE,bz,bD);if(typeof bC==="string"){if(!by||bx[bC]){bC=L}else{bE.dataTypes.unshift(bC);bC=aW(bv,bE,bz,bD,bC,bx)}}}if((by||!bC)&&!bx["*"]){bC=aW(bv,bE,bz,bD,"*",bx)}return bC}function am(bw,bx){var bv,e,by=b.ajaxSettings.flatOptions||{};for(bv in bx){if(bx[bv]!==L){(by[bv]?bw:(e||(e={})))[bv]=bx[bv]}}if(e){b.extend(true,bw,e)}}b.fn.extend({load:function(bw,bz,bA){if(typeof bw!=="string"&&A){return A.apply(this,arguments)}else{if(!this.length){return this}}var by=bw.indexOf(" ");if(by>=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("<div>").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA<bw;bA++){if(bA===1){for(bE in bH.converters){if(typeof bE==="string"){bG[bE.toLowerCase()]=bH.converters[bE]}}}bx=bC;bC=bD[bA];if(bC==="*"){bC=bx}else{if(bx!=="*"&&bx!==bC){by=bx+" "+bC;bF=bG[by]||bG["* "+bC];if(!bF){e=L;for(bv in bG){bB=bv.split(" ");if(bB[0]===bx||bB[0]==="*"){e=bG[bB[1]+" "+bC];if(e){bv=bG[bv];if(bv===true){bF=e}else{if(e===true){bF=bv}}break}}}}if(!(bF||e)){b.error("No conversion from "+by.replace(" "," to "))}if(bF!==true){bz=bF?bF(bz):e(bv(bz))}}}}return bz}var aC=b.now(),u=/(\=)\?(&|$)|\?\?/i;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return b.expando+"_"+(aC++)}});b.ajaxPrefilter("json jsonp",function(bD,bA,bC){var bx=bD.contentType==="application/x-www-form-urlencoded"&&(typeof bD.data==="string");if(bD.dataTypes[0]==="jsonp"||bD.jsonp!==false&&(u.test(bD.url)||bx&&u.test(bD.data))){var bB,bw=bD.jsonpCallback=b.isFunction(bD.jsonpCallback)?bD.jsonpCallback():bD.jsonpCallback,bz=bb[bw],e=bD.url,by=bD.data,bv="$1"+bw+"$2";if(bD.jsonp!==false){e=e.replace(u,bv);if(bD.url===e){if(bx){by=by.replace(u,bv)}if(bD.data===by){e+=(/\?/.test(e)?"&":"?")+bD.jsonp+"="+bw}}}bD.url=e;bD.data=by;bb[bw]=function(bE){bB=[bE]};bC.always(function(){bb[bw]=bz;if(bB&&b.isFunction(bz)){bb[bw](bB[0])}});bD.converters["script json"]=function(){if(!bB){b.error(bw+" was not called")}return bB[0]};bD.dataTypes[0]="json";return"script"}});b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){b.globalEval(e);return e}}});b.ajaxPrefilter("script",function(e){if(e.cache===L){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});b.ajaxTransport("script",function(bw){if(bw.crossDomain){var e,bv=av.head||av.getElementsByTagName("head")[0]||av.documentElement;return{send:function(bx,by){e=av.createElement("script");e.async="async";if(bw.scriptCharset){e.charset=bw.scriptCharset}e.src=bw.url;e.onload=e.onreadystatechange=function(bA,bz){if(bz||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bv&&e.parentNode){bv.removeChild(e)}e=L;if(!bz){by(200,"success")}}};bv.insertBefore(e,bv.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var B=bb.ActiveXObject?function(){for(var e in N){N[e](0,1)}}:false,y=0,N;function aL(){try{return new bb.XMLHttpRequest()}catch(bv){}}function aj(){try{return new bb.ActiveXObject("Microsoft.XMLHTTP")}catch(bv){}}b.ajaxSettings.xhr=bb.ActiveXObject?function(){return !this.isLocal&&aL()||aj()}:aL;(function(e){b.extend(b.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(b.ajaxSettings.xhr());if(b.support.ajax){b.ajaxTransport(function(e){if(!e.crossDomain||b.support.cors){var bv;return{send:function(bB,bw){var bA=e.xhr(),bz,by;if(e.username){bA.open(e.type,e.url,e.async,e.username,e.password)}else{bA.open(e.type,e.url,e.async)}if(e.xhrFields){for(by in e.xhrFields){bA[by]=e.xhrFields[by]}}if(e.mimeType&&bA.overrideMimeType){bA.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!bB["X-Requested-With"]){bB["X-Requested-With"]="XMLHttpRequest"}try{for(by in bB){bA.setRequestHeader(by,bB[by])}}catch(bx){}bA.send((e.hasContent&&e.data)||null);bv=function(bK,bE){var bF,bD,bC,bI,bH;try{if(bv&&(bE||bA.readyState===4)){bv=L;if(bz){bA.onreadystatechange=b.noop;if(B){delete N[bz]}}if(bE){if(bA.readyState!==4){bA.abort()}}else{bF=bA.status;bC=bA.getAllResponseHeaders();bI={};bH=bA.responseXML;if(bH&&bH.documentElement){bI.xml=bH}bI.text=bA.responseText;try{bD=bA.statusText}catch(bJ){bD=""}if(!bF&&e.isLocal&&!e.crossDomain){bF=bI.text?200:404}else{if(bF===1223){bF=204}}}}}catch(bG){if(!bE){bw(-1,bG)}}if(bI){bw(bF,bD,bI,bC)}};if(!e.async||bA.readyState===4){bv()}else{bz=++y;if(B){if(!N){N={};b(bb).unload(B)}N[bz]=bv}bA.onreadystatechange=bv}},abort:function(){if(bv){bv(0,1)
+}}}}})}var Q={},a8,m,aB=/^(?:toggle|show|hide)$/,aT=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,a3,aH=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],a4;b.fn.extend({show:function(bx,bA,bz){var bw,by;if(bx||bx===0){return this.animate(a0("show",3),bx,bA,bz)}else{for(var bv=0,e=this.length;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(!b._data(bw,"olddisplay")&&by==="none"){by=bw.style.display=""}if(by===""&&b.css(bw,"display")==="none"){b._data(bw,"olddisplay",x(bw.nodeName))}}}for(bv=0;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(by===""||by==="none"){bw.style.display=b._data(bw,"olddisplay")||""}}}return this}},hide:function(bx,bA,bz){if(bx||bx===0){return this.animate(a0("hide",3),bx,bA,bz)}else{var bw,by,bv=0,e=this.length;for(;bv<e;bv++){bw=this[bv];if(bw.style){by=b.css(bw,"display");if(by!=="none"&&!b._data(bw,"olddisplay")){b._data(bw,"olddisplay",by)}}}for(bv=0;bv<e;bv++){if(this[bv].style){this[bv].style.display="none"}}return this}},_toggle:b.fn.toggle,toggle:function(bw,bv,bx){var e=typeof bw==="boolean";if(b.isFunction(bw)&&b.isFunction(bv)){this._toggle.apply(this,arguments)}else{if(bw==null||e){this.each(function(){var by=e?bw:b(this).is(":hidden");b(this)[by?"show":"hide"]()})}else{this.animate(a0("toggle",3),bw,bv,bx)}}return this},fadeTo:function(e,bx,bw,bv){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:bx},e,bw,bv)},animate:function(bz,bw,by,bx){var e=b.speed(bw,by,bx);if(b.isEmptyObject(bz)){return this.each(e.complete,[false])}bz=b.extend({},bz);function bv(){if(e.queue===false){b._mark(this)}var bE=b.extend({},e),bK=this.nodeType===1,bI=bK&&b(this).is(":hidden"),bB,bF,bD,bJ,bH,bC,bG,bL,bA;bE.animatedProperties={};for(bD in bz){bB=b.camelCase(bD);if(bD!==bB){bz[bB]=bz[bD];delete bz[bD]}bF=bz[bB];if(b.isArray(bF)){bE.animatedProperties[bB]=bF[1];bF=bz[bB]=bF[0]}else{bE.animatedProperties[bB]=bE.specialEasing&&bE.specialEasing[bB]||bE.easing||"swing"}if(bF==="hide"&&bI||bF==="show"&&!bI){return bE.complete.call(this)}if(bK&&(bB==="height"||bB==="width")){bE.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(b.css(this,"display")==="inline"&&b.css(this,"float")==="none"){if(!b.support.inlineBlockNeedsLayout||x(this.nodeName)==="inline"){this.style.display="inline-block"}else{this.style.zoom=1}}}}if(bE.overflow!=null){this.style.overflow="hidden"}for(bD in bz){bJ=new b.fx(this,bE,bD);bF=bz[bD];if(aB.test(bF)){bA=b._data(this,"toggle"+bD)||(bF==="toggle"?bI?"show":"hide":0);if(bA){b._data(this,"toggle"+bD,bA==="show"?"hide":"show");bJ[bA]()}else{bJ[bF]()}}else{bH=aT.exec(bF);bC=bJ.cur();if(bH){bG=parseFloat(bH[2]);bL=bH[3]||(b.cssNumber[bD]?"":"px");if(bL!=="px"){b.style(this,bD,(bG||1)+bL);bC=((bG||1)/bJ.cur())*bC;b.style(this,bD,bC+bL)}if(bH[1]){bG=((bH[1]==="-="?-1:1)*bG)+bC}bJ.custom(bC,bG,bL)}else{bJ.custom(bC,bF,"")}}}return true}return e.queue===false?this.each(bv):this.queue(e.queue,bv)},stop:function(bw,bv,e){if(typeof bw!=="string"){e=bv;bv=bw;bw=L}if(bv&&bw!==false){this.queue(bw||"fx",[])}return this.each(function(){var bx,by=false,bA=b.timers,bz=b._data(this);if(!e){b._unmark(true,this)}function bB(bE,bF,bD){var bC=bF[bD];b.removeData(bE,bD,true);bC.stop(e)}if(bw==null){for(bx in bz){if(bz[bx]&&bz[bx].stop&&bx.indexOf(".run")===bx.length-4){bB(this,bz,bx)}}}else{if(bz[bx=bw+".run"]&&bz[bx].stop){bB(this,bz,bx)}}for(bx=bA.length;bx--;){if(bA[bx].elem===this&&(bw==null||bA[bx].queue===bw)){if(e){bA[bx](true)}else{bA[bx].saveState()}by=true;bA.splice(bx,1)}}if(!(e&&by)){b.dequeue(this,bw)}})}});function bh(){setTimeout(at,0);return(a4=b.now())}function at(){a4=L}function a0(bv,e){var bw={};b.each(aH.concat.apply([],aH.slice(0,e)),function(){bw[this]=bv});return bw}b.each({slideDown:a0("show",1),slideUp:a0("hide",1),slideToggle:a0("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,bv){b.fn[e]=function(bw,by,bx){return this.animate(bv,bw,by,bx)}});b.extend({speed:function(bw,bx,bv){var e=bw&&typeof bw==="object"?b.extend({},bw):{complete:bv||!bv&&bx||b.isFunction(bw)&&bw,duration:bw,easing:bv&&bx||bx&&!b.isFunction(bx)&&bx};e.duration=b.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in b.fx.speeds?b.fx.speeds[e.duration]:b.fx.speeds._default;if(e.queue==null||e.queue===true){e.queue="fx"}e.old=e.complete;e.complete=function(by){if(b.isFunction(e.old)){e.old.call(this)}if(e.queue){b.dequeue(this,e.queue)}else{if(by!==false){b._unmark(this)}}};return e},easing:{linear:function(bw,bx,e,bv){return e+bv*bw},swing:function(bw,bx,e,bv){return((-Math.cos(bw*Math.PI)/2)+0.5)*bv+e}},timers:[],fx:function(bv,e,bw){this.options=e;this.elem=bv;this.prop=bw;e.orig=e.orig||{}}});b.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(b.fx.step[this.prop]||b.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var e,bv=b.css(this.elem,this.prop);return isNaN(e=parseFloat(bv))?!bv||bv==="auto"?0:bv:e},custom:function(bz,by,bx){var e=this,bw=b.fx;this.startTime=a4||bh();this.end=by;this.now=this.start=bz;this.pos=this.state=0;this.unit=bx||this.unit||(b.cssNumber[this.prop]?"":"px");function bv(bA){return e.step(bA)}bv.queue=this.options.queue;bv.elem=this.elem;bv.saveState=function(){if(e.options.hide&&b._data(e.elem,"fxshow"+e.prop)===L){b._data(e.elem,"fxshow"+e.prop,e.start)}};if(bv()&&b.timers.push(bv)&&!a3){a3=setInterval(bw.tick,bw.interval)}},show:function(){var e=b._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=e||b.style(this.elem,this.prop);this.options.show=true;if(e!==L){this.custom(this.cur(),e)}else{this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur())}b(this.elem).show()},hide:function(){this.options.orig[this.prop]=b._data(this.elem,"fxshow"+this.prop)||b.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(by){var bA,bB,bv,bx=a4||bh(),e=true,bz=this.elem,bw=this.options;if(by||bx>=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e<bv.length;e++){bw=bv[e];if(!bw()&&bv[e]===bw){bv.splice(e--,1)}}if(!bv.length){b.fx.stop()}},interval:13,stop:function(){clearInterval(a3);a3=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(e){b.style(e.elem,"opacity",e.now)},_default:function(e){if(e.elem.style&&e.elem.style[e.prop]!=null){e.elem.style[e.prop]=e.now+e.unit}else{e.elem[e.prop]=e.now}}}});b.each(["width","height"],function(e,bv){b.fx.step[bv]=function(bw){b.style(bw.elem,bv,Math.max(0,bw.now)+bw.unit)}});if(b.expr&&b.expr.filters){b.expr.filters.animated=function(e){return b.grep(b.timers,function(bv){return e===bv.elem}).length}}function x(bx){if(!Q[bx]){var e=av.body,bv=b("<"+bx+">").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b
+})}})(window);
diff --git a/doc/ref/core.internal/html/json_8c.html b/doc/ref/core.internal/html/json_8c.html
new file mode 100644
index 0000000000..33c69cd6ed
--- /dev/null
+++ b/doc/ref/core.internal/html/json_8c.html
@@ -0,0 +1,145 @@
+<!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: src/core/json/json.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json_8h_source.html">src/core/json/json.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a479fecc70a15ea64d52485891615669f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8c.html#a479fecc70a15ea64d52485891615669f">grpc_json_create</a> (<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:a479fecc70a15ea64d52485891615669f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93347bf054f40cd67dd9a1d46e830ed3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8c.html#a93347bf054f40cd67dd9a1d46e830ed3">grpc_json_destroy</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json)</td></tr>
+<tr class="separator:a93347bf054f40cd67dd9a1d46e830ed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a479fecc70a15ea64d52485891615669f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a93347bf054f40cd67dd9a1d46e830ed3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json_8h.html b/doc/ref/core.internal/html/json_8h.html
new file mode 100644
index 0000000000..b7466df186
--- /dev/null
+++ b/doc/ref/core.internal/html/json_8h.html
@@ -0,0 +1,245 @@
+<!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: src/core/json/json.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json__common_8h_source.html">src/core/json/json_common.h</a>&quot;</code><br/>
+</div>
+<p><a href="json_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html">grpc_json</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ae8825a1aedd3c601c1db76275b0091eb"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__json.html">grpc_json</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html#ae8825a1aedd3c601c1db76275b0091eb">grpc_json</a></td></tr>
+<tr class="separator:ae8825a1aedd3c601c1db76275b0091eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac0d745ec903ab5f5759ebf3bc245b5c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6">grpc_json_parse_string_with_len</a> (char *input, size_t size)</td></tr>
+<tr class="separator:ac0d745ec903ab5f5759ebf3bc245b5c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad66397af23c3f5377035d9fc74e4f401"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html#ad66397af23c3f5377035d9fc74e4f401">grpc_json_parse_string</a> (char *input)</td></tr>
+<tr class="separator:ad66397af23c3f5377035d9fc74e4f401"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d51e00e1deba5579a221647ced4cd71"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html#a4d51e00e1deba5579a221647ced4cd71">grpc_json_dump_to_string</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json, int indent)</td></tr>
+<tr class="separator:a4d51e00e1deba5579a221647ced4cd71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a479fecc70a15ea64d52485891615669f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html#a479fecc70a15ea64d52485891615669f">grpc_json_create</a> (<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:a479fecc70a15ea64d52485891615669f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93347bf054f40cd67dd9a1d46e830ed3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3">grpc_json_destroy</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json)</td></tr>
+<tr class="separator:a93347bf054f40cd67dd9a1d46e830ed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ae8825a1aedd3c601c1db76275b0091eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__json.html">grpc_json</a> <a class="el" href="structgrpc__json.html">grpc_json</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a479fecc70a15ea64d52485891615669f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a93347bf054f40cd67dd9a1d46e830ed3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d51e00e1deba5579a221647ced4cd71"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_json_dump_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>indent</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad66397af23c3f5377035d9fc74e4f401"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json_parse_string </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0d745ec903ab5f5759ebf3bc245b5c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json_parse_string_with_len </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json_8h_source.html b/doc/ref/core.internal/html/json_8h_source.html
new file mode 100644
index 0000000000..f279d772b8
--- /dev/null
+++ b/doc/ref/core.internal/html/json_8h_source.html
@@ -0,0 +1,203 @@
+<!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: src/core/json/json.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">json.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="json_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_JSON_JSON_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_JSON_JSON_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="json__common_8h.html">src/core/json/json_common.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* A tree-like structure to hold json values. The key and value pointers</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> * are not owned by it.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__json.html"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__json.html">grpc_json</a> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2"> 45</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2">next</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee"> 46</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee">prev</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71"> 47</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71">child</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba"> 48</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba">parent</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e"> 50</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> <a class="code" href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e">type</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6"> 51</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6">key</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44"> 52</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44">value</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="json_8h.html#ae8825a1aedd3c601c1db76275b0091eb">grpc_json</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">/* The next two functions are going to parse the input string, and</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> * modify it in the process, in order to use its space to store</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> * all of the keys and values for the returned object tree.</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> * They assume UTF-8 input stream, and will output UTF-8 encoded</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> * strings in the tree. The input stream&#39;s UTF-8 isn&#39;t validated,</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> * as in, what you input is what you get as an output.</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> * All the keys and values in the grpc_json objects will be strings</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> * pointing at your input buffer.</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> * Delete the allocated tree afterward using grpc_json_destroy().</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6">grpc_json_parse_string_with_len</a>(<span class="keywordtype">char</span>* input, <span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="json_8h.html#ad66397af23c3f5377035d9fc74e4f401">grpc_json_parse_string</a>(<span class="keywordtype">char</span>* input);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/* This function will create a new string using gpr_realloc, and will</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> * deserialize the grpc_json tree into it. It&#39;ll be zero-terminated,</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> * but will be allocated in chunks of 256 bytes.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * The indent parameter controls the way the output is formatted.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> * If indent is 0, then newlines will be suppressed as well, and the</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> * output will be condensed at its maximum.</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">char</span>* <a class="code" href="json_8h.html#a4d51e00e1deba5579a221647ced4cd71">grpc_json_dump_to_string</a>(<a class="code" href="structgrpc__json.html">grpc_json</a>* json, <span class="keywordtype">int</span> indent);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* Use these to create or delete a grpc_json object.</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * Deletion is recursive. We will not attempt to free any of the strings</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> * in any of the objects of that tree.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<a class="code" href="structgrpc__json.html">grpc_json</a>* <a class="code" href="json_8h.html#a479fecc70a15ea64d52485891615669f">grpc_json_create</a>(<a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> <a class="code" href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e">type</a>);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3">grpc_json_destroy</a>(<a class="code" href="structgrpc__json.html">grpc_json</a>* json);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_JSON_JSON_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="json_8h_html_ac0d745ec903ab5f5759ebf3bc245b5c6"><div class="ttname"><a href="json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6">grpc_json_parse_string_with_len</a></div><div class="ttdeci">grpc_json * grpc_json_parse_string_with_len(char *input, size_t size)</div><div class="ttdef"><b>Definition:</b> json_string.c:305</div></div>
+<div class="ttc" id="structgrpc__json_html_a37118fc8b75a363d1870b4555148b7b6"><div class="ttname"><a href="structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6">grpc_json::key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> json.h:51</div></div>
+<div class="ttc" id="json__common_8h_html"><div class="ttname"><a href="json__common_8h.html">json_common.h</a></div></div>
+<div class="ttc" id="structgrpc__json_html_a02364ac7e3f997c1cbab6ae4fca4415e"><div class="ttname"><a href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e">grpc_json::type</a></div><div class="ttdeci">grpc_json_type type</div><div class="ttdef"><b>Definition:</b> json.h:50</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a></div><div class="ttdeci">grpc_json_type</div><div class="ttdef"><b>Definition:</b> json_common.h:38</div></div>
+<div class="ttc" id="json_8h_html_ad66397af23c3f5377035d9fc74e4f401"><div class="ttname"><a href="json_8h.html#ad66397af23c3f5377035d9fc74e4f401">grpc_json_parse_string</a></div><div class="ttdeci">grpc_json * grpc_json_parse_string(char *input)</div><div class="ttdef"><b>Definition:</b> json_string.c:332</div></div>
+<div class="ttc" id="structgrpc__json_html_aaa4adfbfe373e8980e898102c942cb71"><div class="ttname"><a href="structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71">grpc_json::child</a></div><div class="ttdeci">struct grpc_json * child</div><div class="ttdef"><b>Definition:</b> json.h:47</div></div>
+<div class="ttc" id="json_8h_html_a4d51e00e1deba5579a221647ced4cd71"><div class="ttname"><a href="json_8h.html#a4d51e00e1deba5579a221647ced4cd71">grpc_json_dump_to_string</a></div><div class="ttdeci">char * grpc_json_dump_to_string(grpc_json *json, int indent)</div><div class="ttdef"><b>Definition:</b> json_string.c:378</div></div>
+<div class="ttc" id="structgrpc__json_html_acfb3c395c22f57d7a07e7149bb16db44"><div class="ttname"><a href="structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44">grpc_json::value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> json.h:52</div></div>
+<div class="ttc" id="structgrpc__json_html_adeb16bd124a30378d80005a3c89d73e2"><div class="ttname"><a href="structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2">grpc_json::next</a></div><div class="ttdeci">struct grpc_json * next</div><div class="ttdef"><b>Definition:</b> json.h:45</div></div>
+<div class="ttc" id="structgrpc__json_html"><div class="ttname"><a href="structgrpc__json.html">grpc_json</a></div><div class="ttdef"><b>Definition:</b> json.h:44</div></div>
+<div class="ttc" id="json_8h_html_ae8825a1aedd3c601c1db76275b0091eb"><div class="ttname"><a href="json_8h.html#ae8825a1aedd3c601c1db76275b0091eb">grpc_json</a></div><div class="ttdeci">struct grpc_json grpc_json</div></div>
+<div class="ttc" id="structgrpc__json_html_aad4e1114d877f30ca18de4748995d7ba"><div class="ttname"><a href="structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba">grpc_json::parent</a></div><div class="ttdeci">struct grpc_json * parent</div><div class="ttdef"><b>Definition:</b> json.h:48</div></div>
+<div class="ttc" id="json_8h_html_a479fecc70a15ea64d52485891615669f"><div class="ttname"><a href="json_8h.html#a479fecc70a15ea64d52485891615669f">grpc_json_create</a></div><div class="ttdeci">grpc_json * grpc_json_create(grpc_json_type type)</div><div class="ttdef"><b>Definition:</b> json.c:40</div></div>
+<div class="ttc" id="structgrpc__json_html_a91f0018795a9937b32e3f1517e3646ee"><div class="ttname"><a href="structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee">grpc_json::prev</a></div><div class="ttdeci">struct grpc_json * prev</div><div class="ttdef"><b>Definition:</b> json.h:46</div></div>
+<div class="ttc" id="json_8h_html_a93347bf054f40cd67dd9a1d46e830ed3"><div class="ttname"><a href="json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3">grpc_json_destroy</a></div><div class="ttdeci">void grpc_json_destroy(grpc_json *json)</div><div class="ttdef"><b>Definition:</b> json.c:48</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/json__common_8h.html b/doc/ref/core.internal/html/json__common_8h.html
new file mode 100644
index 0000000000..da81646049
--- /dev/null
+++ b/doc/ref/core.internal/html/json__common_8h.html
@@ -0,0 +1,151 @@
+<!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: src/core/json/json_common.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">json_common.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="json__common_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a3e82983bba0988c52251467566a07ce2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> { <br/>
+&#160;&#160;<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1">GRPC_JSON_OBJECT</a>,
+<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877">GRPC_JSON_ARRAY</a>,
+<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79">GRPC_JSON_STRING</a>,
+<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44">GRPC_JSON_NUMBER</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b">GRPC_JSON_TRUE</a>,
+<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe">GRPC_JSON_FALSE</a>,
+<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880">GRPC_JSON_NULL</a>,
+<a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63">GRPC_JSON_TOP_LEVEL</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a3e82983bba0988c52251467566a07ce2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a3e82983bba0988c52251467566a07ce2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1"></a>GRPC_JSON_OBJECT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877"></a>GRPC_JSON_ARRAY</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79"></a>GRPC_JSON_STRING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44"></a>GRPC_JSON_NUMBER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b"></a>GRPC_JSON_TRUE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe"></a>GRPC_JSON_FALSE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880"></a>GRPC_JSON_NULL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63"></a>GRPC_JSON_TOP_LEVEL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__common_8h_source.html b/doc/ref/core.internal/html/json__common_8h_source.html
new file mode 100644
index 0000000000..682cb4ca6b
--- /dev/null
+++ b/doc/ref/core.internal/html/json__common_8h_source.html
@@ -0,0 +1,157 @@
+<!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: src/core/json/json_common.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">json_common.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="json__common_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_JSON_JSON_COMMON_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_JSON_JSON_COMMON_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* The various json types. */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2"> 38</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1"> 39</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1">GRPC_JSON_OBJECT</a>,</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877"> 40</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877">GRPC_JSON_ARRAY</a>,</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79"> 41</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79">GRPC_JSON_STRING</a>,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44"> 42</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44">GRPC_JSON_NUMBER</a>,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b"> 43</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b">GRPC_JSON_TRUE</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe"> 44</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe">GRPC_JSON_FALSE</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880"> 45</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880">GRPC_JSON_NULL</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63"> 46</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63">GRPC_JSON_TOP_LEVEL</a></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_JSON_JSON_COMMON_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe">GRPC_JSON_FALSE</a></div><div class="ttdef"><b>Definition:</b> json_common.h:44</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a></div><div class="ttdeci">grpc_json_type</div><div class="ttdef"><b>Definition:</b> json_common.h:38</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1">GRPC_JSON_OBJECT</a></div><div class="ttdef"><b>Definition:</b> json_common.h:39</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877">GRPC_JSON_ARRAY</a></div><div class="ttdef"><b>Definition:</b> json_common.h:40</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44">GRPC_JSON_NUMBER</a></div><div class="ttdef"><b>Definition:</b> json_common.h:42</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b">GRPC_JSON_TRUE</a></div><div class="ttdef"><b>Definition:</b> json_common.h:43</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63">GRPC_JSON_TOP_LEVEL</a></div><div class="ttdef"><b>Definition:</b> json_common.h:46</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79">GRPC_JSON_STRING</a></div><div class="ttdef"><b>Definition:</b> json_common.h:41</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880">GRPC_JSON_NULL</a></div><div class="ttdef"><b>Definition:</b> json_common.h:45</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/json__reader_8c.html b/doc/ref/core.internal/html/json__reader_8c.html
new file mode 100644
index 0000000000..1c096825a6
--- /dev/null
+++ b/doc/ref/core.internal/html/json__reader_8c.html
@@ -0,0 +1,179 @@
+<!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: src/core/json/json_reader.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json_reader.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json__reader_8h_source.html">src/core/json/json_reader.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acb17637cdaf7d1bc6c5403eb2cdd2b1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8c.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">grpc_json_reader_init</a> (<a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *reader, <a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> *vtable, void *userdata)</td></tr>
+<tr class="separator:acb17637cdaf7d1bc6c5403eb2cdd2b1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca35ff1405586201c145f8411ce4f611"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8c.html#aca35ff1405586201c145f8411ce4f611">grpc_json_reader_is_complete</a> (<a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *reader)</td></tr>
+<tr class="separator:aca35ff1405586201c145f8411ce4f611"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a369a903219dd343358dad9e4cc67cedb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8c.html#a369a903219dd343358dad9e4cc67cedb">grpc_json_reader_run</a> (<a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *reader)</td></tr>
+<tr class="separator:a369a903219dd343358dad9e4cc67cedb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="acb17637cdaf7d1bc6c5403eb2cdd2b1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_reader_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aca35ff1405586201c145f8411ce4f611"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader_is_complete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a369a903219dd343358dad9e4cc67cedb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a> grpc_json_reader_run </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__reader_8h.html b/doc/ref/core.internal/html/json__reader_8h.html
new file mode 100644
index 0000000000..73dc4174eb
--- /dev/null
+++ b/doc/ref/core.internal/html/json__reader_8h.html
@@ -0,0 +1,394 @@
+<!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: src/core/json/json_reader.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json_reader.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json__common_8h_source.html">src/core/json/json_common.h</a>&quot;</code><br/>
+</div>
+<p><a href="json__reader_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad0e9eed0713ae7021f4b72a0d45784b2"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2">grpc_json_reader_vtable</a></td></tr>
+<tr class="separator:ad0e9eed0713ae7021f4b72a0d45784b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e4389a352e99df3e5d9cb59a6c14929"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929">grpc_json_reader</a></td></tr>
+<tr class="separator:a2e4389a352e99df3e5d9cb59a6c14929"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:ab49e2221d9261d6dbeba7714f49998c3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a> { <br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd">GRPC_JSON_STATE_OBJECT_KEY_BEGIN</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf">GRPC_JSON_STATE_OBJECT_KEY_STRING</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f">GRPC_JSON_STATE_OBJECT_KEY_END</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114">GRPC_JSON_STATE_VALUE_BEGIN</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f">GRPC_JSON_STATE_VALUE_STRING</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3">GRPC_JSON_STATE_STRING_ESCAPE</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b">GRPC_JSON_STATE_STRING_ESCAPE_U1</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829">GRPC_JSON_STATE_STRING_ESCAPE_U2</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca">GRPC_JSON_STATE_STRING_ESCAPE_U3</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f">GRPC_JSON_STATE_STRING_ESCAPE_U4</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a">GRPC_JSON_STATE_VALUE_NUMBER</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4">GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1">GRPC_JSON_STATE_VALUE_NUMBER_ZERO</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692">GRPC_JSON_STATE_VALUE_NUMBER_DOT</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9">GRPC_JSON_STATE_VALUE_NUMBER_E</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746">GRPC_JSON_STATE_VALUE_NUMBER_EPM</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b">GRPC_JSON_STATE_VALUE_TRUE_R</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b">GRPC_JSON_STATE_VALUE_TRUE_U</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c">GRPC_JSON_STATE_VALUE_TRUE_E</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c">GRPC_JSON_STATE_VALUE_FALSE_A</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7">GRPC_JSON_STATE_VALUE_FALSE_L</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9">GRPC_JSON_STATE_VALUE_FALSE_S</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94">GRPC_JSON_STATE_VALUE_FALSE_E</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2">GRPC_JSON_STATE_VALUE_NULL_U</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916">GRPC_JSON_STATE_VALUE_NULL_L1</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5">GRPC_JSON_STATE_VALUE_NULL_L2</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0">GRPC_JSON_STATE_VALUE_END</a>,
+<a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab">GRPC_JSON_STATE_END</a>
+<br/>
+ }</td></tr>
+<tr class="separator:ab49e2221d9261d6dbeba7714f49998c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16af7b253440dadd46a80a4b9fddba4d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9">GRPC_JSON_READ_CHAR_EOF</a> = 0x7ffffff0,
+<a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9">GRPC_JSON_READ_CHAR_EAGAIN</a>,
+<a class="el" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc">GRPC_JSON_READ_CHAR_ERROR</a>
+ }</td></tr>
+<tr class="separator:a16af7b253440dadd46a80a4b9fddba4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab958fafc9819a82736ac5f030feb8d24"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a> { <br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7">GRPC_JSON_DONE</a>,
+<a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0">GRPC_JSON_EAGAIN</a>,
+<a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc">GRPC_JSON_READ_ERROR</a>,
+<a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c">GRPC_JSON_PARSE_ERROR</a>,
+<br/>
+&#160;&#160;<a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8">GRPC_JSON_INTERNAL_ERROR</a>
+<br/>
+ }</td></tr>
+<tr class="separator:ab958fafc9819a82736ac5f030feb8d24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a369a903219dd343358dad9e4cc67cedb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb">grpc_json_reader_run</a> (<a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *reader)</td></tr>
+<tr class="separator:a369a903219dd343358dad9e4cc67cedb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb17637cdaf7d1bc6c5403eb2cdd2b1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">grpc_json_reader_init</a> (<a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *reader, <a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> *vtable, void *userdata)</td></tr>
+<tr class="separator:acb17637cdaf7d1bc6c5403eb2cdd2b1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca35ff1405586201c145f8411ce4f611"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__reader_8h.html#aca35ff1405586201c145f8411ce4f611">grpc_json_reader_is_complete</a> (<a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *reader)</td></tr>
+<tr class="separator:aca35ff1405586201c145f8411ce4f611"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a2e4389a352e99df3e5d9cb59a6c14929"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> <a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad0e9eed0713ae7021f4b72a0d45784b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> <a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a16af7b253440dadd46a80a4b9fddba4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9"></a>GRPC_JSON_READ_CHAR_EOF</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9"></a>GRPC_JSON_READ_CHAR_EAGAIN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc"></a>GRPC_JSON_READ_CHAR_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd"></a>GRPC_JSON_STATE_OBJECT_KEY_BEGIN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf"></a>GRPC_JSON_STATE_OBJECT_KEY_STRING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f"></a>GRPC_JSON_STATE_OBJECT_KEY_END</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114"></a>GRPC_JSON_STATE_VALUE_BEGIN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f"></a>GRPC_JSON_STATE_VALUE_STRING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3"></a>GRPC_JSON_STATE_STRING_ESCAPE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b"></a>GRPC_JSON_STATE_STRING_ESCAPE_U1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829"></a>GRPC_JSON_STATE_STRING_ESCAPE_U2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca"></a>GRPC_JSON_STATE_STRING_ESCAPE_U3</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f"></a>GRPC_JSON_STATE_STRING_ESCAPE_U4</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a"></a>GRPC_JSON_STATE_VALUE_NUMBER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4"></a>GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1"></a>GRPC_JSON_STATE_VALUE_NUMBER_ZERO</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692"></a>GRPC_JSON_STATE_VALUE_NUMBER_DOT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9"></a>GRPC_JSON_STATE_VALUE_NUMBER_E</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746"></a>GRPC_JSON_STATE_VALUE_NUMBER_EPM</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b"></a>GRPC_JSON_STATE_VALUE_TRUE_R</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b"></a>GRPC_JSON_STATE_VALUE_TRUE_U</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c"></a>GRPC_JSON_STATE_VALUE_TRUE_E</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c"></a>GRPC_JSON_STATE_VALUE_FALSE_A</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7"></a>GRPC_JSON_STATE_VALUE_FALSE_L</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9"></a>GRPC_JSON_STATE_VALUE_FALSE_S</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94"></a>GRPC_JSON_STATE_VALUE_FALSE_E</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2"></a>GRPC_JSON_STATE_VALUE_NULL_U</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916"></a>GRPC_JSON_STATE_VALUE_NULL_L1</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5"></a>GRPC_JSON_STATE_VALUE_NULL_L2</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0"></a>GRPC_JSON_STATE_VALUE_END</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab"></a>GRPC_JSON_STATE_END</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="ab958fafc9819a82736ac5f030feb8d24"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7"></a>GRPC_JSON_DONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0"></a>GRPC_JSON_EAGAIN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc"></a>GRPC_JSON_READ_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c"></a>GRPC_JSON_PARSE_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8"></a>GRPC_JSON_INTERNAL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="acb17637cdaf7d1bc6c5403eb2cdd2b1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_reader_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aca35ff1405586201c145f8411ce4f611"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader_is_complete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a369a903219dd343358dad9e4cc67cedb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a> grpc_json_reader_run </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__reader.html">grpc_json_reader</a> *&#160;</td>
+ <td class="paramname"><em>reader</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__reader_8h_source.html b/doc/ref/core.internal/html/json__reader_8h_source.html
new file mode 100644
index 0000000000..56886fc894
--- /dev/null
+++ b/doc/ref/core.internal/html/json__reader_8h_source.html
@@ -0,0 +1,331 @@
+<!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: src/core/json/json_reader.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">json_reader.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="json__reader_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_JSON_JSON_READER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_JSON_JSON_READER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="json__common_8h.html">src/core/json/json_common.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd"> 41</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd">GRPC_JSON_STATE_OBJECT_KEY_BEGIN</a>,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf"> 42</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf">GRPC_JSON_STATE_OBJECT_KEY_STRING</a>,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f"> 43</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f">GRPC_JSON_STATE_OBJECT_KEY_END</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114"> 44</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114">GRPC_JSON_STATE_VALUE_BEGIN</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f"> 45</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f">GRPC_JSON_STATE_VALUE_STRING</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3"> 46</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3">GRPC_JSON_STATE_STRING_ESCAPE</a>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b"> 47</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b">GRPC_JSON_STATE_STRING_ESCAPE_U1</a>,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829"> 48</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829">GRPC_JSON_STATE_STRING_ESCAPE_U2</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca"> 49</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca">GRPC_JSON_STATE_STRING_ESCAPE_U3</a>,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f"> 50</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f">GRPC_JSON_STATE_STRING_ESCAPE_U4</a>,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a"> 51</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a">GRPC_JSON_STATE_VALUE_NUMBER</a>,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4"> 52</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4">GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL</a>,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1"> 53</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1">GRPC_JSON_STATE_VALUE_NUMBER_ZERO</a>,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692"> 54</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692">GRPC_JSON_STATE_VALUE_NUMBER_DOT</a>,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9"> 55</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9">GRPC_JSON_STATE_VALUE_NUMBER_E</a>,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746"> 56</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746">GRPC_JSON_STATE_VALUE_NUMBER_EPM</a>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b"> 57</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b">GRPC_JSON_STATE_VALUE_TRUE_R</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b"> 58</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b">GRPC_JSON_STATE_VALUE_TRUE_U</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c"> 59</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c">GRPC_JSON_STATE_VALUE_TRUE_E</a>,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c"> 60</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c">GRPC_JSON_STATE_VALUE_FALSE_A</a>,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7"> 61</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7">GRPC_JSON_STATE_VALUE_FALSE_L</a>,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9"> 62</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9">GRPC_JSON_STATE_VALUE_FALSE_S</a>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94"> 63</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94">GRPC_JSON_STATE_VALUE_FALSE_E</a>,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2"> 64</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2">GRPC_JSON_STATE_VALUE_NULL_U</a>,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916"> 65</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916">GRPC_JSON_STATE_VALUE_NULL_L1</a>,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5"> 66</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5">GRPC_JSON_STATE_VALUE_NULL_L2</a>,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0"> 67</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0">GRPC_JSON_STATE_VALUE_END</a>,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab"> 68</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab">GRPC_JSON_STATE_END</a></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;} <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* The first non-unicode value is 0x110000. But let&#39;s pick</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> * a value high enough to start our error codes from. These</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * values are safe to return from the read_char function.</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9"> 76</a></span>&#160; <a class="code" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9">GRPC_JSON_READ_CHAR_EOF</a> = 0x7ffffff0,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9"> 77</a></span>&#160; <a class="code" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9">GRPC_JSON_READ_CHAR_EAGAIN</a>,</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc"> 78</a></span>&#160; <a class="code" href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc">GRPC_JSON_READ_CHAR_ERROR</a></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;};</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__json__reader.html">grpc_json_reader</a>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html"> 83</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">/* Clears your internal string scratchpad. */</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303"> 85</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303">string_clear</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">/* Adds a char to the string scratchpad. */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19"> 87</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19">string_add_char</a>)(<span class="keywordtype">void</span>* userdata, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> c);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="comment">/* Adds a utf32 char to the string scratchpad. */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612"> 89</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612">string_add_utf32</a>)(<span class="keywordtype">void</span>* userdata, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> c);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">/* Reads a character from your input. May be utf-8, 16 or 32. */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca"> 91</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> (*<a class="code" href="structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca">read_char</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">/* Starts a container of type GRPC_JSON_ARRAY or GRPC_JSON_OBJECT. */</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4"> 93</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4">container_begins</a>)(<span class="keywordtype">void</span>* userdata, <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="comment">/* Ends the current container. Must return the type of its parent. */</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec"> 95</a></span>&#160; <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> (*<a class="code" href="structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec">container_ends</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">/* Your internal string scratchpad is an object&#39;s key. */</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7"> 97</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7">set_key</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">/* Your internal string scratchpad is a string value. */</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4"> 99</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4">set_string</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">/* Your internal string scratchpad is a numerical value. Return 1 if valid. */</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596"> 101</a></span>&#160; int (*<a class="code" href="structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596">set_number</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">/* Sets the values true, false or null. */</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e"> 103</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e">set_true</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6"> 104</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6">set_false</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff"> 105</a></span>&#160; void (*<a class="code" href="structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff">set_null</a>)(<span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;} <a class="code" href="json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2">grpc_json_reader_vtable</a>;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html"> 108</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__json__reader.html">grpc_json_reader</a> {</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">/* That structure is fully private, and initialized by grpc_json_reader_init.</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> * The definition is public so you can put it on your stack.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc"> 113</a></span>&#160; <span class="keywordtype">void</span>* <a class="code" href="structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc">userdata</a>;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5"> 114</a></span>&#160; <a class="code" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a>* <a class="code" href="structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5">vtable</a>;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4"> 115</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4">depth</a>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6"> 116</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6">in_object</a>;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438"> 117</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438">in_array</a>;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107"> 118</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107">escaped_string_was_key</a>;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3"> 119</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3">container_just_begun</a>;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1"> 120</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562">unicode_char</a>, <a class="code" href="structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1">unicode_high_surrogate</a>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245"> 121</a></span>&#160; <a class="code" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a> <a class="code" href="structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245">state</a>;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;} <a class="code" href="json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929">grpc_json_reader</a>;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">/* The return type of the parser. */</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24"> 125</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7"> 126</a></span>&#160; <a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7">GRPC_JSON_DONE</a>, <span class="comment">/* The parser finished successfully. */</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0"> 127</a></span>&#160; <a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0">GRPC_JSON_EAGAIN</a>, <span class="comment">/* The parser yields to get more data. */</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc"> 128</a></span>&#160; <a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc">GRPC_JSON_READ_ERROR</a>, <span class="comment">/* The parser passes through a read error. */</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c"> 129</a></span>&#160; <a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c">GRPC_JSON_PARSE_ERROR</a>, <span class="comment">/* The parser found an error in the json stream. */</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8"> 130</a></span>&#160; <a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8">GRPC_JSON_INTERNAL_ERROR</a> <span class="comment">/* The parser got an internal error. */</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;} <a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a>;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment">/* Call this function to start parsing the input. It will return the following:</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"> * . GRPC_JSON_DONE if the input got eof, and the parsing finished</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> * successfully.</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> * . GRPC_JSON_EAGAIN if the read_char function returned again. Call the</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> * parser again as needed. It is okay to call the parser in polling mode,</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> * although a bit dull.</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> * . GRPC_JSON_READ_ERROR if the read_char function returned an error. The</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> * state isn&#39;t broken however, and the function can be called again if the</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> * error has been corrected. But please use the EAGAIN feature instead for</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> * consistency.</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> * . GRPC_JSON_PARSE_ERROR if the input was somehow invalid.</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> * . GRPC_JSON_INTERNAL_ERROR if the parser somehow ended into an invalid</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> * internal state.</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<a class="code" href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a> <a class="code" href="json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb">grpc_json_reader_run</a>(<a class="code" href="structgrpc__json__reader.html">grpc_json_reader</a>* reader);</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment">/* Call this function to initialize the reader structure. */</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">grpc_json_reader_init</a>(<a class="code" href="structgrpc__json__reader.html">grpc_json_reader</a>* reader,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a>* vtable, <span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment">/* You may call this from the read_char callback if you don&#39;t know where is the</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> * end of your input stream, and you&#39;d like the json reader to hint you that it</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> * has completed reading its input, so you can return an EOF to it. Note that</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> * there might still be trailing whitespaces after that point.</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">int</span> <a class="code" href="json__reader_8h.html#aca35ff1405586201c145f8411ce4f611">grpc_json_reader_is_complete</a>(<a class="code" href="structgrpc__json__reader.html">grpc_json_reader</a>* reader);</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_JSON_JSON_READER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__json__reader_html_ab52b1665e66ad5e4d8aceaed833831e6"><div class="ttname"><a href="structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6">grpc_json_reader::in_object</a></div><div class="ttdeci">int in_object</div><div class="ttdef"><b>Definition:</b> json_reader.h:116</div></div>
+<div class="ttc" id="json__reader_8h_html_a369a903219dd343358dad9e4cc67cedb"><div class="ttname"><a href="json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb">grpc_json_reader_run</a></div><div class="ttdeci">grpc_json_reader_status grpc_json_reader_run(grpc_json_reader *reader)</div><div class="ttdef"><b>Definition:</b> json_reader.c:108</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a31c9c8c5f283107290d4a20bf25315ec"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec">grpc_json_reader_vtable::container_ends</a></div><div class="ttdeci">grpc_json_type(* container_ends)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:95</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a5779d4adf33c3b3364d82390e4c1ad19"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19">grpc_json_reader_vtable::string_add_char</a></div><div class="ttdeci">void(* string_add_char)(void *userdata, gpr_uint32 c)</div><div class="ttdef"><b>Definition:</b> json_reader.h:87</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7">GRPC_JSON_STATE_VALUE_FALSE_L</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:61</div></div>
+<div class="ttc" id="json__reader_8h_html_ad0e9eed0713ae7021f4b72a0d45784b2"><div class="ttname"><a href="json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2">grpc_json_reader_vtable</a></div><div class="ttdeci">struct grpc_json_reader_vtable grpc_json_reader_vtable</div></div>
+<div class="ttc" id="json__reader_8h_html_acb17637cdaf7d1bc6c5403eb2cdd2b1b"><div class="ttname"><a href="json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b">grpc_json_reader_init</a></div><div class="ttdeci">void grpc_json_reader_init(grpc_json_reader *reader, grpc_json_reader_vtable *vtable, void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.c:94</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2">GRPC_JSON_STATE_VALUE_NULL_U</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:64</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a8c51726663241af3323dc11320d82ad3"><div class="ttname"><a href="structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3">grpc_json_reader::container_just_begun</a></div><div class="ttdeci">int container_just_begun</div><div class="ttdef"><b>Definition:</b> json_reader.h:119</div></div>
+<div class="ttc" id="json__common_8h_html"><div class="ttname"><a href="json__common_8h.html">json_common.h</a></div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html"><div class="ttname"><a href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:83</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a914f3609f07d322bb7ce000dc95324fc"><div class="ttname"><a href="structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc">grpc_json_reader::userdata</a></div><div class="ttdeci">void * userdata</div><div class="ttdef"><b>Definition:</b> json_reader.h:113</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a4d52c7e18e2b74e0cdfe8f0640f79612"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612">grpc_json_reader_vtable::string_add_utf32</a></div><div class="ttdeci">void(* string_add_utf32)(void *userdata, gpr_uint32 c)</div><div class="ttdef"><b>Definition:</b> json_reader.h:89</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114">GRPC_JSON_STATE_VALUE_BEGIN</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:44</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a1a897f511ba9249e5ecc7317d9406303"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303">grpc_json_reader_vtable::string_clear</a></div><div class="ttdeci">void(* string_clear)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:85</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746">GRPC_JSON_STATE_VALUE_NUMBER_EPM</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:56</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b">GRPC_JSON_STATE_STRING_ESCAPE_U1</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:47</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829">GRPC_JSON_STATE_STRING_ESCAPE_U2</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:48</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a39f2535f918f767506b9665e36f97fb4"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4">grpc_json_reader_vtable::set_string</a></div><div class="ttdeci">void(* set_string)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:99</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_ab66de246c1efaad68da9683f017966ff"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff">grpc_json_reader_vtable::set_null</a></div><div class="ttdeci">void(* set_null)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:105</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a8e874c0879d449071610b7643fc7ffe1"><div class="ttname"><a href="structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1">grpc_json_reader::unicode_high_surrogate</a></div><div class="ttdeci">gpr_uint16 unicode_high_surrogate</div><div class="ttdef"><b>Definition:</b> json_reader.h:120</div></div>
+<div class="ttc" id="json__reader_8h_html_ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7"><div class="ttname"><a href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7">GRPC_JSON_DONE</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:126</div></div>
+<div class="ttc" id="json__reader_8h_html_ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8"><div class="ttname"><a href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8">GRPC_JSON_INTERNAL_ERROR</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:130</div></div>
+<div class="ttc" id="json__reader_8h_html_ab958fafc9819a82736ac5f030feb8d24"><div class="ttname"><a href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24">grpc_json_reader_status</a></div><div class="ttdeci">grpc_json_reader_status</div><div class="ttdef"><b>Definition:</b> json_reader.h:125</div></div>
+<div class="ttc" id="json__reader_8h_html_a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9"><div class="ttname"><a href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9">GRPC_JSON_READ_CHAR_EAGAIN</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:77</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9">GRPC_JSON_STATE_VALUE_NUMBER_E</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:55</div></div>
+<div class="ttc" id="json__reader_8h_html_ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c"><div class="ttname"><a href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c">GRPC_JSON_PARSE_ERROR</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:129</div></div>
+<div class="ttc" id="json__reader_8h_html_ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc"><div class="ttname"><a href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc">GRPC_JSON_READ_ERROR</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:128</div></div>
+<div class="ttc" id="json__reader_8h_html_ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0"><div class="ttname"><a href="json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0">GRPC_JSON_EAGAIN</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:127</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a></div><div class="ttdeci">grpc_json_type</div><div class="ttdef"><b>Definition:</b> json_common.h:38</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94">GRPC_JSON_STATE_VALUE_FALSE_E</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:63</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd">GRPC_JSON_STATE_OBJECT_KEY_BEGIN</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:41</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a8643069f58019ea5ac61fd2fd1180562"><div class="ttname"><a href="structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562">grpc_json_reader::unicode_char</a></div><div class="ttdeci">gpr_uint16 unicode_char</div><div class="ttdef"><b>Definition:</b> json_reader.h:120</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1">GRPC_JSON_STATE_VALUE_NUMBER_ZERO</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:53</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9">GRPC_JSON_STATE_VALUE_FALSE_S</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:62</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f">GRPC_JSON_STATE_STRING_ESCAPE_U4</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:50</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a485d8fd2e05cae9a2152bdbd34162107"><div class="ttname"><a href="structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107">grpc_json_reader::escaped_string_was_key</a></div><div class="ttdeci">int escaped_string_was_key</div><div class="ttdef"><b>Definition:</b> json_reader.h:118</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a0c2f2a43dcad121aa5ae4d579178c438"><div class="ttname"><a href="structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438">grpc_json_reader::in_array</a></div><div class="ttdeci">int in_array</div><div class="ttdef"><b>Definition:</b> json_reader.h:117</div></div>
+<div class="ttc" id="port__platform_8h_html_abb7bceac4325643af77af51c7b6af371"><div class="ttname"><a href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></div><div class="ttdeci">uint16_t gpr_uint16</div><div class="ttdef"><b>Definition:</b> port_platform.h:308</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf">GRPC_JSON_STATE_OBJECT_KEY_STRING</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:42</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a></div><div class="ttdeci">grpc_json_reader_state</div><div class="ttdef"><b>Definition:</b> json_reader.h:40</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_ac498ef0a1c3dc96126cd86f47f70afa5"><div class="ttname"><a href="structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5">grpc_json_reader::vtable</a></div><div class="ttdeci">grpc_json_reader_vtable * vtable</div><div class="ttdef"><b>Definition:</b> json_reader.h:114</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4">GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:52</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0">GRPC_JSON_STATE_VALUE_END</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:67</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a">GRPC_JSON_STATE_VALUE_NUMBER</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:51</div></div>
+<div class="ttc" id="json__reader_8h_html_a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9"><div class="ttname"><a href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9">GRPC_JSON_READ_CHAR_EOF</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:76</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a4f5529f47edb119c9ee8a36800cf436e"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e">grpc_json_reader_vtable::set_true</a></div><div class="ttdeci">void(* set_true)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:103</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_ab55442ecf7aed98d3b638f171faff596"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596">grpc_json_reader_vtable::set_number</a></div><div class="ttdeci">int(* set_number)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:101</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f">GRPC_JSON_STATE_OBJECT_KEY_END</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:43</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5">GRPC_JSON_STATE_VALUE_NULL_L2</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:66</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_ae7b4f56a6f58059642e1eaaff14350c4"><div class="ttname"><a href="structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4">grpc_json_reader::depth</a></div><div class="ttdeci">int depth</div><div class="ttdef"><b>Definition:</b> json_reader.h:115</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab">GRPC_JSON_STATE_END</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:68</div></div>
+<div class="ttc" id="structgrpc__json__reader_html_a572a9af46e885528855a86fca4535245"><div class="ttname"><a href="structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245">grpc_json_reader::state</a></div><div class="ttdeci">grpc_json_reader_state state</div><div class="ttdef"><b>Definition:</b> json_reader.h:121</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_ab5c62db09b25908b401cf00eb84861ca"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca">grpc_json_reader_vtable::read_char</a></div><div class="ttdeci">gpr_uint32(* read_char)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:91</div></div>
+<div class="ttc" id="json__reader_8h_html_aca35ff1405586201c145f8411ce4f611"><div class="ttname"><a href="json__reader_8h.html#aca35ff1405586201c145f8411ce4f611">grpc_json_reader_is_complete</a></div><div class="ttdeci">int grpc_json_reader_is_complete(grpc_json_reader *reader)</div><div class="ttdef"><b>Definition:</b> json_reader.c:103</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca">GRPC_JSON_STATE_STRING_ESCAPE_U3</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:49</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a242f9eb6d061c65a99961437aff699d4"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4">grpc_json_reader_vtable::container_begins</a></div><div class="ttdeci">void(* container_begins)(void *userdata, grpc_json_type type)</div><div class="ttdef"><b>Definition:</b> json_reader.h:93</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692">GRPC_JSON_STATE_VALUE_NUMBER_DOT</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:54</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916">GRPC_JSON_STATE_VALUE_NULL_L1</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:65</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f">GRPC_JSON_STATE_VALUE_STRING</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:45</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c">GRPC_JSON_STATE_VALUE_FALSE_A</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:60</div></div>
+<div class="ttc" id="json__reader_8h_html_a2e4389a352e99df3e5d9cb59a6c14929"><div class="ttname"><a href="json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929">grpc_json_reader</a></div><div class="ttdeci">struct grpc_json_reader grpc_json_reader</div></div>
+<div class="ttc" id="structgrpc__json__reader_html"><div class="ttname"><a href="structgrpc__json__reader.html">grpc_json_reader</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:108</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a697d38cfb36a9cb41ace4170296f9cd7"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7">grpc_json_reader_vtable::set_key</a></div><div class="ttdeci">void(* set_key)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:97</div></div>
+<div class="ttc" id="json__reader_8h_html_a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc"><div class="ttname"><a href="json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc">GRPC_JSON_READ_CHAR_ERROR</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:78</div></div>
+<div class="ttc" id="structgrpc__json__reader__vtable_html_a49fbb01d6b590b1c2e1fa52e6eb31ce6"><div class="ttname"><a href="structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6">grpc_json_reader_vtable::set_false</a></div><div class="ttdeci">void(* set_false)(void *userdata)</div><div class="ttdef"><b>Definition:</b> json_reader.h:104</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c">GRPC_JSON_STATE_VALUE_TRUE_E</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:59</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3">GRPC_JSON_STATE_STRING_ESCAPE</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:46</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b">GRPC_JSON_STATE_VALUE_TRUE_R</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:57</div></div>
+<div class="ttc" id="json__reader_8h_html_ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b"><div class="ttname"><a href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b">GRPC_JSON_STATE_VALUE_TRUE_U</a></div><div class="ttdef"><b>Definition:</b> json_reader.h:58</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/json__string_8c.html b/doc/ref/core.internal/html/json__string_8c.html
new file mode 100644
index 0000000000..8fc1c0444d
--- /dev/null
+++ b/doc/ref/core.internal/html/json__string_8c.html
@@ -0,0 +1,214 @@
+<!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: src/core/json/json_string.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json_string.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json_8h_source.html">src/core/json/json.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="json__reader_8h_source.html">src/core/json/json_reader.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="json__writer_8h_source.html">src/core/json/json_writer.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html">json_reader_userdata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__writer__userdata.html">json_writer_userdata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a1cb2ee1031195d596402be8c2c7e8065"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__string_8c.html#a1cb2ee1031195d596402be8c2c7e8065">UNBOUND_JSON_STRING_LENGTH</a>&#160;&#160;&#160;0x7fffffff</td></tr>
+<tr class="separator:a1cb2ee1031195d596402be8c2c7e8065"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac0d745ec903ab5f5759ebf3bc245b5c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__string_8c.html#ac0d745ec903ab5f5759ebf3bc245b5c6">grpc_json_parse_string_with_len</a> (char *input, size_t size)</td></tr>
+<tr class="separator:ac0d745ec903ab5f5759ebf3bc245b5c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad66397af23c3f5377035d9fc74e4f401"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__string_8c.html#ad66397af23c3f5377035d9fc74e4f401">grpc_json_parse_string</a> (char *input)</td></tr>
+<tr class="separator:ad66397af23c3f5377035d9fc74e4f401"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d51e00e1deba5579a221647ced4cd71"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__string_8c.html#a4d51e00e1deba5579a221647ced4cd71">grpc_json_dump_to_string</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json, int indent)</td></tr>
+<tr class="separator:a4d51e00e1deba5579a221647ced4cd71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a1cb2ee1031195d596402be8c2c7e8065"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define UNBOUND_JSON_STRING_LENGTH&#160;&#160;&#160;0x7fffffff</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4d51e00e1deba5579a221647ced4cd71"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_json_dump_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>indent</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad66397af23c3f5377035d9fc74e4f401"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json_parse_string </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>input</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0d745ec903ab5f5759ebf3bc245b5c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json_parse_string_with_len </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__token_8c.html b/doc/ref/core.internal/html/json__token_8c.html
new file mode 100644
index 0000000000..303766dca9
--- /dev/null
+++ b/doc/ref/core.internal/html/json__token_8c.html
@@ -0,0 +1,421 @@
+<!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: src/core/security/json_token.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">json_token.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="json__token_8h_source.html">src/core/security/json_token.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="base64_8h_source.html">src/core/security/base64.h</a>&quot;</code><br/>
+<code>#include &lt;openssl/bio.h&gt;</code><br/>
+<code>#include &lt;openssl/evp.h&gt;</code><br/>
+<code>#include &lt;openssl/pem.h&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a152047e25145985b1aec6a0945d09553"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a152047e25145985b1aec6a0945d09553">GRPC_JWT_RSA_SHA256_ALGORITHM</a>&#160;&#160;&#160;&quot;RS256&quot;</td></tr>
+<tr class="separator:a152047e25145985b1aec6a0945d09553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ee6f733ee72e89c478c9041176a3836"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a6ee6f733ee72e89c478c9041176a3836">GRPC_JWT_TYPE</a>&#160;&#160;&#160;&quot;JWT&quot;</td></tr>
+<tr class="separator:a6ee6f733ee72e89c478c9041176a3836"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac4a86a67c8b9cd4b8b142fe880099689"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#ac4a86a67c8b9cd4b8b142fe880099689">grpc_auth_json_key_is_valid</a> (const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key)</td></tr>
+<tr class="separator:ac4a86a67c8b9cd4b8b142fe880099689"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99327b0fd2f13d8c98ebb68aecde0194"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a99327b0fd2f13d8c98ebb68aecde0194">grpc_auth_json_key_create_from_json</a> (const <a class="el" href="structgrpc__json.html">grpc_json</a> *json)</td></tr>
+<tr class="separator:a99327b0fd2f13d8c98ebb68aecde0194"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed79d1eb6161019cd427d7dc4bdc8462"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#aed79d1eb6161019cd427d7dc4bdc8462">grpc_auth_json_key_create_from_string</a> (const char *json_string)</td></tr>
+<tr class="separator:aed79d1eb6161019cd427d7dc4bdc8462"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0be195f2d8dad589b59befaaf379deb7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a0be195f2d8dad589b59befaaf379deb7">grpc_auth_json_key_destruct</a> (<a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key)</td></tr>
+<tr class="separator:a0be195f2d8dad589b59befaaf379deb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accf3a429c0f66a88d8df60b6dab3743f"><td class="memItemLeft" align="right" valign="top">const EVP_MD *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#accf3a429c0f66a88d8df60b6dab3743f">openssl_digest_from_algorithm</a> (const char *algorithm)</td></tr>
+<tr class="separator:accf3a429c0f66a88d8df60b6dab3743f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08e7b0b2b3e6352e92cc7ae87328a480"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a08e7b0b2b3e6352e92cc7ae87328a480">compute_and_encode_signature</a> (const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key, const char *signature_algorithm, const char *to_sign)</td></tr>
+<tr class="separator:a08e7b0b2b3e6352e92cc7ae87328a480"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">grpc_jwt_encode_and_sign</a> (const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key, const char *audience, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime, const char *scope)</td></tr>
+<tr class="separator:af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58f70df2a4a2e8c9bc4f91a85202ce9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">grpc_jwt_encode_and_sign_set_override</a> (<a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a> func)</td></tr>
+<tr class="separator:a58f70df2a4a2e8c9bc4f91a85202ce9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b1a8c0e0fda0b36dc2ad142f276002f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a9b1a8c0e0fda0b36dc2ad142f276002f">grpc_auth_refresh_token_is_valid</a> (const <a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *refresh_token)</td></tr>
+<tr class="separator:a9b1a8c0e0fda0b36dc2ad142f276002f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31e46f408f67e61eb59471816d7394d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a31e46f408f67e61eb59471816d7394d9">grpc_auth_refresh_token_create_from_json</a> (const <a class="el" href="structgrpc__json.html">grpc_json</a> *json)</td></tr>
+<tr class="separator:a31e46f408f67e61eb59471816d7394d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8602827c182047ae58ff6f8d55fcf06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#aa8602827c182047ae58ff6f8d55fcf06">grpc_auth_refresh_token_create_from_string</a> (const char *json_string)</td></tr>
+<tr class="separator:aa8602827c182047ae58ff6f8d55fcf06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14f7331e37fa96ee4652780610e1b773"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a14f7331e37fa96ee4652780610e1b773">grpc_auth_refresh_token_destruct</a> (<a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *refresh_token)</td></tr>
+<tr class="separator:a14f7331e37fa96ee4652780610e1b773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a6112c5b60b1c0197531f80fdc56f7772"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8c.html#a6112c5b60b1c0197531f80fdc56f7772">grpc_max_auth_token_lifetime</a> = {3600, 0, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>}</td></tr>
+<tr class="separator:a6112c5b60b1c0197531f80fdc56f7772"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a152047e25145985b1aec6a0945d09553"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_JWT_RSA_SHA256_ALGORITHM&#160;&#160;&#160;&quot;RS256&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ee6f733ee72e89c478c9041176a3836"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_JWT_TYPE&#160;&#160;&#160;&quot;JWT&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a08e7b0b2b3e6352e92cc7ae87328a480"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* compute_and_encode_signature </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>signature_algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>to_sign</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a99327b0fd2f13d8c98ebb68aecde0194"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> grpc_auth_json_key_create_from_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aed79d1eb6161019cd427d7dc4bdc8462"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> grpc_auth_json_key_create_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_string</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0be195f2d8dad589b59befaaf379deb7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_json_key_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4a86a67c8b9cd4b8b142fe880099689"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_auth_json_key_is_valid </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31e46f408f67e61eb59471816d7394d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> grpc_auth_refresh_token_create_from_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8602827c182047ae58ff6f8d55fcf06"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> grpc_auth_refresh_token_create_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_string</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14f7331e37fa96ee4652780610e1b773"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_refresh_token_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *&#160;</td>
+ <td class="paramname"><em>refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b1a8c0e0fda0b36dc2ad142f276002f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_auth_refresh_token_is_valid </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *&#160;</td>
+ <td class="paramname"><em>refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_jwt_encode_and_sign </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>scope</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58f70df2a4a2e8c9bc4f91a85202ce9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_encode_and_sign_set_override </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a>&#160;</td>
+ <td class="paramname"><em>func</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accf3a429c0f66a88d8df60b6dab3743f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const EVP_MD* openssl_digest_from_algorithm </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>algorithm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a6112c5b60b1c0197531f80fdc56f7772"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_max_auth_token_lifetime = {3600, 0, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__token_8h.html b/doc/ref/core.internal/html/json__token_8h.html
new file mode 100644
index 0000000000..7603a48b73
--- /dev/null
+++ b/doc/ref/core.internal/html/json__token_8h.html
@@ -0,0 +1,401 @@
+<!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: src/core/security/json_token.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json_token.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;openssl/rsa.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json_8h_source.html">src/core/json/json.h</a>&quot;</code><br/>
+</div>
+<p><a href="json__token_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa786d993b153687864544b028ab81d57"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#aa786d993b153687864544b028ab81d57">GRPC_JWT_OAUTH2_AUDIENCE</a>&#160;&#160;&#160;&quot;https://www.googleapis.com/oauth2/v3/token&quot;</td></tr>
+<tr class="separator:aa786d993b153687864544b028ab81d57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5c8010a33e3a9b7b23f88cc87c1149e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#af5c8010a33e3a9b7b23f88cc87c1149e">GRPC_AUTH_JSON_TYPE_INVALID</a>&#160;&#160;&#160;&quot;invalid&quot;</td></tr>
+<tr class="separator:af5c8010a33e3a9b7b23f88cc87c1149e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7dd581751d41c6ea4d8dd5af295d495"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#ae7dd581751d41c6ea4d8dd5af295d495">GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT</a>&#160;&#160;&#160;&quot;service_account&quot;</td></tr>
+<tr class="separator:ae7dd581751d41c6ea4d8dd5af295d495"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af371d9efcf5a20784bfeae73e3369fd3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#af371d9efcf5a20784bfeae73e3369fd3">GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER</a>&#160;&#160;&#160;&quot;authorized_user&quot;</td></tr>
+<tr class="separator:af371d9efcf5a20784bfeae73e3369fd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:acf73be11be357bfd35a30b845e26118f"><td class="memItemLeft" align="right" valign="top">typedef char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a> )(const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key, const char *audience, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime, const char *scope)</td></tr>
+<tr class="separator:acf73be11be357bfd35a30b845e26118f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac4a86a67c8b9cd4b8b142fe880099689"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689">grpc_auth_json_key_is_valid</a> (const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key)</td></tr>
+<tr class="separator:ac4a86a67c8b9cd4b8b142fe880099689"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed79d1eb6161019cd427d7dc4bdc8462"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462">grpc_auth_json_key_create_from_string</a> (const char *json_string)</td></tr>
+<tr class="separator:aed79d1eb6161019cd427d7dc4bdc8462"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99327b0fd2f13d8c98ebb68aecde0194"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194">grpc_auth_json_key_create_from_json</a> (const <a class="el" href="structgrpc__json.html">grpc_json</a> *json)</td></tr>
+<tr class="separator:a99327b0fd2f13d8c98ebb68aecde0194"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0be195f2d8dad589b59befaaf379deb7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7">grpc_auth_json_key_destruct</a> (<a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key)</td></tr>
+<tr class="separator:a0be195f2d8dad589b59befaaf379deb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">grpc_jwt_encode_and_sign</a> (const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key, const char *audience, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime, const char *scope)</td></tr>
+<tr class="separator:af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58f70df2a4a2e8c9bc4f91a85202ce9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">grpc_jwt_encode_and_sign_set_override</a> (<a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a> func)</td></tr>
+<tr class="separator:a58f70df2a4a2e8c9bc4f91a85202ce9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b1a8c0e0fda0b36dc2ad142f276002f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f">grpc_auth_refresh_token_is_valid</a> (const <a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *refresh_token)</td></tr>
+<tr class="separator:a9b1a8c0e0fda0b36dc2ad142f276002f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8602827c182047ae58ff6f8d55fcf06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06">grpc_auth_refresh_token_create_from_string</a> (const char *json_string)</td></tr>
+<tr class="separator:aa8602827c182047ae58ff6f8d55fcf06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31e46f408f67e61eb59471816d7394d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#a31e46f408f67e61eb59471816d7394d9">grpc_auth_refresh_token_create_from_json</a> (const <a class="el" href="structgrpc__json.html">grpc_json</a> *json)</td></tr>
+<tr class="separator:a31e46f408f67e61eb59471816d7394d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14f7331e37fa96ee4652780610e1b773"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__token_8h.html#a14f7331e37fa96ee4652780610e1b773">grpc_auth_refresh_token_destruct</a> (<a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *refresh_token)</td></tr>
+<tr class="separator:a14f7331e37fa96ee4652780610e1b773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="af371d9efcf5a20784bfeae73e3369fd3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER&#160;&#160;&#160;&quot;authorized_user&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af5c8010a33e3a9b7b23f88cc87c1149e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_AUTH_JSON_TYPE_INVALID&#160;&#160;&#160;&quot;invalid&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7dd581751d41c6ea4d8dd5af295d495"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT&#160;&#160;&#160;&quot;service_account&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa786d993b153687864544b028ab81d57"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_JWT_OAUTH2_AUDIENCE&#160;&#160;&#160;&quot;https://www.googleapis.com/oauth2/v3/token&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="acf73be11be357bfd35a30b845e26118f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef char*(* grpc_jwt_encode_and_sign_override)(const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key, const char *audience, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime, const char *scope)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a99327b0fd2f13d8c98ebb68aecde0194"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> grpc_auth_json_key_create_from_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aed79d1eb6161019cd427d7dc4bdc8462"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> grpc_auth_json_key_create_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_string</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0be195f2d8dad589b59befaaf379deb7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_json_key_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4a86a67c8b9cd4b8b142fe880099689"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_auth_json_key_is_valid </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31e46f408f67e61eb59471816d7394d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> grpc_auth_refresh_token_create_from_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8602827c182047ae58ff6f8d55fcf06"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> grpc_auth_refresh_token_create_from_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>json_string</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14f7331e37fa96ee4652780610e1b773"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_refresh_token_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *&#160;</td>
+ <td class="paramname"><em>refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b1a8c0e0fda0b36dc2ad142f276002f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_auth_refresh_token_is_valid </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *&#160;</td>
+ <td class="paramname"><em>refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_jwt_encode_and_sign </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>token_lifetime</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>scope</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58f70df2a4a2e8c9bc4f91a85202ce9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_encode_and_sign_set_override </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a>&#160;</td>
+ <td class="paramname"><em>func</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__token_8h_source.html b/doc/ref/core.internal/html/json__token_8h_source.html
new file mode 100644
index 0000000000..3ca3f86f34
--- /dev/null
+++ b/doc/ref/core.internal/html/json__token_8h_source.html
@@ -0,0 +1,243 @@
+<!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: src/core/security/json_token.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">json_token.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="json__token_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_JSON_TOKEN_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_JSON_TOKEN_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;openssl/rsa.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="json_8h.html">src/core/json/json.h</a>&quot;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* --- Constants. --- */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="json__token_8h.html#aa786d993b153687864544b028ab81d57"> 44</a></span>&#160;<span class="preprocessor">#define GRPC_JWT_OAUTH2_AUDIENCE &quot;https://www.googleapis.com/oauth2/v3/token&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="json__token_8h.html#af5c8010a33e3a9b7b23f88cc87c1149e"> 46</a></span>&#160;<span class="preprocessor">#define GRPC_AUTH_JSON_TYPE_INVALID &quot;invalid&quot;</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="json__token_8h.html#ae7dd581751d41c6ea4d8dd5af295d495"> 47</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT &quot;service_account&quot;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="json__token_8h.html#af371d9efcf5a20784bfeae73e3369fd3"> 48</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER &quot;authorized_user&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* --- auth_json_key parsing. --- */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__auth__json__key.html"> 52</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52"> 53</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52">type</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4"> 54</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4">private_key_id</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462"> 55</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462">client_id</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b"> 56</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b">client_email</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2"> 57</a></span>&#160; RSA *<a class="code" href="structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2">private_key</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;} <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">/* Returns 1 if the object is valid, 0 otherwise. */</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">int</span> <a class="code" href="json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689">grpc_auth_json_key_is_valid</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* Creates a json_key object from string. Returns an invalid object if a parsing</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> error has been encountered. */</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="code" href="json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462">grpc_auth_json_key_create_from_string</a>(</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *json_string);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* Creates a json_key object from parsed json. Returns an invalid object if a</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> parsing error has been encountered. */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> <a class="code" href="json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194">grpc_auth_json_key_create_from_json</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__json.html">grpc_json</a> *json);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">/* Destructs the object. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7">grpc_auth_json_key_destruct</a>(<a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">/* --- json token encoding and signing. --- */</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment">/* Caller is responsible for calling gpr_free on the returned value. May return</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> NULL on invalid input. The scope parameter may be NULL. */</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">grpc_jwt_encode_and_sign</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *audience,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime, <span class="keyword">const</span> <span class="keywordtype">char</span> *scope);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* Override encode_and_sign function for testing. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f"> 84</a></span>&#160;<span class="keyword">typedef</span> <span class="keywordtype">char</span> *(*grpc_jwt_encode_and_sign_override)(</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> *json_key, <span class="keyword">const</span> <span class="keywordtype">char</span> *audience,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> token_lifetime, <span class="keyword">const</span> <span class="keywordtype">char</span> *scope);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Set a custom encode_and_sign override for testing. */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">grpc_jwt_encode_and_sign_set_override</a>(</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a> func);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment">/* --- auth_refresh_token parsing. --- */</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structgrpc__auth__refresh__token.html"> 94</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e"> 95</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e">type</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c"> 96</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c">client_id</a>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4"> 97</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4">client_secret</a>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12"> 98</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12">refresh_token</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;} <a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment">/* Returns 1 if the object is valid, 0 otherwise. */</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="keywordtype">int</span> <a class="code" href="json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f">grpc_auth_refresh_token_is_valid</a>(</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *refresh_token);</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment">/* Creates a refresh token object from string. Returns an invalid object if a</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> parsing error has been encountered. */</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> <a class="code" href="json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06">grpc_auth_refresh_token_create_from_string</a>(</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *json_string);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">/* Creates a refresh token object from parsed json. Returns an invalid object if</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> a parsing error has been encountered. */</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> <a class="code" href="json__token_8h.html#a31e46f408f67e61eb59471816d7394d9">grpc_auth_refresh_token_create_from_json</a>(</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__json.html">grpc_json</a> *json);</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment">/* Destructs the object. */</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__token_8h.html#a14f7331e37fa96ee4652780610e1b773">grpc_auth_refresh_token_destruct</a>(<a class="code" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> *refresh_token);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_JSON_TOKEN_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="json__token_8h_html_a31e46f408f67e61eb59471816d7394d9"><div class="ttname"><a href="json__token_8h.html#a31e46f408f67e61eb59471816d7394d9">grpc_auth_refresh_token_create_from_json</a></div><div class="ttdeci">grpc_auth_refresh_token grpc_auth_refresh_token_create_from_json(const grpc_json *json)</div><div class="ttdef"><b>Definition:</b> json_token.c:345</div></div>
+<div class="ttc" id="json__token_8h_html_aa8602827c182047ae58ff6f8d55fcf06"><div class="ttname"><a href="json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06">grpc_auth_refresh_token_create_from_string</a></div><div class="ttdeci">grpc_auth_refresh_token grpc_auth_refresh_token_create_from_string(const char *json_string)</div><div class="ttdef"><b>Definition:</b> json_token.c:379</div></div>
+<div class="ttc" id="json__token_8h_html_ac4a86a67c8b9cd4b8b142fe880099689"><div class="ttname"><a href="json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689">grpc_auth_json_key_is_valid</a></div><div class="ttdeci">int grpc_auth_json_key_is_valid(const grpc_auth_json_key *json_key)</div><div class="ttdef"><b>Definition:</b> json_token.c:85</div></div>
+<div class="ttc" id="json__token_8h_html_a14f7331e37fa96ee4652780610e1b773"><div class="ttname"><a href="json__token_8h.html#a14f7331e37fa96ee4652780610e1b773">grpc_auth_refresh_token_destruct</a></div><div class="ttdeci">void grpc_auth_refresh_token_destruct(grpc_auth_refresh_token *refresh_token)</div><div class="ttdef"><b>Definition:</b> json_token.c:390</div></div>
+<div class="ttc" id="structgrpc__auth__refresh__token_html_a8f88b86542543e97f441ea0080ab6c8e"><div class="ttname"><a href="structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e">grpc_auth_refresh_token::type</a></div><div class="ttdeci">const char * type</div><div class="ttdef"><b>Definition:</b> json_token.h:95</div></div>
+<div class="ttc" id="json__token_8h_html_aed79d1eb6161019cd427d7dc4bdc8462"><div class="ttname"><a href="json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462">grpc_auth_json_key_create_from_string</a></div><div class="ttdeci">grpc_auth_json_key grpc_auth_json_key_create_from_string(const char *json_string)</div><div class="ttdef"><b>Definition:</b> json_token.c:141</div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html_a08ca5a9beb5f0538d75d0ac580b83e52"><div class="ttname"><a href="structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52">grpc_auth_json_key::type</a></div><div class="ttdeci">const char * type</div><div class="ttdef"><b>Definition:</b> json_token.h:53</div></div>
+<div class="ttc" id="structgrpc__auth__refresh__token_html_a5dea27f01a2952d14e34ea89473d4a12"><div class="ttname"><a href="structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12">grpc_auth_refresh_token::refresh_token</a></div><div class="ttdeci">char * refresh_token</div><div class="ttdef"><b>Definition:</b> json_token.h:98</div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html_a2e834734c85148fcfa8de3deff36dea4"><div class="ttname"><a href="structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4">grpc_auth_json_key::private_key_id</a></div><div class="ttdeci">char * private_key_id</div><div class="ttdef"><b>Definition:</b> json_token.h:54</div></div>
+<div class="ttc" id="json__token_8h_html_a58f70df2a4a2e8c9bc4f91a85202ce9c"><div class="ttname"><a href="json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c">grpc_jwt_encode_and_sign_set_override</a></div><div class="ttdeci">void grpc_jwt_encode_and_sign_set_override(grpc_jwt_encode_and_sign_override func)</div><div class="ttdef"><b>Definition:</b> json_token.c:332</div></div>
+<div class="ttc" id="json__token_8h_html_a0be195f2d8dad589b59befaaf379deb7"><div class="ttname"><a href="json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7">grpc_auth_json_key_destruct</a></div><div class="ttdeci">void grpc_auth_json_key_destruct(grpc_auth_json_key *json_key)</div><div class="ttdef"><b>Definition:</b> json_token.c:151</div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html_accb20647a4dc6280c30d40a78b35fb7b"><div class="ttname"><a href="structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b">grpc_auth_json_key::client_email</a></div><div class="ttdeci">char * client_email</div><div class="ttdef"><b>Definition:</b> json_token.h:56</div></div>
+<div class="ttc" id="structgrpc__auth__refresh__token_html_a802a5c8f34166ec49b6345faea92d52c"><div class="ttname"><a href="structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c">grpc_auth_refresh_token::client_id</a></div><div class="ttdeci">char * client_id</div><div class="ttdef"><b>Definition:</b> json_token.h:96</div></div>
+<div class="ttc" id="json_8h_html"><div class="ttname"><a href="json_8h.html">json.h</a></div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html_a925db734b8d7ad62646c260374fa0462"><div class="ttname"><a href="structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462">grpc_auth_json_key::client_id</a></div><div class="ttdeci">char * client_id</div><div class="ttdef"><b>Definition:</b> json_token.h:55</div></div>
+<div class="ttc" id="structgrpc__auth__refresh__token_html"><div class="ttname"><a href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a></div><div class="ttdef"><b>Definition:</b> json_token.h:94</div></div>
+<div class="ttc" id="json__token_8h_html_acf73be11be357bfd35a30b845e26118f"><div class="ttname"><a href="json__token_8h.html#acf73be11be357bfd35a30b845e26118f">grpc_jwt_encode_and_sign_override</a></div><div class="ttdeci">char *(* grpc_jwt_encode_and_sign_override)(const grpc_auth_json_key *json_key, const char *audience, gpr_timespec token_lifetime, const char *scope)</div><div class="ttdef"><b>Definition:</b> json_token.h:84</div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html"><div class="ttname"><a href="structgrpc__auth__json__key.html">grpc_auth_json_key</a></div><div class="ttdef"><b>Definition:</b> json_token.h:52</div></div>
+<div class="ttc" id="structgrpc__json_html"><div class="ttname"><a href="structgrpc__json.html">grpc_json</a></div><div class="ttdef"><b>Definition:</b> json.h:44</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgrpc__auth__json__key_html_a1f2ce4e3cd708243003fc4201f4000b2"><div class="ttname"><a href="structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2">grpc_auth_json_key::private_key</a></div><div class="ttdeci">RSA * private_key</div><div class="ttdef"><b>Definition:</b> json_token.h:57</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="json__token_8h_html_a9b1a8c0e0fda0b36dc2ad142f276002f"><div class="ttname"><a href="json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f">grpc_auth_refresh_token_is_valid</a></div><div class="ttdeci">int grpc_auth_refresh_token_is_valid(const grpc_auth_refresh_token *refresh_token)</div><div class="ttdef"><b>Definition:</b> json_token.c:339</div></div>
+<div class="ttc" id="structgrpc__auth__refresh__token_html_ad29ccc6f1c4c23bc05841efd3dd5bab4"><div class="ttname"><a href="structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4">grpc_auth_refresh_token::client_secret</a></div><div class="ttdeci">char * client_secret</div><div class="ttdef"><b>Definition:</b> json_token.h:97</div></div>
+<div class="ttc" id="json__token_8h_html_a99327b0fd2f13d8c98ebb68aecde0194"><div class="ttname"><a href="json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194">grpc_auth_json_key_create_from_json</a></div><div class="ttdeci">grpc_auth_json_key grpc_auth_json_key_create_from_json(const grpc_json *json)</div><div class="ttdef"><b>Definition:</b> json_token.c:90</div></div>
+<div class="ttc" id="json__token_8h_html_af0b8abcdcb33f9d4ac1f15c5e2ef4b7f"><div class="ttname"><a href="json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f">grpc_jwt_encode_and_sign</a></div><div class="ttdeci">char * grpc_jwt_encode_and_sign(const grpc_auth_json_key *json_key, const char *audience, gpr_timespec token_lifetime, const char *scope)</div><div class="ttdef"><b>Definition:</b> json_token.c:312</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/json__writer_8c.html b/doc/ref/core.internal/html/json__writer_8c.html
new file mode 100644
index 0000000000..6ca8a24b8e
--- /dev/null
+++ b/doc/ref/core.internal/html/json__writer_8c.html
@@ -0,0 +1,323 @@
+<!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: src/core/json/json_writer.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json_writer.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json__writer_8h_source.html">src/core/json/json_writer.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9c57757dbd540d5c31db7dbb35274637"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#a9c57757dbd540d5c31db7dbb35274637">grpc_json_writer_init</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, int indent, <a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> *vtable, void *userdata)</td></tr>
+<tr class="separator:a9c57757dbd540d5c31db7dbb35274637"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4c1bf3c4ab69ae62cea7c4cc425cdae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">grpc_json_writer_container_begins</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:ab4c1bf3c4ab69ae62cea7c4cc425cdae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ec853f6ef8940debf36820f6329427e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#a8ec853f6ef8940debf36820f6329427e">grpc_json_writer_container_ends</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:a8ec853f6ef8940debf36820f6329427e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae009eea3f345ef9ab454876f81f1ab47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#ae009eea3f345ef9ab454876f81f1ab47">grpc_json_writer_object_key</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string)</td></tr>
+<tr class="separator:ae009eea3f345ef9ab454876f81f1ab47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afac9ce564b4c11e3ea35082de3bd1747"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#afac9ce564b4c11e3ea35082de3bd1747">grpc_json_writer_value_raw</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string)</td></tr>
+<tr class="separator:afac9ce564b4c11e3ea35082de3bd1747"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b88eb7fd1bd939146e86c5b212d8cb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#a2b88eb7fd1bd939146e86c5b212d8cb5">grpc_json_writer_value_raw_with_len</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string, size_t len)</td></tr>
+<tr class="separator:a2b88eb7fd1bd939146e86c5b212d8cb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7e5a12ffddc0cc95bff06c1879a64e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8c.html#aa7e5a12ffddc0cc95bff06c1879a64e0">grpc_json_writer_value_string</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string)</td></tr>
+<tr class="separator:aa7e5a12ffddc0cc95bff06c1879a64e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab4c1bf3c4ab69ae62cea7c4cc425cdae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_container_begins </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ec853f6ef8940debf36820f6329427e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_container_ends </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9c57757dbd540d5c31db7dbb35274637"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>indent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae009eea3f345ef9ab454876f81f1ab47"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_object_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afac9ce564b4c11e3ea35082de3bd1747"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_value_raw </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2b88eb7fd1bd939146e86c5b212d8cb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_value_raw_with_len </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7e5a12ffddc0cc95bff06c1879a64e0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_value_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__writer_8h.html b/doc/ref/core.internal/html/json__writer_8h.html
new file mode 100644
index 0000000000..aeb0820602
--- /dev/null
+++ b/doc/ref/core.internal/html/json__writer_8h.html
@@ -0,0 +1,366 @@
+<!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: src/core/json/json_writer.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">json_writer.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="json__common_8h_source.html">src/core/json/json_common.h</a>&quot;</code><br/>
+</div>
+<p><a href="json__writer_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a96f60637ee2643ea745d9746065d2c51"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51">grpc_json_writer_vtable</a></td></tr>
+<tr class="separator:a96f60637ee2643ea745d9746065d2c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa24bdcefdd09a31b2fa23fbaf4060dc9"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9">grpc_json_writer</a></td></tr>
+<tr class="separator:aa24bdcefdd09a31b2fa23fbaf4060dc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9c57757dbd540d5c31db7dbb35274637"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637">grpc_json_writer_init</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, int indent, <a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> *vtable, void *userdata)</td></tr>
+<tr class="separator:a9c57757dbd540d5c31db7dbb35274637"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4c1bf3c4ab69ae62cea7c4cc425cdae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">grpc_json_writer_container_begins</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:ab4c1bf3c4ab69ae62cea7c4cc425cdae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ec853f6ef8940debf36820f6329427e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e">grpc_json_writer_container_ends</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:a8ec853f6ef8940debf36820f6329427e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae009eea3f345ef9ab454876f81f1ab47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47">grpc_json_writer_object_key</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string)</td></tr>
+<tr class="separator:ae009eea3f345ef9ab454876f81f1ab47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afac9ce564b4c11e3ea35082de3bd1747"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747">grpc_json_writer_value_raw</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string)</td></tr>
+<tr class="separator:afac9ce564b4c11e3ea35082de3bd1747"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b88eb7fd1bd939146e86c5b212d8cb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5">grpc_json_writer_value_raw_with_len</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string, size_t len)</td></tr>
+<tr class="separator:a2b88eb7fd1bd939146e86c5b212d8cb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7e5a12ffddc0cc95bff06c1879a64e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0">grpc_json_writer_value_string</a> (<a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *writer, const char *string)</td></tr>
+<tr class="separator:aa7e5a12ffddc0cc95bff06c1879a64e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aa24bdcefdd09a31b2fa23fbaf4060dc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> <a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a96f60637ee2643ea745d9746065d2c51"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> <a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab4c1bf3c4ab69ae62cea7c4cc425cdae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_container_begins </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ec853f6ef8940debf36820f6329427e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_container_ends </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9c57757dbd540d5c31db7dbb35274637"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>indent</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>userdata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae009eea3f345ef9ab454876f81f1ab47"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_object_key </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afac9ce564b4c11e3ea35082de3bd1747"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_value_raw </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2b88eb7fd1bd939146e86c5b212d8cb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_value_raw_with_len </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7e5a12ffddc0cc95bff06c1879a64e0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_json_writer_value_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json__writer.html">grpc_json_writer</a> *&#160;</td>
+ <td class="paramname"><em>writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/json__writer_8h_source.html b/doc/ref/core.internal/html/json__writer_8h_source.html
new file mode 100644
index 0000000000..a256d3a503
--- /dev/null
+++ b/doc/ref/core.internal/html/json__writer_8h_source.html
@@ -0,0 +1,214 @@
+<!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: src/core/json/json_writer.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_7283b8f5e6e3c4b0819c2b491a18d7d4.html">json</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">json_writer.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="json__writer_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment">/* The idea of the writer is basically symmetrical of the reader. While the</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> * reader emits various calls to your code, the writer takes basically the</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> * same calls and emit json out of it. It doesn&#39;t try to make any check on</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> * the order of the calls you do on it. Meaning you can theorically force</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> * it to generate invalid json.</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> * Also, unlike the reader, the writer expects UTF-8 encoded input strings.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> * These strings will be UTF-8 validated, and any invalid character will</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> * cut the conversion short, before any invalid UTF-8 sequence, thus forming</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> * a valid UTF-8 string overall.</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_JSON_JSON_WRITER_H</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_JSON_JSON_WRITER_H</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="json__common_8h.html">src/core/json/json_common.h</a>&quot;</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__json__writer__vtable.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">/* Adds a character to the output stream. */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2"> 55</a></span>&#160; void (*<a class="code" href="structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2">output_char</a>)(<span class="keywordtype">void</span>* userdata, char);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">/* Adds a zero-terminated string to the output stream. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e"> 57</a></span>&#160; void (*<a class="code" href="structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e">output_string</a>)(<span class="keywordtype">void</span>* userdata, <span class="keyword">const</span> <span class="keywordtype">char</span>* str);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">/* Adds a fixed-length string to the output stream. */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd"> 59</a></span>&#160; void (*<a class="code" href="structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd">output_string_with_len</a>)(<span class="keywordtype">void</span>* userdata, <span class="keyword">const</span> <span class="keywordtype">char</span>* str, <span class="keywordtype">size_t</span> len);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51">grpc_json_writer_vtable</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html"> 63</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a> {</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31"> 64</a></span>&#160; <span class="keywordtype">void</span>* <a class="code" href="structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31">userdata</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b"> 65</a></span>&#160; <a class="code" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a>* <a class="code" href="structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b">vtable</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de"> 66</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de">indent</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995"> 67</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995">depth</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381"> 68</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381">container_empty</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed"> 69</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed">got_key</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;} <a class="code" href="json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9">grpc_json_writer</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">/* Call this to initialize your writer structure. The indent parameter is</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> * specifying the number of spaces to use for indenting the output. If you</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * use indent=0, then the output will not have any newlines either, thus</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * emitting a condensed json output.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637">grpc_json_writer_init</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <span class="keywordtype">int</span> indent,</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a>* vtable, <span class="keywordtype">void</span>* userdata);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/* Signals the beginning of a container. */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">grpc_json_writer_container_begins</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* Signals the end of a container. */</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e">grpc_json_writer_container_ends</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <a class="code" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">/* Writes down an object key for the next value. */</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47">grpc_json_writer_object_key</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* Sets a raw value. Useful for numbers. */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747">grpc_json_writer_value_raw</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Sets a raw value with its length. Useful for values like true or false. */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5">grpc_json_writer_value_raw_with_len</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keywordtype">size_t</span> len);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Sets a string value. It&#39;ll be escaped, and utf-8 validated. */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span> <a class="code" href="json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0">grpc_json_writer_value_string</a>(<a class="code" href="structgrpc__json__writer.html">grpc_json_writer</a>* writer, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_JSON_JSON_WRITER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="json__writer_8h_html_aa24bdcefdd09a31b2fa23fbaf4060dc9"><div class="ttname"><a href="json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9">grpc_json_writer</a></div><div class="ttdeci">struct grpc_json_writer grpc_json_writer</div></div>
+<div class="ttc" id="structgrpc__json__writer_html_a85b6d4d170b0bd0df6d1084cc0d3f995"><div class="ttname"><a href="structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995">grpc_json_writer::depth</a></div><div class="ttdeci">int depth</div><div class="ttdef"><b>Definition:</b> json_writer.h:67</div></div>
+<div class="ttc" id="json__common_8h_html"><div class="ttname"><a href="json__common_8h.html">json_common.h</a></div></div>
+<div class="ttc" id="json__writer_8h_html_a9c57757dbd540d5c31db7dbb35274637"><div class="ttname"><a href="json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637">grpc_json_writer_init</a></div><div class="ttdeci">void grpc_json_writer_init(grpc_json_writer *writer, int indent, grpc_json_writer_vtable *vtable, void *userdata)</div><div class="ttdef"><b>Definition:</b> json_writer.c:52</div></div>
+<div class="ttc" id="json__writer_8h_html_a96f60637ee2643ea745d9746065d2c51"><div class="ttname"><a href="json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51">grpc_json_writer_vtable</a></div><div class="ttdeci">struct grpc_json_writer_vtable grpc_json_writer_vtable</div></div>
+<div class="ttc" id="structgrpc__json__writer_html_a95c5e11a20879e8bd90962b043ca8381"><div class="ttname"><a href="structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381">grpc_json_writer::container_empty</a></div><div class="ttdeci">int container_empty</div><div class="ttdef"><b>Definition:</b> json_writer.h:68</div></div>
+<div class="ttc" id="json__writer_8h_html_aa7e5a12ffddc0cc95bff06c1879a64e0"><div class="ttname"><a href="json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0">grpc_json_writer_value_string</a></div><div class="ttdeci">void grpc_json_writer_value_string(grpc_json_writer *writer, const char *string)</div><div class="ttdef"><b>Definition:</b> json_writer.c:248</div></div>
+<div class="ttc" id="structgrpc__json__writer__vtable_html_aee2ab161f23b771d3723693cc0c7cafd"><div class="ttname"><a href="structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd">grpc_json_writer_vtable::output_string_with_len</a></div><div class="ttdeci">void(* output_string_with_len)(void *userdata, const char *str, size_t len)</div><div class="ttdef"><b>Definition:</b> json_writer.h:59</div></div>
+<div class="ttc" id="structgrpc__json__writer__vtable_html_a07ee0211c783c92e767a42c4629d184e"><div class="ttname"><a href="structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e">grpc_json_writer_vtable::output_string</a></div><div class="ttdeci">void(* output_string)(void *userdata, const char *str)</div><div class="ttdef"><b>Definition:</b> json_writer.h:57</div></div>
+<div class="ttc" id="json__common_8h_html_a3e82983bba0988c52251467566a07ce2"><div class="ttname"><a href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a></div><div class="ttdeci">grpc_json_type</div><div class="ttdef"><b>Definition:</b> json_common.h:38</div></div>
+<div class="ttc" id="json__writer_8h_html_a8ec853f6ef8940debf36820f6329427e"><div class="ttname"><a href="json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e">grpc_json_writer_container_ends</a></div><div class="ttdeci">void grpc_json_writer_container_ends(grpc_json_writer *writer, grpc_json_type type)</div><div class="ttdef"><b>Definition:</b> json_writer.c:216</div></div>
+<div class="ttc" id="json__writer_8h_html_a2b88eb7fd1bd939146e86c5b212d8cb5"><div class="ttname"><a href="json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5">grpc_json_writer_value_raw_with_len</a></div><div class="ttdeci">void grpc_json_writer_value_raw_with_len(grpc_json_writer *writer, const char *string, size_t len)</div><div class="ttdef"><b>Definition:</b> json_writer.c:241</div></div>
+<div class="ttc" id="structgrpc__json__writer_html_a5569d8c07eeee222a342551b92e0d9ed"><div class="ttname"><a href="structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed">grpc_json_writer::got_key</a></div><div class="ttdeci">int got_key</div><div class="ttdef"><b>Definition:</b> json_writer.h:69</div></div>
+<div class="ttc" id="structgrpc__json__writer_html_ad1b0dd7119dfd5ef95ca6972d0918e5b"><div class="ttname"><a href="structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b">grpc_json_writer::vtable</a></div><div class="ttdeci">grpc_json_writer_vtable * vtable</div><div class="ttdef"><b>Definition:</b> json_writer.h:65</div></div>
+<div class="ttc" id="structgrpc__json__writer_html_a79d6783ae5cd77f186571b46f63cc5de"><div class="ttname"><a href="structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de">grpc_json_writer::indent</a></div><div class="ttdeci">int indent</div><div class="ttdef"><b>Definition:</b> json_writer.h:66</div></div>
+<div class="ttc" id="structgrpc__json__writer__vtable_html_a92334573a7aa813d3177129cecf747e2"><div class="ttname"><a href="structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2">grpc_json_writer_vtable::output_char</a></div><div class="ttdeci">void(* output_char)(void *userdata, char)</div><div class="ttdef"><b>Definition:</b> json_writer.h:55</div></div>
+<div class="ttc" id="json__writer_8h_html_ae009eea3f345ef9ab454876f81f1ab47"><div class="ttname"><a href="json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47">grpc_json_writer_object_key</a></div><div class="ttdeci">void grpc_json_writer_object_key(grpc_json_writer *writer, const char *string)</div><div class="ttdef"><b>Definition:</b> json_writer.c:226</div></div>
+<div class="ttc" id="structgrpc__json__writer_html_a660101bdaf5e230700894b1f57134d31"><div class="ttname"><a href="structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31">grpc_json_writer::userdata</a></div><div class="ttdeci">void * userdata</div><div class="ttdef"><b>Definition:</b> json_writer.h:64</div></div>
+<div class="ttc" id="structgrpc__json__writer__vtable_html"><div class="ttname"><a href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a></div><div class="ttdef"><b>Definition:</b> json_writer.h:53</div></div>
+<div class="ttc" id="json__writer_8h_html_afac9ce564b4c11e3ea35082de3bd1747"><div class="ttname"><a href="json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747">grpc_json_writer_value_raw</a></div><div class="ttdeci">void grpc_json_writer_value_raw(grpc_json_writer *writer, const char *string)</div><div class="ttdef"><b>Definition:</b> json_writer.c:234</div></div>
+<div class="ttc" id="structgrpc__json__writer_html"><div class="ttname"><a href="structgrpc__json__writer.html">grpc_json_writer</a></div><div class="ttdef"><b>Definition:</b> json_writer.h:63</div></div>
+<div class="ttc" id="json__writer_8h_html_ab4c1bf3c4ab69ae62cea7c4cc425cdae"><div class="ttname"><a href="json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae">grpc_json_writer_container_begins</a></div><div class="ttdeci">void grpc_json_writer_container_begins(grpc_json_writer *writer, grpc_json_type type)</div><div class="ttdef"><b>Definition:</b> json_writer.c:207</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/jwt__verifier_8c.html b/doc/ref/core.internal/html/jwt__verifier_8c.html
new file mode 100644
index 0000000000..1da7742418
--- /dev/null
+++ b/doc/ref/core.internal/html/jwt__verifier_8c.html
@@ -0,0 +1,514 @@
+<!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: src/core/security/jwt_verifier.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">jwt_verifier.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="jwt__verifier_8h_source.html">src/core/security/jwt_verifier.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="base64_8h_source.html">src/core/security/base64.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;openssl/pem.h&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjose__header.html">jose_header</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html">verifier_cb_ctx</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structemail__key__mapping.html">email_key_mapping</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2aad6c48023145f901a39b5b9ef6b6d3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a2aad6c48023145f901a39b5b9ef6b6d3">grpc_jwt_verifier_status_to_string</a> (<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status)</td></tr>
+<tr class="separator:a2aad6c48023145f901a39b5b9ef6b6d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa69d0e75df7133ebfda05f50303f8316"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#aa69d0e75df7133ebfda05f50303f8316">grpc_jwt_claims_destroy</a> (<a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:aa69d0e75df7133ebfda05f50303f8316"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eb1db0055c2992691e1c3e92d65a656"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a4eb1db0055c2992691e1c3e92d65a656">grpc_jwt_claims_json</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a4eb1db0055c2992691e1c3e92d65a656"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac77af641794a3449e94d7d7cb48a50c6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#ac77af641794a3449e94d7d7cb48a50c6">grpc_jwt_claims_subject</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ac77af641794a3449e94d7d7cb48a50c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61a1d74e9b150c1a7dccf259d84e8da6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a61a1d74e9b150c1a7dccf259d84e8da6">grpc_jwt_claims_issuer</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a61a1d74e9b150c1a7dccf259d84e8da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a319d836355e40efba372f9baf09bbd54"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a319d836355e40efba372f9baf09bbd54">grpc_jwt_claims_id</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a319d836355e40efba372f9baf09bbd54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e8de86ed8bb8461969cd07624cb06f"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a19e8de86ed8bb8461969cd07624cb06f">grpc_jwt_claims_audience</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a19e8de86ed8bb8461969cd07624cb06f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58838743f413ceebbf5b4afd77d7ab7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a58838743f413ceebbf5b4afd77d7ab7f">grpc_jwt_claims_issued_at</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a58838743f413ceebbf5b4afd77d7ab7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9759b63895dde79be0715b0369cd0c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#ab9759b63895dde79be0715b0369cd0c4">grpc_jwt_claims_expires_at</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ab9759b63895dde79be0715b0369cd0c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1904f0f6a28c8b14a486c932e5db1499"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a1904f0f6a28c8b14a486c932e5db1499">grpc_jwt_claims_not_before</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a1904f0f6a28c8b14a486c932e5db1499"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">grpc_jwt_claims_from_json</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json, <a class="el" href="structgpr__slice.html">gpr_slice</a> buffer)</td></tr>
+<tr class="separator:ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a956a1fe237276fbed03e5caee7360c6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a956a1fe237276fbed03e5caee7360c6a">grpc_jwt_claims_check</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims, const char *audience)</td></tr>
+<tr class="separator:a956a1fe237276fbed03e5caee7360c6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6abd17abf83cb50196792f26f82ddb47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a6abd17abf83cb50196792f26f82ddb47">verifier_cb_ctx_destroy</a> (<a class="el" href="structverifier__cb__ctx.html">verifier_cb_ctx</a> *ctx)</td></tr>
+<tr class="separator:a6abd17abf83cb50196792f26f82ddb47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9960f7842a141d85b0bb38dd231900d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#ac9960f7842a141d85b0bb38dd231900d">grpc_jwt_verifier_verify</a> (<a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *jwt, const char *audience, <a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:ac9960f7842a141d85b0bb38dd231900d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf8e8c06616b9d3006333f63c708a811"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#acf8e8c06616b9d3006333f63c708a811">grpc_jwt_verifier_create</a> (const <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *mappings, size_t num_mappings)</td></tr>
+<tr class="separator:acf8e8c06616b9d3006333f63c708a811"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44bac1b48da3adf4d7858f2b40121bab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a44bac1b48da3adf4d7858f2b40121bab">grpc_jwt_verifier_destroy</a> (<a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *v)</td></tr>
+<tr class="separator:a44bac1b48da3adf4d7858f2b40121bab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7d1ae2ff5b43188c302d75bb3ed761f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#a7d1ae2ff5b43188c302d75bb3ed761f7">grpc_jwt_verifier_clock_skew</a> = {60, 0, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>}</td></tr>
+<tr class="separator:a7d1ae2ff5b43188c302d75bb3ed761f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a9cfed667421b6a1393e52d073a282"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8c.html#ab4a9cfed667421b6a1393e52d073a282">grpc_jwt_verifier_max_delay</a> = {60, 0, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>}</td></tr>
+<tr class="separator:ab4a9cfed667421b6a1393e52d073a282"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a19e8de86ed8bb8461969cd07624cb06f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_audience </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a956a1fe237276fbed03e5caee7360c6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> grpc_jwt_claims_check </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa69d0e75df7133ebfda05f50303f8316"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_claims_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9759b63895dde79be0715b0369cd0c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_expires_at </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3272e7b9f64bb7b36b4b7fbce9ae4f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>* grpc_jwt_claims_from_json </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a319d836355e40efba372f9baf09bbd54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_id </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58838743f413ceebbf5b4afd77d7ab7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_issued_at </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a61a1d74e9b150c1a7dccf259d84e8da6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_issuer </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eb1db0055c2992691e1c3e92d65a656"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_jwt_claims_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1904f0f6a28c8b14a486c932e5db1499"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_not_before </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac77af641794a3449e94d7d7cb48a50c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_subject </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf8e8c06616b9d3006333f63c708a811"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>* grpc_jwt_verifier_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *&#160;</td>
+ <td class="paramname"><em>mappings</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_mappings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a44bac1b48da3adf4d7858f2b40121bab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_verifier_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td>
+ <td class="paramname"><em>v</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2aad6c48023145f901a39b5b9ef6b6d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_verifier_status_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9960f7842a141d85b0bb38dd231900d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_verifier_verify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td>
+ <td class="paramname"><em>verifier</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>jwt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6abd17abf83cb50196792f26f82ddb47"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void verifier_cb_ctx_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structverifier__cb__ctx.html">verifier_cb_ctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7d1ae2ff5b43188c302d75bb3ed761f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_verifier_clock_skew = {60, 0, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab4a9cfed667421b6a1393e52d073a282"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_verifier_max_delay = {60, 0, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/jwt__verifier_8h.html b/doc/ref/core.internal/html/jwt__verifier_8h.html
new file mode 100644
index 0000000000..7f0a122afb
--- /dev/null
+++ b/doc/ref/core.internal/html/jwt__verifier_8h.html
@@ -0,0 +1,624 @@
+<!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: src/core/security/jwt_verifier.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">jwt_verifier.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="json_8h_source.html">src/core/json/json.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="jwt__verifier_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a869346dd0fc12ac4686cd05eca73d1ef"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef">GRPC_OPENID_CONFIG_URL_SUFFIX</a>&#160;&#160;&#160;&quot;/.well-known/openid-configuration&quot;</td></tr>
+<tr class="separator:a869346dd0fc12ac4686cd05eca73d1ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea767ba783450fa8bcd54ca9b5321b73"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73">GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN</a>&#160;&#160;&#160;&quot;developer.gserviceaccount.com&quot;</td></tr>
+<tr class="separator:aea767ba783450fa8bcd54ca9b5321b73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22636d9510845a1cf41ac00d777f4e98"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98">GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX</a>&#160;&#160;&#160;&quot;www.googleapis.com/robot/v1/metadata/x509&quot;</td></tr>
+<tr class="separator:a22636d9510845a1cf41ac00d777f4e98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3998a024a5d44465e9f4f5e56666f1a4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4">grpc_jwt_claims</a></td></tr>
+<tr class="separator:a3998a024a5d44465e9f4f5e56666f1a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bd823cc55eb0ce26b62aa69ca916cc0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0">grpc_jwt_verifier</a></td></tr>
+<tr class="separator:a1bd823cc55eb0ce26b62aa69ca916cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac893f9591e5e8eafd1a900d4bb3092f2"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> )(void *user_data, <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status, <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ac893f9591e5e8eafd1a900d4bb3092f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a04a38ad49ca184c3a075f927b7ed61b5"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> { <br/>
+&#160;&#160;<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57">GRPC_JWT_VERIFIER_OK</a> = 0,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298">GRPC_JWT_VERIFIER_BAD_SIGNATURE</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c">GRPC_JWT_VERIFIER_BAD_FORMAT</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08">GRPC_JWT_VERIFIER_BAD_AUDIENCE</a>,
+<br/>
+&#160;&#160;<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194">GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f">GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE</a>,
+<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546">GRPC_JWT_VERIFIER_GENERIC_ERROR</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a04a38ad49ca184c3a075f927b7ed61b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2aad6c48023145f901a39b5b9ef6b6d3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3">grpc_jwt_verifier_status_to_string</a> (<a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status)</td></tr>
+<tr class="separator:a2aad6c48023145f901a39b5b9ef6b6d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa69d0e75df7133ebfda05f50303f8316"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316">grpc_jwt_claims_destroy</a> (<a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:aa69d0e75df7133ebfda05f50303f8316"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eb1db0055c2992691e1c3e92d65a656"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656">grpc_jwt_claims_json</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a4eb1db0055c2992691e1c3e92d65a656"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac77af641794a3449e94d7d7cb48a50c6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6">grpc_jwt_claims_subject</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ac77af641794a3449e94d7d7cb48a50c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61a1d74e9b150c1a7dccf259d84e8da6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6">grpc_jwt_claims_issuer</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a61a1d74e9b150c1a7dccf259d84e8da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a319d836355e40efba372f9baf09bbd54"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54">grpc_jwt_claims_id</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a319d836355e40efba372f9baf09bbd54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e8de86ed8bb8461969cd07624cb06f"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f">grpc_jwt_claims_audience</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a19e8de86ed8bb8461969cd07624cb06f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58838743f413ceebbf5b4afd77d7ab7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f">grpc_jwt_claims_issued_at</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a58838743f413ceebbf5b4afd77d7ab7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9759b63895dde79be0715b0369cd0c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4">grpc_jwt_claims_expires_at</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:ab9759b63895dde79be0715b0369cd0c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1904f0f6a28c8b14a486c932e5db1499"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499">grpc_jwt_claims_not_before</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td></tr>
+<tr class="separator:a1904f0f6a28c8b14a486c932e5db1499"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf8e8c06616b9d3006333f63c708a811"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811">grpc_jwt_verifier_create</a> (const <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *mappings, size_t num_mappings)</td></tr>
+<tr class="separator:acf8e8c06616b9d3006333f63c708a811"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d033f01e4d9c4c3dfba2e2f4cf57398"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398">grpc_jwt_verifier_destroy</a> (<a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier)</td></tr>
+<tr class="separator:a7d033f01e4d9c4c3dfba2e2f4cf57398"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9960f7842a141d85b0bb38dd231900d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d">grpc_jwt_verifier_verify</a> (<a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *jwt, const char *audience, <a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:ac9960f7842a141d85b0bb38dd231900d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">grpc_jwt_claims_from_json</a> (<a class="el" href="structgrpc__json.html">grpc_json</a> *json, <a class="el" href="structgpr__slice.html">gpr_slice</a> buffer)</td></tr>
+<tr class="separator:ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a956a1fe237276fbed03e5caee7360c6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a">grpc_jwt_claims_check</a> (const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims, const char *audience)</td></tr>
+<tr class="separator:a956a1fe237276fbed03e5caee7360c6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7d1ae2ff5b43188c302d75bb3ed761f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7">grpc_jwt_verifier_clock_skew</a></td></tr>
+<tr class="separator:a7d1ae2ff5b43188c302d75bb3ed761f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a9cfed667421b6a1393e52d073a282"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282">grpc_jwt_verifier_max_delay</a></td></tr>
+<tr class="separator:ab4a9cfed667421b6a1393e52d073a282"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aea767ba783450fa8bcd54ca9b5321b73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN&#160;&#160;&#160;&quot;developer.gserviceaccount.com&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a22636d9510845a1cf41ac00d777f4e98"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX&#160;&#160;&#160;&quot;www.googleapis.com/robot/v1/metadata/x509&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a869346dd0fc12ac4686cd05eca73d1ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_OPENID_CONFIG_URL_SUFFIX&#160;&#160;&#160;&quot;/.well-known/openid-configuration&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a3998a024a5d44465e9f4f5e56666f1a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac893f9591e5e8eafd1a900d4bb3092f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_jwt_verification_done_cb)(void *user_data, <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status, <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1bd823cc55eb0ce26b62aa69ca916cc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> <a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57"></a>GRPC_JWT_VERIFIER_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298"></a>GRPC_JWT_VERIFIER_BAD_SIGNATURE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c"></a>GRPC_JWT_VERIFIER_BAD_FORMAT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08"></a>GRPC_JWT_VERIFIER_BAD_AUDIENCE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194"></a>GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f"></a>GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546"></a>GRPC_JWT_VERIFIER_GENERIC_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a19e8de86ed8bb8461969cd07624cb06f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_audience </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a956a1fe237276fbed03e5caee7360c6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> grpc_jwt_claims_check </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa69d0e75df7133ebfda05f50303f8316"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_claims_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9759b63895dde79be0715b0369cd0c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_expires_at </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3272e7b9f64bb7b36b4b7fbce9ae4f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>* grpc_jwt_claims_from_json </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td>
+ <td class="paramname"><em>json</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a319d836355e40efba372f9baf09bbd54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_id </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58838743f413ceebbf5b4afd77d7ab7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_issued_at </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a61a1d74e9b150c1a7dccf259d84e8da6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_issuer </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eb1db0055c2992691e1c3e92d65a656"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_jwt_claims_json </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1904f0f6a28c8b14a486c932e5db1499"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims_not_before </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac77af641794a3449e94d7d7cb48a50c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims_subject </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td>
+ <td class="paramname"><em>claims</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf8e8c06616b9d3006333f63c708a811"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>* grpc_jwt_verifier_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *&#160;</td>
+ <td class="paramname"><em>mappings</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_mappings</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d033f01e4d9c4c3dfba2e2f4cf57398"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_verifier_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td>
+ <td class="paramname"><em>verifier</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2aad6c48023145f901a39b5b9ef6b6d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_verifier_status_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9960f7842a141d85b0bb38dd231900d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_jwt_verifier_verify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td>
+ <td class="paramname"><em>verifier</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>jwt</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>audience</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7d1ae2ff5b43188c302d75bb3ed761f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_verifier_clock_skew</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab4a9cfed667421b6a1393e52d073a282"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_verifier_max_delay</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/jwt__verifier_8h_source.html b/doc/ref/core.internal/html/jwt__verifier_8h_source.html
new file mode 100644
index 0000000000..3421082858
--- /dev/null
+++ b/doc/ref/core.internal/html/jwt__verifier_8h_source.html
@@ -0,0 +1,274 @@
+<!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: src/core/security/jwt_verifier.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">jwt_verifier.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="jwt__verifier_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimser.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimser</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_JWT_VERIFIER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_JWT_VERIFIER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset_8h.html">src/core/iomgr/pollset.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="json_8h.html">src/core/json/json.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* --- Constants. --- */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef"> 45</a></span>&#160;<span class="preprocessor">#define GRPC_OPENID_CONFIG_URL_SUFFIX &quot;/.well-known/openid-configuration&quot;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73"> 46</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN \</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"> &quot;developer.gserviceaccount.com&quot;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98"> 48</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX \</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> &quot;www.googleapis.com/robot/v1/metadata/x509&quot;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">/* --- grpc_jwt_verifier_status. --- */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57"> 54</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57">GRPC_JWT_VERIFIER_OK</a> = 0,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298"> 55</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298">GRPC_JWT_VERIFIER_BAD_SIGNATURE</a>,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c"> 56</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c">GRPC_JWT_VERIFIER_BAD_FORMAT</a>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08"> 57</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08">GRPC_JWT_VERIFIER_BAD_AUDIENCE</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194"> 58</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194">GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f"> 59</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f">GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE</a>,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546"> 60</a></span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546">GRPC_JWT_VERIFIER_GENERIC_ERROR</a></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3">grpc_jwt_verifier_status_to_string</a>(<a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* --- grpc_jwt_claims. --- */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4"> 67</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316">grpc_jwt_claims_destroy</a>(<a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/* Returns the whole JSON tree of the claims. */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">const</span> <a class="code" href="structgrpc__json.html">grpc_json</a> *<a class="code" href="jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656">grpc_jwt_claims_json</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">/* Access to registered claims in https://tools.ietf.org/html/rfc7519#page-9 */</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6">grpc_jwt_claims_subject</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6">grpc_jwt_claims_issuer</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54">grpc_jwt_claims_id</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f">grpc_jwt_claims_audience</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f">grpc_jwt_claims_issued_at</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4">grpc_jwt_claims_expires_at</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499">grpc_jwt_claims_not_before</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* --- grpc_jwt_verifier. --- */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0"> 85</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> <a class="code" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html"> 87</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="comment">/* The email domain is the part after the @ sign. */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df"> 89</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df">email_domain</a>;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">/* The key url prefix will be used to get the public key from the issuer:</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> https://&lt;key_url_prefix&gt;/&lt;issuer_email&gt;</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> Therefore the key_url_prefix must NOT contain https://. */</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec"> 94</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec">key_url_prefix</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;} <a class="code" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment">/* Globals to control the verifier. Not thread-safe. */</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="keyword">extern</span> <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7">grpc_jwt_verifier_clock_skew</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keyword">extern</span> <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282">grpc_jwt_verifier_max_delay</a>;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment">/* The verifier can be created with some custom mappings to help with key</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> discovery in the case where the issuer is an email address.</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> mappings can be NULL in which case num_mappings MUST be 0.</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> A verifier object has one built-in mapping (unless overridden):</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN -&gt;</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX.*/</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<a class="code" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *<a class="code" href="jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811">grpc_jwt_verifier_create</a>(</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a> *mappings,</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordtype">size_t</span> num_mappings);</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment">/*The verifier must not be destroyed if there are still outstanding callbacks.*/</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keywordtype">void</span> <a class="code" href="jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398">grpc_jwt_verifier_destroy</a>(<a class="code" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier);</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment">/* User provided callback that will be called when the verification of the JWT</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> is done (maybe in another thread).</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> It is the responsibility of the callee to call grpc_jwt_claims_destroy on</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> the claims. */</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2"> 118</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a>)(<span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> status,</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims);</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment">/* Verifies for the JWT for the given expected audience. */</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="keywordtype">void</span> <a class="code" href="jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d">grpc_jwt_verifier_verify</a>(<a class="code" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *verifier,</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <span class="keyword">const</span> <span class="keywordtype">char</span> *jwt,</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *audience,</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> cb,</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">/* --- TESTING ONLY exposed functions. --- */</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *<a class="code" href="jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">grpc_jwt_claims_from_json</a>(<a class="code" href="structgrpc__json.html">grpc_json</a> *json, <a class="code" href="structgpr__slice.html">gpr_slice</a> buffer);</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<a class="code" href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a> <a class="code" href="jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a">grpc_jwt_claims_check</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *claims,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *audience);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_JWT_VERIFIER_H */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor"></span></div>
+<div class="ttc" id="jwt__verifier_8h_html_ac77af641794a3449e94d7d7cb48a50c6"><div class="ttname"><a href="jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6">grpc_jwt_claims_subject</a></div><div class="ttdeci">const char * grpc_jwt_claims_subject(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:203</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_ac9960f7842a141d85b0bb38dd231900d"><div class="ttname"><a href="jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d">grpc_jwt_verifier_verify</a></div><div class="ttdeci">void grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, grpc_jwt_verification_done_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:754</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="jwt__verifier_8h_html_ac893f9591e5e8eafd1a900d4bb3092f2"><div class="ttname"><a href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a></div><div class="ttdeci">void(* grpc_jwt_verification_done_cb)(void *user_data, grpc_jwt_verifier_status status, grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:118</div></div>
+<div class="ttc" id="pollset_8h_html"><div class="ttname"><a href="pollset_8h.html">pollset.h</a></div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a2aad6c48023145f901a39b5b9ef6b6d3"><div class="ttname"><a href="jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3">grpc_jwt_verifier_status_to_string</a></div><div class="ttdeci">const char * grpc_jwt_verifier_status_to_string(grpc_jwt_verifier_status status)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:49</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5">grpc_jwt_verifier_status</a></div><div class="ttdeci">grpc_jwt_verifier_status</div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:53</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a19e8de86ed8bb8461969cd07624cb06f"><div class="ttname"><a href="jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f">grpc_jwt_claims_audience</a></div><div class="ttdeci">const char * grpc_jwt_claims_audience(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:218</div></div>
+<div class="ttc" id="structgrpc__jwt__verifier_html"><div class="ttname"><a href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:375</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57">GRPC_JWT_VERIFIER_OK</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:54</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a58838743f413ceebbf5b4afd77d7ab7f"><div class="ttname"><a href="jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f">grpc_jwt_claims_issued_at</a></div><div class="ttdeci">gpr_timespec grpc_jwt_claims_issued_at(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:223</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194">GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:58</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a7d033f01e4d9c4c3dfba2e2f4cf57398"><div class="ttname"><a href="jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398">grpc_jwt_verifier_destroy</a></div><div class="ttdeci">void grpc_jwt_verifier_destroy(grpc_jwt_verifier *verifier)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:823</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a956a1fe237276fbed03e5caee7360c6a"><div class="ttname"><a href="jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a">grpc_jwt_claims_check</a></div><div class="ttdeci">grpc_jwt_verifier_status grpc_jwt_claims_check(const grpc_jwt_claims *claims, const char *audience)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:284</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298">GRPC_JWT_VERIFIER_BAD_SIGNATURE</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:55</div></div>
+<div class="ttc" id="json_8h_html"><div class="ttname"><a href="json_8h.html">json.h</a></div></div>
+<div class="ttc" id="jwt__verifier_8h_html_ae3272e7b9f64bb7b36b4b7fbce9ae4f8"><div class="ttname"><a href="jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8">grpc_jwt_claims_from_json</a></div><div class="ttdeci">grpc_jwt_claims * grpc_jwt_claims_from_json(grpc_json *json, gpr_slice buffer)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:239</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a319d836355e40efba372f9baf09bbd54"><div class="ttname"><a href="jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54">grpc_jwt_claims_id</a></div><div class="ttdeci">const char * grpc_jwt_claims_id(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:213</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546">GRPC_JWT_VERIFIER_GENERIC_ERROR</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:60</div></div>
+<div class="ttc" id="structgrpc__jwt__claims_html"><div class="ttname"><a href="structgrpc__jwt__claims.html">grpc_jwt_claims</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:178</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f">GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:59</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_aa69d0e75df7133ebfda05f50303f8316"><div class="ttname"><a href="jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316">grpc_jwt_claims_destroy</a></div><div class="ttdeci">void grpc_jwt_claims_destroy(grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:192</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a7d1ae2ff5b43188c302d75bb3ed761f7"><div class="ttname"><a href="jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7">grpc_jwt_verifier_clock_skew</a></div><div class="ttdeci">gpr_timespec grpc_jwt_verifier_clock_skew</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:365</div></div>
+<div class="ttc" id="structgrpc__json_html"><div class="ttname"><a href="structgrpc__json.html">grpc_json</a></div><div class="ttdef"><b>Definition:</b> json.h:44</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c">GRPC_JWT_VERIFIER_BAD_FORMAT</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:56</div></div>
+<div class="ttc" id="structgrpc__jwt__verifier__email__domain__key__url__mapping_html_a88231d204f177fb83c65c64c640ac7df"><div class="ttname"><a href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df">grpc_jwt_verifier_email_domain_key_url_mapping::email_domain</a></div><div class="ttdeci">const char * email_domain</div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:89</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a1904f0f6a28c8b14a486c932e5db1499"><div class="ttname"><a href="jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499">grpc_jwt_claims_not_before</a></div><div class="ttdeci">gpr_timespec grpc_jwt_claims_not_before(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:233</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08"><div class="ttname"><a href="jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08">GRPC_JWT_VERIFIER_BAD_AUDIENCE</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:57</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a4eb1db0055c2992691e1c3e92d65a656"><div class="ttname"><a href="jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656">grpc_jwt_claims_json</a></div><div class="ttdeci">const grpc_json * grpc_jwt_claims_json(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:198</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_a61a1d74e9b150c1a7dccf259d84e8da6"><div class="ttname"><a href="jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6">grpc_jwt_claims_issuer</a></div><div class="ttdeci">const char * grpc_jwt_claims_issuer(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:208</div></div>
+<div class="ttc" id="structgrpc__jwt__verifier__email__domain__key__url__mapping_html"><div class="ttname"><a href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html">grpc_jwt_verifier_email_domain_key_url_mapping</a></div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:87</div></div>
+<div class="ttc" id="structgrpc__jwt__verifier__email__domain__key__url__mapping_html_a6dea6ddab6cdfcf865c08047a0d4b3ec"><div class="ttname"><a href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec">grpc_jwt_verifier_email_domain_key_url_mapping::key_url_prefix</a></div><div class="ttdeci">const char * key_url_prefix</div><div class="ttdef"><b>Definition:</b> jwt_verifier.h:94</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_acf8e8c06616b9d3006333f63c708a811"><div class="ttname"><a href="jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811">grpc_jwt_verifier_create</a></div><div class="ttdeci">grpc_jwt_verifier * grpc_jwt_verifier_create(const grpc_jwt_verifier_email_domain_key_url_mapping *mappings, size_t num_mappings)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:800</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_ab4a9cfed667421b6a1393e52d073a282"><div class="ttname"><a href="jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282">grpc_jwt_verifier_max_delay</a></div><div class="ttdeci">gpr_timespec grpc_jwt_verifier_max_delay</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:368</div></div>
+<div class="ttc" id="jwt__verifier_8h_html_ab9759b63895dde79be0715b0369cd0c4"><div class="ttname"><a href="jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4">grpc_jwt_claims_expires_at</a></div><div class="ttdeci">gpr_timespec grpc_jwt_claims_expires_at(const grpc_jwt_claims *claims)</div><div class="ttdef"><b>Definition:</b> jwt_verifier.c:228</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/lame__client_8c.html b/doc/ref/core.internal/html/lame__client_8c.html
new file mode 100644
index 0000000000..9238dd38ff
--- /dev/null
+++ b/doc/ref/core.internal/html/lame__client_8c.html
@@ -0,0 +1,142 @@
+<!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: src/core/surface/lame_client.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">lame_client.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acd59697f4b8bedea662939da3668ab9b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lame__client_8c.html#acd59697f4b8bedea662939da3668ab9b">grpc_lame_client_channel_create</a> (const char *target)</td></tr>
+<tr class="memdesc:acd59697f4b8bedea662939da3668ab9b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a lame client: this client fails every operation attempted on it. <a href="#acd59697f4b8bedea662939da3668ab9b">More...</a><br/></td></tr>
+<tr class="separator:acd59697f4b8bedea662939da3668ab9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="acd59697f4b8bedea662939da3668ab9b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_lame_client_channel_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a lame client: this client fails every operation attempted on it. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/lb__policy_8c.html b/doc/ref/core.internal/html/lb__policy_8c.html
new file mode 100644
index 0000000000..ce6108c205
--- /dev/null
+++ b/doc/ref/core.internal/html/lb__policy_8c.html
@@ -0,0 +1,343 @@
+<!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: src/core/client_config/lb_policy.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">lb_policy.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="lb__policy_8h_source.html">src/core/client_config/lb_policy.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa20fbb7fdf68dadcae6aaba3e227ac50"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#aa20fbb7fdf68dadcae6aaba3e227ac50">grpc_lb_policy_init</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, const <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *vtable)</td></tr>
+<tr class="memdesc:aa20fbb7fdf68dadcae6aaba3e227ac50"><td class="mdescLeft">&#160;</td><td class="mdescRight">called by concrete implementations to initialize the base struct <a href="#aa20fbb7fdf68dadcae6aaba3e227ac50">More...</a><br/></td></tr>
+<tr class="separator:aa20fbb7fdf68dadcae6aaba3e227ac50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9780ed236a96c3f57d1965d3395132f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:af9780ed236a96c3f57d1965d3395132f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed69acd0dd453033a1e1437920ba8942"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:aed69acd0dd453033a1e1437920ba8942"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1eb8d912c3d82fa0f444fe9cf4bd6991"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">grpc_lb_policy_shutdown</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="memdesc:a1eb8d912c3d82fa0f444fe9cf4bd6991"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start shutting down (fail any pending picks) <a href="#a1eb8d912c3d82fa0f444fe9cf4bd6991">More...</a><br/></td></tr>
+<tr class="separator:a1eb8d912c3d82fa0f444fe9cf4bd6991"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31611c6d703434b360e90062a28e5140"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#a31611c6d703434b360e90062a28e5140">grpc_lb_policy_pick</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="memdesc:a31611c6d703434b360e90062a28e5140"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given initial metadata in <em>initial_metadata</em>, find an appropriate target for this rpc, and 'return' it by calling <em>on_complete</em> after setting <em>target</em>. <a href="#a31611c6d703434b360e90062a28e5140">More...</a><br/></td></tr>
+<tr class="separator:a31611c6d703434b360e90062a28e5140"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d03d2f71dda12c97863cf387559e47a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#a1d03d2f71dda12c97863cf387559e47a">grpc_lb_policy_broadcast</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:a1d03d2f71dda12c97863cf387559e47a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a163a863a51690daa93984d7b7bd0ac88"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#a163a863a51690daa93984d7b7bd0ac88">grpc_lb_policy_exit_idle</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:a163a863a51690daa93984d7b7bd0ac88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a246a7f5b971f672fa6a8dba8d7264790"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#a246a7f5b971f672fa6a8dba8d7264790">grpc_lb_policy_notify_on_state_change</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="separator:a246a7f5b971f672fa6a8dba8d7264790"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a115550f997d572ed49c8906c2cb347b8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8c.html#a115550f997d572ed49c8906c2cb347b8">grpc_lb_policy_check_connectivity</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:a115550f997d572ed49c8906c2cb347b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1d03d2f71dda12c97863cf387559e47a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_broadcast </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a115550f997d572ed49c8906c2cb347b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_lb_policy_check_connectivity </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a163a863a51690daa93984d7b7bd0ac88"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_exit_idle </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa20fbb7fdf68dadcae6aaba3e227ac50"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>called by concrete implementations to initialize the base struct </p>
+
+</div>
+</div>
+<a class="anchor" id="a246a7f5b971f672fa6a8dba8d7264790"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_notify_on_state_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31611c6d703434b360e90062a28e5140"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_pick </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Given initial metadata in <em>initial_metadata</em>, find an appropriate target for this rpc, and 'return' it by calling <em>on_complete</em> after setting <em>target</em>. </p>
+<p>Picking can be asynchronous. Any IO should be done under <em>pollset</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="af9780ed236a96c3f57d1965d3395132f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1eb8d912c3d82fa0f444fe9cf4bd6991"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start shutting down (fail any pending picks) </p>
+
+</div>
+</div>
+<a class="anchor" id="aed69acd0dd453033a1e1437920ba8942"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/lb__policy_8h.html b/doc/ref/core.internal/html/lb__policy_8h.html
new file mode 100644
index 0000000000..75e13c76e2
--- /dev/null
+++ b/doc/ref/core.internal/html/lb__policy_8h.html
@@ -0,0 +1,465 @@
+<!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: src/core/client_config/lb_policy.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">lb_policy.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="subchannel_8h_source.html">src/core/client_config/subchannel.h</a>&quot;</code><br/>
+</div>
+<p><a href="lb__policy_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aee5c1071728e588a3875f2338d4a5526"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#aee5c1071728e588a3875f2338d4a5526">GRPC_LB_POLICY_REF</a>(p, r)&#160;&#160;&#160;<a class="el" href="lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a>((p))</td></tr>
+<tr class="separator:aee5c1071728e588a3875f2338d4a5526"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a376467589c9ff6e1d597ae21b44295c9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a376467589c9ff6e1d597ae21b44295c9">GRPC_LB_POLICY_UNREF</a>(p, r)&#160;&#160;&#160;<a class="el" href="lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a>((p))</td></tr>
+<tr class="separator:a376467589c9ff6e1d597ae21b44295c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aa2bf7da355b0faa3fe532f83899e3e2c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#aa2bf7da355b0faa3fe532f83899e3e2c">grpc_lb_policy</a></td></tr>
+<tr class="memdesc:aa2bf7da355b0faa3fe532f83899e3e2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">A load balancing policy: specified by a vtable and a struct (which is expected to be extended to contain some parameters) <a href="#aa2bf7da355b0faa3fe532f83899e3e2c">More...</a><br/></td></tr>
+<tr class="separator:aa2bf7da355b0faa3fe532f83899e3e2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3319e96c3d9a520883e74ddf112f7fd2"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a3319e96c3d9a520883e74ddf112f7fd2">grpc_lb_policy_vtable</a></td></tr>
+<tr class="separator:a3319e96c3d9a520883e74ddf112f7fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82191ae9ee04740368256ebfe25ec9d5"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5">grpc_lb_completion</a> )(void *cb_arg, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, const char *errmsg)</td></tr>
+<tr class="separator:a82191ae9ee04740368256ebfe25ec9d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:af9780ed236a96c3f57d1965d3395132f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:af9780ed236a96c3f57d1965d3395132f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed69acd0dd453033a1e1437920ba8942"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:aed69acd0dd453033a1e1437920ba8942"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa20fbb7fdf68dadcae6aaba3e227ac50"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50">grpc_lb_policy_init</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, const <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *vtable)</td></tr>
+<tr class="memdesc:aa20fbb7fdf68dadcae6aaba3e227ac50"><td class="mdescLeft">&#160;</td><td class="mdescRight">called by concrete implementations to initialize the base struct <a href="#aa20fbb7fdf68dadcae6aaba3e227ac50">More...</a><br/></td></tr>
+<tr class="separator:aa20fbb7fdf68dadcae6aaba3e227ac50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1eb8d912c3d82fa0f444fe9cf4bd6991"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">grpc_lb_policy_shutdown</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="memdesc:a1eb8d912c3d82fa0f444fe9cf4bd6991"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start shutting down (fail any pending picks) <a href="#a1eb8d912c3d82fa0f444fe9cf4bd6991">More...</a><br/></td></tr>
+<tr class="separator:a1eb8d912c3d82fa0f444fe9cf4bd6991"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31611c6d703434b360e90062a28e5140"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a31611c6d703434b360e90062a28e5140">grpc_lb_policy_pick</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="memdesc:a31611c6d703434b360e90062a28e5140"><td class="mdescLeft">&#160;</td><td class="mdescRight">Given initial metadata in <em>initial_metadata</em>, find an appropriate target for this rpc, and 'return' it by calling <em>on_complete</em> after setting <em>target</em>. <a href="#a31611c6d703434b360e90062a28e5140">More...</a><br/></td></tr>
+<tr class="separator:a31611c6d703434b360e90062a28e5140"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d03d2f71dda12c97863cf387559e47a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a">grpc_lb_policy_broadcast</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:a1d03d2f71dda12c97863cf387559e47a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a163a863a51690daa93984d7b7bd0ac88"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88">grpc_lb_policy_exit_idle</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:a163a863a51690daa93984d7b7bd0ac88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a246a7f5b971f672fa6a8dba8d7264790"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790">grpc_lb_policy_notify_on_state_change</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="separator:a246a7f5b971f672fa6a8dba8d7264790"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a115550f997d572ed49c8906c2cb347b8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8">grpc_lb_policy_check_connectivity</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:a115550f997d572ed49c8906c2cb347b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aee5c1071728e588a3875f2338d4a5526"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_LB_POLICY_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a376467589c9ff6e1d597ae21b44295c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_LB_POLICY_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a82191ae9ee04740368256ebfe25ec9d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_lb_completion)(void *cb_arg, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, const char *errmsg)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2bf7da355b0faa3fe532f83899e3e2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> <a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A load balancing policy: specified by a vtable and a struct (which is expected to be extended to contain some parameters) </p>
+
+</div>
+</div>
+<a class="anchor" id="a3319e96c3d9a520883e74ddf112f7fd2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1d03d2f71dda12c97863cf387559e47a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_broadcast </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a115550f997d572ed49c8906c2cb347b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_lb_policy_check_connectivity </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a163a863a51690daa93984d7b7bd0ac88"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_exit_idle </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa20fbb7fdf68dadcae6aaba3e227ac50"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>called by concrete implementations to initialize the base struct </p>
+
+</div>
+</div>
+<a class="anchor" id="a246a7f5b971f672fa6a8dba8d7264790"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_notify_on_state_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>closure</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31611c6d703434b360e90062a28e5140"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_pick </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Given initial metadata in <em>initial_metadata</em>, find an appropriate target for this rpc, and 'return' it by calling <em>on_complete</em> after setting <em>target</em>. </p>
+<p>Picking can be asynchronous. Any IO should be done under <em>pollset</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="af9780ed236a96c3f57d1965d3395132f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1eb8d912c3d82fa0f444fe9cf4bd6991"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start shutting down (fail any pending picks) </p>
+
+</div>
+</div>
+<a class="anchor" id="aed69acd0dd453033a1e1437920ba8942"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_lb_policy_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/lb__policy_8h_source.html b/doc/ref/core.internal/html/lb__policy_8h_source.html
new file mode 100644
index 0000000000..11bf541f8f
--- /dev/null
+++ b/doc/ref/core.internal/html/lb__policy_8h_source.html
@@ -0,0 +1,236 @@
+<!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: src/core/client_config/lb_policy.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">lb_policy.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="lb__policy_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_LB_POLICY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_LB_POLICY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subchannel_8h.html">src/core/client_config/subchannel.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="lb__policy_8h.html#aa2bf7da355b0faa3fe532f83899e3e2c"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> <a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="lb__policy_8h.html#a3319e96c3d9a520883e74ddf112f7fd2"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> <a class="code" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5"> 44</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5">grpc_lb_completion</a>)(<span class="keywordtype">void</span> *cb_arg, <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, <span class="keyword">const</span> <span class="keywordtype">char</span> *errmsg);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy.html"> 47</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a"> 48</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *<a class="code" href="structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a">vtable</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485"> 49</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485">refs</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;};</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html"> 52</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c"> 53</a></span>&#160; void (*<a class="code" href="structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c">destroy</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6"> 55</a></span>&#160; void (*<a class="code" href="structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6">shutdown</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f"> 58</a></span>&#160; void (*<a class="code" href="structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f">pick</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata, <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> **target,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301"> 63</a></span>&#160; void (*<a class="code" href="structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301">exit_idle</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3"> 66</a></span>&#160; void (*<a class="code" href="structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3">broadcast</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25"> 69</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> (*<a class="code" href="structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25">check_connectivity</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed"> 73</a></span>&#160; void (*<a class="code" href="structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed">notify_on_state_change</a>)(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy,</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;};</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#ifdef GRPC_LB_POLICY_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_LB_POLICY_REF(p, r) \</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor"> grpc_lb_policy_ref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_LB_POLICY_UNREF(p, r) \</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor"> grpc_lb_policy_unref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="lb__policy_8h.html#aee5c1071728e588a3875f2338d4a5526"> 88</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_LB_POLICY_REF(p, r) grpc_lb_policy_ref((p))</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="lb__policy_8h.html#a376467589c9ff6e1d597ae21b44295c9"> 89</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_LB_POLICY_UNREF(p, r) grpc_lb_policy_unref((p))</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50">grpc_lb_policy_init</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy,</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *vtable);</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">grpc_lb_policy_shutdown</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#a31611c6d703434b360e90062a28e5140">grpc_lb_policy_pick</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> **target,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a">grpc_lb_policy_broadcast</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88">grpc_lb_policy_exit_idle</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keywordtype">void</span> <a class="code" href="lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790">grpc_lb_policy_notify_on_state_change</a>(<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy,</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8">grpc_lb_policy_check_connectivity</a>(</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CONFIG_LB_POLICY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__lb__policy_html_a83d1624912fcce199cb291023abe453a"><div class="ttname"><a href="structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a">grpc_lb_policy::vtable</a></div><div class="ttdeci">const grpc_lb_policy_vtable * vtable</div><div class="ttdef"><b>Definition:</b> lb_policy.h:48</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> grpc.h:139</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="lb__policy_8h_html_a163a863a51690daa93984d7b7bd0ac88"><div class="ttname"><a href="lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88">grpc_lb_policy_exit_idle</a></div><div class="ttdeci">void grpc_lb_policy_exit_idle(grpc_lb_policy *policy)</div><div class="ttdef"><b>Definition:</b> lb_policy.c:81</div></div>
+<div class="ttc" id="structgrpc__metadata__batch_html"><div class="ttname"><a href="structgrpc__metadata__batch.html">grpc_metadata_batch</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:87</div></div>
+<div class="ttc" id="lb__policy_8h_html_a115550f997d572ed49c8906c2cb347b8"><div class="ttname"><a href="lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8">grpc_lb_policy_check_connectivity</a></div><div class="ttdeci">grpc_connectivity_state grpc_lb_policy_check_connectivity(grpc_lb_policy *policy)</div><div class="ttdef"><b>Definition:</b> lb_policy.c:91</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_abccc94e7f91ee59b360ee425493d9e6f"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f">grpc_lb_policy_vtable::pick</a></div><div class="ttdeci">void(* pick)(grpc_lb_policy *policy, grpc_pollset *pollset, grpc_metadata_batch *initial_metadata, grpc_subchannel **target, grpc_iomgr_closure *on_complete)</div><div class="ttdoc">implement grpc_lb_policy_pick </div><div class="ttdef"><b>Definition:</b> lb_policy.h:58</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_a0a12509ba4569fb4c87b4d325e0f89d3"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3">grpc_lb_policy_vtable::broadcast</a></div><div class="ttdeci">void(* broadcast)(grpc_lb_policy *policy, grpc_transport_op *op)</div><div class="ttdoc">broadcast a transport op to all subchannels </div><div class="ttdef"><b>Definition:</b> lb_policy.h:66</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__subchannel_html"><div class="ttname"><a href="structgrpc__subchannel.html">grpc_subchannel</a></div><div class="ttdef"><b>Definition:</b> subchannel.c:77</div></div>
+<div class="ttc" id="lb__policy_8h_html_a82191ae9ee04740368256ebfe25ec9d5"><div class="ttname"><a href="lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5">grpc_lb_completion</a></div><div class="ttdeci">void(* grpc_lb_completion)(void *cb_arg, grpc_subchannel *subchannel, grpc_status_code status, const char *errmsg)</div><div class="ttdef"><b>Definition:</b> lb_policy.h:44</div></div>
+<div class="ttc" id="lb__policy_8h_html_a1d03d2f71dda12c97863cf387559e47a"><div class="ttname"><a href="lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a">grpc_lb_policy_broadcast</a></div><div class="ttdeci">void grpc_lb_policy_broadcast(grpc_lb_policy *policy, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> lb_policy.c:77</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a></div><div class="ttdef"><b>Definition:</b> lb_policy.h:52</div></div>
+<div class="ttc" id="lb__policy_8h_html_a1eb8d912c3d82fa0f444fe9cf4bd6991"><div class="ttname"><a href="lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991">grpc_lb_policy_shutdown</a></div><div class="ttdeci">void grpc_lb_policy_shutdown(grpc_lb_policy *policy)</div><div class="ttdoc">Start shutting down (fail any pending picks) </div><div class="ttdef"><b>Definition:</b> lb_policy.c:66</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_a239ed7b3beddcfa318cc402f6d9f977c"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c">grpc_lb_policy_vtable::destroy</a></div><div class="ttdeci">void(* destroy)(grpc_lb_policy *policy)</div><div class="ttdef"><b>Definition:</b> lb_policy.h:53</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="structgrpc__lb__policy_html_a729d56e37097d14d3a84090aa85d4485"><div class="ttname"><a href="structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485">grpc_lb_policy::refs</a></div><div class="ttdeci">gpr_refcount refs</div><div class="ttdef"><b>Definition:</b> lb_policy.h:49</div></div>
+<div class="ttc" id="lb__policy_8h_html_a31611c6d703434b360e90062a28e5140"><div class="ttname"><a href="lb__policy_8h.html#a31611c6d703434b360e90062a28e5140">grpc_lb_policy_pick</a></div><div class="ttdeci">void grpc_lb_policy_pick(grpc_lb_policy *policy, grpc_pollset *pollset, grpc_metadata_batch *initial_metadata, grpc_subchannel **target, grpc_iomgr_closure *on_complete)</div><div class="ttdoc">Given initial metadata in initial_metadata, find an appropriate target for this rpc, and &#39;return&#39; it by calling on_complete after setting target. </div><div class="ttdef"><b>Definition:</b> lb_policy.c:70</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_a51c5b68411493024b3ffde40681c79e6"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6">grpc_lb_policy_vtable::shutdown</a></div><div class="ttdeci">void(* shutdown)(grpc_lb_policy *policy)</div><div class="ttdef"><b>Definition:</b> lb_policy.h:55</div></div>
+<div class="ttc" id="subchannel_8h_html"><div class="ttname"><a href="subchannel_8h.html">subchannel.h</a></div></div>
+<div class="ttc" id="lb__policy_8h_html_af9780ed236a96c3f57d1965d3395132f"><div class="ttname"><a href="lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f">grpc_lb_policy_ref</a></div><div class="ttdeci">void grpc_lb_policy_ref(grpc_lb_policy *policy)</div><div class="ttdef"><b>Definition:</b> lb_policy.c:48</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_a655f1dd76748cdfa93f911861c1ec0ed"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed">grpc_lb_policy_vtable::notify_on_state_change</a></div><div class="ttdeci">void(* notify_on_state_change)(grpc_lb_policy *policy, grpc_connectivity_state *state, grpc_iomgr_closure *closure)</div><div class="ttdoc">call notify when the connectivity state of a channel changes from *state. </div><div class="ttdef"><b>Definition:</b> lb_policy.h:73</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="lb__policy_8h_html_aed69acd0dd453033a1e1437920ba8942"><div class="ttname"><a href="lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942">grpc_lb_policy_unref</a></div><div class="ttdeci">void grpc_lb_policy_unref(grpc_lb_policy *policy)</div><div class="ttdef"><b>Definition:</b> lb_policy.c:59</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_a49613233281018e00cf8dcd060c9a301"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301">grpc_lb_policy_vtable::exit_idle</a></div><div class="ttdeci">void(* exit_idle)(grpc_lb_policy *policy)</div><div class="ttdoc">try to enter a READY connectivity state </div><div class="ttdef"><b>Definition:</b> lb_policy.h:63</div></div>
+<div class="ttc" id="lb__policy_8h_html_a246a7f5b971f672fa6a8dba8d7264790"><div class="ttname"><a href="lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790">grpc_lb_policy_notify_on_state_change</a></div><div class="ttdeci">void grpc_lb_policy_notify_on_state_change(grpc_lb_policy *policy, grpc_connectivity_state *state, grpc_iomgr_closure *closure)</div><div class="ttdef"><b>Definition:</b> lb_policy.c:85</div></div>
+<div class="ttc" id="lb__policy_8h_html_aa20fbb7fdf68dadcae6aaba3e227ac50"><div class="ttname"><a href="lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50">grpc_lb_policy_init</a></div><div class="ttdeci">void grpc_lb_policy_init(grpc_lb_policy *policy, const grpc_lb_policy_vtable *vtable)</div><div class="ttdoc">called by concrete implementations to initialize the base struct </div><div class="ttdef"><b>Definition:</b> lb_policy.c:36</div></div>
+<div class="ttc" id="structgrpc__lb__policy_html"><div class="ttname"><a href="structgrpc__lb__policy.html">grpc_lb_policy</a></div><div class="ttdef"><b>Definition:</b> lb_policy.h:47</div></div>
+<div class="ttc" id="structgrpc__transport__op_html"><div class="ttname"><a href="structgrpc__transport__op.html">grpc_transport_op</a></div><div class="ttdoc">Transport op: a set of operations to perform on a transport as a whole. </div><div class="ttdef"><b>Definition:</b> transport.h:90</div></div>
+<div class="ttc" id="structgrpc__lb__policy__vtable_html_af1251501a613435c27688a15b1f76e25"><div class="ttname"><a href="structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25">grpc_lb_policy_vtable::check_connectivity</a></div><div class="ttdeci">grpc_connectivity_state(* check_connectivity)(grpc_lb_policy *policy)</div><div class="ttdoc">check the current connectivity of the lb_policy </div><div class="ttdef"><b>Definition:</b> lb_policy.h:69</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/log_8c.html b/doc/ref/core.internal/html/log_8c.html
new file mode 100644
index 0000000000..08fb8fe0bf
--- /dev/null
+++ b/doc/ref/core.internal/html/log_8c.html
@@ -0,0 +1,203 @@
+<!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: src/core/support/log.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">log.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a620ef16728107bedfa4188786f901ff9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8c.html#a620ef16728107bedfa4188786f901ff9">gpr_default_log</a> (<a class="el" href="structgpr__log__func__args.html">gpr_log_func_args</a> *args)</td></tr>
+<tr class="separator:a620ef16728107bedfa4188786f901ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3badccbc5ec4c725eadbc07b8e5706eb"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8c.html#a3badccbc5ec4c725eadbc07b8e5706eb">gpr_log_severity_string</a> (<a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity)</td></tr>
+<tr class="separator:a3badccbc5ec4c725eadbc07b8e5706eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a3d59528754f8fbcfe54f6f8a72ec61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8c.html#a7a3d59528754f8fbcfe54f6f8a72ec61">gpr_log_message</a> (const char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, const char *message)</td></tr>
+<tr class="separator:a7a3d59528754f8fbcfe54f6f8a72ec61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a4590f04f5e003b740b7688014b7be5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8c.html#a4a4590f04f5e003b740b7688014b7be5">gpr_set_log_function</a> (<a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a> f)</td></tr>
+<tr class="separator:a4a4590f04f5e003b740b7688014b7be5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a620ef16728107bedfa4188786f901ff9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_default_log </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__log__func__args.html">gpr_log_func_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a3d59528754f8fbcfe54f6f8a72ec61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_log_message </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3badccbc5ec4c725eadbc07b8e5706eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_log_severity_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4a4590f04f5e003b740b7688014b7be5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_set_log_function </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a>&#160;</td>
+ <td class="paramname"><em>f</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/log_8h.html b/doc/ref/core.internal/html/log_8h.html
new file mode 100644
index 0000000000..155724ba0f
--- /dev/null
+++ b/doc/ref/core.internal/html/log_8h.html
@@ -0,0 +1,374 @@
+<!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: include/grpc/support/log.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">log.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;stdarg.h&gt;</code><br/>
+</div>
+<p><a href="log_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__log__func__args.html">gpr_log_func_args</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a3e793245091f13bb7318a18b1166a773"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a3e793245091f13bb7318a18b1166a773">GPR_DEBUG</a>&#160;&#160;&#160;__FILE__, __LINE__, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">GPR_LOG_SEVERITY_DEBUG</a></td></tr>
+<tr class="separator:a3e793245091f13bb7318a18b1166a773"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0d0d75690f79edc9294498c88f96703"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#af0d0d75690f79edc9294498c88f96703">GPR_INFO</a>&#160;&#160;&#160;__FILE__, __LINE__, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">GPR_LOG_SEVERITY_INFO</a></td></tr>
+<tr class="separator:af0d0d75690f79edc9294498c88f96703"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63faedb3eefd93d1c0e79974be80cc36"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a63faedb3eefd93d1c0e79974be80cc36">GPR_ERROR</a>&#160;&#160;&#160;__FILE__, __LINE__, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">GPR_LOG_SEVERITY_ERROR</a></td></tr>
+<tr class="separator:a63faedb3eefd93d1c0e79974be80cc36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ccf52ff690655cc22cd9d053650876f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a6ccf52ff690655cc22cd9d053650876f">GPR_ASSERT</a>(x)</td></tr>
+<tr class="separator:a6ccf52ff690655cc22cd9d053650876f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad49303346a78cf4881129958214fde8d"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#ad49303346a78cf4881129958214fde8d">gpr_log_severity</a></td></tr>
+<tr class="separator:ad49303346a78cf4881129958214fde8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23f29195676c33c61ff08a7f0a3e69b0"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a> )(<a class="el" href="structgpr__log__func__args.html">gpr_log_func_args</a> *args)</td></tr>
+<tr class="separator:a23f29195676c33c61ff08a7f0a3e69b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:af10334b4085ac6985a2af9c08478ad48"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> { <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">GPR_LOG_SEVERITY_DEBUG</a>,
+<a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">GPR_LOG_SEVERITY_INFO</a>,
+<a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">GPR_LOG_SEVERITY_ERROR</a>
+ }</td></tr>
+<tr class="separator:af10334b4085ac6985a2af9c08478ad48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3badccbc5ec4c725eadbc07b8e5706eb"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb">gpr_log_severity_string</a> (<a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity)</td></tr>
+<tr class="separator:a3badccbc5ec4c725eadbc07b8e5706eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf6f383ed91d9f4e2e6bd79c57539fd1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">gpr_log</a> (const char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, const char *format,...)</td></tr>
+<tr class="separator:acf6f383ed91d9f4e2e6bd79c57539fd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7a3d59528754f8fbcfe54f6f8a72ec61"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61">gpr_log_message</a> (const char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, const char *message)</td></tr>
+<tr class="separator:a7a3d59528754f8fbcfe54f6f8a72ec61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75771a41e3bb2831df8043a57de05330"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log_8h.html#a75771a41e3bb2831df8043a57de05330">gpr_set_log_function</a> (<a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a> func)</td></tr>
+<tr class="separator:a75771a41e3bb2831df8043a57de05330"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a6ccf52ff690655cc22cd9d053650876f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ASSERT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> if (!(x)) { <a class="code" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">\</a></div>
+<div class="line"><a class="code" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1"> gpr_log</a>(<a class="code" href="log_8h.html#a63faedb3eefd93d1c0e79974be80cc36">GPR_ERROR</a>, <span class="stringliteral">&quot;assertion failed: %s&quot;</span>, #x); \</div>
+<div class="line"> abort(); \</div>
+<div class="line"> } \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+<div class="ttc" id="log_8h_html_a63faedb3eefd93d1c0e79974be80cc36"><div class="ttname"><a href="log_8h.html#a63faedb3eefd93d1c0e79974be80cc36">GPR_ERROR</a></div><div class="ttdeci">#define GPR_ERROR</div><div class="ttdef"><b>Definition:</b> log.h:68</div></div>
+<div class="ttc" id="log_8h_html_acf6f383ed91d9f4e2e6bd79c57539fd1"><div class="ttname"><a href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">gpr_log</a></div><div class="ttdeci">void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...)</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a3e793245091f13bb7318a18b1166a773"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_DEBUG&#160;&#160;&#160;__FILE__, __LINE__, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">GPR_LOG_SEVERITY_DEBUG</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63faedb3eefd93d1c0e79974be80cc36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ERROR&#160;&#160;&#160;__FILE__, __LINE__, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">GPR_LOG_SEVERITY_ERROR</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0d0d75690f79edc9294498c88f96703"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_INFO&#160;&#160;&#160;__FILE__, __LINE__, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">GPR_LOG_SEVERITY_INFO</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a23f29195676c33c61ff08a7f0a3e69b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* gpr_log_func)(<a class="el" href="structgpr__log__func__args.html">gpr_log_func_args</a> *args)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad49303346a78cf4881129958214fde8d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="af10334b4085ac6985a2af9c08478ad48"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6"></a>GPR_LOG_SEVERITY_DEBUG</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1"></a>GPR_LOG_SEVERITY_INFO</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4"></a>GPR_LOG_SEVERITY_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="acf6f383ed91d9f4e2e6bd79c57539fd1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_log </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>format</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a3d59528754f8fbcfe54f6f8a72ec61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_log_message </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3badccbc5ec4c725eadbc07b8e5706eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_log_severity_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a75771a41e3bb2831df8043a57de05330"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_set_log_function </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a>&#160;</td>
+ <td class="paramname"><em>func</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/log_8h_source.html b/doc/ref/core.internal/html/log_8h_source.html
new file mode 100644
index 0000000000..01b3ef5eb2
--- /dev/null
+++ b/doc/ref/core.internal/html/log_8h_source.html
@@ -0,0 +1,221 @@
+<!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: include/grpc/support/log.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">log.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="log_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_LOG_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_LOG_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span> <span class="comment">/* for abort() */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;stdarg.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* GPR log API.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> Usage (within grpc):</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> int argument1 = 3;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> char* argument2 = &quot;hello&quot;;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> gpr_log(GPR_DEBUG, &quot;format string %d&quot;, argument1);</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> gpr_log(GPR_INFO, &quot;hello world&quot;);</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> gpr_log(GPR_ERROR, &quot;%d %s!!&quot;, argument1, argument2); */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* The severity of a log message - use the #defines below when calling into</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> gpr_log to additionally supply file and line data */</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48"> 56</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> {</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6"> 57</a></span>&#160; <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">GPR_LOG_SEVERITY_DEBUG</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1"> 58</a></span>&#160; <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">GPR_LOG_SEVERITY_INFO</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4"> 59</a></span>&#160; <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">GPR_LOG_SEVERITY_ERROR</a></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;} <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment">/* Returns a string representation of the log severity */</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb">gpr_log_severity_string</a>(<a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* Macros to build log contexts at various severity levels */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="log_8h.html#a3e793245091f13bb7318a18b1166a773"> 66</a></span>&#160;<span class="preprocessor">#define GPR_DEBUG __FILE__, __LINE__, GPR_LOG_SEVERITY_DEBUG</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="log_8h.html#af0d0d75690f79edc9294498c88f96703"> 67</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_INFO __FILE__, __LINE__, GPR_LOG_SEVERITY_INFO</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="log_8h.html#a63faedb3eefd93d1c0e79974be80cc36"> 68</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ERROR __FILE__, __LINE__, GPR_LOG_SEVERITY_ERROR</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">/* Log a message. It&#39;s advised to use GPR_xxx above to generate the context</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> * for each message */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">gpr_log</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line, <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity,</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *format, ...);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keywordtype">void</span> <a class="code" href="log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61">gpr_log_message</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line, <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *message);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">/* Log overrides: applications can use this API to intercept logging calls</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> and use their own implementations */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structgpr__log__func__args.html"> 81</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89"> 82</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89">file</a>;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb"> 83</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb">line</a>;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc"> 84</a></span>&#160; <a class="code" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> <a class="code" href="structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc">severity</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b"> 85</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b">message</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;} <a class="code" href="structgpr__log__func__args.html">gpr_log_func_args</a>;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0"> 88</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a>)(<a class="code" href="structgpr__log__func__args.html">gpr_log_func_args</a> *args);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="log_8h.html#a75771a41e3bb2831df8043a57de05330">gpr_set_log_function</a>(<a class="code" href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a> func);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment">/* abort() the process if x is zero, having written a line to the log.</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> Intended for internal invariants. If the error can be recovered from,</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> without the possibility of corruption, or might best be reflected via</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> an exception in a higher-level language, consider returning error code. */</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="log_8h.html#a6ccf52ff690655cc22cd9d053650876f"> 96</a></span>&#160;<span class="preprocessor">#define GPR_ASSERT(x) \</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"> if (!(x)) { \</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor"> gpr_log(GPR_ERROR, &quot;assertion failed: %s&quot;, #x); \</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor"> abort(); \</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor"> } \</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_LOG_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="log_8h_html_af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1"><div class="ttname"><a href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1">GPR_LOG_SEVERITY_INFO</a></div><div class="ttdef"><b>Definition:</b> log.h:58</div></div>
+<div class="ttc" id="structgpr__log__func__args_html_ae1a051bbc7e0ef6c58de0db3efda24bb"><div class="ttname"><a href="structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb">gpr_log_func_args::line</a></div><div class="ttdeci">int line</div><div class="ttdef"><b>Definition:</b> log.h:83</div></div>
+<div class="ttc" id="structgpr__log__func__args_html"><div class="ttname"><a href="structgpr__log__func__args.html">gpr_log_func_args</a></div><div class="ttdef"><b>Definition:</b> log.h:81</div></div>
+<div class="ttc" id="log_8h_html_af10334b4085ac6985a2af9c08478ad48"><div class="ttname"><a href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a></div><div class="ttdeci">gpr_log_severity</div><div class="ttdef"><b>Definition:</b> log.h:56</div></div>
+<div class="ttc" id="log_8h_html_a3badccbc5ec4c725eadbc07b8e5706eb"><div class="ttname"><a href="log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb">gpr_log_severity_string</a></div><div class="ttdeci">const char * gpr_log_severity_string(gpr_log_severity severity)</div><div class="ttdef"><b>Definition:</b> log.c:42</div></div>
+<div class="ttc" id="structgpr__log__func__args_html_ad9ce882bef15e3127620a8ef47f2b74b"><div class="ttname"><a href="structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b">gpr_log_func_args::message</a></div><div class="ttdeci">const char * message</div><div class="ttdef"><b>Definition:</b> log.h:85</div></div>
+<div class="ttc" id="structgpr__log__func__args_html_a7961b2303b10d4f66d1aee6b5857ef89"><div class="ttname"><a href="structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89">gpr_log_func_args::file</a></div><div class="ttdeci">const char * file</div><div class="ttdef"><b>Definition:</b> log.h:82</div></div>
+<div class="ttc" id="log_8h_html_a23f29195676c33c61ff08a7f0a3e69b0"><div class="ttname"><a href="log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0">gpr_log_func</a></div><div class="ttdeci">void(* gpr_log_func)(gpr_log_func_args *args)</div><div class="ttdef"><b>Definition:</b> log.h:88</div></div>
+<div class="ttc" id="log_8h_html_acf6f383ed91d9f4e2e6bd79c57539fd1"><div class="ttname"><a href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">gpr_log</a></div><div class="ttdeci">void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...)</div></div>
+<div class="ttc" id="log_8h_html_a7a3d59528754f8fbcfe54f6f8a72ec61"><div class="ttname"><a href="log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61">gpr_log_message</a></div><div class="ttdeci">void gpr_log_message(const char *file, int line, gpr_log_severity severity, const char *message)</div><div class="ttdef"><b>Definition:</b> log.c:54</div></div>
+<div class="ttc" id="log_8h_html_a75771a41e3bb2831df8043a57de05330"><div class="ttname"><a href="log_8h.html#a75771a41e3bb2831df8043a57de05330">gpr_set_log_function</a></div><div class="ttdeci">void gpr_set_log_function(gpr_log_func func)</div><div class="ttdef"><b>Definition:</b> log.c:65</div></div>
+<div class="ttc" id="structgpr__log__func__args_html_af0b4b9d8beace1cae0d1a24783d70ccc"><div class="ttname"><a href="structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc">gpr_log_func_args::severity</a></div><div class="ttdeci">gpr_log_severity severity</div><div class="ttdef"><b>Definition:</b> log.h:84</div></div>
+<div class="ttc" id="log_8h_html_af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4"><div class="ttname"><a href="log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4">GPR_LOG_SEVERITY_ERROR</a></div><div class="ttdef"><b>Definition:</b> log.h:59</div></div>
+<div class="ttc" id="log_8h_html_af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6"><div class="ttname"><a href="log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6">GPR_LOG_SEVERITY_DEBUG</a></div><div class="ttdef"><b>Definition:</b> log.h:57</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/log__android_8c.html b/doc/ref/core.internal/html/log__android_8c.html
new file mode 100644
index 0000000000..8dd399cec9
--- /dev/null
+++ b/doc/ref/core.internal/html/log__android_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/log_android.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">log_android.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/log__linux_8c.html b/doc/ref/core.internal/html/log__linux_8c.html
new file mode 100644
index 0000000000..53b77c1c2e
--- /dev/null
+++ b/doc/ref/core.internal/html/log__linux_8c.html
@@ -0,0 +1,135 @@
+<!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: src/core/support/log_linux.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">log_linux.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ac3d144aa01e765a1fae62ab5491c7cc1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__linux_8c.html#ac3d144aa01e765a1fae62ab5491c7cc1">_POSIX_SOURCE</a></td></tr>
+<tr class="separator:ac3d144aa01e765a1fae62ab5491c7cc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a369266c24eacffb87046522897a570d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__linux_8c.html#a369266c24eacffb87046522897a570d5">_GNU_SOURCE</a></td></tr>
+<tr class="separator:a369266c24eacffb87046522897a570d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a369266c24eacffb87046522897a570d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define _GNU_SOURCE</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac3d144aa01e765a1fae62ab5491c7cc1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define _POSIX_SOURCE</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/log__posix_8c.html b/doc/ref/core.internal/html/log__posix_8c.html
new file mode 100644
index 0000000000..4f6deb3f75
--- /dev/null
+++ b/doc/ref/core.internal/html/log__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/log_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">log_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/log__win32_8c.html b/doc/ref/core.internal/html/log__win32_8c.html
new file mode 100644
index 0000000000..3b45ab3f64
--- /dev/null
+++ b/doc/ref/core.internal/html/log__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/log_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">log_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/log__win32_8h.html b/doc/ref/core.internal/html/log__win32_8h.html
new file mode 100644
index 0000000000..2aef9cfaf7
--- /dev/null
+++ b/doc/ref/core.internal/html/log__win32_8h.html
@@ -0,0 +1,126 @@
+<!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: include/grpc/support/log_win32.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">log_win32.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="log__win32_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad8115cf8df2332d225d12cb87c21f536"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536">gpr_format_message</a> (DWORD messageid)</td></tr>
+<tr class="separator:ad8115cf8df2332d225d12cb87c21f536"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad8115cf8df2332d225d12cb87c21f536"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_format_message </td>
+ <td>(</td>
+ <td class="paramtype">DWORD&#160;</td>
+ <td class="paramname"><em>messageid</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/log__win32_8h_source.html b/doc/ref/core.internal/html/log__win32_8h_source.html
new file mode 100644
index 0000000000..aaa6bcb26b
--- /dev/null
+++ b/doc/ref/core.internal/html/log__win32_8h_source.html
@@ -0,0 +1,151 @@
+<!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: include/grpc/support/log_win32.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">log_win32.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="log__win32_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_LOG_WIN32_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_LOG_WIN32_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Returns a string allocated with gpr_malloc that contains a UTF-8</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> * formatted error message, corresponding to the error messageid.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> * Use in conjunction with GetLastError() et al.</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536">gpr_format_message</a>(DWORD messageid);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_LOG_WIN32_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="log__win32_8h_html_ad8115cf8df2332d225d12cb87c21f536"><div class="ttname"><a href="log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536">gpr_format_message</a></div><div class="ttdeci">char * gpr_format_message(DWORD messageid)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/merge__channel__args_8c.html b/doc/ref/core.internal/html/merge__channel__args_8c.html
new file mode 100644
index 0000000000..ceb1ab2341
--- /dev/null
+++ b/doc/ref/core.internal/html/merge__channel__args_8c.html
@@ -0,0 +1,146 @@
+<!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: src/core/client_config/subchannel_factory_decorators/merge_channel_args.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">merge_channel_args.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="merge__channel__args_8h_source.html">src/core/client_config/subchannel_factory_decorators/merge_channel_args.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmerge__args__factory.html">merge_args_factory</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4dc574355128feee36ad9500f9ae8cc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="merge__channel__args_8c.html#a4dc574355128feee36ad9500f9ae8cc0">grpc_subchannel_factory_merge_channel_args</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *input, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="memdesc:a4dc574355128feee36ad9500f9ae8cc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, args is retained by the caller. <a href="#a4dc574355128feee36ad9500f9ae8cc0">More...</a><br/></td></tr>
+<tr class="separator:a4dc574355128feee36ad9500f9ae8cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4dc574355128feee36ad9500f9ae8cc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* grpc_subchannel_factory_merge_channel_args </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, args is retained by the caller. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/merge__channel__args_8h.html b/doc/ref/core.internal/html/merge__channel__args_8h.html
new file mode 100644
index 0000000000..e1bcd44e71
--- /dev/null
+++ b/doc/ref/core.internal/html/merge__channel__args_8h.html
@@ -0,0 +1,140 @@
+<!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: src/core/client_config/subchannel_factory_decorators/merge_channel_args.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">merge_channel_args.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="subchannel__factory_8h_source.html">src/core/client_config/subchannel_factory.h</a>&quot;</code><br/>
+</div>
+<p><a href="merge__channel__args_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4dc574355128feee36ad9500f9ae8cc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0">grpc_subchannel_factory_merge_channel_args</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *input, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="memdesc:a4dc574355128feee36ad9500f9ae8cc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, args is retained by the caller. <a href="#a4dc574355128feee36ad9500f9ae8cc0">More...</a><br/></td></tr>
+<tr class="separator:a4dc574355128feee36ad9500f9ae8cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4dc574355128feee36ad9500f9ae8cc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* grpc_subchannel_factory_merge_channel_args </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argument; ownership of input, args is retained by the caller. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/merge__channel__args_8h_source.html b/doc/ref/core.internal/html/merge__channel__args_8h_source.html
new file mode 100644
index 0000000000..162d81e7f4
--- /dev/null
+++ b/doc/ref/core.internal/html/merge__channel__args_8h_source.html
@@ -0,0 +1,145 @@
+<!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: src/core/client_config/subchannel_factory_decorators/merge_channel_args.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_3f4beedb24b0e92d29e048ed944a7adc.html">subchannel_factory_decorators</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">merge_channel_args.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="merge__channel__args_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_DECORATORS_MERGE_CHANNEL_ARGS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_DECORATORS_MERGE_CHANNEL_ARGS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subchannel__factory_8h.html">src/core/client_config/subchannel_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="code" href="merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0">grpc_subchannel_factory_merge_channel_args</a>(</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *input, <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_DECORATORS_MERGE_CHANNEL_ARGS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="subchannel__factory_8h_html"><div class="ttname"><a href="subchannel__factory_8h.html">subchannel_factory.h</a></div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html"><div class="ttname"><a href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></div><div class="ttdoc">Constructor for new configured channels. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:45</div></div>
+<div class="ttc" id="merge__channel__args_8h_html_a4dc574355128feee36ad9500f9ae8cc0"><div class="ttname"><a href="merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0">grpc_subchannel_factory_merge_channel_args</a></div><div class="ttdeci">grpc_subchannel_factory * grpc_subchannel_factory_merge_channel_args(grpc_subchannel_factory *input, const grpc_channel_args *args)</div><div class="ttdoc">Takes a subchannel factory, returns a new one that mutates incoming channel_args by adding a new argu...</div><div class="ttdef"><b>Definition:</b> merge_channel_args.c:75</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/message__compress_8c.html b/doc/ref/core.internal/html/message__compress_8c.html
new file mode 100644
index 0000000000..0e171f848e
--- /dev/null
+++ b/doc/ref/core.internal/html/message__compress_8c.html
@@ -0,0 +1,232 @@
+<!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: src/core/compression/message_compress.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html">compression</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">message_compress.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="message__compress_8h_source.html">src/core/compression/message_compress.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;zlib.h&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a64fcbb2644c2b3d0dcdc23ac148dd553"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8c.html#a64fcbb2644c2b3d0dcdc23ac148dd553">OUTPUT_BLOCK_SIZE</a>&#160;&#160;&#160;1024</td></tr>
+<tr class="separator:a64fcbb2644c2b3d0dcdc23ac148dd553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a703e3d8f4ace9e8b102552c527b879d8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8c.html#a703e3d8f4ace9e8b102552c527b879d8">compress_inner</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:a703e3d8f4ace9e8b102552c527b879d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad77078989bef6661528ca2e22223d8cd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8c.html#ad77078989bef6661528ca2e22223d8cd">grpc_msg_compress</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:ad77078989bef6661528ca2e22223d8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3453eb197bbea1ad5dbc57561d9352f0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8c.html#a3453eb197bbea1ad5dbc57561d9352f0">grpc_msg_decompress</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:a3453eb197bbea1ad5dbc57561d9352f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a64fcbb2644c2b3d0dcdc23ac148dd553"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define OUTPUT_BLOCK_SIZE&#160;&#160;&#160;1024</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a703e3d8f4ace9e8b102552c527b879d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int compress_inner </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad77078989bef6661528ca2e22223d8cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_msg_compress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3453eb197bbea1ad5dbc57561d9352f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_msg_decompress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/message__compress_8h.html b/doc/ref/core.internal/html/message__compress_8h.html
new file mode 100644
index 0000000000..ffbac55dff
--- /dev/null
+++ b/doc/ref/core.internal/html/message__compress_8h.html
@@ -0,0 +1,178 @@
+<!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: src/core/compression/message_compress.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html">compression</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">message_compress.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="compression_8h_source.html">grpc/compression.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+</div>
+<p><a href="message__compress_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad77078989bef6661528ca2e22223d8cd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd">grpc_msg_compress</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:ad77078989bef6661528ca2e22223d8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3453eb197bbea1ad5dbc57561d9352f0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0">grpc_msg_decompress</a> (<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:a3453eb197bbea1ad5dbc57561d9352f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad77078989bef6661528ca2e22223d8cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_msg_compress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3453eb197bbea1ad5dbc57561d9352f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_msg_decompress </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td>
+ <td class="paramname"><em>algorithm</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>input</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/message__compress_8h_source.html b/doc/ref/core.internal/html/message__compress_8h_source.html
new file mode 100644
index 0000000000..86b9ed1ad0
--- /dev/null
+++ b/doc/ref/core.internal/html/message__compress_8h_source.html
@@ -0,0 +1,157 @@
+<!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: src/core/compression/message_compress.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_35c0979e6ab890cbca79261dc9fc2958.html">compression</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">message_compress.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="message__compress_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_COMPRESSION_MESSAGE_COMPRESS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_COMPRESSION_MESSAGE_COMPRESS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="compression_8h.html">grpc/compression.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice__buffer_8h.html">grpc/support/slice_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* compress &#39;input&#39; to &#39;output&#39; using &#39;algorithm&#39;.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> On success, appends compressed slices to output and returns 1.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> On failure, appends uncompressed slices to output and returns 0. */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keywordtype">int</span> <a class="code" href="message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd">grpc_msg_compress</a>(<a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* decompress &#39;input&#39; to &#39;output&#39; using &#39;algorithm&#39;.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> On success, appends slices to output and returns 1.</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> On failure, output is unchanged, and returns 0. */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">int</span> <a class="code" href="message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0">grpc_msg_decompress</a>(<a class="code" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> algorithm,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *input, <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_COMPRESSION_MESSAGE_COMPRESS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="compression_8h_html"><div class="ttname"><a href="compression_8h.html">compression.h</a></div></div>
+<div class="ttc" id="compression_8h_html_ab9de0f68bfb1ef8ed09bd00643db14c9"><div class="ttname"><a href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm</div><div class="ttdef"><b>Definition:</b> compression.h:45</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="message__compress_8h_html_a3453eb197bbea1ad5dbc57561d9352f0"><div class="ttname"><a href="message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0">grpc_msg_decompress</a></div><div class="ttdeci">int grpc_msg_decompress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output)</div><div class="ttdef"><b>Definition:</b> message_compress.c:176</div></div>
+<div class="ttc" id="slice__buffer_8h_html"><div class="ttname"><a href="slice__buffer_8h.html">slice_buffer.h</a></div></div>
+<div class="ttc" id="message__compress_8h_html_ad77078989bef6661528ca2e22223d8cd"><div class="ttname"><a href="message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd">grpc_msg_compress</a></div><div class="ttdeci">int grpc_msg_compress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output)</div><div class="ttdef"><b>Definition:</b> message_compress.c:167</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/metadata_8c.html b/doc/ref/core.internal/html/metadata_8c.html
new file mode 100644
index 0000000000..03568002f6
--- /dev/null
+++ b/doc/ref/core.internal/html/metadata_8c.html
@@ -0,0 +1,915 @@
+<!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: src/core/transport/metadata.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">metadata.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="sockaddr_8h_source.html">src/core/iomgr/sockaddr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="metadata_8h_source.html">src/core/transport/metadata.h</a>&quot;</code><br/>
+<code>#include &lt;assert.h&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="murmur__hash_8h_source.html">src/core/support/murmur_hash.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="bin__encoder_8h_source.html">src/core/transport/chttp2/bin_encoder.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html">internal_string</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html">internal_metadata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a6e712d615b691c6a9f5daf410b8850ad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a6e712d615b691c6a9f5daf410b8850ad">INITIAL_STRTAB_CAPACITY</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:a6e712d615b691c6a9f5daf410b8850ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79df755ba4db91d4b3ab5d375eb18364"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a79df755ba4db91d4b3ab5d375eb18364">INITIAL_MDTAB_CAPACITY</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:a79df755ba4db91d4b3ab5d375eb18364"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74ccabb9eadfe99a2fa8e5004fdf7cfc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a74ccabb9eadfe99a2fa8e5004fdf7cfc">DEBUG_ARGS</a></td></tr>
+<tr class="separator:a74ccabb9eadfe99a2fa8e5004fdf7cfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cfab2da250dee51694faff7226974a6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a3cfab2da250dee51694faff7226974a6">FWD_DEBUG_ARGS</a></td></tr>
+<tr class="separator:a3cfab2da250dee51694faff7226974a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83513324a061c9ec72f186425ccdb78b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a83513324a061c9ec72f186425ccdb78b">INTERNAL_STRING_REF</a>(s)&#160;&#160;&#160;internal_string_ref((s))</td></tr>
+<tr class="separator:a83513324a061c9ec72f186425ccdb78b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54692508d43c5445088e92d06a5665db"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a54692508d43c5445088e92d06a5665db">INTERNAL_STRING_UNREF</a>(s)&#160;&#160;&#160;internal_string_unref((s))</td></tr>
+<tr class="separator:a54692508d43c5445088e92d06a5665db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5456b7d52304a8749ca71440bc7c2a0f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a5456b7d52304a8749ca71440bc7c2a0f">REF_MD_LOCKED</a>(s)&#160;&#160;&#160;ref_md_locked((s))</td></tr>
+<tr class="separator:a5456b7d52304a8749ca71440bc7c2a0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ac4804488e22d084fbaf91101dab8c1ee"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structinternal__string.html">internal_string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#ac4804488e22d084fbaf91101dab8c1ee">internal_string</a></td></tr>
+<tr class="separator:ac4804488e22d084fbaf91101dab8c1ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5de9c52bec44c8dd9a46d9575c4336ed"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structinternal__metadata.html">internal_metadata</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a5de9c52bec44c8dd9a46d9575c4336ed">internal_metadata</a></td></tr>
+<tr class="separator:a5de9c52bec44c8dd9a46d9575c4336ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a29700f3749eea2c96f7bae1d57f8f7e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a29700f3749eea2c96f7bae1d57f8f7e3">grpc_mdctx_create_with_seed</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> seed)</td></tr>
+<tr class="separator:a29700f3749eea2c96f7bae1d57f8f7e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a207b09a54f3c57a90b5b44868fbf5649"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a207b09a54f3c57a90b5b44868fbf5649">grpc_mdctx_create</a> (void)</td></tr>
+<tr class="separator:a207b09a54f3c57a90b5b44868fbf5649"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0293b53029721bf7013af7466efbd324"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a0293b53029721bf7013af7466efbd324">grpc_mdctx_ref</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a0293b53029721bf7013af7466efbd324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae80c7476ff57db4121dc9d8fef9e5670"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#ae80c7476ff57db4121dc9d8fef9e5670">grpc_mdctx_unref</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:ae80c7476ff57db4121dc9d8fef9e5670"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30a9ea36693c48da5072719f6ae7de6d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a30a9ea36693c48da5072719f6ae7de6d">grpc_mdstr_from_string</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const char *str, int canonicalize_key)</td></tr>
+<tr class="separator:a30a9ea36693c48da5072719f6ae7de6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eccbbb62d87a131d2eb3367fd2c4c43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a4eccbbb62d87a131d2eb3367fd2c4c43">grpc_mdstr_from_slice</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:a4eccbbb62d87a131d2eb3367fd2c4c43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a357ead79c52ee284bb190bae970d8457"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a357ead79c52ee284bb190bae970d8457">grpc_mdstr_from_buffer</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *buf, size_t length)</td></tr>
+<tr class="separator:a357ead79c52ee284bb190bae970d8457"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc5656c1cd10a6f2e7cebebff10c25a4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#afc5656c1cd10a6f2e7cebebff10c25a4">grpc_mdelem_from_metadata_strings</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *mkey, <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *mvalue)</td></tr>
+<tr class="separator:afc5656c1cd10a6f2e7cebebff10c25a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6535f623fc2bd818158d96f6a37f73c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a6535f623fc2bd818158d96f6a37f73c8">grpc_mdelem_from_strings</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a6535f623fc2bd818158d96f6a37f73c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b5ad2d68dd8c76345170f5f732b8fa2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a5b5ad2d68dd8c76345170f5f732b8fa2">grpc_mdelem_from_slices</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a5b5ad2d68dd8c76345170f5f732b8fa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a748c6028cdc4cd0fd8d98c3a7f79ed13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">grpc_mdelem_from_string_and_buffer</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, size_t value_length, int canonicalize_key)</td></tr>
+<tr class="separator:a748c6028cdc4cd0fd8d98c3a7f79ed13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a85da96bfb21ef225169545913fbdc2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2">grpc_mdelem_ref</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *gmd)</td></tr>
+<tr class="separator:a5a85da96bfb21ef225169545913fbdc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51228fa7618a8f6503e605709d893a25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a51228fa7618a8f6503e605709d893a25">grpc_mdelem_unref</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *gmd)</td></tr>
+<tr class="separator:a51228fa7618a8f6503e605709d893a25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacbae6a08b63835ec31fcddb556aa895"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#aacbae6a08b63835ec31fcddb556aa895">grpc_mdstr_as_c_string</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:aacbae6a08b63835ec31fcddb556aa895"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85a25deeeea31c616e326b765043b9c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a85a25deeeea31c616e326b765043b9c9">grpc_mdstr_ref</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *gs)</td></tr>
+<tr class="separator:a85a25deeeea31c616e326b765043b9c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6481b7703e964dc8306f3c243b2378f3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3">grpc_mdstr_unref</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *gs)</td></tr>
+<tr class="separator:a6481b7703e964dc8306f3c243b2378f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a655a0f22cc71643674124ced4ce5018d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a655a0f22cc71643674124ced4ce5018d">grpc_mdctx_get_mdtab_capacity_test_only</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a655a0f22cc71643674124ced4ce5018d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba47aef8a83c845dd6ec3dc366fcfdab"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#aba47aef8a83c845dd6ec3dc366fcfdab">grpc_mdctx_get_mdtab_count_test_only</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:aba47aef8a83c845dd6ec3dc366fcfdab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a7b1b8046529252525680692d7dd68a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a8a7b1b8046529252525680692d7dd68a">grpc_mdctx_get_mdtab_free_test_only</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a8a7b1b8046529252525680692d7dd68a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f7c3e28f1f851a5b50d274f3ad3ecc9"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">grpc_mdelem_get_user_data</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, void(*if_destroy_func)(void *))</td></tr>
+<tr class="separator:a1f7c3e28f1f851a5b50d274f3ad3ecc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d0f62841408f1a89773aa4ef54dcf0e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a6d0f62841408f1a89773aa4ef54dcf0e">grpc_mdelem_set_user_data</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, void(*destroy_func)(void *), void *user_data)</td></tr>
+<tr class="separator:a6d0f62841408f1a89773aa4ef54dcf0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0bc211dd30038c1366a614647abdcf08"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a0bc211dd30038c1366a614647abdcf08">grpc_mdstr_as_base64_encoded_and_huffman_compressed</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *gs)</td></tr>
+<tr class="separator:a0bc211dd30038c1366a614647abdcf08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a390eb255a6d72a8ea84ac8ad3cbeb331"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a390eb255a6d72a8ea84ac8ad3cbeb331">grpc_mdctx_lock</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a390eb255a6d72a8ea84ac8ad3cbeb331"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a473a5ef9df4df3cca9865f07a9237739"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739">grpc_mdctx_locked_mdelem_unref</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *gmd)</td></tr>
+<tr class="separator:a473a5ef9df4df3cca9865f07a9237739"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a033690c1ac25d72fdc5e56e9f5d9e97b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a033690c1ac25d72fdc5e56e9f5d9e97b">grpc_mdctx_unlock</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a033690c1ac25d72fdc5e56e9f5d9e97b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a427ad60503ae8ce87bcfa0aa09fe99a5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#a427ad60503ae8ce87bcfa0aa09fe99a5">grpc_mdstr_is_legal_header</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:a427ad60503ae8ce87bcfa0aa09fe99a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad34887fb9c6733916ac87b8fde793e74"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8c.html#ad34887fb9c6733916ac87b8fde793e74">grpc_mdstr_is_bin_suffixed</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:ad34887fb9c6733916ac87b8fde793e74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a74ccabb9eadfe99a2fa8e5004fdf7cfc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define DEBUG_ARGS</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3cfab2da250dee51694faff7226974a6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define FWD_DEBUG_ARGS</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a79df755ba4db91d4b3ab5d375eb18364"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define INITIAL_MDTAB_CAPACITY&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e712d615b691c6a9f5daf410b8850ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define INITIAL_STRTAB_CAPACITY&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83513324a061c9ec72f186425ccdb78b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define INTERNAL_STRING_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;internal_string_ref((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a54692508d43c5445088e92d06a5665db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define INTERNAL_STRING_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;internal_string_unref((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5456b7d52304a8749ca71440bc7c2a0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define REF_MD_LOCKED</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;ref_md_locked((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5de9c52bec44c8dd9a46d9575c4336ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structinternal__metadata.html">internal_metadata</a> <a class="el" href="structinternal__metadata.html">internal_metadata</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4804488e22d084fbaf91101dab8c1ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structinternal__string.html">internal_string</a> <a class="el" href="structinternal__string.html">internal_string</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a207b09a54f3c57a90b5b44868fbf5649"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_mdctx_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29700f3749eea2c96f7bae1d57f8f7e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_mdctx_create_with_seed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>seed</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a655a0f22cc71643674124ced4ce5018d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx_get_mdtab_capacity_test_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba47aef8a83c845dd6ec3dc366fcfdab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx_get_mdtab_count_test_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8a7b1b8046529252525680692d7dd68a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx_get_mdtab_free_test_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a390eb255a6d72a8ea84ac8ad3cbeb331"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_lock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a473a5ef9df4df3cca9865f07a9237739"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_locked_mdelem_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>gmd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0293b53029721bf7013af7466efbd324"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a033690c1ac25d72fdc5e56e9f5d9e97b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_unlock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae80c7476ff57db4121dc9d8fef9e5670"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc5656c1cd10a6f2e7cebebff10c25a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_metadata_strings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>mkey</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>mvalue</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b5ad2d68dd8c76345170f5f732b8fa2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_slices </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a748c6028cdc4cd0fd8d98c3a7f79ed13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_string_and_buffer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>canonicalize_key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6535f623fc2bd818158d96f6a37f73c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_strings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f7c3e28f1f851a5b50d274f3ad3ecc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_mdelem_get_user_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *)&#160;</td>
+ <td class="paramname"><em>if_destroy_func</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a85da96bfb21ef225169545913fbdc2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>gmd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d0f62841408f1a89773aa4ef54dcf0e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdelem_set_user_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *)&#160;</td>
+ <td class="paramname"><em>destroy_func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a51228fa7618a8f6503e605709d893a25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdelem_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>gmd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0bc211dd30038c1366a614647abdcf08"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_mdstr_as_base64_encoded_and_huffman_compressed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>gs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aacbae6a08b63835ec31fcddb556aa895"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_mdstr_as_c_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a357ead79c52ee284bb190bae970d8457"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_from_buffer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eccbbb62d87a131d2eb3367fd2c4c43"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_from_slice </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a30a9ea36693c48da5072719f6ae7de6d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_from_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>canonicalize_key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad34887fb9c6733916ac87b8fde793e74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_mdstr_is_bin_suffixed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a427ad60503ae8ce87bcfa0aa09fe99a5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_mdstr_is_legal_header </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85a25deeeea31c616e326b765043b9c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>gs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6481b7703e964dc8306f3c243b2378f3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdstr_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>gs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/metadata_8h.html b/doc/ref/core.internal/html/metadata_8h.html
new file mode 100644
index 0000000000..099323066f
--- /dev/null
+++ b/doc/ref/core.internal/html/metadata_8h.html
@@ -0,0 +1,938 @@
+<!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: src/core/transport/metadata.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">metadata.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div>
+<p><a href="metadata_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab07dbb900f15b2fe28ea24451c5cfa3d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ab07dbb900f15b2fe28ea24451c5cfa3d">GRPC_MDSTR_REF</a>(s)&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a85a25deeeea31c616e326b765043b9c9">grpc_mdstr_ref</a>((s))</td></tr>
+<tr class="separator:ab07dbb900f15b2fe28ea24451c5cfa3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6dceed9dacb076aa33c15323f6e823c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ab6dceed9dacb076aa33c15323f6e823c">GRPC_MDSTR_UNREF</a>(s)&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3">grpc_mdstr_unref</a>((s))</td></tr>
+<tr class="separator:ab6dceed9dacb076aa33c15323f6e823c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5a6d4b7c327b66f0902c683ab007618"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#af5a6d4b7c327b66f0902c683ab007618">GRPC_MDELEM_REF</a>(s)&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2">grpc_mdelem_ref</a>((s))</td></tr>
+<tr class="separator:af5a6d4b7c327b66f0902c683ab007618"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab01db7c946e0962da8888f19cb870afb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ab01db7c946e0962da8888f19cb870afb">GRPC_MDELEM_UNREF</a>(s)&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a51228fa7618a8f6503e605709d893a25">grpc_mdelem_unref</a>((s))</td></tr>
+<tr class="separator:ab01db7c946e0962da8888f19cb870afb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af96c346c98e982e5c0086467dd11e714"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#af96c346c98e982e5c0086467dd11e714">GRPC_MDCTX_LOCKED_MDELEM_UNREF</a>(ctx, elem)&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739">grpc_mdctx_locked_mdelem_unref</a>((ctx), (elem))</td></tr>
+<tr class="separator:af96c346c98e982e5c0086467dd11e714"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a385838d339c97b956529499c1da41e1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a385838d339c97b956529499c1da41e1f">GRPC_MDSTR_KV_HASH</a>(k_hash, v_hash)&#160;&#160;&#160;(<a class="el" href="useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85">GPR_ROTL</a>((k_hash), 2) ^ (v_hash))</td></tr>
+<tr class="separator:a385838d339c97b956529499c1da41e1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3d670d2ea84f975e9ff4758ceaf0742d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a3d670d2ea84f975e9ff4758ceaf0742d">grpc_mdctx</a></td></tr>
+<tr class="separator:a3d670d2ea84f975e9ff4758ceaf0742d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37a4eca36e6506776f4c60c598dd01f5"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a37a4eca36e6506776f4c60c598dd01f5">grpc_mdstr</a></td></tr>
+<tr class="separator:a37a4eca36e6506776f4c60c598dd01f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90dde22c13b91f78568735a7f666992e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a90dde22c13b91f78568735a7f666992e">grpc_mdelem</a></td></tr>
+<tr class="separator:a90dde22c13b91f78568735a7f666992e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a207b09a54f3c57a90b5b44868fbf5649"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649">grpc_mdctx_create</a> (void)</td></tr>
+<tr class="separator:a207b09a54f3c57a90b5b44868fbf5649"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29700f3749eea2c96f7bae1d57f8f7e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3">grpc_mdctx_create_with_seed</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> seed)</td></tr>
+<tr class="separator:a29700f3749eea2c96f7bae1d57f8f7e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0eee1214d287f4f14fa1363fdacff5da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da">grpc_mdctx_ref</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:a0eee1214d287f4f14fa1363fdacff5da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ca25748d59d50f8641692bf3ae357d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3">grpc_mdctx_unref</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:a8ca25748d59d50f8641692bf3ae357d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab56ce41a4a8c2d30fca3e32d4d7b5e36"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36">grpc_mdctx_get_mdtab_capacity_test_only</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:ab56ce41a4a8c2d30fca3e32d4d7b5e36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3c26191d224ff5ac9f54713cfc90f92"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92">grpc_mdctx_get_mdtab_count_test_only</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:ac3c26191d224ff5ac9f54713cfc90f92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae467d8aaa91efb73610faca99c18ca17"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17">grpc_mdctx_get_mdtab_free_test_only</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:ae467d8aaa91efb73610faca99c18ca17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af961acf0149066abf14c01f56a3e2b55"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#af961acf0149066abf14c01f56a3e2b55">grpc_mdstr_from_string</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const char *str, int perform_key_canonicalization)</td></tr>
+<tr class="separator:af961acf0149066abf14c01f56a3e2b55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eccbbb62d87a131d2eb3367fd2c4c43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43">grpc_mdstr_from_slice</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:a4eccbbb62d87a131d2eb3367fd2c4c43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac510347648778d23eaf6c8d9a4b664db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db">grpc_mdstr_from_buffer</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *str, size_t length)</td></tr>
+<tr class="separator:ac510347648778d23eaf6c8d9a4b664db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a314273fea07852ac80ea184100398c11"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a314273fea07852ac80ea184100398c11">grpc_mdstr_as_base64_encoded_and_huffman_compressed</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *str)</td></tr>
+<tr class="separator:a314273fea07852ac80ea184100398c11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a969845603738428cf18a9a090896e152"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a969845603738428cf18a9a090896e152">grpc_mdelem_from_metadata_strings</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a969845603738428cf18a9a090896e152"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6535f623fc2bd818158d96f6a37f73c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8">grpc_mdelem_from_strings</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a6535f623fc2bd818158d96f6a37f73c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b5ad2d68dd8c76345170f5f732b8fa2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2">grpc_mdelem_from_slices</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a5b5ad2d68dd8c76345170f5f732b8fa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a748c6028cdc4cd0fd8d98c3a7f79ed13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">grpc_mdelem_from_string_and_buffer</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, const char *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, size_t value_length, int canonicalize_key)</td></tr>
+<tr class="separator:a748c6028cdc4cd0fd8d98c3a7f79ed13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f7c3e28f1f851a5b50d274f3ad3ecc9"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">grpc_mdelem_get_user_data</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, void(*if_destroy_func)(void *))</td></tr>
+<tr class="separator:a1f7c3e28f1f851a5b50d274f3ad3ecc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d0f62841408f1a89773aa4ef54dcf0e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e">grpc_mdelem_set_user_data</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, void(*destroy_func)(void *), void *user_data)</td></tr>
+<tr class="separator:a6d0f62841408f1a89773aa4ef54dcf0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb0b4e65a5d630dfe5fe975cd7b578cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf">grpc_mdstr_ref</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:abb0b4e65a5d630dfe5fe975cd7b578cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ba2e968699daaddaad9b48b78779465"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a6ba2e968699daaddaad9b48b78779465">grpc_mdstr_unref</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:a6ba2e968699daaddaad9b48b78779465"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae73ccb189245977bbddfa464bd3c6615"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615">grpc_mdelem_ref</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:ae73ccb189245977bbddfa464bd3c6615"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf81c9b79ca751ffb4de33ea510d70cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc">grpc_mdelem_unref</a> (<a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:aaf81c9b79ca751ffb4de33ea510d70cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacbae6a08b63835ec31fcddb556aa895"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895">grpc_mdstr_as_c_string</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:aacbae6a08b63835ec31fcddb556aa895"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a427ad60503ae8ce87bcfa0aa09fe99a5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5">grpc_mdstr_is_legal_header</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:a427ad60503ae8ce87bcfa0aa09fe99a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad34887fb9c6733916ac87b8fde793e74"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74">grpc_mdstr_is_bin_suffixed</a> (<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *s)</td></tr>
+<tr class="separator:ad34887fb9c6733916ac87b8fde793e74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a390eb255a6d72a8ea84ac8ad3cbeb331"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331">grpc_mdctx_lock</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a390eb255a6d72a8ea84ac8ad3cbeb331"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b190b43b10959286e61719a9f9f0f01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01">grpc_mdctx_locked_mdelem_unref</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem)</td></tr>
+<tr class="separator:a7b190b43b10959286e61719a9f9f0f01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a033690c1ac25d72fdc5e56e9f5d9e97b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b">grpc_mdctx_unlock</a> (<a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:a033690c1ac25d72fdc5e56e9f5d9e97b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="af96c346c98e982e5c0086467dd11e714"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MDCTX_LOCKED_MDELEM_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">ctx, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">elem&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739">grpc_mdctx_locked_mdelem_unref</a>((ctx), (elem))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af5a6d4b7c327b66f0902c683ab007618"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MDELEM_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2">grpc_mdelem_ref</a>((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab01db7c946e0962da8888f19cb870afb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MDELEM_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a51228fa7618a8f6503e605709d893a25">grpc_mdelem_unref</a>((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a385838d339c97b956529499c1da41e1f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MDSTR_KV_HASH</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">k_hash, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">v_hash&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(<a class="el" href="useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85">GPR_ROTL</a>((k_hash), 2) ^ (v_hash))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab07dbb900f15b2fe28ea24451c5cfa3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MDSTR_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a85a25deeeea31c616e326b765043b9c9">grpc_mdstr_ref</a>((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab6dceed9dacb076aa33c15323f6e823c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MDSTR_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">s</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3">grpc_mdstr_unref</a>((s))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a3d670d2ea84f975e9ff4758ceaf0742d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90dde22c13b91f78568735a7f666992e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a37a4eca36e6506776f4c60c598dd01f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a207b09a54f3c57a90b5b44868fbf5649"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_mdctx_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29700f3749eea2c96f7bae1d57f8f7e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_mdctx_create_with_seed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>seed</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab56ce41a4a8c2d30fca3e32d4d7b5e36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx_get_mdtab_capacity_test_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac3c26191d224ff5ac9f54713cfc90f92"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx_get_mdtab_count_test_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae467d8aaa91efb73610faca99c18ca17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx_get_mdtab_free_test_only </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a390eb255a6d72a8ea84ac8ad3cbeb331"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_lock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b190b43b10959286e61719a9f9f0f01"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_locked_mdelem_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0eee1214d287f4f14fa1363fdacff5da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a033690c1ac25d72fdc5e56e9f5d9e97b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_unlock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ca25748d59d50f8641692bf3ae357d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdctx_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a969845603738428cf18a9a090896e152"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_metadata_strings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b5ad2d68dd8c76345170f5f732b8fa2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_slices </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a748c6028cdc4cd0fd8d98c3a7f79ed13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_string_and_buffer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>canonicalize_key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6535f623fc2bd818158d96f6a37f73c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_from_strings </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f7c3e28f1f851a5b50d274f3ad3ecc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_mdelem_get_user_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *)&#160;</td>
+ <td class="paramname"><em>if_destroy_func</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae73ccb189245977bbddfa464bd3c6615"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_mdelem_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d0f62841408f1a89773aa4ef54dcf0e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdelem_set_user_data </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *)&#160;</td>
+ <td class="paramname"><em>destroy_func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaf81c9b79ca751ffb4de33ea510d70cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdelem_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>md</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a314273fea07852ac80ea184100398c11"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_mdstr_as_base64_encoded_and_huffman_compressed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>str</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aacbae6a08b63835ec31fcddb556aa895"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_mdstr_as_c_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac510347648778d23eaf6c8d9a4b664db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_from_buffer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eccbbb62d87a131d2eb3367fd2c4c43"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_from_slice </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af961acf0149066abf14c01f56a3e2b55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_from_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>perform_key_canonicalization</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad34887fb9c6733916ac87b8fde793e74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_mdstr_is_bin_suffixed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a427ad60503ae8ce87bcfa0aa09fe99a5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_mdstr_is_legal_header </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb0b4e65a5d630dfe5fe975cd7b578cf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_mdstr_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ba2e968699daaddaad9b48b78779465"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_mdstr_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/metadata_8h_source.html b/doc/ref/core.internal/html/metadata_8h_source.html
new file mode 100644
index 0000000000..2fe670382b
--- /dev/null
+++ b/doc/ref/core.internal/html/metadata_8h_source.html
@@ -0,0 +1,322 @@
+<!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: src/core/transport/metadata.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">metadata.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="metadata_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_METADATA_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_METADATA_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="useful_8h.html">grpc/support/useful.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* This file provides a mechanism for tracking metadata through the grpc stack.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> It&#39;s not intended for consumption outside of the library.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> Metadata is tracked in the context of a grpc_mdctx. For the time being there</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> is one of these per-channel, avoiding cross channel interference with memory</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> use and lock contention.</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> The context tracks unique strings (grpc_mdstr) and pairs of strings</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> (grpc_mdelem). Any of these objects can be checked for equality by comparing</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> their pointers. These objects are reference counted.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> grpc_mdelem can additionally store a (non-NULL) user data pointer. This</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> pointer is intended to be used to cache semantic meaning of a metadata</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> element. For example, an OAuth token may cache the credentials it represents</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> and the time at which it expires in the mdelem user data.</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> Combining this metadata cache and the hpack compression table allows us to</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> simply lookup complete preparsed objects quickly, incurring a few atomic</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> ops per metadata element on the fast path.</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> grpc_mdelem instances MAY live longer than their refcount implies, and are</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> garbage collected periodically, meaning cached data can easily outlive a</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> single request. */</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Forward declarations */</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="metadata_8h.html#a3d670d2ea84f975e9ff4758ceaf0742d"> 65</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="metadata_8h.html#a37a4eca36e6506776f4c60c598dd01f5"> 66</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="metadata_8h.html#a90dde22c13b91f78568735a7f666992e"> 67</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* if changing this, make identical changes in internal_string in metadata.c */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__mdstr.html"> 70</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> {</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e"> 71</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e">slice</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d"> 72</a></span>&#160; <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d">hash</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">/* there is a private part to this in metadata.c */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;};</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* if changing this, make identical changes in internal_metadata in</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> metadata.c */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__mdelem.html"> 78</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> {</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94"> 79</a></span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<span class="keyword">const</span> <a class="code" href="structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94">key</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1"> 80</a></span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<span class="keyword">const</span> <a class="code" href="structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1">value</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* there is a private part to this in metadata.c */</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;};</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">/* Create/orphan a metadata context */</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649">grpc_mdctx_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3">grpc_mdctx_create_with_seed</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> seed);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da">grpc_mdctx_ref</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3">grpc_mdctx_unref</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Test only accessors to internal state - only for testing this code - do not</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> rely on it outside of metadata_test.c */</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36">grpc_mdctx_get_mdtab_capacity_test_only</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92">grpc_mdctx_get_mdtab_count_test_only</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17">grpc_mdctx_get_mdtab_free_test_only</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment">/* Constructors for grpc_mdstr instances; take a variety of data types that</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> clients may have handy */</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="metadata_8h.html#af961acf0149066abf14c01f56a3e2b55">grpc_mdstr_from_string</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <span class="keyword">const</span> <span class="keywordtype">char</span> *str, <span class="keywordtype">int</span> perform_key_canonicalization);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment">/* Unrefs the slice. */</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43">grpc_mdstr_from_slice</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db">grpc_mdstr_from_buffer</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *str,</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">size_t</span> length);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">/* Returns a borrowed slice from the mdstr with its contents base64 encoded</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> and huffman compressed */</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="metadata_8h.html#a314273fea07852ac80ea184100398c11">grpc_mdstr_as_base64_encoded_and_huffman_compressed</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *str);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">/* Constructors for grpc_mdelem instances; take a variety of data types that</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> clients may have handy */</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="metadata_8h.html#a969845603738428cf18a9a090896e152">grpc_mdelem_from_metadata_strings</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>,</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8">grpc_mdelem_from_strings</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>,</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment">/* Unrefs the slices. */</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2">grpc_mdelem_from_slices</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">grpc_mdelem_from_string_and_buffer</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx,</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>,</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">const</span> <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>,</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">size_t</span> value_length,</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">int</span> canonicalize_key);</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment">/* Mutator and accessor for grpc_mdelem user data. The destructor function</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> is used as a type tag and is checked during user_data fetch. */</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">grpc_mdelem_get_user_data</a>(<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md,</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">void</span> (*if_destroy_func)(<span class="keywordtype">void</span> *));</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e">grpc_mdelem_set_user_data</a>(<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, <span class="keywordtype">void</span> (*destroy_func)(<span class="keywordtype">void</span> *),</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment">/* Reference counting */</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="preprocessor">#ifdef GRPC_METADATA_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDSTR_REF(s) grpc_mdstr_ref((s), __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDSTR_UNREF(s) grpc_mdstr_unref((s), __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDELEM_REF(s) grpc_mdelem_ref((s), __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDELEM_UNREF(s) grpc_mdelem_unref((s), __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor"></span><a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf">grpc_mdstr_ref</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a6ba2e968699daaddaad9b48b78779465">grpc_mdstr_unref</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615">grpc_mdelem_ref</a>(<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc">grpc_mdelem_unref</a>(<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="metadata_8h.html#ab07dbb900f15b2fe28ea24451c5cfa3d"> 141</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDSTR_REF(s) grpc_mdstr_ref((s))</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="metadata_8h.html#ab6dceed9dacb076aa33c15323f6e823c"> 142</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDSTR_UNREF(s) grpc_mdstr_unref((s))</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="metadata_8h.html#af5a6d4b7c327b66f0902c683ab007618"> 143</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDELEM_REF(s) grpc_mdelem_ref((s))</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="metadata_8h.html#ab01db7c946e0962da8888f19cb870afb"> 144</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDELEM_UNREF(s) grpc_mdelem_unref((s))</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="preprocessor"></span><a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf">grpc_mdstr_ref</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s);</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a6ba2e968699daaddaad9b48b78779465">grpc_mdstr_unref</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s);</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615">grpc_mdelem_ref</a>(<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md);</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc">grpc_mdelem_unref</a>(<a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *md);</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment">/* Recover a char* from a grpc_mdstr. The returned string is null terminated.</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> Does not promise that the returned string has no embedded nulls however. */</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895">grpc_mdstr_as_c_string</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s);</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="keywordtype">int</span> <a class="code" href="metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5">grpc_mdstr_is_legal_header</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s);</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="keywordtype">int</span> <a class="code" href="metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74">grpc_mdstr_is_bin_suffixed</a>(<a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *s);</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment">/* Batch mode metadata functions.</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> These API&#39;s have equivalents above, but allow taking the mdctx just once,</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> performing a bunch of work, and then leaving the mdctx. */</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">/* Lock the metadata context: it&#39;s only safe to call _locked_ functions against</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> this context from the calling thread until grpc_mdctx_unlock is called */</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331">grpc_mdctx_lock</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx);</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="preprocessor">#ifdef GRPC_METADATA_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDCTX_LOCKED_MDELEM_UNREF(ctx, elem) \</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="preprocessor"> grpc_mdctx_locked_mdelem_unref((ctx), (elem), __FILE__, __LINE__)</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor"></span><span class="comment">/* Unref a metadata element */</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01">grpc_mdctx_locked_mdelem_unref</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem,</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="metadata_8h.html#af96c346c98e982e5c0086467dd11e714"> 172</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MDCTX_LOCKED_MDELEM_UNREF(ctx, elem) \</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="preprocessor"> grpc_mdctx_locked_mdelem_unref((ctx), (elem))</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="preprocessor"></span><span class="comment">/* Unref a metadata element */</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01">grpc_mdctx_locked_mdelem_unref</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx, <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem);</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor"></span><span class="comment">/* Unlock the metadata context */</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keywordtype">void</span> <a class="code" href="metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b">grpc_mdctx_unlock</a>(<a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx);</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="metadata_8h.html#a385838d339c97b956529499c1da41e1f"> 180</a></span>&#160;<span class="preprocessor">#define GRPC_MDSTR_KV_HASH(k_hash, v_hash) (GPR_ROTL((k_hash), 2) ^ (v_hash))</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_METADATA_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="metadata_8h_html_abb0b4e65a5d630dfe5fe975cd7b578cf"><div class="ttname"><a href="metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf">grpc_mdstr_ref</a></div><div class="ttdeci">grpc_mdstr * grpc_mdstr_ref(grpc_mdstr *s)</div><div class="ttdef"><b>Definition:</b> metadata.c:586</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="metadata_8h_html_ac510347648778d23eaf6c8d9a4b664db"><div class="ttname"><a href="metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db">grpc_mdstr_from_buffer</a></div><div class="ttdeci">grpc_mdstr * grpc_mdstr_from_buffer(grpc_mdctx *ctx, const gpr_uint8 *str, size_t length)</div><div class="ttdef"><b>Definition:</b> metadata.c:353</div></div>
+<div class="ttc" id="metadata_8h_html_a748c6028cdc4cd0fd8d98c3a7f79ed13"><div class="ttname"><a href="metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13">grpc_mdelem_from_string_and_buffer</a></div><div class="ttdeci">grpc_mdelem * grpc_mdelem_from_string_and_buffer(grpc_mdctx *ctx, const char *key, const gpr_uint8 *value, size_t value_length, int canonicalize_key)</div><div class="ttdef"><b>Definition:</b> metadata.c:534</div></div>
+<div class="ttc" id="metadata_8h_html_ae467d8aaa91efb73610faca99c18ca17"><div class="ttname"><a href="metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17">grpc_mdctx_get_mdtab_free_test_only</a></div><div class="ttdeci">size_t grpc_mdctx_get_mdtab_free_test_only(grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:611</div></div>
+<div class="ttc" id="metadata_8h_html_a033690c1ac25d72fdc5e56e9f5d9e97b"><div class="ttname"><a href="metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b">grpc_mdctx_unlock</a></div><div class="ttdeci">void grpc_mdctx_unlock(grpc_mdctx *ctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:679</div></div>
+<div class="ttc" id="metadata_8h_html_a390eb255a6d72a8ea84ac8ad3cbeb331"><div class="ttname"><a href="metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331">grpc_mdctx_lock</a></div><div class="ttdeci">void grpc_mdctx_lock(grpc_mdctx *ctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:658</div></div>
+<div class="ttc" id="metadata_8h_html_a6ba2e968699daaddaad9b48b78779465"><div class="ttname"><a href="metadata_8h.html#a6ba2e968699daaddaad9b48b78779465">grpc_mdstr_unref</a></div><div class="ttdeci">void grpc_mdstr_unref(grpc_mdstr *s)</div><div class="ttdef"><b>Definition:</b> metadata.c:595</div></div>
+<div class="ttc" id="structgrpc__mdelem_html_a8260c065e7658a1d2438c656bd8aae94"><div class="ttname"><a href="structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94">grpc_mdelem::key</a></div><div class="ttdeci">grpc_mdstr *const key</div><div class="ttdef"><b>Definition:</b> metadata.h:79</div></div>
+<div class="ttc" id="structgrpc__mdstr_html_a293d438ac394265fb036e8dba0a3bc9d"><div class="ttname"><a href="structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d">grpc_mdstr::hash</a></div><div class="ttdeci">const gpr_uint32 hash</div><div class="ttdef"><b>Definition:</b> metadata.h:72</div></div>
+<div class="ttc" id="metadata_8h_html_a427ad60503ae8ce87bcfa0aa09fe99a5"><div class="ttname"><a href="metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5">grpc_mdstr_is_legal_header</a></div><div class="ttdeci">int grpc_mdstr_is_legal_header(grpc_mdstr *s)</div><div class="ttdef"><b>Definition:</b> metadata.c:681</div></div>
+<div class="ttc" id="structgrpc__mdstr_html"><div class="ttname"><a href="structgrpc__mdstr.html">grpc_mdstr</a></div><div class="ttdef"><b>Definition:</b> metadata.h:70</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="useful_8h_html"><div class="ttname"><a href="useful_8h.html">useful.h</a></div></div>
+<div class="ttc" id="metadata_8h_html_a5b5ad2d68dd8c76345170f5f732b8fa2"><div class="ttname"><a href="metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2">grpc_mdelem_from_slices</a></div><div class="ttdeci">grpc_mdelem * grpc_mdelem_from_slices(grpc_mdctx *ctx, gpr_slice key, gpr_slice value)</div><div class="ttdef"><b>Definition:</b> metadata.c:528</div></div>
+<div class="ttc" id="metadata_8h_html_a6535f623fc2bd818158d96f6a37f73c8"><div class="ttname"><a href="metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8">grpc_mdelem_from_strings</a></div><div class="ttdeci">grpc_mdelem * grpc_mdelem_from_strings(grpc_mdctx *ctx, const char *key, const char *value)</div><div class="ttdef"><b>Definition:</b> metadata.c:521</div></div>
+<div class="ttc" id="metadata_8h_html_ab56ce41a4a8c2d30fca3e32d4d7b5e36"><div class="ttname"><a href="metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36">grpc_mdctx_get_mdtab_capacity_test_only</a></div><div class="ttdeci">size_t grpc_mdctx_get_mdtab_capacity_test_only(grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:603</div></div>
+<div class="ttc" id="metadata_8h_html_a6d0f62841408f1a89773aa4ef54dcf0e"><div class="ttname"><a href="metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e">grpc_mdelem_set_user_data</a></div><div class="ttdeci">void grpc_mdelem_set_user_data(grpc_mdelem *md, void(*destroy_func)(void *), void *user_data)</div><div class="ttdef"><b>Definition:</b> metadata.c:625</div></div>
+<div class="ttc" id="metadata_8h_html_a969845603738428cf18a9a090896e152"><div class="ttname"><a href="metadata_8h.html#a969845603738428cf18a9a090896e152">grpc_mdelem_from_metadata_strings</a></div><div class="ttdeci">grpc_mdelem * grpc_mdelem_from_metadata_strings(grpc_mdctx *ctx, grpc_mdstr *key, grpc_mdstr *value)</div><div class="ttdef"><b>Definition:</b> metadata.c:469</div></div>
+<div class="ttc" id="metadata_8h_html_a29700f3749eea2c96f7bae1d57f8f7e3"><div class="ttname"><a href="metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3">grpc_mdctx_create_with_seed</a></div><div class="ttdeci">grpc_mdctx * grpc_mdctx_create_with_seed(gpr_uint32 seed)</div><div class="ttdef"><b>Definition:</b> metadata.c:164</div></div>
+<div class="ttc" id="metadata_8h_html_ae73ccb189245977bbddfa464bd3c6615"><div class="ttname"><a href="metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615">grpc_mdelem_ref</a></div><div class="ttdeci">grpc_mdelem * grpc_mdelem_ref(grpc_mdelem *md)</div><div class="ttdef"><b>Definition:</b> metadata.c:544</div></div>
+<div class="ttc" id="metadata_8h_html_a8ca25748d59d50f8641692bf3ae357d3"><div class="ttname"><a href="metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3">grpc_mdctx_unref</a></div><div class="ttdeci">void grpc_mdctx_unref(grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:232</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="metadata_8h_html_a4eccbbb62d87a131d2eb3367fd2c4c43"><div class="ttname"><a href="metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43">grpc_mdstr_from_slice</a></div><div class="ttdeci">grpc_mdstr * grpc_mdstr_from_slice(grpc_mdctx *ctx, gpr_slice slice)</div><div class="ttdef"><b>Definition:</b> metadata.c:346</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="metadata_8h_html_a0eee1214d287f4f14fa1363fdacff5da"><div class="ttname"><a href="metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da">grpc_mdctx_ref</a></div><div class="ttdeci">void grpc_mdctx_ref(grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:225</div></div>
+<div class="ttc" id="structgrpc__mdstr_html_a748902fde1a15c453757c2e45509941e"><div class="ttname"><a href="structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e">grpc_mdstr::slice</a></div><div class="ttdeci">const gpr_slice slice</div><div class="ttdef"><b>Definition:</b> metadata.h:71</div></div>
+<div class="ttc" id="metadata_8h_html_a7b190b43b10959286e61719a9f9f0f01"><div class="ttname"><a href="metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01">grpc_mdctx_locked_mdelem_unref</a></div><div class="ttdeci">void grpc_mdctx_locked_mdelem_unref(grpc_mdctx *ctx, grpc_mdelem *elem)</div><div class="ttdef"><b>Definition:</b> metadata.c:660</div></div>
+<div class="ttc" id="structgrpc__mdelem_html_ae98f0541c25f94c27c8a0e63741267e1"><div class="ttname"><a href="structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1">grpc_mdelem::value</a></div><div class="ttdeci">grpc_mdstr *const value</div><div class="ttdef"><b>Definition:</b> metadata.h:80</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="metadata_8h_html_ad34887fb9c6733916ac87b8fde793e74"><div class="ttname"><a href="metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74">grpc_mdstr_is_bin_suffixed</a></div><div class="ttdeci">int grpc_mdstr_is_bin_suffixed(grpc_mdstr *s)</div><div class="ttdef"><b>Definition:</b> metadata.c:691</div></div>
+<div class="ttc" id="metadata_8h_html_aacbae6a08b63835ec31fcddb556aa895"><div class="ttname"><a href="metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895">grpc_mdstr_as_c_string</a></div><div class="ttdeci">const char * grpc_mdstr_as_c_string(grpc_mdstr *s)</div><div class="ttdef"><b>Definition:</b> metadata.c:582</div></div>
+<div class="ttc" id="metadata_8h_html_ac3c26191d224ff5ac9f54713cfc90f92"><div class="ttname"><a href="metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92">grpc_mdctx_get_mdtab_count_test_only</a></div><div class="ttdeci">size_t grpc_mdctx_get_mdtab_count_test_only(grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> metadata.c:607</div></div>
+<div class="ttc" id="metadata_8h_html_af961acf0149066abf14c01f56a3e2b55"><div class="ttname"><a href="metadata_8h.html#af961acf0149066abf14c01f56a3e2b55">grpc_mdstr_from_string</a></div><div class="ttdeci">grpc_mdstr * grpc_mdstr_from_string(grpc_mdctx *ctx, const char *str, int perform_key_canonicalization)</div><div class="ttdef"><b>Definition:</b> metadata.c:312</div></div>
+<div class="ttc" id="metadata_8h_html_a207b09a54f3c57a90b5b44868fbf5649"><div class="ttname"><a href="metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649">grpc_mdctx_create</a></div><div class="ttdeci">grpc_mdctx * grpc_mdctx_create(void)</div><div class="ttdef"><b>Definition:</b> metadata.c:183</div></div>
+<div class="ttc" id="metadata_8h_html_aaf81c9b79ca751ffb4de33ea510d70cc"><div class="ttname"><a href="metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc">grpc_mdelem_unref</a></div><div class="ttdeci">void grpc_mdelem_unref(grpc_mdelem *md)</div><div class="ttdef"><b>Definition:</b> metadata.c:563</div></div>
+<div class="ttc" id="metadata_8h_html_a1f7c3e28f1f851a5b50d274f3ad3ecc9"><div class="ttname"><a href="metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9">grpc_mdelem_get_user_data</a></div><div class="ttdeci">void * grpc_mdelem_get_user_data(grpc_mdelem *md, void(*if_destroy_func)(void *))</div><div class="ttdef"><b>Definition:</b> metadata.c:615</div></div>
+<div class="ttc" id="hpack__table_8c_html_acd3d88da3c0e0313c3645ff34f62f542"><div class="ttname"><a href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> hpack_table.c:43</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="metadata_8h_html_a314273fea07852ac80ea184100398c11"><div class="ttname"><a href="metadata_8h.html#a314273fea07852ac80ea184100398c11">grpc_mdstr_as_base64_encoded_and_huffman_compressed</a></div><div class="ttdeci">gpr_slice grpc_mdstr_as_base64_encoded_and_huffman_compressed(grpc_mdstr *str)</div><div class="ttdef"><b>Definition:</b> metadata.c:643</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/metadata__array_8c.html b/doc/ref/core.internal/html/metadata__array_8c.html
new file mode 100644
index 0000000000..980d54f04f
--- /dev/null
+++ b/doc/ref/core.internal/html/metadata__array_8c.html
@@ -0,0 +1,145 @@
+<!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: src/core/surface/metadata_array.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">metadata_array.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a52cfda44034115720a0e88037dedbfb5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata__array_8c.html#a52cfda44034115720a0e88037dedbfb5">grpc_metadata_array_init</a> (<a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array)</td></tr>
+<tr class="separator:a52cfda44034115720a0e88037dedbfb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad125726d8b689cc5fc1a0444c91ed44"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="metadata__array_8c.html#aad125726d8b689cc5fc1a0444c91ed44">grpc_metadata_array_destroy</a> (<a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array)</td></tr>
+<tr class="separator:aad125726d8b689cc5fc1a0444c91ed44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aad125726d8b689cc5fc1a0444c91ed44"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_array_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52cfda44034115720a0e88037dedbfb5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_array_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>array</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/murmur__hash_8c.html b/doc/ref/core.internal/html/murmur__hash_8c.html
new file mode 100644
index 0000000000..24ba746c31
--- /dev/null
+++ b/doc/ref/core.internal/html/murmur__hash_8c.html
@@ -0,0 +1,225 @@
+<!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: src/core/support/murmur_hash.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">murmur_hash.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="murmur__hash_8h_source.html">src/core/support/murmur_hash.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aff6ce4cae0564b039bbb4ef0cbdc0032"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="murmur__hash_8c.html#aff6ce4cae0564b039bbb4ef0cbdc0032">ROTL32</a>(x, r)&#160;&#160;&#160;((x) &lt;&lt; (r)) | ((x) &gt;&gt; (32 - (r)))</td></tr>
+<tr class="separator:aff6ce4cae0564b039bbb4ef0cbdc0032"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35851ba6b08c118345278effc46695e6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="murmur__hash_8c.html#a35851ba6b08c118345278effc46695e6">FMIX32</a>(h)</td></tr>
+<tr class="separator:a35851ba6b08c118345278effc46695e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaaaac568919d152a24bbff8d8c1bc194"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="murmur__hash_8c.html#aaaaac568919d152a24bbff8d8c1bc194">GETBLOCK32</a>(p, i)&#160;&#160;&#160;(p)[(i)]</td></tr>
+<tr class="separator:aaaaac568919d152a24bbff8d8c1bc194"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afd4a38ba55dc020a76c1ec09a4f626d0"><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="murmur__hash_8c.html#afd4a38ba55dc020a76c1ec09a4f626d0">gpr_murmur_hash3</a> (const void *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, size_t len, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> seed)</td></tr>
+<tr class="separator:afd4a38ba55dc020a76c1ec09a4f626d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a35851ba6b08c118345278effc46695e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define FMIX32</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">h</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">(h) ^= (h) &gt;&gt; 16; \</div>
+<div class="line"> (h) *= 0x85ebca6b; \</div>
+<div class="line"> (h) ^= (h) &gt;&gt; 13; \</div>
+<div class="line"> (h) *= 0xc2b2ae35; \</div>
+<div class="line"> (h) ^= (h) &gt;&gt; 16;</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="aaaaac568919d152a24bbff8d8c1bc194"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GETBLOCK32</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">i&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(p)[(i)]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aff6ce4cae0564b039bbb4ef0cbdc0032"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ROTL32</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;((x) &lt;&lt; (r)) | ((x) &gt;&gt; (32 - (r)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="afd4a38ba55dc020a76c1ec09a4f626d0"></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> gpr_murmur_hash3 </td>
+ <td>(</td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>seed</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/murmur__hash_8h.html b/doc/ref/core.internal/html/murmur__hash_8h.html
new file mode 100644
index 0000000000..6582ddc85e
--- /dev/null
+++ b/doc/ref/core.internal/html/murmur__hash_8h.html
@@ -0,0 +1,144 @@
+<!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: src/core/support/murmur_hash.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">murmur_hash.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+</div>
+<p><a href="murmur__hash_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:afd4a38ba55dc020a76c1ec09a4f626d0"><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="murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0">gpr_murmur_hash3</a> (const void *<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, size_t len, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> seed)</td></tr>
+<tr class="separator:afd4a38ba55dc020a76c1ec09a4f626d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="afd4a38ba55dc020a76c1ec09a4f626d0"></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> gpr_murmur_hash3 </td>
+ <td>(</td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>seed</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/murmur__hash_8h_source.html b/doc/ref/core.internal/html/murmur__hash_8h_source.html
new file mode 100644
index 0000000000..f87a82b943
--- /dev/null
+++ b/doc/ref/core.internal/html/murmur__hash_8h_source.html
@@ -0,0 +1,147 @@
+<!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: src/core/support/murmur_hash.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">murmur_hash.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="murmur__hash_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_MURMUR_HASH_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_MURMUR_HASH_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* compute the hash of key (length len) */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0">gpr_murmur_hash3</a>(<span class="keyword">const</span> <span class="keywordtype">void</span> *<a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, <span class="keywordtype">size_t</span> len, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> seed);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_MURMUR_HASH_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="murmur__hash_8h_html_afd4a38ba55dc020a76c1ec09a4f626d0"><div class="ttname"><a href="murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0">gpr_murmur_hash3</a></div><div class="ttdeci">gpr_uint32 gpr_murmur_hash3(const void *key, size_t len, gpr_uint32 seed)</div><div class="ttdef"><b>Definition:</b> murmur_hash.c:49</div></div>
+<div class="ttc" id="hpack__table_8c_html_acd3d88da3c0e0313c3645ff34f62f542"><div class="ttname"><a href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> hpack_table.c:43</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/nav_f.png b/doc/ref/core.internal/html/nav_f.png
new file mode 100644
index 0000000000..72a58a529e
--- /dev/null
+++ b/doc/ref/core.internal/html/nav_f.png
Binary files differ
diff --git a/doc/ref/core.internal/html/nav_g.png b/doc/ref/core.internal/html/nav_g.png
new file mode 100644
index 0000000000..2093a237a9
--- /dev/null
+++ b/doc/ref/core.internal/html/nav_g.png
Binary files differ
diff --git a/doc/ref/core.internal/html/nav_h.png b/doc/ref/core.internal/html/nav_h.png
new file mode 100644
index 0000000000..33389b101d
--- /dev/null
+++ b/doc/ref/core.internal/html/nav_h.png
Binary files differ
diff --git a/doc/ref/core.internal/html/noop__filter_8c.html b/doc/ref/core.internal/html/noop__filter_8c.html
new file mode 100644
index 0000000000..1df83b7078
--- /dev/null
+++ b/doc/ref/core.internal/html/noop__filter_8c.html
@@ -0,0 +1,177 @@
+<!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: src/core/channel/noop_filter.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">noop_filter.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="noop__filter_8h_source.html">src/core/channel/noop_filter.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></td></tr>
+<tr class="separator:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e660c9a52a9795338faf0c2188cff84"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="noop__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">channel_data</a></td></tr>
+<tr class="separator:a5e660c9a52a9795338faf0c2188cff84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:afe35aa05a877e7cbc5a42c9aa0574e87"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="noop__filter_8c.html#afe35aa05a877e7cbc5a42c9aa0574e87">grpc_no_op_filter</a></td></tr>
+<tr class="separator:afe35aa05a877e7cbc5a42c9aa0574e87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7237e4a998a071b454b0d6b1bdfb42e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e660c9a52a9795338faf0c2188cff84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__data.html">channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="afe35aa05a877e7cbc5a42c9aa0574e87"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_no_op_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {noop_start_transport_stream_op,</div>
+<div class="line"> <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a>),</div>
+<div class="line"> init_call_elem,</div>
+<div class="line"> destroy_call_elem,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem,</div>
+<div class="line"> destroy_channel_elem,</div>
+<div class="line"> <a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>,</div>
+<div class="line"> <span class="stringliteral">&quot;no-op&quot;</span>}</div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+<div class="ttc" id="noop__filter_8c_html_a7237e4a998a071b454b0d6b1bdfb42e1"><div class="ttname"><a href="noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></div><div class="ttdeci">struct call_data call_data</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/noop__filter_8h.html b/doc/ref/core.internal/html/noop__filter_8h.html
new file mode 100644
index 0000000000..51ff56cee5
--- /dev/null
+++ b/doc/ref/core.internal/html/noop__filter_8h.html
@@ -0,0 +1,123 @@
+<!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: src/core/channel/noop_filter.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">noop_filter.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+</div>
+<p><a href="noop__filter_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:afe35aa05a877e7cbc5a42c9aa0574e87"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87">grpc_no_op_filter</a></td></tr>
+<tr class="separator:afe35aa05a877e7cbc5a42c9aa0574e87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="afe35aa05a877e7cbc5a42c9aa0574e87"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_no_op_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/noop__filter_8h_source.html b/doc/ref/core.internal/html/noop__filter_8h_source.html
new file mode 100644
index 0000000000..d46510af75
--- /dev/null
+++ b/doc/ref/core.internal/html/noop__filter_8h_source.html
@@ -0,0 +1,146 @@
+<!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: src/core/channel/noop_filter.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_8aa15e76222df75340b2e23e43efb3e2.html">channel</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">noop_filter.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="noop__filter_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CHANNEL_NOOP_FILTER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CHANNEL_NOOP_FILTER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* No-op filter: simply takes everything it&#39;s given, and passes it on to the</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> next filter. Exists simply as a starting point that others can take and</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> customize for their own filters */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <a class="code" href="noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87">grpc_no_op_filter</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CHANNEL_NOOP_FILTER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="noop__filter_8h_html_afe35aa05a877e7cbc5a42c9aa0574e87"><div class="ttname"><a href="noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87">grpc_no_op_filter</a></div><div class="ttdeci">const grpc_channel_filter grpc_no_op_filter</div><div class="ttdef"><b>Definition:</b> noop_filter.c:122</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/open.png b/doc/ref/core.internal/html/open.png
new file mode 100644
index 0000000000..30f75c7efe
--- /dev/null
+++ b/doc/ref/core.internal/html/open.png
Binary files differ
diff --git a/doc/ref/core.internal/html/parser_8c.html b/doc/ref/core.internal/html/parser_8c.html
new file mode 100644
index 0000000000..6fc600a6b4
--- /dev/null
+++ b/doc/ref/core.internal/html/parser_8c.html
@@ -0,0 +1,193 @@
+<!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: src/core/httpcli/parser.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">parser.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="parser_8h_source.html">src/core/httpcli/parser.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5801c0439a5dff17a1ddc7f22bdf7ec9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8c.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">grpc_httpcli_parser_init</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser)</td></tr>
+<tr class="separator:a5801c0439a5dff17a1ddc7f22bdf7ec9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a947eefc20a5245e155e1bb55380c8344"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8c.html#a947eefc20a5245e155e1bb55380c8344">grpc_httpcli_parser_destroy</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser)</td></tr>
+<tr class="separator:a947eefc20a5245e155e1bb55380c8344"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24a1909825c06938a465e40295464cd0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8c.html#a24a1909825c06938a465e40295464cd0">grpc_httpcli_parser_parse</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:a24a1909825c06938a465e40295464cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ad859c8c3267265dba030d1d7597df8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8c.html#a3ad859c8c3267265dba030d1d7597df8">grpc_httpcli_parser_eof</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser)</td></tr>
+<tr class="separator:a3ad859c8c3267265dba030d1d7597df8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a947eefc20a5245e155e1bb55380c8344"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ad859c8c3267265dba030d1d7597df8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_httpcli_parser_eof </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5801c0439a5dff17a1ddc7f22bdf7ec9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a24a1909825c06938a465e40295464cd0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_httpcli_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/parser_8h.html b/doc/ref/core.internal/html/parser_8h.html
new file mode 100644
index 0000000000..71dbe8b31e
--- /dev/null
+++ b/doc/ref/core.internal/html/parser_8h.html
@@ -0,0 +1,229 @@
+<!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: src/core/httpcli/parser.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">parser.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="httpcli_8h_source.html">src/core/httpcli/httpcli.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="parser_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a664db6149875c333b0a568ef8711e257"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a> { <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a">GRPC_HTTPCLI_INITIAL_RESPONSE</a>,
+<a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8">GRPC_HTTPCLI_HEADERS</a>,
+<a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0">GRPC_HTTPCLI_BODY</a>
+ }</td></tr>
+<tr class="separator:a664db6149875c333b0a568ef8711e257"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5801c0439a5dff17a1ddc7f22bdf7ec9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">grpc_httpcli_parser_init</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser)</td></tr>
+<tr class="separator:a5801c0439a5dff17a1ddc7f22bdf7ec9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a947eefc20a5245e155e1bb55380c8344"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#a947eefc20a5245e155e1bb55380c8344">grpc_httpcli_parser_destroy</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser)</td></tr>
+<tr class="separator:a947eefc20a5245e155e1bb55380c8344"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24a1909825c06938a465e40295464cd0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#a24a1909825c06938a465e40295464cd0">grpc_httpcli_parser_parse</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:a24a1909825c06938a465e40295464cd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ad859c8c3267265dba030d1d7597df8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parser_8h.html#a3ad859c8c3267265dba030d1d7597df8">grpc_httpcli_parser_eof</a> (<a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser)</td></tr>
+<tr class="separator:a3ad859c8c3267265dba030d1d7597df8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a664db6149875c333b0a568ef8711e257"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a"></a>GRPC_HTTPCLI_INITIAL_RESPONSE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8"></a>GRPC_HTTPCLI_HEADERS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0"></a>GRPC_HTTPCLI_BODY</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a947eefc20a5245e155e1bb55380c8344"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_parser_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ad859c8c3267265dba030d1d7597df8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_httpcli_parser_eof </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5801c0439a5dff17a1ddc7f22bdf7ec9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_httpcli_parser_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a24a1909825c06938a465e40295464cd0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_httpcli_parser_parse </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *&#160;</td>
+ <td class="paramname"><em>parser</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/parser_8h_source.html b/doc/ref/core.internal/html/parser_8h_source.html
new file mode 100644
index 0000000000..28aac6505c
--- /dev/null
+++ b/doc/ref/core.internal/html/parser_8h_source.html
@@ -0,0 +1,184 @@
+<!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: src/core/httpcli/parser.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_03e3f2561cf9e09e514d23ee8902839b.html">httpcli</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">parser.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_HTTPCLI_PARSER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_HTTPCLI_PARSER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="httpcli_8h.html">src/core/httpcli/httpcli.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="parser_8h.html#a664db6149875c333b0a568ef8711e257"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a"> 42</a></span>&#160; <a class="code" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a">GRPC_HTTPCLI_INITIAL_RESPONSE</a>,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8"> 43</a></span>&#160; <a class="code" href="parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8">GRPC_HTTPCLI_HEADERS</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0"> 44</a></span>&#160; <a class="code" href="parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0">GRPC_HTTPCLI_BODY</a></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;} <a class="code" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305"> 48</a></span>&#160; <a class="code" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a> <a class="code" href="structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305">state</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a"> 50</a></span>&#160; <a class="code" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> <a class="code" href="structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a">r</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628"> 51</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628">body_capacity</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77"> 52</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77">hdr_capacity</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html#a8524fc39d4fa476bf3133e922edf092c"> 54</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> cur_line[<a class="code" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">GRPC_HTTPCLI_MAX_HEADER_LENGTH</a>];</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e"> 55</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e">cur_line_length</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;} <a class="code" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">grpc_httpcli_parser_init</a>(<a class="code" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">void</span> <a class="code" href="parser_8h.html#a947eefc20a5245e155e1bb55380c8344">grpc_httpcli_parser_destroy</a>(<a class="code" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">int</span> <a class="code" href="parser_8h.html#a24a1909825c06938a465e40295464cd0">grpc_httpcli_parser_parse</a>(<a class="code" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">int</span> <a class="code" href="parser_8h.html#a3ad859c8c3267265dba030d1d7597df8">grpc_httpcli_parser_eof</a>(<a class="code" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> *parser);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_HTTPCLI_PARSER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="structgrpc__httpcli__parser_html_a6ada31fac5b5a87c7405f70f63fc201e"><div class="ttname"><a href="structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e">grpc_httpcli_parser::cur_line_length</a></div><div class="ttdeci">size_t cur_line_length</div><div class="ttdef"><b>Definition:</b> parser.h:55</div></div>
+<div class="ttc" id="parser_8h_html_a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8"><div class="ttname"><a href="parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8">GRPC_HTTPCLI_HEADERS</a></div><div class="ttdef"><b>Definition:</b> parser.h:43</div></div>
+<div class="ttc" id="structgrpc__httpcli__parser_html_af12e7be4d11735dce047a30c1915cc77"><div class="ttname"><a href="structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77">grpc_httpcli_parser::hdr_capacity</a></div><div class="ttdeci">size_t hdr_capacity</div><div class="ttdef"><b>Definition:</b> parser.h:52</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="httpcli_8h_html"><div class="ttname"><a href="httpcli_8h.html">httpcli.h</a></div></div>
+<div class="ttc" id="httpcli_8h_html_a20ed031787f50e2fbbf09a5f1ab4ccec"><div class="ttname"><a href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">GRPC_HTTPCLI_MAX_HEADER_LENGTH</a></div><div class="ttdeci">#define GRPC_HTTPCLI_MAX_HEADER_LENGTH</div><div class="ttdef"><b>Definition:</b> httpcli.h:46</div></div>
+<div class="ttc" id="parser_8h_html_a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0"><div class="ttname"><a href="parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0">GRPC_HTTPCLI_BODY</a></div><div class="ttdef"><b>Definition:</b> parser.h:44</div></div>
+<div class="ttc" id="structgrpc__httpcli__parser_html_a0072db1169f6f1e993673a91593f1305"><div class="ttname"><a href="structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305">grpc_httpcli_parser::state</a></div><div class="ttdeci">grpc_httpcli_parser_state state</div><div class="ttdef"><b>Definition:</b> parser.h:48</div></div>
+<div class="ttc" id="parser_8h_html_a947eefc20a5245e155e1bb55380c8344"><div class="ttname"><a href="parser_8h.html#a947eefc20a5245e155e1bb55380c8344">grpc_httpcli_parser_destroy</a></div><div class="ttdeci">void grpc_httpcli_parser_destroy(grpc_httpcli_parser *parser)</div><div class="ttdef"><b>Definition:</b> parser.c:190</div></div>
+<div class="ttc" id="parser_8h_html_a5801c0439a5dff17a1ddc7f22bdf7ec9"><div class="ttname"><a href="parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9">grpc_httpcli_parser_init</a></div><div class="ttdeci">void grpc_httpcli_parser_init(grpc_httpcli_parser *parser)</div><div class="ttdef"><b>Definition:</b> parser.c:184</div></div>
+<div class="ttc" id="structgrpc__httpcli__parser_html"><div class="ttname"><a href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a></div><div class="ttdef"><b>Definition:</b> parser.h:47</div></div>
+<div class="ttc" id="parser_8h_html_a3ad859c8c3267265dba030d1d7597df8"><div class="ttname"><a href="parser_8h.html#a3ad859c8c3267265dba030d1d7597df8">grpc_httpcli_parser_eof</a></div><div class="ttdeci">int grpc_httpcli_parser_eof(grpc_httpcli_parser *parser)</div><div class="ttdef"><b>Definition:</b> parser.c:212</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgrpc__httpcli__parser_html_a4229204d0c6b48f33f9016d48b05b628"><div class="ttname"><a href="structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628">grpc_httpcli_parser::body_capacity</a></div><div class="ttdeci">size_t body_capacity</div><div class="ttdef"><b>Definition:</b> parser.h:51</div></div>
+<div class="ttc" id="structgrpc__httpcli__parser_html_ab46efe042fad6d5c2b22f51e06bf9d2a"><div class="ttname"><a href="structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a">grpc_httpcli_parser::r</a></div><div class="ttdeci">grpc_httpcli_response r</div><div class="ttdef"><b>Definition:</b> parser.h:50</div></div>
+<div class="ttc" id="parser_8h_html_a664db6149875c333b0a568ef8711e257"><div class="ttname"><a href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a></div><div class="ttdeci">grpc_httpcli_parser_state</div><div class="ttdef"><b>Definition:</b> parser.h:41</div></div>
+<div class="ttc" id="structgrpc__httpcli__response_html"><div class="ttname"><a href="structgrpc__httpcli__response.html">grpc_httpcli_response</a></div><div class="ttdef"><b>Definition:</b> httpcli.h:77</div></div>
+<div class="ttc" id="parser_8h_html_a24a1909825c06938a465e40295464cd0"><div class="ttname"><a href="parser_8h.html#a24a1909825c06938a465e40295464cd0">grpc_httpcli_parser_parse</a></div><div class="ttdeci">int grpc_httpcli_parser_parse(grpc_httpcli_parser *parser, gpr_slice slice)</div><div class="ttdef"><b>Definition:</b> parser.c:200</div></div>
+<div class="ttc" id="parser_8h_html_a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a"><div class="ttname"><a href="parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a">GRPC_HTTPCLI_INITIAL_RESPONSE</a></div><div class="ttdef"><b>Definition:</b> parser.h:42</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/parsing_8c.html b/doc/ref/core.internal/html/parsing_8c.html
new file mode 100644
index 0000000000..9bc46eb6cc
--- /dev/null
+++ b/doc/ref/core.internal/html/parsing_8c.html
@@ -0,0 +1,218 @@
+<!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: src/core/transport/chttp2/parsing.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">parsing.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="http2__errors_8h_source.html">src/core/transport/chttp2/http2_errors.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="status__conversion_8h_source.html">src/core/transport/chttp2/status_conversion.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="timeout__encoding_8h_source.html">src/core/transport/chttp2/timeout_encoding.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae010263eae7de4e41a74679b11579825"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parsing_8c.html#ae010263eae7de4e41a74679b11579825">grpc_chttp2_prepare_to_read</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing)</td></tr>
+<tr class="separator:ae010263eae7de4e41a74679b11579825"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba67e2ed1d9d5ac25c0d5b2ea31e8137"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parsing_8c.html#aba67e2ed1d9d5ac25c0d5b2ea31e8137">grpc_chttp2_publish_reads</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing)</td></tr>
+<tr class="separator:aba67e2ed1d9d5ac25c0d5b2ea31e8137"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abeaab2fead1bddefe92af0bc61a3a33f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parsing_8c.html#abeaab2fead1bddefe92af0bc61a3a33f">grpc_chttp2_perform_read</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="memdesc:abeaab2fead1bddefe92af0bc61a3a33f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process one slice of incoming data; return 1 if the connection is still viable after reading, or 0 if the connection should be torn down. <a href="#abeaab2fead1bddefe92af0bc61a3a33f">More...</a><br/></td></tr>
+<tr class="separator:abeaab2fead1bddefe92af0bc61a3a33f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6a13571d6666f45a64c8e0f6b234e60"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="parsing_8c.html#ad6a13571d6666f45a64c8e0f6b234e60">grpc_chttp2_parsing_become_skip_parser</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing)</td></tr>
+<tr class="separator:ad6a13571d6666f45a64c8e0f6b234e60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad6a13571d6666f45a64c8e0f6b234e60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_parsing_become_skip_parser </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abeaab2fead1bddefe92af0bc61a3a33f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_perform_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Process one slice of incoming data; return 1 if the connection is still viable after reading, or 0 if the connection should be torn down. </p>
+
+</div>
+</div>
+<a class="anchor" id="ae010263eae7de4e41a74679b11579825"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_prepare_to_read </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba67e2ed1d9d5ac25c0d5b2ea31e8137"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_publish_reads </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pick__first_8c.html b/doc/ref/core.internal/html/pick__first_8c.html
new file mode 100644
index 0000000000..70bb310bc5
--- /dev/null
+++ b/doc/ref/core.internal/html/pick__first_8c.html
@@ -0,0 +1,268 @@
+<!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: src/core/client_config/lb_policies/pick_first.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_bbc3f91aaf5c0e78deeca586ef449264.html">lb_policies</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">pick_first.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="pick__first_8h_source.html">src/core/client_config/lb_policies/pick_first.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="connectivity__state_8h_source.html">src/core/transport/connectivity_state.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpending__pick.html">pending_pick</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html">pick_first_lb_policy</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ad479509ed6c18dc54a54d231ec73a4e6"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structpending__pick.html">pending_pick</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html#ad479509ed6c18dc54a54d231ec73a4e6">pending_pick</a></td></tr>
+<tr class="separator:ad479509ed6c18dc54a54d231ec73a4e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab2197438a4e2ecaee6327c0a642c5bb9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html#ab2197438a4e2ecaee6327c0a642c5bb9">pf_destroy</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *pol)</td></tr>
+<tr class="separator:ab2197438a4e2ecaee6327c0a642c5bb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1592bd5626dae37b94c5a9d719beaf17"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html#a1592bd5626dae37b94c5a9d719beaf17">pf_shutdown</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *pol)</td></tr>
+<tr class="separator:a1592bd5626dae37b94c5a9d719beaf17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a114522776c50c119fcb6eaa6241ee748"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html#a114522776c50c119fcb6eaa6241ee748">pf_exit_idle</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *pol)</td></tr>
+<tr class="separator:a114522776c50c119fcb6eaa6241ee748"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af15f282d4ed6e68ea1289e139c42db9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html#af15f282d4ed6e68ea1289e139c42db9a">pf_pick</a> (<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *pol, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="separator:af15f282d4ed6e68ea1289e139c42db9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2ef6310260146caa4cf56acddbb4343e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8c.html#a2ef6310260146caa4cf56acddbb4343e">grpc_create_pick_first_lb_policy</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels, size_t num_subchannels)</td></tr>
+<tr class="memdesc:a2ef6310260146caa4cf56acddbb4343e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a load balancing policy instance that picks up the first subchannel from <em>subchannels</em> to succesfully connect. <a href="#a2ef6310260146caa4cf56acddbb4343e">More...</a><br/></td></tr>
+<tr class="separator:a2ef6310260146caa4cf56acddbb4343e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ad479509ed6c18dc54a54d231ec73a4e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structpending__pick.html">pending_pick</a> <a class="el" href="structpending__pick.html">pending_pick</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2ef6310260146caa4cf56acddbb4343e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* grpc_create_pick_first_lb_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td>
+ <td class="paramname"><em>subchannels</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_subchannels</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a load balancing policy instance that picks up the first subchannel from <em>subchannels</em> to succesfully connect. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab2197438a4e2ecaee6327c0a642c5bb9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void pf_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>pol</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a114522776c50c119fcb6eaa6241ee748"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void pf_exit_idle </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>pol</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af15f282d4ed6e68ea1289e139c42db9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void pf_pick </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>pol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>initial_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1592bd5626dae37b94c5a9d719beaf17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void pf_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td>
+ <td class="paramname"><em>pol</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pick__first_8h.html b/doc/ref/core.internal/html/pick__first_8h.html
new file mode 100644
index 0000000000..a3055bd17b
--- /dev/null
+++ b/doc/ref/core.internal/html/pick__first_8h.html
@@ -0,0 +1,140 @@
+<!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: src/core/client_config/lb_policies/pick_first.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_bbc3f91aaf5c0e78deeca586ef449264.html">lb_policies</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">pick_first.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="lb__policy_8h_source.html">src/core/client_config/lb_policy.h</a>&quot;</code><br/>
+</div>
+<p><a href="pick__first_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2ef6310260146caa4cf56acddbb4343e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">grpc_create_pick_first_lb_policy</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels, size_t num_subchannels)</td></tr>
+<tr class="memdesc:a2ef6310260146caa4cf56acddbb4343e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a load balancing policy instance that picks up the first subchannel from <em>subchannels</em> to succesfully connect. <a href="#a2ef6310260146caa4cf56acddbb4343e">More...</a><br/></td></tr>
+<tr class="separator:a2ef6310260146caa4cf56acddbb4343e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2ef6310260146caa4cf56acddbb4343e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* grpc_create_pick_first_lb_policy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td>
+ <td class="paramname"><em>subchannels</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_subchannels</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Returns a load balancing policy instance that picks up the first subchannel from <em>subchannels</em> to succesfully connect. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pick__first_8h_source.html b/doc/ref/core.internal/html/pick__first_8h_source.html
new file mode 100644
index 0000000000..49ee5ced00
--- /dev/null
+++ b/doc/ref/core.internal/html/pick__first_8h_source.html
@@ -0,0 +1,145 @@
+<!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: src/core/client_config/lb_policies/pick_first.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_bbc3f91aaf5c0e78deeca586ef449264.html">lb_policies</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pick_first.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pick__first_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_PICK_FIRST_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_PICK_FIRST_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="lb__policy_8h.html">src/core/client_config/lb_policy.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *<a class="code" href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">grpc_create_pick_first_lb_policy</a>(<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">size_t</span> num_subchannels);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="lb__policy_8h_html"><div class="ttname"><a href="lb__policy_8h.html">lb_policy.h</a></div></div>
+<div class="ttc" id="structgrpc__subchannel_html"><div class="ttname"><a href="structgrpc__subchannel.html">grpc_subchannel</a></div><div class="ttdef"><b>Definition:</b> subchannel.c:77</div></div>
+<div class="ttc" id="pick__first_8h_html_a2ef6310260146caa4cf56acddbb4343e"><div class="ttname"><a href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">grpc_create_pick_first_lb_policy</a></div><div class="ttdeci">grpc_lb_policy * grpc_create_pick_first_lb_policy(grpc_subchannel **subchannels, size_t num_subchannels)</div><div class="ttdoc">Returns a load balancing policy instance that picks up the first subchannel from subchannels to succe...</div><div class="ttdef"><b>Definition:</b> pick_first.c:317</div></div>
+<div class="ttc" id="structgrpc__lb__policy_html"><div class="ttname"><a href="structgrpc__lb__policy.html">grpc_lb_policy</a></div><div class="ttdef"><b>Definition:</b> lb_policy.h:47</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset_8h.html b/doc/ref/core.internal/html/pollset_8h.html
new file mode 100644
index 0000000000..2fb1eb105a
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset_8h.html
@@ -0,0 +1,226 @@
+<!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: src/core/iomgr/pollset.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">pollset.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="pollset_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abea9f486d280910a6e6aecbe6ca5f40b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b">grpc_pollset_init</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:abea9f486d280910a6e6aecbe6ca5f40b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85616767facacdf95dfc4fe564352e87"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset_8h.html#a85616767facacdf95dfc4fe564352e87">grpc_pollset_shutdown</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, void(*shutdown_done)(void *<a class="el" href="structarg.html">arg</a>), void *shutdown_done_arg)</td></tr>
+<tr class="separator:a85616767facacdf95dfc4fe564352e87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66c5028ee13b23f2d3c4db177f5c7d0f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f">grpc_pollset_destroy</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a66c5028ee13b23f2d3c4db177f5c7d0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e69570c350199ba682b6f673a63e8dd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd">grpc_pollset_work</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="separator:a8e69570c350199ba682b6f673a63e8dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a395a3872723c67d877799cdc79ae7f48"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset_8h.html#a395a3872723c67d877799cdc79ae7f48">grpc_pollset_kick</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a395a3872723c67d877799cdc79ae7f48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a66c5028ee13b23f2d3c4db177f5c7d0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abea9f486d280910a6e6aecbe6ca5f40b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a395a3872723c67d877799cdc79ae7f48"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85616767facacdf95dfc4fe564352e87"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *<a class="el" href="structarg.html">arg</a>)&#160;</td>
+ <td class="paramname"><em>shutdown_done</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>shutdown_done_arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8e69570c350199ba682b6f673a63e8dd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset_work </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset_8h_source.html b/doc/ref/core.internal/html/pollset_8h_source.html
new file mode 100644
index 0000000000..3d11684b11
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset_8h_source.html
@@ -0,0 +1,186 @@
+<!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: src/core/iomgr/pollset.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* A grpc_pollset is a set of file descriptors that a higher level item is</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> interested in. For example:</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> - a server will typically keep a pollset containing all connected channels,</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> so that it can find new calls to service</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> - a completion queue might keep a pollset with an entry for each transport</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> that is servicing a call that it&#39;s tracking */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifdef GPR_POSIX_SOCKET</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="pollset__posix_8h.html">src/core/iomgr/pollset_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#ifdef GPR_WIN32</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="pollset__windows_8h.html">src/core/iomgr/pollset_windows.h</a>&quot;</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b">grpc_pollset_init</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset_8h.html#a85616767facacdf95dfc4fe564352e87">grpc_pollset_shutdown</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">void</span> (*shutdown_done)(<span class="keywordtype">void</span> *<a class="code" href="structarg.html">arg</a>),</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">void</span> *shutdown_done_arg);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f">grpc_pollset_destroy</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* Do some work on a pollset.</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> May involve invoking asynchronous callbacks, or actually polling file</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> descriptors.</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> Requires GRPC_POLLSET_MU(pollset) locked.</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> May unlock GRPC_POLLSET_MU(pollset) during its execution.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> </span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> Returns true if some work has been done, and false if the deadline</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> got attained. */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">int</span> <a class="code" href="pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd">grpc_pollset_work</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/* Break one polling thread out of polling work for this pollset.</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> Requires GRPC_POLLSET_MU(pollset) locked. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset_8h.html#a395a3872723c67d877799cdc79ae7f48">grpc_pollset_kick</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="pollset__posix_8h_html"><div class="ttname"><a href="pollset__posix_8h.html">pollset_posix.h</a></div></div>
+<div class="ttc" id="pollset_8h_html_a8e69570c350199ba682b6f673a63e8dd"><div class="ttname"><a href="pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd">grpc_pollset_work</a></div><div class="ttdeci">int grpc_pollset_work(grpc_pollset *pollset, gpr_timespec deadline)</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="pollset_8h_html_abea9f486d280910a6e6aecbe6ca5f40b"><div class="ttname"><a href="pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b">grpc_pollset_init</a></div><div class="ttdeci">void grpc_pollset_init(grpc_pollset *pollset)</div></div>
+<div class="ttc" id="pollset_8h_html_a66c5028ee13b23f2d3c4db177f5c7d0f"><div class="ttname"><a href="pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f">grpc_pollset_destroy</a></div><div class="ttdeci">void grpc_pollset_destroy(grpc_pollset *pollset)</div></div>
+<div class="ttc" id="pollset_8h_html_a85616767facacdf95dfc4fe564352e87"><div class="ttname"><a href="pollset_8h.html#a85616767facacdf95dfc4fe564352e87">grpc_pollset_shutdown</a></div><div class="ttdeci">void grpc_pollset_shutdown(grpc_pollset *pollset, void(*shutdown_done)(void *arg), void *shutdown_done_arg)</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="pollset_8h_html_a395a3872723c67d877799cdc79ae7f48"><div class="ttname"><a href="pollset_8h.html#a395a3872723c67d877799cdc79ae7f48">grpc_pollset_kick</a></div><div class="ttdeci">void grpc_pollset_kick(grpc_pollset *pollset)</div></div>
+<div class="ttc" id="pollset__windows_8h_html"><div class="ttname"><a href="pollset__windows_8h.html">pollset_windows.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset__kick__posix_8c.html b/doc/ref/core.internal/html/pollset__kick__posix_8c.html
new file mode 100644
index 0000000000..14c570a415
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__kick__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_kick_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_kick_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__kick__posix_8h.html b/doc/ref/core.internal/html/pollset__kick__posix_8h.html
new file mode 100644
index 0000000000..cad8770ab5
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__kick__posix_8h.html
@@ -0,0 +1,357 @@
+<!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: src/core/iomgr/pollset_kick_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">pollset_kick_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="wakeup__fd__posix_8h_source.html">src/core/iomgr/wakeup_fd_posix.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+</div>
+<p><a href="pollset__kick__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a595cfb6b4cc1f48dbd015821541df959"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a595cfb6b4cc1f48dbd015821541df959">GRPC_POLLSET_KICK_GET_FD</a>(kick_fd_info)&#160;&#160;&#160;<a class="el" href="wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff">GRPC_WAKEUP_FD_GET_READ_FD</a>(&amp;(kick_fd_info)-&gt;wakeup_fd)</td></tr>
+<tr class="separator:a595cfb6b4cc1f48dbd015821541df959"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ac232fa28f35b012cc710033c351ee3d5"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5">grpc_kick_fd_info</a></td></tr>
+<tr class="separator:ac232fa28f35b012cc710033c351ee3d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18aca8f917c9aae06f6f84b8700afca1"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1">grpc_pollset_kick_state</a></td></tr>
+<tr class="separator:a18aca8f917c9aae06f6f84b8700afca1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac0d8bb7edaf2ad8346745db01206c5ed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed">grpc_pollset_kick_global_init</a> (void)</td></tr>
+<tr class="separator:ac0d8bb7edaf2ad8346745db01206c5ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59b8b056ec1ae7f0692bf26bf2a3d737"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737">grpc_pollset_kick_global_destroy</a> (void)</td></tr>
+<tr class="separator:a59b8b056ec1ae7f0692bf26bf2a3d737"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12982076ee83468851ab4a96502dd32c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c">grpc_pollset_kick_init</a> (<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state)</td></tr>
+<tr class="separator:a12982076ee83468851ab4a96502dd32c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adaa67c8f786eed2df0402c6b37f02936"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936">grpc_pollset_kick_destroy</a> (<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state)</td></tr>
+<tr class="separator:adaa67c8f786eed2df0402c6b37f02936"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49bdece86b13c8d5785b32fae1609e08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08">grpc_pollset_kick_global_init_fallback_fd</a> (void)</td></tr>
+<tr class="separator:a49bdece86b13c8d5785b32fae1609e08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b29bc457705925de07822e6d6d1b91b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b">grpc_pollset_kick_pre_poll</a> (<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state)</td></tr>
+<tr class="separator:a6b29bc457705925de07822e6d6d1b91b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99be47b9ffb41145d43f9c7ca90d4bc3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3">grpc_pollset_kick_consume</a> (<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state, <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:a99be47b9ffb41145d43f9c7ca90d4bc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60bfabb6f5d6c3879607f5fc7634e037"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037">grpc_pollset_kick_post_poll</a> (<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state, <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:a60bfabb6f5d6c3879607f5fc7634e037"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2eecbc8ba9bc911b87e4061c7786c849"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849">grpc_pollset_kick_kick</a> (<a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state)</td></tr>
+<tr class="separator:a2eecbc8ba9bc911b87e4061c7786c849"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a595cfb6b4cc1f48dbd015821541df959"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_POLLSET_KICK_GET_FD</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">kick_fd_info</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff">GRPC_WAKEUP_FD_GET_READ_FD</a>(&amp;(kick_fd_info)-&gt;wakeup_fd)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ac232fa28f35b012cc710033c351ee3d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a18aca8f917c9aae06f6f84b8700afca1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> <a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a99be47b9ffb41145d43f9c7ca90d4bc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_consume </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *&#160;</td>
+ <td class="paramname"><em>kick_state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *&#160;</td>
+ <td class="paramname"><em>fd_info</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adaa67c8f786eed2df0402c6b37f02936"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *&#160;</td>
+ <td class="paramname"><em>kick_state</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a59b8b056ec1ae7f0692bf26bf2a3d737"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_global_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0d8bb7edaf2ad8346745db01206c5ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_global_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a49bdece86b13c8d5785b32fae1609e08"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_global_init_fallback_fd </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12982076ee83468851ab4a96502dd32c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *&#160;</td>
+ <td class="paramname"><em>kick_state</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2eecbc8ba9bc911b87e4061c7786c849"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_kick </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *&#160;</td>
+ <td class="paramname"><em>kick_state</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a60bfabb6f5d6c3879607f5fc7634e037"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_kick_post_poll </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *&#160;</td>
+ <td class="paramname"><em>kick_state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *&#160;</td>
+ <td class="paramname"><em>fd_info</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b29bc457705925de07822e6d6d1b91b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a>* grpc_pollset_kick_pre_poll </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *&#160;</td>
+ <td class="paramname"><em>kick_state</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset__kick__posix_8h_source.html b/doc/ref/core.internal/html/pollset__kick__posix_8h_source.html
new file mode 100644
index 0000000000..78297414a0
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__kick__posix_8h_source.html
@@ -0,0 +1,215 @@
+<!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: src/core/iomgr/pollset_kick_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_kick_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset__kick__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_KICK_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_KICK_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wakeup__fd__posix_8h.html">src/core/iomgr/wakeup_fd_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* pollset kicking allows breaking a thread out of polling work for</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> a given pollset.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> writing a byte to a pipe is used as a posix-ly portable base</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> mechanism, and eventfds are utilized on Linux for better performance. */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__kick__fd__info.html"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479"> 46</a></span>&#160; <a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> <a class="code" href="structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479">wakeup_fd</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="comment">/* used for polling list and free list */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f"> 48</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *<a class="code" href="structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f">next</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* only used when polling */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44"> 50</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *<a class="code" href="structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44">prev</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5">grpc_kick_fd_info</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__pollset__kick__state.html"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a"> 54</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a">mu</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8"> 55</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8">kicked</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772"> 56</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> <a class="code" href="structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772">fd_list</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;} <a class="code" href="pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1">grpc_pollset_kick_state</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="pollset__kick__posix_8h.html#a595cfb6b4cc1f48dbd015821541df959"> 59</a></span>&#160;<span class="preprocessor">#define GRPC_POLLSET_KICK_GET_FD(kick_fd_info) \</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"> GRPC_WAKEUP_FD_GET_READ_FD(&amp;(kick_fd_info)-&gt;wakeup_fd)</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment">/* This is an abstraction around the typical pipe mechanism for waking up a</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> thread sitting in a poll() style call. */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed">grpc_pollset_kick_global_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737">grpc_pollset_kick_global_destroy</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c">grpc_pollset_kick_init</a>(<a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936">grpc_pollset_kick_destroy</a>(<a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/* Guarantees a pure posix implementation rather than a specialized one, if</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> * applicable. Intended for testing. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08">grpc_pollset_kick_global_init_fallback_fd</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">/* Must be called before entering poll(). If return value is NULL, this consumed</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> an existing kick. Otherwise the return value is an FD to add to the poll set.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *<a class="code" href="pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b">grpc_pollset_kick_pre_poll</a>(</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* Consume an existing kick. Must be called after poll returns that the fd was</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> readable, and before calling kick_post_poll. */</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3">grpc_pollset_kick_consume</a>(<a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* Must be called after pre_poll, and after consume if applicable */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037">grpc_pollset_kick_post_poll</a>(<a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state,</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Actually kick */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849">grpc_pollset_kick_kick</a>(<a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> *kick_state);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_KICK_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__pollset__kick__state_html_ad193718d72e6ad4fcc9887f0cbba848a"><div class="ttname"><a href="structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a">grpc_pollset_kick_state::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:54</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__info_html"><div class="ttname"><a href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a></div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:83</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a60bfabb6f5d6c3879607f5fc7634e037"><div class="ttname"><a href="pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037">grpc_pollset_kick_post_poll</a></div><div class="ttdeci">void grpc_pollset_kick_post_poll(grpc_pollset_kick_state *kick_state, grpc_kick_fd_info *fd_info)</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a18aca8f917c9aae06f6f84b8700afca1"><div class="ttname"><a href="pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1">grpc_pollset_kick_state</a></div><div class="ttdeci">struct grpc_pollset_kick_state grpc_pollset_kick_state</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html"><div class="ttname"><a href="wakeup__fd__posix_8h.html">wakeup_fd_posix.h</a></div></div>
+<div class="ttc" id="structgrpc__kick__fd__info_html_a1de795478812bbce339df7a84b315479"><div class="ttname"><a href="structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479">grpc_kick_fd_info::wakeup_fd</a></div><div class="ttdeci">grpc_wakeup_fd_info wakeup_fd</div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:46</div></div>
+<div class="ttc" id="structgrpc__pollset__kick__state_html_ac70b7fecfa3a7afa9f9df060ed1c7772"><div class="ttname"><a href="structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772">grpc_pollset_kick_state::fd_list</a></div><div class="ttdeci">struct grpc_kick_fd_info fd_list</div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:56</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_ac0d8bb7edaf2ad8346745db01206c5ed"><div class="ttname"><a href="pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed">grpc_pollset_kick_global_init</a></div><div class="ttdeci">void grpc_pollset_kick_global_init(void)</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a12982076ee83468851ab4a96502dd32c"><div class="ttname"><a href="pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c">grpc_pollset_kick_init</a></div><div class="ttdeci">void grpc_pollset_kick_init(grpc_pollset_kick_state *kick_state)</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a59b8b056ec1ae7f0692bf26bf2a3d737"><div class="ttname"><a href="pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737">grpc_pollset_kick_global_destroy</a></div><div class="ttdeci">void grpc_pollset_kick_global_destroy(void)</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a2eecbc8ba9bc911b87e4061c7786c849"><div class="ttname"><a href="pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849">grpc_pollset_kick_kick</a></div><div class="ttdeci">void grpc_pollset_kick_kick(grpc_pollset_kick_state *kick_state)</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a99be47b9ffb41145d43f9c7ca90d4bc3"><div class="ttname"><a href="pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3">grpc_pollset_kick_consume</a></div><div class="ttdeci">void grpc_pollset_kick_consume(grpc_pollset_kick_state *kick_state, grpc_kick_fd_info *fd_info)</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a6b29bc457705925de07822e6d6d1b91b"><div class="ttname"><a href="pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b">grpc_pollset_kick_pre_poll</a></div><div class="ttdeci">grpc_kick_fd_info * grpc_pollset_kick_pre_poll(grpc_pollset_kick_state *kick_state)</div></div>
+<div class="ttc" id="structgrpc__pollset__kick__state_html_a91f72c6a22381c48f6994830a460c7b8"><div class="ttname"><a href="structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8">grpc_pollset_kick_state::kicked</a></div><div class="ttdeci">int kicked</div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:55</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_ac232fa28f35b012cc710033c351ee3d5"><div class="ttname"><a href="pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5">grpc_kick_fd_info</a></div><div class="ttdeci">struct grpc_kick_fd_info grpc_kick_fd_info</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset__kick__state_html"><div class="ttname"><a href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a></div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:53</div></div>
+<div class="ttc" id="structgrpc__kick__fd__info_html_a6612c537977b6a493b0605fd8e22f05f"><div class="ttname"><a href="structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f">grpc_kick_fd_info::next</a></div><div class="ttdeci">struct grpc_kick_fd_info * next</div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:48</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_adaa67c8f786eed2df0402c6b37f02936"><div class="ttname"><a href="pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936">grpc_pollset_kick_destroy</a></div><div class="ttdeci">void grpc_pollset_kick_destroy(grpc_pollset_kick_state *kick_state)</div></div>
+<div class="ttc" id="structgrpc__kick__fd__info_html_ad6a6395fcea0806c6b02846a2ec1ca44"><div class="ttname"><a href="structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44">grpc_kick_fd_info::prev</a></div><div class="ttdeci">struct grpc_kick_fd_info * prev</div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:50</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html_a49bdece86b13c8d5785b32fae1609e08"><div class="ttname"><a href="pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08">grpc_pollset_kick_global_init_fallback_fd</a></div><div class="ttdeci">void grpc_pollset_kick_global_init_fallback_fd(void)</div></div>
+<div class="ttc" id="structgrpc__kick__fd__info_html"><div class="ttname"><a href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a></div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:45</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset__multipoller__with__epoll_8c.html b/doc/ref/core.internal/html/pollset__multipoller__with__epoll_8c.html
new file mode 100644
index 0000000000..c5509588ef
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__multipoller__with__epoll_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_multipoller_with_epoll.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_multipoller_with_epoll.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__multipoller__with__poll__posix_8c.html b/doc/ref/core.internal/html/pollset__multipoller__with__poll__posix_8c.html
new file mode 100644
index 0000000000..3f72478be3
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__multipoller__with__poll__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_multipoller_with_poll_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_multipoller_with_poll_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__posix_8c.html b/doc/ref/core.internal/html/pollset__posix_8c.html
new file mode 100644
index 0000000000..154ca821c7
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__posix_8h.html b/doc/ref/core.internal/html/pollset__posix_8h.html
new file mode 100644
index 0000000000..4e5b32723b
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__posix_8h.html
@@ -0,0 +1,379 @@
+<!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: src/core/iomgr/pollset_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">pollset_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="pollset__kick__posix_8h_source.html">src/core/iomgr/pollset_kick_posix.h</a>&quot;</code><br/>
+</div>
+<p><a href="pollset__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a717ebde9fd8a72d07e06d2255ee7b50f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f">GRPC_POLLSET_MU</a>(pollset)&#160;&#160;&#160;(&amp;(pollset)-&gt;mu)</td></tr>
+<tr class="separator:a717ebde9fd8a72d07e06d2255ee7b50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a93b9c2aef29b7ffe733779b8d4c32db1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a93b9c2aef29b7ffe733779b8d4c32db1">grpc_pollset_vtable</a></td></tr>
+<tr class="separator:a93b9c2aef29b7ffe733779b8d4c32db1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3651117ed8881e20c179f0c677c622ad"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__pollset.html">grpc_pollset</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad">grpc_pollset</a></td></tr>
+<tr class="separator:a3651117ed8881e20c179f0c677c622ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b5fd5fc969bf6e0c45e5f49b1827bbd"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">grpc_platform_become_multipoller_type</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> **fds, size_t fd_count)</td></tr>
+<tr class="separator:a9b5fd5fc969bf6e0c45e5f49b1827bbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:add4b6bbce2371decdb574d68b15a81e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8">grpc_pollset_add_fd</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:add4b6bbce2371decdb574d68b15a81e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84e9698eaa1ae735fc13d9faf7e073ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea">grpc_pollset_del_fd</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:a84e9698eaa1ae735fc13d9faf7e073ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dcd57a12b81e4369bc4c6957ff3837e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e">grpc_pollset_force_kick</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a1dcd57a12b81e4369bc4c6957ff3837e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af74c66d9afaf90a2134f209dfb41f91b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b">grpc_kick_read_fd</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *p)</td></tr>
+<tr class="separator:af74c66d9afaf90a2134f209dfb41f91b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a36baf579c30c8dba9a6c68f1f9dd979c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c">grpc_kick_drain</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *p)</td></tr>
+<tr class="separator:a36baf579c30c8dba9a6c68f1f9dd979c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab8e35054e04edb42c1e665ef6a896fc0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0">grpc_poll_deadline_to_millis_timeout</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now)</td></tr>
+<tr class="separator:ab8e35054e04edb42c1e665ef6a896fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae03dc91376fc7bfb279e74a955782102"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102">grpc_poll_become_multipoller</a> (<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> **fds, size_t fd_count)</td></tr>
+<tr class="separator:ae03dc91376fc7bfb279e74a955782102"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:aabee8316b743b1cc1673093989a7104a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">grpc_platform_become_multipoller_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a">grpc_platform_become_multipoller</a></td></tr>
+<tr class="separator:aabee8316b743b1cc1673093989a7104a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a717ebde9fd8a72d07e06d2255ee7b50f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_POLLSET_MU</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">pollset</td><td>)</td>
+ <td>&#160;&#160;&#160;(&amp;(pollset)-&gt;mu)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a9b5fd5fc969bf6e0c45e5f49b1827bbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_platform_become_multipoller_type)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> **fds, size_t fd_count)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3651117ed8881e20c179f0c677c622ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> <a class="el" href="structgrpc__pollset.html">grpc_pollset</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a93b9c2aef29b7ffe733779b8d4c32db1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a> <a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a36baf579c30c8dba9a6c68f1f9dd979c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_kick_drain </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af74c66d9afaf90a2134f209dfb41f91b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_kick_read_fd </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae03dc91376fc7bfb279e74a955782102"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_poll_become_multipoller </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> **&#160;</td>
+ <td class="paramname"><em>fds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>fd_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab8e35054e04edb42c1e665ef6a896fc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_poll_deadline_to_millis_timeout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>now</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add4b6bbce2371decdb574d68b15a81e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_add_fd </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a84e9698eaa1ae735fc13d9faf7e073ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_del_fd </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1dcd57a12b81e4369bc4c6957ff3837e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_force_kick </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="aabee8316b743b1cc1673093989a7104a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">grpc_platform_become_multipoller_type</a> grpc_platform_become_multipoller</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset__posix_8h_source.html b/doc/ref/core.internal/html/pollset__posix_8h_source.html
new file mode 100644
index 0000000000..3ee5676766
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__posix_8h_source.html
@@ -0,0 +1,254 @@
+<!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: src/core/iomgr/pollset_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset__kick__posix_8h.html">src/core/iomgr/pollset_kick_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="pollset__posix_8h.html#a93b9c2aef29b7ffe733779b8d4c32db1"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a> <a class="code" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* forward declare only in this file to avoid leaking impl details via</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> pollset.h; real users of grpc_fd should always include &#39;fd_posix.h&#39; and not</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> use the struct tag */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__pollset.html">grpc_pollset</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* pollsets under posix can mutate representation as fds are added and</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> removed.</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> For example, we may choose a poll() based implementation on linux for</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> few fds, and an epoll() based implementation for many fds */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887"> 53</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a> *<a class="code" href="structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887">vtable</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924"> 54</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">mu</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f"> 55</a></span>&#160; <a class="code" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> <a class="code" href="structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f">kick_state</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1"> 56</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1">counter</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2"> 57</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2">in_flight_cbs</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c"> 58</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">shutting_down</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53"> 59</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53">called_shutdown</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7"> 60</a></span>&#160; void (*<a class="code" href="structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7">shutdown_done_cb</a>)(<span class="keywordtype">void</span> *<a class="code" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a>);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d"> 61</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d">shutdown_done_arg</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc"> 63</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc">fd</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009"> 64</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009">ptr</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; } <a class="code" href="structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621">data</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <a class="code" href="pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad">grpc_pollset</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html"> 68</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a> {</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5"> 69</a></span>&#160; void (*<a class="code" href="structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5">add_fd</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordtype">int</span> and_unlock_pollset);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60"> 71</a></span>&#160; void (*<a class="code" href="structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60">del_fd</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">int</span> and_unlock_pollset);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f"> 73</a></span>&#160; void (*<a class="code" href="structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f">maybe_work</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> now, <span class="keywordtype">int</span> allow_synchronous_callback);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc"> 75</a></span>&#160; void (*<a class="code" href="structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc">kick</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8"> 76</a></span>&#160; void (*<a class="code" href="structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8">finish_shutdown</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815"> 77</a></span>&#160; void (*<a class="code" href="structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815">destroy</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;};</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="pollset__posix_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f"> 80</a></span>&#160;<span class="preprocessor">#define GRPC_POLLSET_MU(pollset) (&amp;(pollset)-&gt;mu)</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment">/* Add an fd to a pollset */</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8">grpc_pollset_add_fd</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <span class="keyword">struct</span> <a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">/* Force remove an fd from a pollset (normally they are removed on the next</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> poll after an fd is orphaned) */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea">grpc_pollset_del_fd</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <span class="keyword">struct</span> <a class="code" href="structgrpc__fd.html">grpc_fd</a> *<a class="code" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a>);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Force any current pollers to break polling: it&#39;s the callers responsibility</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> to ensure that the pollset indeed needs to be kicked - no verification that</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> the pollset is actually performing polling work is done. At worst this will</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> result in spurious wakeups if performed at the wrong moment.</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> Does not touch pollset-&gt;mu. */</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e">grpc_pollset_force_kick</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment">/* Returns the fd to listen on for kicks */</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keywordtype">int</span> <a class="code" href="pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b">grpc_kick_read_fd</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *p);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment">/* Call after polling has been kicked to leave the kicked state */</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c">grpc_kick_drain</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *p);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment">/* Convert a timespec to milliseconds:</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> - very small or negative poll times are clamped to zero to do a </span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> non-blocking poll (which becomes spin polling)</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> - other small values are rounded up to one millisecond</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> - longer than a millisecond polls are rounded up to the next nearest </span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> millisecond to avoid spinning</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> - infinite timeouts are converted to -1 */</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="keywordtype">int</span> <a class="code" href="pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0">grpc_poll_deadline_to_millis_timeout</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> now);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">/* turn a pollset into a multipoller: platform specific */</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd"> 109</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">grpc_platform_become_multipoller_type</a>)(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__fd.html">grpc_fd</a> **fds,</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">size_t</span> fd_count);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keyword">extern</span> <a class="code" href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">grpc_platform_become_multipoller_type</a> <a class="code" href="pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a">grpc_platform_become_multipoller</a>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102">grpc_poll_become_multipoller</a>(<a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <span class="keyword">struct</span> <a class="code" href="structgrpc__fd.html">grpc_fd</a> **fds,</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">size_t</span> fd_count);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="pollset__posix_8h_html_aabee8316b743b1cc1673093989a7104a"><div class="ttname"><a href="pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a">grpc_platform_become_multipoller</a></div><div class="ttdeci">grpc_platform_become_multipoller_type grpc_platform_become_multipoller</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html_a3f8fb0011ce6d296d0ee7e5c3e650815"><div class="ttname"><a href="structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815">grpc_pollset_vtable::destroy</a></div><div class="ttdeci">void(* destroy)(grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:77</div></div>
+<div class="ttc" id="structgrpc__fd_html_a876ab7207d777a4f8b436a3b5c80fd32"><div class="ttname"><a href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">grpc_fd::fd</a></div><div class="ttdeci">int fd</div><div class="ttdef"><b>Definition:</b> fd_posix.h:53</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a80c508a4baf0ccb6e817801b0d981009"><div class="ttname"><a href="structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009">grpc_pollset::ptr</a></div><div class="ttdeci">void * ptr</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:64</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html_aaacc347c66e715b18b3c3b6f393e9b60"><div class="ttname"><a href="structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60">grpc_pollset_vtable::del_fd</a></div><div class="ttdeci">void(* del_fd)(grpc_pollset *pollset, struct grpc_fd *fd, int and_unlock_pollset)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:71</div></div>
+<div class="ttc" id="pollset__posix_8h_html_a9b5fd5fc969bf6e0c45e5f49b1827bbd"><div class="ttname"><a href="pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd">grpc_platform_become_multipoller_type</a></div><div class="ttdeci">void(* grpc_platform_become_multipoller_type)(grpc_pollset *pollset, struct grpc_fd **fds, size_t fd_count)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:109</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a1e1342a1a69d423b41d131276c782621"><div class="ttname"><a href="structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621">grpc_pollset::data</a></div><div class="ttdeci">union grpc_pollset::@13 data</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a27a9797370fe938210d3943ab7c3863d"><div class="ttname"><a href="structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d">grpc_pollset::shutdown_done_arg</a></div><div class="ttdeci">void * shutdown_done_arg</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:61</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html"><div class="ttname"><a href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:68</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a9166a13045968cd9d384d13dfca85afc"><div class="ttname"><a href="structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc">grpc_pollset::fd</a></div><div class="ttdeci">int fd</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:63</div></div>
+<div class="ttc" id="structgrpc__pollset_html_ad0ca06526200d8e29888467458f4a924"><div class="ttname"><a href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">grpc_pollset::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:54</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="pollset__posix_8h_html_a3651117ed8881e20c179f0c677c622ad"><div class="ttname"><a href="pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad">grpc_pollset</a></div><div class="ttdeci">struct grpc_pollset grpc_pollset</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html_ae8ef1cb18ceb55b32b383c62c63929e8"><div class="ttname"><a href="structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8">grpc_pollset_vtable::finish_shutdown</a></div><div class="ttdeci">void(* finish_shutdown)(grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:76</div></div>
+<div class="ttc" id="pollset__posix_8h_html_a1dcd57a12b81e4369bc4c6957ff3837e"><div class="ttname"><a href="pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e">grpc_pollset_force_kick</a></div><div class="ttdeci">void grpc_pollset_force_kick(grpc_pollset *pollset)</div></div>
+<div class="ttc" id="pollset__kick__posix_8h_html"><div class="ttname"><a href="pollset__kick__posix_8h.html">pollset_kick_posix.h</a></div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html_a193dc080ef27a7ba5cef64f99f89cc3f"><div class="ttname"><a href="structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f">grpc_pollset_vtable::maybe_work</a></div><div class="ttdeci">void(* maybe_work)(grpc_pollset *pollset, gpr_timespec deadline, gpr_timespec now, int allow_synchronous_callback)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:73</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a319191f59788a09fddad222cd8e1d7b1"><div class="ttname"><a href="structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1">grpc_pollset::counter</a></div><div class="ttdeci">int counter</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:56</div></div>
+<div class="ttc" id="pollset__posix_8h_html_af74c66d9afaf90a2134f209dfb41f91b"><div class="ttname"><a href="pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b">grpc_kick_read_fd</a></div><div class="ttdeci">int grpc_kick_read_fd(grpc_pollset *p)</div></div>
+<div class="ttc" id="cmdline_8c_html_af240efb36795b416de0779ad5d5159e4"><div class="ttname"><a href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a></div><div class="ttdeci">struct arg arg</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="pollset__posix_8h_html_ae03dc91376fc7bfb279e74a955782102"><div class="ttname"><a href="pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102">grpc_poll_become_multipoller</a></div><div class="ttdeci">void grpc_poll_become_multipoller(grpc_pollset *pollset, struct grpc_fd **fds, size_t fd_count)</div></div>
+<div class="ttc" id="structgrpc__pollset_html_ae7b8c9f2621b64a15b02d6beeb234a0f"><div class="ttname"><a href="structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f">grpc_pollset::kick_state</a></div><div class="ttdeci">grpc_pollset_kick_state kick_state</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:55</div></div>
+<div class="ttc" id="pollset__posix_8h_html_add4b6bbce2371decdb574d68b15a81e8"><div class="ttname"><a href="pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8">grpc_pollset_add_fd</a></div><div class="ttdeci">void grpc_pollset_add_fd(grpc_pollset *pollset, struct grpc_fd *fd)</div></div>
+<div class="ttc" id="structgrpc__pollset__kick__state_html"><div class="ttname"><a href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a></div><div class="ttdef"><b>Definition:</b> pollset_kick_posix.h:53</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a890a0c1aa2061769dcd141cf97f83c1c"><div class="ttname"><a href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">grpc_pollset::shutting_down</a></div><div class="ttdeci">int shutting_down</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:58</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a08b13b08670fb33a139ff1d27ea115b7"><div class="ttname"><a href="structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7">grpc_pollset::shutdown_done_cb</a></div><div class="ttdeci">void(* shutdown_done_cb)(void *arg)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:60</div></div>
+<div class="ttc" id="pollset__posix_8h_html_ab8e35054e04edb42c1e665ef6a896fc0"><div class="ttname"><a href="pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0">grpc_poll_deadline_to_millis_timeout</a></div><div class="ttdeci">int grpc_poll_deadline_to_millis_timeout(gpr_timespec deadline, gpr_timespec now)</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a835a6bc3ba9adc3076831877fc1e4ca2"><div class="ttname"><a href="structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2">grpc_pollset::in_flight_cbs</a></div><div class="ttdeci">int in_flight_cbs</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:57</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html_a72b5c1fe9036b0e1cec8df3696a7aed5"><div class="ttname"><a href="structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5">grpc_pollset_vtable::add_fd</a></div><div class="ttdeci">void(* add_fd)(grpc_pollset *pollset, struct grpc_fd *fd, int and_unlock_pollset)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:69</div></div>
+<div class="ttc" id="pollset__posix_8h_html_a84e9698eaa1ae735fc13d9faf7e073ea"><div class="ttname"><a href="pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea">grpc_pollset_del_fd</a></div><div class="ttdeci">void grpc_pollset_del_fd(grpc_pollset *pollset, struct grpc_fd *fd)</div></div>
+<div class="ttc" id="structgrpc__pollset_html_a0a3106a5e75b7079d89b8443ac8cb887"><div class="ttname"><a href="structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887">grpc_pollset::vtable</a></div><div class="ttdeci">const grpc_pollset_vtable * vtable</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:53</div></div>
+<div class="ttc" id="structgrpc__pollset_html_af0ba35d346bebf65837c9cc1980aab53"><div class="ttname"><a href="structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53">grpc_pollset::called_shutdown</a></div><div class="ttdeci">int called_shutdown</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:59</div></div>
+<div class="ttc" id="pollset__posix_8h_html_a36baf579c30c8dba9a6c68f1f9dd979c"><div class="ttname"><a href="pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c">grpc_kick_drain</a></div><div class="ttdeci">void grpc_kick_drain(grpc_pollset *p)</div></div>
+<div class="ttc" id="structgrpc__fd_html"><div class="ttname"><a href="structgrpc__fd.html">grpc_fd</a></div><div class="ttdef"><b>Definition:</b> fd_posix.h:52</div></div>
+<div class="ttc" id="structgrpc__pollset__vtable_html_ae03e13800e000795a512fa4e308efdbc"><div class="ttname"><a href="structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc">grpc_pollset_vtable::kick</a></div><div class="ttdeci">void(* kick)(grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:75</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset__set_8h.html b/doc/ref/core.internal/html/pollset__set_8h.html
new file mode 100644
index 0000000000..3f06d92c63
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set_8h.html
@@ -0,0 +1,201 @@
+<!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: src/core/iomgr/pollset_set.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">pollset_set.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+</div>
+<p><a href="pollset__set_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a215962a68f3a3a344993f6da6a5f486c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c">grpc_pollset_set_init</a> (<a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set)</td></tr>
+<tr class="separator:a215962a68f3a3a344993f6da6a5f486c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4b47eef823139b714d759e49495fafd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set_8h.html#af4b47eef823139b714d759e49495fafd">grpc_pollset_set_destroy</a> (<a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set)</td></tr>
+<tr class="separator:af4b47eef823139b714d759e49495fafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32cce61c048d3f4ccd8a2f89ccc6bdd2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2">grpc_pollset_set_add_pollset</a> (<a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a32cce61c048d3f4ccd8a2f89ccc6bdd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa17d44c467a104db9bb5150d815212c0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0">grpc_pollset_set_del_pollset</a> (<a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:aa17d44c467a104db9bb5150d815212c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a32cce61c048d3f4ccd8a2f89ccc6bdd2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_set_add_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa17d44c467a104db9bb5150d815212c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_set_del_pollset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af4b47eef823139b714d759e49495fafd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_set_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a215962a68f3a3a344993f6da6a5f486c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_set_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset__set_8h_source.html b/doc/ref/core.internal/html/pollset__set_8h_source.html
new file mode 100644
index 0000000000..1f860344a8
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set_8h_source.html
@@ -0,0 +1,167 @@
+<!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: src/core/iomgr/pollset_set.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_set.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset__set_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset_8h.html">src/core/iomgr/pollset.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* A grpc_pollset_set is a set of pollsets that are interested in an</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> action. Adding a pollset to a pollset_set automatically adds any</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> fd&#39;s (etc) that have been registered with the set_set to that pollset.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> Registering fd&#39;s automatically adds them to all current pollsets. */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#ifdef GPR_POSIX_SOCKET</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="pollset__set__posix_8h.html">src/core/iomgr/pollset_set_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#ifdef GPR_WIN32</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="pollset__set__windows_8h.html">src/core/iomgr/pollset_set_windows.h</a>&quot;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c">grpc_pollset_set_init</a>(<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__set_8h.html#af4b47eef823139b714d759e49495fafd">grpc_pollset_set_destroy</a>(<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2">grpc_pollset_set_add_pollset</a>(<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0">grpc_pollset_set_del_pollset</a>(<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="pollset__set_8h_html_a32cce61c048d3f4ccd8a2f89ccc6bdd2"><div class="ttname"><a href="pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2">grpc_pollset_set_add_pollset</a></div><div class="ttdeci">void grpc_pollset_set_add_pollset(grpc_pollset_set *pollset_set, grpc_pollset *pollset)</div></div>
+<div class="ttc" id="pollset_8h_html"><div class="ttname"><a href="pollset_8h.html">pollset.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="pollset__set_8h_html_aa17d44c467a104db9bb5150d815212c0"><div class="ttname"><a href="pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0">grpc_pollset_set_del_pollset</a></div><div class="ttdeci">void grpc_pollset_set_del_pollset(grpc_pollset_set *pollset_set, grpc_pollset *pollset)</div></div>
+<div class="ttc" id="pollset__set__posix_8h_html"><div class="ttname"><a href="pollset__set__posix_8h.html">pollset_set_posix.h</a></div></div>
+<div class="ttc" id="pollset__set__windows_8h_html"><div class="ttname"><a href="pollset__set__windows_8h.html">pollset_set_windows.h</a></div></div>
+<div class="ttc" id="pollset__set_8h_html_af4b47eef823139b714d759e49495fafd"><div class="ttname"><a href="pollset__set_8h.html#af4b47eef823139b714d759e49495fafd">grpc_pollset_set_destroy</a></div><div class="ttdeci">void grpc_pollset_set_destroy(grpc_pollset_set *pollset_set)</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="pollset__set_8h_html_a215962a68f3a3a344993f6da6a5f486c"><div class="ttname"><a href="pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c">grpc_pollset_set_init</a></div><div class="ttdeci">void grpc_pollset_set_init(grpc_pollset_set *pollset_set)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset__set__posix_8c.html b/doc/ref/core.internal/html/pollset__set__posix_8c.html
new file mode 100644
index 0000000000..44fa65c0bd
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_set_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_set_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__set__posix_8h.html b/doc/ref/core.internal/html/pollset__set__posix_8h.html
new file mode 100644
index 0000000000..4f3bb5556e
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set__posix_8h.html
@@ -0,0 +1,191 @@
+<!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: src/core/iomgr/pollset_set_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">pollset_set_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="fd__posix_8h_source.html">src/core/iomgr/fd_posix.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="pollset__posix_8h_source.html">src/core/iomgr/pollset_posix.h</a>&quot;</code><br/>
+</div>
+<p><a href="pollset__set__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5ad060e47c139ab007fe34b33fdf27d7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">grpc_pollset_set</a></td></tr>
+<tr class="separator:a5ad060e47c139ab007fe34b33fdf27d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4710efa6246cfb542fc4e6e19f6b480c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c">grpc_pollset_set_add_fd</a> (<a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set, <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:a4710efa6246cfb542fc4e6e19f6b480c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea5df4b32ccbd0fc718384f7f71b9414"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414">grpc_pollset_set_del_fd</a> (<a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set, <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd)</td></tr>
+<tr class="separator:aea5df4b32ccbd0fc718384f7f71b9414"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5ad060e47c139ab007fe34b33fdf27d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4710efa6246cfb542fc4e6e19f6b480c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_set_add_fd </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea5df4b32ccbd0fc718384f7f71b9414"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_pollset_set_del_fd </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>pollset_set</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset__set__posix_8h_source.html b/doc/ref/core.internal/html/pollset__set__posix_8h_source.html
new file mode 100644
index 0000000000..6f887c9baa
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set__posix_8h_source.html
@@ -0,0 +1,170 @@
+<!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: src/core/iomgr/pollset_set_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_set_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset__set__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="fd__posix_8h.html">src/core/iomgr/fd_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset__posix_8h.html">src/core/iomgr/pollset_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703"> 41</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703">mu</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9"> 43</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9">pollset_count</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7"> 44</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7">pollset_capacity</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb"> 45</a></span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> **<a class="code" href="structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb">pollsets</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6"> 47</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6">fd_count</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec"> 48</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec">fd_capacity</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6"> 49</a></span>&#160; <a class="code" href="structgrpc__fd.html">grpc_fd</a> **<a class="code" href="structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6">fds</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;} <a class="code" href="pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">grpc_pollset_set</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c">grpc_pollset_set_add_fd</a>(<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set, <a class="code" href="structgrpc__fd.html">grpc_fd</a> *fd);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keywordtype">void</span> <a class="code" href="pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414">grpc_pollset_set_del_fd</a>(<a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset_set, <a class="code" href="structgrpc__fd.html">grpc_fd</a> *fd);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_WINDOWS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="pollset__set__posix_8h_html_a5ad060e47c139ab007fe34b33fdf27d7"><div class="ttname"><a href="pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">grpc_pollset_set</a></div><div class="ttdeci">struct grpc_pollset_set grpc_pollset_set</div></div>
+<div class="ttc" id="pollset__posix_8h_html"><div class="ttname"><a href="pollset__posix_8h.html">pollset_posix.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_ad6dbbb51fb8ed94dcd176ae4304e38c9"><div class="ttname"><a href="structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9">grpc_pollset_set::pollset_count</a></div><div class="ttdeci">size_t pollset_count</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:43</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_a2bf7578ddd437f32e60a550a5bb9b5fb"><div class="ttname"><a href="structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb">grpc_pollset_set::pollsets</a></div><div class="ttdeci">grpc_pollset ** pollsets</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:45</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_a6e7926b30cf15773b300afb079474703"><div class="ttname"><a href="structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703">grpc_pollset_set::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:41</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_a4b003019253d6308d16b17dfeed86ef7"><div class="ttname"><a href="structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7">grpc_pollset_set::pollset_capacity</a></div><div class="ttdeci">size_t pollset_capacity</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:44</div></div>
+<div class="ttc" id="pollset__set__posix_8h_html_a4710efa6246cfb542fc4e6e19f6b480c"><div class="ttname"><a href="pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c">grpc_pollset_set_add_fd</a></div><div class="ttdeci">void grpc_pollset_set_add_fd(grpc_pollset_set *pollset_set, grpc_fd *fd)</div></div>
+<div class="ttc" id="fd__posix_8h_html"><div class="ttname"><a href="fd__posix_8h.html">fd_posix.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_aef4e4899c16b05d8d636c40491ef83ec"><div class="ttname"><a href="structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec">grpc_pollset_set::fd_capacity</a></div><div class="ttdeci">size_t fd_capacity</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_a9bf34bd7e4b92ba41543e220248684a6"><div class="ttname"><a href="structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6">grpc_pollset_set::fd_count</a></div><div class="ttdeci">size_t fd_count</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:47</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html_a8d9bebcd8ad102edde7c276a5bb36af6"><div class="ttname"><a href="structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6">grpc_pollset_set::fds</a></div><div class="ttdeci">grpc_fd ** fds</div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:49</div></div>
+<div class="ttc" id="pollset__set__posix_8h_html_aea5df4b32ccbd0fc718384f7f71b9414"><div class="ttname"><a href="pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414">grpc_pollset_set_del_fd</a></div><div class="ttdeci">void grpc_pollset_set_del_fd(grpc_pollset_set *pollset_set, grpc_fd *fd)</div></div>
+<div class="ttc" id="structgrpc__fd_html"><div class="ttname"><a href="structgrpc__fd.html">grpc_fd</a></div><div class="ttdef"><b>Definition:</b> fd_posix.h:52</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset__set__windows_8c.html b/doc/ref/core.internal/html/pollset__set__windows_8c.html
new file mode 100644
index 0000000000..9a535e6820
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_set_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_set_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__set__windows_8h.html b/doc/ref/core.internal/html/pollset__set__windows_8h.html
new file mode 100644
index 0000000000..b197a05cd1
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set__windows_8h.html
@@ -0,0 +1,128 @@
+<!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: src/core/iomgr/pollset_set_windows.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">pollset_set_windows.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="pollset__set__windows_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5ad060e47c139ab007fe34b33fdf27d7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">grpc_pollset_set</a></td></tr>
+<tr class="separator:a5ad060e47c139ab007fe34b33fdf27d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5ad060e47c139ab007fe34b33fdf27d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset__set__windows_8h_source.html b/doc/ref/core.internal/html/pollset__set__windows_8h_source.html
new file mode 100644
index 0000000000..677839ffef
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__set__windows_8h_source.html
@@ -0,0 +1,141 @@
+<!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: src/core/iomgr/pollset_set_windows.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_set_windows.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset__set__windows_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_WINDOWS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_WINDOWS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c"> 37</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> { <span class="keywordtype">void</span> *<a class="code" href="structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c">unused</a>; } <a class="code" href="pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">grpc_pollset_set</a>;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_WINDOWS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__pollset__set_html_a8487ef4097fd3d48514105c757e1b69c"><div class="ttname"><a href="structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c">grpc_pollset_set::unused</a></div><div class="ttdeci">void * unused</div><div class="ttdef"><b>Definition:</b> pollset_set_windows.h:37</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="pollset__set__windows_8h_html_a5ad060e47c139ab007fe34b33fdf27d7"><div class="ttname"><a href="pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7">grpc_pollset_set</a></div><div class="ttdeci">struct grpc_pollset_set grpc_pollset_set</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/pollset__windows_8c.html b/doc/ref/core.internal/html/pollset__windows_8c.html
new file mode 100644
index 0000000000..4ceb83dd55
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/pollset_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/pollset__windows_8h.html b/doc/ref/core.internal/html/pollset__windows_8h.html
new file mode 100644
index 0000000000..f22c9139aa
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__windows_8h.html
@@ -0,0 +1,153 @@
+<!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: src/core/iomgr/pollset_windows.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">pollset_windows.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="socket__windows_8h_source.html">src/core/iomgr/socket_windows.h</a>&quot;</code><br/>
+</div>
+<p><a href="pollset__windows_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a717ebde9fd8a72d07e06d2255ee7b50f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__windows_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f">GRPC_POLLSET_MU</a>(pollset)&#160;&#160;&#160;(&amp;(pollset)-&gt;mu)</td></tr>
+<tr class="separator:a717ebde9fd8a72d07e06d2255ee7b50f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a3651117ed8881e20c179f0c677c622ad"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__pollset.html">grpc_pollset</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad">grpc_pollset</a></td></tr>
+<tr class="separator:a3651117ed8881e20c179f0c677c622ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a717ebde9fd8a72d07e06d2255ee7b50f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_POLLSET_MU</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">pollset</td><td>)</td>
+ <td>&#160;&#160;&#160;(&amp;(pollset)-&gt;mu)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a3651117ed8881e20c179f0c677c622ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> <a class="el" href="structgrpc__pollset.html">grpc_pollset</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/pollset__windows_8h_source.html b/doc/ref/core.internal/html/pollset__windows_8h_source.html
new file mode 100644
index 0000000000..5a84fa681d
--- /dev/null
+++ b/doc/ref/core.internal/html/pollset__windows_8h_source.html
@@ -0,0 +1,161 @@
+<!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: src/core/iomgr/pollset_windows.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">pollset_windows.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="pollset__windows_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_POLLSET_WINDOWS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_WINDOWS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="socket__windows_8h.html">src/core/iomgr/socket_windows.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* There isn&#39;t really any such thing as a pollset under Windows, due to the</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> nature of the IO completion ports. A Windows &quot;pollset&quot; is merely a mutex</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> and a condition variable, used to synchronize with the IOCP. */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__pollset.html">grpc_pollset</a> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">mu</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844"> 47</a></span>&#160; <a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> <a class="code" href="structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844">cv</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">shutting_down</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;} <a class="code" href="pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad">grpc_pollset</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="pollset__windows_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f"> 51</a></span>&#160;<span class="preprocessor">#define GRPC_POLLSET_MU(pollset) (&amp;(pollset)-&gt;mu)</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_POLLSET_WINDOWS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="socket__windows_8h_html"><div class="ttname"><a href="socket__windows_8h.html">socket_windows.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset_html_aa329ffda9a09596eeb29b228b66db844"><div class="ttname"><a href="structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844">grpc_pollset::cv</a></div><div class="ttdeci">gpr_cv cv</div><div class="ttdef"><b>Definition:</b> pollset_windows.h:47</div></div>
+<div class="ttc" id="pollset__windows_8h_html_a3651117ed8881e20c179f0c677c622ad"><div class="ttname"><a href="pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad">grpc_pollset</a></div><div class="ttdeci">struct grpc_pollset grpc_pollset</div></div>
+<div class="ttc" id="structgrpc__pollset_html_ad0ca06526200d8e29888467458f4a924"><div class="ttname"><a href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">grpc_pollset::mu</a></div><div class="ttdeci">gpr_mu mu</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:54</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="sync__posix_8h_html_a1ad613e07180c0459cda9f3f6d881885"><div class="ttname"><a href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></div><div class="ttdeci">pthread_cond_t gpr_cv</div><div class="ttdef"><b>Definition:</b> sync_posix.h:42</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset_html_a890a0c1aa2061769dcd141cf97f83c1c"><div class="ttname"><a href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">grpc_pollset::shutting_down</a></div><div class="ttdeci">int shutting_down</div><div class="ttdef"><b>Definition:</b> pollset_posix.h:58</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/port__platform_8h.html b/doc/ref/core.internal/html/port__platform_8h.html
new file mode 100644
index 0000000000..05288bd72d
--- /dev/null
+++ b/doc/ref/core.internal/html/port__platform_8h.html
@@ -0,0 +1,352 @@
+<!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: include/grpc/support/port_platform.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">port_platform.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdint.h&gt;</code><br/>
+</div>
+<p><a href="port__platform_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a99f34e9b119908109486e91abedc933e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a99f34e9b119908109486e91abedc933e">GPR_PLATFORM_STRING</a>&#160;&#160;&#160;&quot;unknown&quot;</td></tr>
+<tr class="separator:a99f34e9b119908109486e91abedc933e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e8b19add0d8d0be9464f748be985576"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576">GPR_CACHELINE_SIZE_LOG</a>&#160;&#160;&#160;6</td></tr>
+<tr class="separator:a4e8b19add0d8d0be9464f748be985576"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9b7cc620233bbab0bc57cfbbe9519ad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#ad9b7cc620233bbab0bc57cfbbe9519ad">GPR_CACHELINE_SIZE</a>&#160;&#160;&#160;(1 &lt;&lt; <a class="el" href="port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576">GPR_CACHELINE_SIZE_LOG</a>)</td></tr>
+<tr class="separator:ad9b7cc620233bbab0bc57cfbbe9519ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaff7a6a2f0868f8b0648b74828ef0e4f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#aaff7a6a2f0868f8b0648b74828ef0e4f">GPR_INT64_MAX</a>&#160;&#160;&#160;(<a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>)(~(<a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>)0 &gt;&gt; 1)</td></tr>
+<tr class="separator:aaff7a6a2f0868f8b0648b74828ef0e4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53c934fa255faf3f8c4f028df105c8e2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2">GPR_MAX_ALIGNMENT</a>&#160;&#160;&#160;16</td></tr>
+<tr class="separator:a53c934fa255faf3f8c4f028df105c8e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef49047a3be38448a61332117b306686"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#aef49047a3be38448a61332117b306686">GRPC_MUST_USE_RESULT</a></td></tr>
+<tr class="separator:aef49047a3be38448a61332117b306686"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a6c41ac43b02ec37b1e07967a8706e709"><td class="memItemLeft" align="right" valign="top">typedef int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709">gpr_int16</a></td></tr>
+<tr class="separator:a6c41ac43b02ec37b1e07967a8706e709"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c9027ffa98b5efe1767efe79903c6b7"><td class="memItemLeft" align="right" valign="top">typedef int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a></td></tr>
+<tr class="separator:a7c9027ffa98b5efe1767efe79903c6b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71edab4bc3421f129764e5cb342f7181"><td class="memItemLeft" align="right" valign="top">typedef int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a></td></tr>
+<tr class="separator:a71edab4bc3421f129764e5cb342f7181"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><td class="memItemLeft" align="right" valign="top">typedef uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></td></tr>
+<tr class="separator:aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb7bceac4325643af77af51c7b6af371"><td class="memItemLeft" align="right" valign="top">typedef uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></td></tr>
+<tr class="separator:abb7bceac4325643af77af51c7b6af371"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6abd4df815a5498d1a04b5e691a74a9"><td class="memItemLeft" align="right" valign="top">typedef uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></td></tr>
+<tr class="separator:aa6abd4df815a5498d1a04b5e691a74a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a737bb95b7b58d90b4215602d36ed65b6"><td class="memItemLeft" align="right" valign="top">typedef uint64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a></td></tr>
+<tr class="separator:a737bb95b7b58d90b4215602d36ed65b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ecb17ae580dbde63199ac206a732139"><td class="memItemLeft" align="right" valign="top">typedef intmax_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139">gpr_intmax</a></td></tr>
+<tr class="separator:a3ecb17ae580dbde63199ac206a732139"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72d9d0d00bd576cfc8eab61aaea76db2"><td class="memItemLeft" align="right" valign="top">typedef intptr_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></td></tr>
+<tr class="separator:a72d9d0d00bd576cfc8eab61aaea76db2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abee5d576e1d284a7c8135df7d89af0f7"><td class="memItemLeft" align="right" valign="top">typedef uintmax_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">gpr_uintmax</a></td></tr>
+<tr class="separator:abee5d576e1d284a7c8135df7d89af0f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab302f9bfe3be467072bd8c79847636d4"><td class="memItemLeft" align="right" valign="top">typedef uintptr_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a></td></tr>
+<tr class="separator:ab302f9bfe3be467072bd8c79847636d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ad9b7cc620233bbab0bc57cfbbe9519ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_CACHELINE_SIZE&#160;&#160;&#160;(1 &lt;&lt; <a class="el" href="port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576">GPR_CACHELINE_SIZE_LOG</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e8b19add0d8d0be9464f748be985576"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_CACHELINE_SIZE_LOG&#160;&#160;&#160;6</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaff7a6a2f0868f8b0648b74828ef0e4f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_INT64_MAX&#160;&#160;&#160;(<a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>)(~(<a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>)0 &gt;&gt; 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a53c934fa255faf3f8c4f028df105c8e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_MAX_ALIGNMENT&#160;&#160;&#160;16</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a99f34e9b119908109486e91abedc933e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_PLATFORM_STRING&#160;&#160;&#160;&quot;unknown&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef49047a3be38448a61332117b306686"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MUST_USE_RESULT</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a6c41ac43b02ec37b1e07967a8706e709"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef int16_t <a class="el" href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709">gpr_int16</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7c9027ffa98b5efe1767efe79903c6b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef int32_t <a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a71edab4bc3421f129764e5cb342f7181"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef int64_t <a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ecb17ae580dbde63199ac206a732139"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef intmax_t <a class="el" href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139">gpr_intmax</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a72d9d0d00bd576cfc8eab61aaea76db2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef intptr_t <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb7bceac4325643af77af51c7b6af371"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef uint16_t <a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa6abd4df815a5498d1a04b5e691a74a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef uint32_t <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a737bb95b7b58d90b4215602d36ed65b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef uint64_t <a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeeb41e29e7c7a916a4e0fb6cfb9f92e0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef uint8_t <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abee5d576e1d284a7c8135df7d89af0f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef uintmax_t <a class="el" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">gpr_uintmax</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab302f9bfe3be467072bd8c79847636d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef uintptr_t <a class="el" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/port__platform_8h_source.html b/doc/ref/core.internal/html/port__platform_8h_source.html
new file mode 100644
index 0000000000..925b5af3d3
--- /dev/null
+++ b/doc/ref/core.internal/html/port__platform_8h_source.html
@@ -0,0 +1,441 @@
+<!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: include/grpc/support/port_platform.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">port_platform.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="port__platform_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_PORT_PLATFORM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_PORT_PLATFORM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Get windows.h included everywhere (we need it) */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#if defined(_WIN64) || defined(WIN64) || defined(_WIN32) || defined(WIN32)</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef WIN32_LEAN_AND_MEAN</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define WIN32_LEAN_AND_MEAN</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* WIN32_LEAN_AND_MEAN */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#ifndef NOMINMAX</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_NOMINMX_WAS_NOT_DEFINED</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define NOMINMAX</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* NOMINMAX */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#if defined(_WIN32_WINNT)</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if _WIN32_WINNT &lt; 0x0600</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef _WIN32_WINNT</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _WIN32_WINNT 0x0600</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* _WIN32_WINNT &lt; 0x0600 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* defined(_WIN32_WINNT) */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &lt;windows.h&gt;</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#ifdef GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef WIN32_LEAN_AND_MEAN</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#ifdef GRPC_NOMINMAX_WAS_NOT_DEFINED</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef GRPC_NOMINMAX_WAS_NOT_DEFINED</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef NOMINMAX</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* defined(_WIN64) || defined(WIN64) || defined(_WIN32) || defined(WIN32) */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Override this file with one for your platform if you need to redefine</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> things. */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#if !defined(GPR_NO_AUTODETECT_PLATFORM)</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if defined(_WIN64) || defined(WIN64)</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;windows&quot;</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WIN32 1</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_64 1</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GETPID_IN_PROCESS_H 1</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WINSOCK_SOCKET 1</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef __GNUC__</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_ATOMIC 1</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_TLS 1</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WIN32_ATOMIC 1</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_MSVC_TLS 1</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WINDOWS_CRASH_HANDLER 1</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#elif defined(_WIN32) || defined(WIN32)</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;windows&quot;</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_32 1</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WIN32 1</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GETPID_IN_PROCESS_H 1</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WINSOCK_SOCKET 1</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef __GNUC__</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_ATOMIC 1</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_TLS 1</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WIN32_ATOMIC 1</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_MSVC_TLS 1</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_WINDOWS_CRASH_HANDLER 1</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#elif defined(ANDROID) || defined(__ANDROID__)</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;android&quot;</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ANDROID 1</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_32 1</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_CPU_LINUX 1</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_SYNC 1</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_TLS 1</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_MULTIPOLL_WITH_POLL 1</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_LINUX_EVENTFD 1</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKET 1</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETADDR 1</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETUTILS 1</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_ENV 1</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_FILE 1</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_STRING 1</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SUBPROCESS 1</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SYNC 1</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_TIME 1</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GETPID_IN_UNISTD_H 1</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_HAVE_MSG_NOSIGNAL 1</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#elif defined(__linux__)</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;linux&quot;</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef _BSD_SOURCE</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _BSD_SOURCE</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef _DEFAULT_SOURCE</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _DEFAULT_SOURCE</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef _GNU_SOURCE</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _GNU_SOURCE</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;features.h&gt;</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor">#define GPR_CPU_LINUX 1</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_ATOMIC 1</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_TLS 1</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_LINUX 1</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_LINUX_MULTIPOLL_WITH_EPOLL 1</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKET 1</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETADDR 1</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef __GLIBC_PREREQ</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if __GLIBC_PREREQ(2, 9)</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_LINUX_EVENTFD 1</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if __GLIBC_PREREQ(2, 10)</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_LINUX_SOCKETUTILS 1</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if __GLIBC_PREREQ(2, 17)</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_LINUX_ENV 1</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef GPR_LINUX_EVENTFD</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_NO_SPECIAL_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef GPR_LINUX_SOCKETUTILS</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETUTILS</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef GPR_LINUX_ENV</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_ENV 1</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_FILE 1</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_STRING 1</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SUBPROCESS 1</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SYNC 1</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_TIME 1</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GETPID_IN_UNISTD_H 1</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_HAVE_MSG_NOSIGNAL 1</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef _LP64</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_64 1</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* _LP64 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_32 1</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* _LP64 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#elif defined(__APPLE__)</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;TargetConditionals.h&gt;</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="preprocessor">#ifndef _BSD_SOURCE</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _BSD_SOURCE</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if TARGET_OS_IPHONE</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;ios&quot;</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_CPU_IPHONE 1</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PTHREAD_TLS 1</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* TARGET_OS_IPHONE */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;osx&quot;</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_CPU_POSIX 1</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_TLS 1</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_ATOMIC 1</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_LOG 1</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_MULTIPOLL_WITH_POLL 1</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_NO_SPECIAL_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKET 1</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETADDR 1</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETUTILS 1</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_ENV 1</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_FILE 1</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_STRING 1</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SUBPROCESS 1</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SYNC 1</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_TIME 1</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GETPID_IN_UNISTD_H 1</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_HAVE_SO_NOSIGPIPE 1</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef _LP64</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_64 1</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* _LP64 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_32 1</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* _LP64 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#elif defined(__FreeBSD__)</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;freebsd&quot;</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef _BSD_SOURCE</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _BSD_SOURCE</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_CPU_POSIX 1</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_ATOMIC 1</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_TLS 1</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_LOG 1</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_MULTIPOLL_WITH_POLL 1</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_NO_SPECIAL_WAKEUP_FD 1</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKET 1</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETADDR 1</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SOCKETUTILS 1</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_ENV 1</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_FILE 1</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_STRING 1</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SUBPROCESS 1</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_SYNC 1</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_POSIX_TIME 1</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GETPID_IN_UNISTD_H 1</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_HAVE_SO_NOSIGPIPE 1</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef _LP64</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_64 1</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* _LP64 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ARCH_32 1</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* _LP64 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Could not auto-detect platform</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* GPR_NO_AUTODETECT_PLATFORM */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="preprocessor">#ifndef GPR_PLATFORM_STRING</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#warning &quot;GPR_PLATFORM_STRING not auto-detected&quot;</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a99f34e9b119908109486e91abedc933e"> 244</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_PLATFORM_STRING &quot;unknown&quot;</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment">/* For a common case, assume that the platform has a C99-like stdint.h */</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="comment">/* Cache line alignment */</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="preprocessor">#ifndef GPR_CACHELINE_SIZE_LOG</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#if defined(__i386__) || defined(__x86_64__)</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_CACHELINE_SIZE_LOG 6</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifndef GPR_CACHELINE_SIZE_LOG</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="preprocessor"></span><span class="comment">/* A reasonable default guess. Note that overestimates tend to waste more</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> space, while underestimates tend to waste more time. */</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576"> 259</a></span>&#160;<span class="preprocessor">#define GPR_CACHELINE_SIZE_LOG 6</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* GPR_CACHELINE_SIZE_LOG */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* GPR_CACHELINE_SIZE_LOG */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="port__platform_8h.html#ad9b7cc620233bbab0bc57cfbbe9519ad"> 263</a></span>&#160;<span class="preprocessor">#define GPR_CACHELINE_SIZE (1 &lt;&lt; GPR_CACHELINE_SIZE_LOG)</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment">/* scrub GCC_ATOMIC if it&#39;s not available on this compiler */</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="preprocessor">#if defined(GPR_GCC_ATOMIC) &amp;&amp; !defined(__ATOMIC_RELAXED)</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#undef GPR_GCC_ATOMIC</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_GCC_SYNC 1</span></div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment">/* Validate platform combinations */</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="preprocessor">#if defined(GPR_GCC_ATOMIC) + defined(GPR_GCC_SYNC) + \</span></div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="preprocessor"> defined(GPR_WIN32_ATOMIC) != \</span></div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="preprocessor"> 1</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Must define exactly one of GPR_GCC_ATOMIC, GPR_GCC_SYNC, GPR_WIN32_ATOMIC</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="preprocessor">#if defined(GPR_ARCH_32) + defined(GPR_ARCH_64) != 1</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Must define exactly one of GPR_ARCH_32, GPR_ARCH_64</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="preprocessor">#if defined(GPR_CPU_LINUX) + defined(GPR_CPU_POSIX) + defined(GPR_WIN32) + \</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="preprocessor"> defined(GPR_CPU_IPHONE) + defined(GPR_CPU_CUSTOM) != \</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="preprocessor"> 1</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Must define exactly one of GPR_CPU_LINUX, GPR_CPU_POSIX, GPR_WIN32, GPR_CPU_IPHONE, GPR_CPU_CUSTOM</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="preprocessor">#if defined(GPR_POSIX_MULTIPOLL_WITH_POLL) &amp;&amp; !defined(GPR_POSIX_SOCKET)</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Must define GPR_POSIX_SOCKET to use GPR_POSIX_MULTIPOLL_WITH_POLL</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;<span class="preprocessor">#if defined(GPR_POSIX_SOCKET) + defined(GPR_WINSOCK_SOCKET) + \</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="preprocessor"> defined(GPR_CUSTOM_SOCKET) != \</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="preprocessor"> 1</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Must define exactly one of GPR_POSIX_SOCKET, GPR_WINSOCK_SOCKET, GPR_CUSTOM_SOCKET</span></div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="preprocessor">#if defined(GPR_MSVC_TLS) + defined(GPR_GCC_TLS) + defined(GPR_PTHREAD_TLS) + \</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="preprocessor"> defined(GPR_CUSTOM_TLS) != \</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="preprocessor"> 1</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Must define exactly one of GPR_MSVC_TLS, GPR_GCC_TLS, GPR_PTHREAD_TLS, GPR_CUSTOM_TLS</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709"> 304</a></span>&#160;<span class="keyword">typedef</span> int16_t <a class="code" href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709">gpr_int16</a>;</div>
+<div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7"> 305</a></span>&#160;<span class="keyword">typedef</span> int32_t <a class="code" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a>;</div>
+<div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181"> 306</a></span>&#160;<span class="keyword">typedef</span> int64_t <a class="code" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>;</div>
+<div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0"> 307</a></span>&#160;<span class="keyword">typedef</span> uint8_t <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>;</div>
+<div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371"> 308</a></span>&#160;<span class="keyword">typedef</span> uint16_t <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"><a class="line" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9"> 309</a></span>&#160;<span class="keyword">typedef</span> uint32_t <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>;</div>
+<div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6"> 310</a></span>&#160;<span class="keyword">typedef</span> uint64_t <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>;</div>
+<div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139"> 311</a></span>&#160;<span class="keyword">typedef</span> intmax_t <a class="code" href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139">gpr_intmax</a>;</div>
+<div class="line"><a name="l00312"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2"> 312</a></span>&#160;<span class="keyword">typedef</span> intptr_t <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>;</div>
+<div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7"> 313</a></span>&#160;<span class="keyword">typedef</span> uintmax_t <a class="code" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">gpr_uintmax</a>;</div>
+<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4"> 314</a></span>&#160;<span class="keyword">typedef</span> uintptr_t <a class="code" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a>;</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="comment">/* INT64_MAX is unavailable on some platforms. */</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="port__platform_8h.html#aaff7a6a2f0868f8b0648b74828ef0e4f"> 317</a></span>&#160;<span class="preprocessor">#define GPR_INT64_MAX (gpr_int64)(~(gpr_uint64)0 &gt;&gt; 1)</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="comment">/* maximum alignment needed for any type on this platform, rounded up to a</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment"> power of two */</span></div>
+<div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2"> 321</a></span>&#160;<span class="preprocessor">#define GPR_MAX_ALIGNMENT 16</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="preprocessor">#ifndef GRPC_MUST_USE_RESULT</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef __GNUC__</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MUST_USE_RESULT __attribute__((warn_unused_result))</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="port__platform_8h.html#aef49047a3be38448a61332117b306686"> 327</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_MUST_USE_RESULT</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_PORT_PLATFORM_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="port__platform_8h_html_ab302f9bfe3be467072bd8c79847636d4"><div class="ttname"><a href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a></div><div class="ttdeci">uintptr_t gpr_uintptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:314</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="port__platform_8h_html_abee5d576e1d284a7c8135df7d89af0f7"><div class="ttname"><a href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">gpr_uintmax</a></div><div class="ttdeci">uintmax_t gpr_uintmax</div><div class="ttdef"><b>Definition:</b> port_platform.h:313</div></div>
+<div class="ttc" id="port__platform_8h_html_a71edab4bc3421f129764e5cb342f7181"><div class="ttname"><a href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a></div><div class="ttdeci">int64_t gpr_int64</div><div class="ttdef"><b>Definition:</b> port_platform.h:306</div></div>
+<div class="ttc" id="port__platform_8h_html_abb7bceac4325643af77af51c7b6af371"><div class="ttname"><a href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></div><div class="ttdeci">uint16_t gpr_uint16</div><div class="ttdef"><b>Definition:</b> port_platform.h:308</div></div>
+<div class="ttc" id="port__platform_8h_html_a7c9027ffa98b5efe1767efe79903c6b7"><div class="ttname"><a href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a></div><div class="ttdeci">int32_t gpr_int32</div><div class="ttdef"><b>Definition:</b> port_platform.h:305</div></div>
+<div class="ttc" id="port__platform_8h_html_a737bb95b7b58d90b4215602d36ed65b6"><div class="ttname"><a href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a></div><div class="ttdeci">uint64_t gpr_uint64</div><div class="ttdef"><b>Definition:</b> port_platform.h:310</div></div>
+<div class="ttc" id="port__platform_8h_html_a3ecb17ae580dbde63199ac206a732139"><div class="ttname"><a href="port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139">gpr_intmax</a></div><div class="ttdeci">intmax_t gpr_intmax</div><div class="ttdef"><b>Definition:</b> port_platform.h:311</div></div>
+<div class="ttc" id="port__platform_8h_html_a6c41ac43b02ec37b1e07967a8706e709"><div class="ttname"><a href="port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709">gpr_int16</a></div><div class="ttdeci">int16_t gpr_int16</div><div class="ttdef"><b>Definition:</b> port_platform.h:304</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/record__stat_8c.html b/doc/ref/core.internal/html/record__stat_8c.html
new file mode 100644
index 0000000000..e41441a861
--- /dev/null
+++ b/doc/ref/core.internal/html/record__stat_8c.html
@@ -0,0 +1,142 @@
+<!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: src/core/census/record_stat.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">record_stat.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="census_8h_source.html">grpc/census.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="rpc__stat__id_8h_source.html">src/core/census/rpc_stat_id.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a0cdd5ba86b080e6b5a4b47cfaa5b51cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="record__stat_8c.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb">census_record_stat</a> (<a class="el" href="structcensus__context.html">census_context</a> *context, <a class="el" href="structcensus__stat.html">census_stat</a> *stats, size_t nstats)</td></tr>
+<tr class="separator:a0cdd5ba86b080e6b5a4b47cfaa5b51cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0cdd5ba86b080e6b5a4b47cfaa5b51cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void census_record_stat </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structcensus__context.html">census_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structcensus__stat.html">census_stat</a> *&#160;</td>
+ <td class="paramname"><em>stats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nstats</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolve__address_8h.html b/doc/ref/core.internal/html/resolve__address_8h.html
new file mode 100644
index 0000000000..0f1e66845e
--- /dev/null
+++ b/doc/ref/core.internal/html/resolve__address_8h.html
@@ -0,0 +1,241 @@
+<!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: src/core/iomgr/resolve_address.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolve_address.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+</div>
+<p><a href="resolve__address_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolved__address.html">grpc_resolved_address</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa9cd304afa2c2f9757531c4b2a8168b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6">GRPC_MAX_SOCKADDR_SIZE</a>&#160;&#160;&#160;128</td></tr>
+<tr class="separator:aa9cd304afa2c2f9757531c4b2a8168b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:acac9db416b80e9bc82bbd0e1408cc3e0"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">grpc_resolve_cb</a> )(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *addresses)</td></tr>
+<tr class="separator:acac9db416b80e9bc82bbd0e1408cc3e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad97dcf547d9b690a9a7de340a84391ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea">grpc_resolve_address</a> (const char *addr, const char *default_port, <a class="el" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">grpc_resolve_cb</a> cb, void *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:ad97dcf547d9b690a9a7de340a84391ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affdc0f6f10389f1a19db7a5edb527b7c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c">grpc_resolved_addresses_destroy</a> (<a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *addresses)</td></tr>
+<tr class="separator:affdc0f6f10389f1a19db7a5edb527b7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92567a2b60cddf219f240a07212fff7c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c">grpc_blocking_resolve_address</a> (const char *addr, const char *default_port)</td></tr>
+<tr class="separator:a92567a2b60cddf219f240a07212fff7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aa9cd304afa2c2f9757531c4b2a8168b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_MAX_SOCKADDR_SIZE&#160;&#160;&#160;128</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="acac9db416b80e9bc82bbd0e1408cc3e0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_resolve_cb)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *addresses)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a92567a2b60cddf219f240a07212fff7c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a>* grpc_blocking_resolve_address </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>default_port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad97dcf547d9b690a9a7de340a84391ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolve_address </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>default_port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">grpc_resolve_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="affdc0f6f10389f1a19db7a5edb527b7c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolved_addresses_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *&#160;</td>
+ <td class="paramname"><em>addresses</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolve__address_8h_source.html b/doc/ref/core.internal/html/resolve__address_8h_source.html
new file mode 100644
index 0000000000..f111850bca
--- /dev/null
+++ b/doc/ref/core.internal/html/resolve__address_8h_source.html
@@ -0,0 +1,180 @@
+<!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: src/core/iomgr/resolve_address.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolve_address.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="resolve__address_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_RESOLVE_ADDRESS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_RESOLVE_ADDRESS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6"> 39</a></span>&#160;<span class="preprocessor">#define GRPC_MAX_SOCKADDR_SIZE 128</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgrpc__resolved__address.html"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__resolved__address.html#a664035b0fc073c4a49f5e7c1cc765c9d"> 42</a></span>&#160; <span class="keywordtype">char</span> addr[<a class="code" href="resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6">GRPC_MAX_SOCKADDR_SIZE</a>];</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56"> 43</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56">len</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;} <a class="code" href="structgrpc__resolved__address.html">grpc_resolved_address</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__resolved__addresses.html"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8"> 47</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8">naddrs</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c"> 48</a></span>&#160; <a class="code" href="structgrpc__resolved__address.html">grpc_resolved_address</a> *<a class="code" href="structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c">addrs</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;} <a class="code" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">/* Async result callback:</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> On success: addresses is the result, and the callee must call</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> grpc_resolved_addresses_destroy when it&#39;s done with them</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> On failure: addresses is NULL */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0"> 55</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">grpc_resolve_cb</a>)(<span class="keywordtype">void</span> *<a class="code" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a>, <a class="code" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *addresses);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* Asynchronously resolve addr. Use default_port if a port isn&#39;t designated</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> in addr, otherwise use the port in addr. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">/* TODO(ctiller): add a timeout here */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea">grpc_resolve_address</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *addr, <span class="keyword">const</span> <span class="keywordtype">char</span> *default_port,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">grpc_resolve_cb</a> cb, <span class="keywordtype">void</span> *<a class="code" href="structarg.html">arg</a>);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* Destroy resolved addresses */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c">grpc_resolved_addresses_destroy</a>(<a class="code" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *addresses);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Resolve addr in a blocking fashion. Returns NULL on failure. On success,</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> result must be freed with grpc_resolved_addresses_destroy. */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<a class="code" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *<a class="code" href="resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c">grpc_blocking_resolve_address</a>(</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *addr, <span class="keyword">const</span> <span class="keywordtype">char</span> *default_port);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_RESOLVE_ADDRESS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="resolve__address_8h_html_a92567a2b60cddf219f240a07212fff7c"><div class="ttname"><a href="resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c">grpc_blocking_resolve_address</a></div><div class="ttdeci">grpc_resolved_addresses * grpc_blocking_resolve_address(const char *addr, const char *default_port)</div></div>
+<div class="ttc" id="structgrpc__resolved__address_html"><div class="ttname"><a href="structgrpc__resolved__address.html">grpc_resolved_address</a></div><div class="ttdef"><b>Definition:</b> resolve_address.h:41</div></div>
+<div class="ttc" id="resolve__address_8h_html_acac9db416b80e9bc82bbd0e1408cc3e0"><div class="ttname"><a href="resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0">grpc_resolve_cb</a></div><div class="ttdeci">void(* grpc_resolve_cb)(void *arg, grpc_resolved_addresses *addresses)</div><div class="ttdef"><b>Definition:</b> resolve_address.h:55</div></div>
+<div class="ttc" id="structgrpc__resolved__addresses_html"><div class="ttname"><a href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a></div><div class="ttdef"><b>Definition:</b> resolve_address.h:46</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="structgrpc__resolved__addresses_html_afdf4d95430fcf478a164c665d71e913c"><div class="ttname"><a href="structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c">grpc_resolved_addresses::addrs</a></div><div class="ttdeci">grpc_resolved_address * addrs</div><div class="ttdef"><b>Definition:</b> resolve_address.h:48</div></div>
+<div class="ttc" id="structgrpc__resolved__address_html_ad4f8c294fc0bf15ea680a153d100cc56"><div class="ttname"><a href="structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56">grpc_resolved_address::len</a></div><div class="ttdeci">int len</div><div class="ttdef"><b>Definition:</b> resolve_address.h:43</div></div>
+<div class="ttc" id="resolve__address_8h_html_ad97dcf547d9b690a9a7de340a84391ea"><div class="ttname"><a href="resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea">grpc_resolve_address</a></div><div class="ttdeci">void grpc_resolve_address(const char *addr, const char *default_port, grpc_resolve_cb cb, void *arg)</div></div>
+<div class="ttc" id="cmdline_8c_html_af240efb36795b416de0779ad5d5159e4"><div class="ttname"><a href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a></div><div class="ttdeci">struct arg arg</div></div>
+<div class="ttc" id="structgrpc__resolved__addresses_html_a5bad86b3646502cd70807ff2000f6af8"><div class="ttname"><a href="structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8">grpc_resolved_addresses::naddrs</a></div><div class="ttdeci">size_t naddrs</div><div class="ttdef"><b>Definition:</b> resolve_address.h:47</div></div>
+<div class="ttc" id="resolve__address_8h_html_aa9cd304afa2c2f9757531c4b2a8168b6"><div class="ttname"><a href="resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6">GRPC_MAX_SOCKADDR_SIZE</a></div><div class="ttdeci">#define GRPC_MAX_SOCKADDR_SIZE</div><div class="ttdef"><b>Definition:</b> resolve_address.h:39</div></div>
+<div class="ttc" id="resolve__address_8h_html_affdc0f6f10389f1a19db7a5edb527b7c"><div class="ttname"><a href="resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c">grpc_resolved_addresses_destroy</a></div><div class="ttdeci">void grpc_resolved_addresses_destroy(grpc_resolved_addresses *addresses)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/resolve__address__posix_8c.html b/doc/ref/core.internal/html/resolve__address__posix_8c.html
new file mode 100644
index 0000000000..aeba05c70e
--- /dev/null
+++ b/doc/ref/core.internal/html/resolve__address__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/resolve_address_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolve_address_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/resolve__address__windows_8c.html b/doc/ref/core.internal/html/resolve__address__windows_8c.html
new file mode 100644
index 0000000000..ec8daebbc8
--- /dev/null
+++ b/doc/ref/core.internal/html/resolve__address__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/resolve_address_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolve_address_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/resolver_8c.html b/doc/ref/core.internal/html/resolver_8c.html
new file mode 100644
index 0000000000..1b749336c8
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver_8c.html
@@ -0,0 +1,266 @@
+<!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: src/core/client_config/resolver.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolver.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="resolver_8h_source.html">src/core/client_config/resolver.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac806a2edf4f2073529eec1319db9fde4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html#ac806a2edf4f2073529eec1319db9fde4">grpc_resolver_init</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, const <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *vtable)</td></tr>
+<tr class="separator:ac806a2edf4f2073529eec1319db9fde4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a364d687b496e862cd5830d3aed899f4f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html#a364d687b496e862cd5830d3aed899f4f">grpc_resolver_ref</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:a364d687b496e862cd5830d3aed899f4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22b971b1770b476c3791f3f7bd370fd9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9">grpc_resolver_unref</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:a22b971b1770b476c3791f3f7bd370fd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7b200016c3489c0bb3de525198b435b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html#ae7b200016c3489c0bb3de525198b435b">grpc_resolver_shutdown</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:ae7b200016c3489c0bb3de525198b435b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a118536c3b62613e957e10ce9cb602e6e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html#a118536c3b62613e957e10ce9cb602e6e">grpc_resolver_channel_saw_error</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, struct sockaddr *failing_address, int failing_address_len)</td></tr>
+<tr class="memdesc:a118536c3b62613e957e10ce9cb602e6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Notification that the channel has seen an error on some address. <a href="#a118536c3b62613e957e10ce9cb602e6e">More...</a><br/></td></tr>
+<tr class="separator:a118536c3b62613e957e10ce9cb602e6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5ef07f9efdd2a39f2239207cc060729"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8c.html#ac5ef07f9efdd2a39f2239207cc060729">grpc_resolver_next</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **target_config, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="memdesc:ac5ef07f9efdd2a39f2239207cc060729"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next client config. <a href="#ac5ef07f9efdd2a39f2239207cc060729">More...</a><br/></td></tr>
+<tr class="separator:ac5ef07f9efdd2a39f2239207cc060729"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a118536c3b62613e957e10ce9cb602e6e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_channel_saw_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr *&#160;</td>
+ <td class="paramname"><em>failing_address</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>failing_address_len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Notification that the channel has seen an error on some address. </p>
+<p>Can be used as a hint that re-resolution is desirable soon. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac806a2edf4f2073529eec1319db9fde4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5ef07f9efdd2a39f2239207cc060729"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **&#160;</td>
+ <td class="paramname"><em>target_config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the next client config. </p>
+<p>Called by the channel to fetch a new configuration. Expected to set *target_config with a new configuration, and then schedule on_complete for execution.</p>
+<p>If resolution is fatally broken, set *target_config to NULL and schedule on_complete. </p>
+
+</div>
+</div>
+<a class="anchor" id="a364d687b496e862cd5830d3aed899f4f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7b200016c3489c0bb3de525198b435b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a22b971b1770b476c3791f3f7bd370fd9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolver_8h.html b/doc/ref/core.internal/html/resolver_8h.html
new file mode 100644
index 0000000000..10d2a099f2
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver_8h.html
@@ -0,0 +1,373 @@
+<!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: src/core/client_config/resolver.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolver.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="client__config_8h_source.html">src/core/client_config/client_config.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="sockaddr_8h_source.html">src/core/iomgr/sockaddr.h</a>&quot;</code><br/>
+</div>
+<p><a href="resolver_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects <a href="structgrpc__resolver.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a98d15570db72446a0c175bc3ad316db9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#a98d15570db72446a0c175bc3ad316db9">GRPC_RESOLVER_REF</a>(p, r)&#160;&#160;&#160;<a class="el" href="resolver_8c.html#a364d687b496e862cd5830d3aed899f4f">grpc_resolver_ref</a>((p))</td></tr>
+<tr class="separator:a98d15570db72446a0c175bc3ad316db9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54ccbaf14bf8c38ad785e95d705bfe4d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#a54ccbaf14bf8c38ad785e95d705bfe4d">GRPC_RESOLVER_UNREF</a>(p, r)&#160;&#160;&#160;<a class="el" href="resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9">grpc_resolver_unref</a>((p))</td></tr>
+<tr class="separator:a54ccbaf14bf8c38ad785e95d705bfe4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab98013b9b8e8c28771dc39013667f2b3"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__resolver.html">grpc_resolver</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#ab98013b9b8e8c28771dc39013667f2b3">grpc_resolver</a></td></tr>
+<tr class="separator:ab98013b9b8e8c28771dc39013667f2b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9af03422b3cea75b4dae7725beab911"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#aa9af03422b3cea75b4dae7725beab911">grpc_resolver_vtable</a></td></tr>
+<tr class="separator:aa9af03422b3cea75b4dae7725beab911"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aae02c9a384f3f2c2b598f56014caa211"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211">grpc_resolver_ref</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *policy)</td></tr>
+<tr class="separator:aae02c9a384f3f2c2b598f56014caa211"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a198c3f1a1ef2d6f40680436a2fcaa11d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d">grpc_resolver_unref</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *policy)</td></tr>
+<tr class="separator:a198c3f1a1ef2d6f40680436a2fcaa11d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac806a2edf4f2073529eec1319db9fde4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4">grpc_resolver_init</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, const <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *vtable)</td></tr>
+<tr class="separator:ac806a2edf4f2073529eec1319db9fde4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7b200016c3489c0bb3de525198b435b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#ae7b200016c3489c0bb3de525198b435b">grpc_resolver_shutdown</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:ae7b200016c3489c0bb3de525198b435b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a118536c3b62613e957e10ce9cb602e6e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e">grpc_resolver_channel_saw_error</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, struct sockaddr *failing_address, int failing_address_len)</td></tr>
+<tr class="memdesc:a118536c3b62613e957e10ce9cb602e6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Notification that the channel has seen an error on some address. <a href="#a118536c3b62613e957e10ce9cb602e6e">More...</a><br/></td></tr>
+<tr class="separator:a118536c3b62613e957e10ce9cb602e6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5ef07f9efdd2a39f2239207cc060729"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729">grpc_resolver_next</a> (<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **target_config, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="memdesc:ac5ef07f9efdd2a39f2239207cc060729"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next client config. <a href="#ac5ef07f9efdd2a39f2239207cc060729">More...</a><br/></td></tr>
+<tr class="separator:ac5ef07f9efdd2a39f2239207cc060729"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a98d15570db72446a0c175bc3ad316db9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_RESOLVER_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="resolver_8c.html#a364d687b496e862cd5830d3aed899f4f">grpc_resolver_ref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a54ccbaf14bf8c38ad785e95d705bfe4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_RESOLVER_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9">grpc_resolver_unref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ab98013b9b8e8c28771dc39013667f2b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__resolver.html">grpc_resolver</a> <a class="el" href="structgrpc__resolver.html">grpc_resolver</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa9af03422b3cea75b4dae7725beab911"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a118536c3b62613e957e10ce9cb602e6e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_channel_saw_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr *&#160;</td>
+ <td class="paramname"><em>failing_address</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>failing_address_len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Notification that the channel has seen an error on some address. </p>
+<p>Can be used as a hint that re-resolution is desirable soon. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac806a2edf4f2073529eec1319db9fde4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *&#160;</td>
+ <td class="paramname"><em>vtable</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5ef07f9efdd2a39f2239207cc060729"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **&#160;</td>
+ <td class="paramname"><em>target_config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>on_complete</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the next client config. </p>
+<p>Called by the channel to fetch a new configuration. Expected to set *target_config with a new configuration, and then schedule on_complete for execution.</p>
+<p>If resolution is fatally broken, set *target_config to NULL and schedule on_complete. </p>
+
+</div>
+</div>
+<a class="anchor" id="aae02c9a384f3f2c2b598f56014caa211"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7b200016c3489c0bb3de525198b435b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a198c3f1a1ef2d6f40680436a2fcaa11d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolver_8h_source.html b/doc/ref/core.internal/html/resolver_8h_source.html
new file mode 100644
index 0000000000..6de00555c3
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver_8h_source.html
@@ -0,0 +1,206 @@
+<!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: src/core/client_config/resolver.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolver.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="resolver_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="client__config_8h.html">src/core/client_config/client_config.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr_8h.html">src/core/iomgr/iomgr.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="sockaddr_8h.html">src/core/iomgr/sockaddr.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="resolver_8h.html#ab98013b9b8e8c28771dc39013667f2b3"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__resolver.html">grpc_resolver</a> <a class="code" href="structgrpc__resolver.html">grpc_resolver</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="resolver_8h.html#aa9af03422b3cea75b4dae7725beab911"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> <a class="code" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__resolver.html"> 46</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__resolver.html">grpc_resolver</a> {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386"> 47</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *<a class="code" href="structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386">vtable</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233"> 48</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233">refs</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;};</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__resolver__vtable.html"> 51</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> {</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7"> 52</a></span>&#160; void (*<a class="code" href="structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7">destroy</a>)(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae"> 53</a></span>&#160; void (*<a class="code" href="structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae">shutdown</a>)(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b"> 54</a></span>&#160; void (*<a class="code" href="structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b">channel_saw_error</a>)(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">struct </span>sockaddr *failing_address,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">int</span> failing_address_len);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0"> 57</a></span>&#160; void (*<a class="code" href="structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0">next</a>)(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, <a class="code" href="structgrpc__client__config.html">grpc_client_config</a> **target_config,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;};</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#ifdef GRPC_RESOLVER_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_RESOLVER_REF(p, r) grpc_resolver_ref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_RESOLVER_UNREF(p, r) \</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"> grpc_resolver_unref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211">grpc_resolver_ref</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *policy, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d">grpc_resolver_unref</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *policy, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="resolver_8h.html#a98d15570db72446a0c175bc3ad316db9"> 70</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_RESOLVER_REF(p, r) grpc_resolver_ref((p))</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="resolver_8h.html#a54ccbaf14bf8c38ad785e95d705bfe4d"> 71</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_RESOLVER_UNREF(p, r) grpc_resolver_unref((p))</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211">grpc_resolver_ref</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *policy);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d">grpc_resolver_unref</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *policy);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4">grpc_resolver_init</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *vtable);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#ae7b200016c3489c0bb3de525198b435b">grpc_resolver_shutdown</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e">grpc_resolver_channel_saw_error</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">struct</span> sockaddr *failing_address,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">int</span> failing_address_len);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729">grpc_resolver_next</a>(<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *resolver,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="structgrpc__client__config.html">grpc_client_config</a> **target_config,</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CONFIG_RESOLVER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="client__config_8h_html"><div class="ttname"><a href="client__config_8h.html">client_config.h</a></div></div>
+<div class="ttc" id="resolver_8h_html_ae7b200016c3489c0bb3de525198b435b"><div class="ttname"><a href="resolver_8h.html#ae7b200016c3489c0bb3de525198b435b">grpc_resolver_shutdown</a></div><div class="ttdeci">void grpc_resolver_shutdown(grpc_resolver *resolver)</div><div class="ttdef"><b>Definition:</b> resolver.c:68</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="resolver_8h_html_ac806a2edf4f2073529eec1319db9fde4"><div class="ttname"><a href="resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4">grpc_resolver_init</a></div><div class="ttdeci">void grpc_resolver_init(grpc_resolver *resolver, const grpc_resolver_vtable *vtable)</div><div class="ttdef"><b>Definition:</b> resolver.c:36</div></div>
+<div class="ttc" id="resolver_8h_html_a198c3f1a1ef2d6f40680436a2fcaa11d"><div class="ttname"><a href="resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d">grpc_resolver_unref</a></div><div class="ttdeci">void grpc_resolver_unref(grpc_resolver *policy)</div><div class="ttdef"><b>Definition:</b> resolver.c:61</div></div>
+<div class="ttc" id="sockaddr_8h_html"><div class="ttname"><a href="sockaddr_8h.html">sockaddr.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver_html_a01324077acd85ac0ffb45d7967215386"><div class="ttname"><a href="structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386">grpc_resolver::vtable</a></div><div class="ttdeci">const grpc_resolver_vtable * vtable</div><div class="ttdef"><b>Definition:</b> resolver.h:47</div></div>
+<div class="ttc" id="structgrpc__resolver__vtable_html"><div class="ttname"><a href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a></div><div class="ttdef"><b>Definition:</b> resolver.h:51</div></div>
+<div class="ttc" id="structgrpc__resolver_html"><div class="ttname"><a href="structgrpc__resolver.html">grpc_resolver</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver.h:46</div></div>
+<div class="ttc" id="structgrpc__client__config_html"><div class="ttname"><a href="structgrpc__client__config.html">grpc_client_config</a></div><div class="ttdef"><b>Definition:</b> client_config.c:40</div></div>
+<div class="ttc" id="structgrpc__resolver__vtable_html_a9104e21b3064f5f66dc29d80a098e19b"><div class="ttname"><a href="structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b">grpc_resolver_vtable::channel_saw_error</a></div><div class="ttdeci">void(* channel_saw_error)(grpc_resolver *resolver, struct sockaddr *failing_address, int failing_address_len)</div><div class="ttdef"><b>Definition:</b> resolver.h:54</div></div>
+<div class="ttc" id="resolver_8h_html_ac5ef07f9efdd2a39f2239207cc060729"><div class="ttname"><a href="resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729">grpc_resolver_next</a></div><div class="ttdeci">void grpc_resolver_next(grpc_resolver *resolver, grpc_client_config **target_config, grpc_iomgr_closure *on_complete)</div><div class="ttdoc">Get the next client config. </div><div class="ttdef"><b>Definition:</b> resolver.c:79</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="structgrpc__resolver_html_aabfb460da52c0386f40415bf4ae0d233"><div class="ttname"><a href="structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233">grpc_resolver::refs</a></div><div class="ttdeci">gpr_refcount refs</div><div class="ttdef"><b>Definition:</b> resolver.h:48</div></div>
+<div class="ttc" id="structgrpc__resolver__vtable_html_a1a118587a757136331a17d12150b27ae"><div class="ttname"><a href="structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae">grpc_resolver_vtable::shutdown</a></div><div class="ttdeci">void(* shutdown)(grpc_resolver *resolver)</div><div class="ttdef"><b>Definition:</b> resolver.h:53</div></div>
+<div class="ttc" id="resolver_8h_html_a118536c3b62613e957e10ce9cb602e6e"><div class="ttname"><a href="resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e">grpc_resolver_channel_saw_error</a></div><div class="ttdeci">void grpc_resolver_channel_saw_error(grpc_resolver *resolver, struct sockaddr *failing_address, int failing_address_len)</div><div class="ttdoc">Notification that the channel has seen an error on some address. </div><div class="ttdef"><b>Definition:</b> resolver.c:72</div></div>
+<div class="ttc" id="structgrpc__resolver__vtable_html_a354107f009d8e0c814559a185b5ed3f7"><div class="ttname"><a href="structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7">grpc_resolver_vtable::destroy</a></div><div class="ttdeci">void(* destroy)(grpc_resolver *resolver)</div><div class="ttdef"><b>Definition:</b> resolver.h:52</div></div>
+<div class="ttc" id="iomgr_8h_html"><div class="ttname"><a href="iomgr_8h.html">iomgr.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver__vtable_html_acb5664454e15125b336b372239716cf0"><div class="ttname"><a href="structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0">grpc_resolver_vtable::next</a></div><div class="ttdeci">void(* next)(grpc_resolver *resolver, grpc_client_config **target_config, grpc_iomgr_closure *on_complete)</div><div class="ttdef"><b>Definition:</b> resolver.h:57</div></div>
+<div class="ttc" id="resolver_8h_html_aae02c9a384f3f2c2b598f56014caa211"><div class="ttname"><a href="resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211">grpc_resolver_ref</a></div><div class="ttdeci">void grpc_resolver_ref(grpc_resolver *policy)</div><div class="ttdef"><b>Definition:</b> resolver.c:49</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/resolver__factory_8c.html b/doc/ref/core.internal/html/resolver__factory_8c.html
new file mode 100644
index 0000000000..f528f72a72
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver__factory_8c.html
@@ -0,0 +1,180 @@
+<!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: src/core/client_config/resolver_factory.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolver_factory.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="resolver__factory_8h_source.html">src/core/client_config/resolver_factory.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad5938bfb397011e5e7f4f8d048102e9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8c.html#ad5938bfb397011e5e7f4f8d048102e9c">grpc_resolver_factory_ref</a> (<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td></tr>
+<tr class="separator:ad5938bfb397011e5e7f4f8d048102e9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff39a6960a452dbc2537ad83b3cefe84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8c.html#aff39a6960a452dbc2537ad83b3cefe84">grpc_resolver_factory_unref</a> (<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td></tr>
+<tr class="separator:aff39a6960a452dbc2537ad83b3cefe84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27c578ca66348965f7d3810d0c6fc65d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8c.html#a27c578ca66348965f7d3810d0c6fc65d">grpc_resolver_factory_create_resolver</a> (<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="el" href="structgrpc__uri.html">grpc_uri</a> *uri, <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="el" href="structsubchannel__factory.html">subchannel_factory</a>)</td></tr>
+<tr class="memdesc:a27c578ca66348965f7d3810d0c6fc65d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a resolver instance for a name. <a href="#a27c578ca66348965f7d3810d0c6fc65d">More...</a><br/></td></tr>
+<tr class="separator:a27c578ca66348965f7d3810d0c6fc65d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a27c578ca66348965f7d3810d0c6fc65d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>* grpc_resolver_factory_create_resolver </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__uri.html">grpc_uri</a> *&#160;</td>
+ <td class="paramname"><em>uri</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>subchannel_factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a resolver instance for a name. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad5938bfb397011e5e7f4f8d048102e9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_factory_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aff39a6960a452dbc2537ad83b3cefe84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_factory_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolver__factory_8h.html b/doc/ref/core.internal/html/resolver__factory_8h.html
new file mode 100644
index 0000000000..51b0512aac
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver__factory_8h.html
@@ -0,0 +1,228 @@
+<!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: src/core/client_config/resolver_factory.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolver_factory.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="resolver_8h_source.html">src/core/client_config/resolver.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="subchannel__factory_8h_source.html">src/core/client_config/subchannel_factory.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="uri__parser_8h_source.html">src/core/client_config/uri_parser.h</a>&quot;</code><br/>
+</div>
+<p><a href="resolver__factory_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects <a href="structgrpc__resolver__factory.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a44d5c388fec49323981552a26c5835a2"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2">grpc_resolver_factory</a></td></tr>
+<tr class="separator:a44d5c388fec49323981552a26c5835a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf04e4004b01653a0274a3a0d175ab1b"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8h.html#abf04e4004b01653a0274a3a0d175ab1b">grpc_resolver_factory_vtable</a></td></tr>
+<tr class="separator:abf04e4004b01653a0274a3a0d175ab1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad772468e42a97021bb827beb5b2db3ba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba">grpc_resolver_factory_ref</a> (<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *resolver)</td></tr>
+<tr class="separator:ad772468e42a97021bb827beb5b2db3ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a16ab9dc39e97fff0b95ef3fc76904f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f">grpc_resolver_factory_unref</a> (<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *resolver)</td></tr>
+<tr class="separator:a9a16ab9dc39e97fff0b95ef3fc76904f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27c578ca66348965f7d3810d0c6fc65d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d">grpc_resolver_factory_create_resolver</a> (<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="el" href="structgrpc__uri.html">grpc_uri</a> *uri, <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="el" href="structsubchannel__factory.html">subchannel_factory</a>)</td></tr>
+<tr class="memdesc:a27c578ca66348965f7d3810d0c6fc65d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a resolver instance for a name. <a href="#a27c578ca66348965f7d3810d0c6fc65d">More...</a><br/></td></tr>
+<tr class="separator:a27c578ca66348965f7d3810d0c6fc65d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a44d5c388fec49323981552a26c5835a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> <a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf04e4004b01653a0274a3a0d175ab1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a> <a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a27c578ca66348965f7d3810d0c6fc65d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>* grpc_resolver_factory_create_resolver </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__uri.html">grpc_uri</a> *&#160;</td>
+ <td class="paramname"><em>uri</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>subchannel_factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a resolver instance for a name. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad772468e42a97021bb827beb5b2db3ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_factory_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9a16ab9dc39e97fff0b95ef3fc76904f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_factory_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>resolver</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolver__factory_8h_source.html b/doc/ref/core.internal/html/resolver__factory_8h_source.html
new file mode 100644
index 0000000000..d2d7d2f89b
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver__factory_8h_source.html
@@ -0,0 +1,178 @@
+<!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: src/core/client_config/resolver_factory.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolver_factory.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="resolver__factory_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_FACTORY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_FACTORY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="resolver_8h.html">src/core/client_config/resolver.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subchannel__factory_8h.html">src/core/client_config/subchannel_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="uri__parser_8h.html">src/core/client_config/uri_parser.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> <a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="resolver__factory_8h.html#abf04e4004b01653a0274a3a0d175ab1b"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a> <a class="code" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__resolver__factory.html"> 46</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3"> 47</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a> *<a class="code" href="structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3">vtable</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__resolver__factory__vtable.html"> 50</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a> {</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527"> 51</a></span>&#160; void (*<a class="code" href="structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527">ref</a>)(<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e"> 52</a></span>&#160; void (*<a class="code" href="structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e">unref</a>)(<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__resolver__factory__vtable.html#a59d7eb4c9cb95b6ba33628c30b948f10"> 54</a></span>&#160; <a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *(*create_resolver)(</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="code" href="structgrpc__uri.html">grpc_uri</a> *uri,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="code" href="structsubchannel__factory.html">subchannel_factory</a>);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;};</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba">grpc_resolver_factory_ref</a>(<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *resolver);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f">grpc_resolver_factory_unref</a>(<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *resolver);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *<a class="code" href="resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d">grpc_resolver_factory_create_resolver</a>(</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="code" href="structgrpc__uri.html">grpc_uri</a> *uri,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="code" href="structsubchannel__factory.html">subchannel_factory</a>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CONFIG_RESOLVER_FACTORY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="uri__parser_8h_html"><div class="ttname"><a href="uri__parser_8h.html">uri_parser.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver__factory_html_ab063e0046b8db1db5469bf4b6f7cefc3"><div class="ttname"><a href="structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3">grpc_resolver_factory::vtable</a></div><div class="ttdeci">const grpc_resolver_factory_vtable * vtable</div><div class="ttdef"><b>Definition:</b> resolver_factory.h:47</div></div>
+<div class="ttc" id="structgrpc__resolver__factory__vtable_html_aa83017deb3ec0dce406071545f0b203e"><div class="ttname"><a href="structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e">grpc_resolver_factory_vtable::unref</a></div><div class="ttdeci">void(* unref)(grpc_resolver_factory *factory)</div><div class="ttdef"><b>Definition:</b> resolver_factory.h:52</div></div>
+<div class="ttc" id="subchannel__factory_8h_html"><div class="ttname"><a href="subchannel__factory_8h.html">subchannel_factory.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver__factory__vtable_html"><div class="ttname"><a href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a></div><div class="ttdef"><b>Definition:</b> resolver_factory.h:50</div></div>
+<div class="ttc" id="resolver__factory_8h_html_a9a16ab9dc39e97fff0b95ef3fc76904f"><div class="ttname"><a href="resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f">grpc_resolver_factory_unref</a></div><div class="ttdeci">void grpc_resolver_factory_unref(grpc_resolver_factory *resolver)</div><div class="ttdef"><b>Definition:</b> resolver_factory.c:40</div></div>
+<div class="ttc" id="structgrpc__resolver_html"><div class="ttname"><a href="structgrpc__resolver.html">grpc_resolver</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver.h:46</div></div>
+<div class="ttc" id="structsubchannel__factory_html"><div class="ttname"><a href="structsubchannel__factory.html">subchannel_factory</a></div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:131</div></div>
+<div class="ttc" id="resolver_8h_html"><div class="ttname"><a href="resolver_8h.html">resolver.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver__factory_html"><div class="ttname"><a href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver_factory.h:46</div></div>
+<div class="ttc" id="structgrpc__uri_html"><div class="ttname"><a href="structgrpc__uri.html">grpc_uri</a></div><div class="ttdef"><b>Definition:</b> uri_parser.h:37</div></div>
+<div class="ttc" id="resolver__factory_8h_html_a27c578ca66348965f7d3810d0c6fc65d"><div class="ttname"><a href="resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d">grpc_resolver_factory_create_resolver</a></div><div class="ttdeci">grpc_resolver * grpc_resolver_factory_create_resolver(grpc_resolver_factory *factory, grpc_uri *uri, grpc_subchannel_factory *subchannel_factory)</div><div class="ttdoc">Create a resolver instance for a name. </div><div class="ttdef"><b>Definition:</b> resolver_factory.c:45</div></div>
+<div class="ttc" id="resolver__factory_8h_html_ad772468e42a97021bb827beb5b2db3ba"><div class="ttname"><a href="resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba">grpc_resolver_factory_ref</a></div><div class="ttdeci">void grpc_resolver_factory_ref(grpc_resolver_factory *resolver)</div><div class="ttdef"><b>Definition:</b> resolver_factory.c:36</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html"><div class="ttname"><a href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></div><div class="ttdoc">Constructor for new configured channels. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:45</div></div>
+<div class="ttc" id="structgrpc__resolver__factory__vtable_html_a205881c42a64bda699ea7699e6fd3527"><div class="ttname"><a href="structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527">grpc_resolver_factory_vtable::ref</a></div><div class="ttdeci">void(* ref)(grpc_resolver_factory *factory)</div><div class="ttdef"><b>Definition:</b> resolver_factory.h:51</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/resolver__registry_8c.html b/doc/ref/core.internal/html/resolver__registry_8c.html
new file mode 100644
index 0000000000..6848611359
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver__registry_8c.html
@@ -0,0 +1,236 @@
+<!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: src/core/client_config/resolver_registry.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolver_registry.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="resolver__registry_8h_source.html">src/core/client_config/resolver_registry.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__resolver.html">registered_resolver</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:af575a6a4adada94cfdb731c84e327ed2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8c.html#af575a6a4adada94cfdb731c84e327ed2">MAX_RESOLVERS</a>&#160;&#160;&#160;10</td></tr>
+<tr class="separator:af575a6a4adada94cfdb731c84e327ed2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac7c093f883b89670df4f0e6a42a9a77c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8c.html#ac7c093f883b89670df4f0e6a42a9a77c">grpc_resolver_registry_init</a> (const char *default_resolver_scheme)</td></tr>
+<tr class="separator:ac7c093f883b89670df4f0e6a42a9a77c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e9178815fe26123c9413514e1212ca6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8c.html#a7e9178815fe26123c9413514e1212ca6">grpc_resolver_registry_shutdown</a> (void)</td></tr>
+<tr class="separator:a7e9178815fe26123c9413514e1212ca6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a563d9d398ed1757d9c5f78ae2ec7b9d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8c.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">grpc_register_resolver_type</a> (const char *scheme, <a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td></tr>
+<tr class="memdesc:a563d9d398ed1757d9c5f78ae2ec7b9d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a resolver type. <a href="#a563d9d398ed1757d9c5f78ae2ec7b9d7">More...</a><br/></td></tr>
+<tr class="separator:a563d9d398ed1757d9c5f78ae2ec7b9d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42ba392534ac248b5a4ac1f87cd9b3b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8c.html#a42ba392534ac248b5a4ac1f87cd9b3b0">grpc_resolver_create</a> (const char *name, <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="el" href="structsubchannel__factory.html">subchannel_factory</a>)</td></tr>
+<tr class="memdesc:a42ba392534ac248b5a4ac1f87cd9b3b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a resolver given <em>name</em>. <a href="#a42ba392534ac248b5a4ac1f87cd9b3b0">More...</a><br/></td></tr>
+<tr class="separator:a42ba392534ac248b5a4ac1f87cd9b3b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="af575a6a4adada94cfdb731c84e327ed2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_RESOLVERS&#160;&#160;&#160;10</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a563d9d398ed1757d9c5f78ae2ec7b9d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_register_resolver_type </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>scheme</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Register a resolver type. </p>
+<p>URI's of <em>scheme</em> will be resolved with the given resolver. If <em>priority</em> is greater than zero, then the resolver will be eligible to resolve names that are passed in with no scheme. Higher priority resolvers will be tried before lower priority schemes. </p>
+
+</div>
+</div>
+<a class="anchor" id="a42ba392534ac248b5a4ac1f87cd9b3b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>* grpc_resolver_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>subchannel_factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a resolver given <em>name</em>. </p>
+<p>First tries to parse <em>name</em> as a URI. If this succeeds, tries to locate a registered resolver factory based on the URI scheme. If parsing or location fails, prefixes default_prefix from grpc_resolver_registry_init to name, and tries again (if default_prefix was not NULL). If a resolver factory was found, use it to instantiate a resolver and return it. If a resolver factory was not found, return NULL. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac7c093f883b89670df4f0e6a42a9a77c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_registry_init </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>default_resolver_scheme</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7e9178815fe26123c9413514e1212ca6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_registry_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolver__registry_8h.html b/doc/ref/core.internal/html/resolver__registry_8h.html
new file mode 100644
index 0000000000..ae8a12f5f6
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver__registry_8h.html
@@ -0,0 +1,209 @@
+<!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: src/core/client_config/resolver_registry.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">resolver_registry.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="resolver__factory_8h_source.html">src/core/client_config/resolver_factory.h</a>&quot;</code><br/>
+</div>
+<p><a href="resolver__registry_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a10ad765940e4f2ebf9d6bdc6b97d0fb0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0">grpc_resolver_registry_init</a> (const char *default_prefix)</td></tr>
+<tr class="separator:a10ad765940e4f2ebf9d6bdc6b97d0fb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e9178815fe26123c9413514e1212ca6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6">grpc_resolver_registry_shutdown</a> (void)</td></tr>
+<tr class="separator:a7e9178815fe26123c9413514e1212ca6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a563d9d398ed1757d9c5f78ae2ec7b9d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">grpc_register_resolver_type</a> (const char *scheme, <a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td></tr>
+<tr class="memdesc:a563d9d398ed1757d9c5f78ae2ec7b9d7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a resolver type. <a href="#a563d9d398ed1757d9c5f78ae2ec7b9d7">More...</a><br/></td></tr>
+<tr class="separator:a563d9d398ed1757d9c5f78ae2ec7b9d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42ba392534ac248b5a4ac1f87cd9b3b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0">grpc_resolver_create</a> (const char *name, <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="el" href="structsubchannel__factory.html">subchannel_factory</a>)</td></tr>
+<tr class="memdesc:a42ba392534ac248b5a4ac1f87cd9b3b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a resolver given <em>name</em>. <a href="#a42ba392534ac248b5a4ac1f87cd9b3b0">More...</a><br/></td></tr>
+<tr class="separator:a42ba392534ac248b5a4ac1f87cd9b3b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a563d9d398ed1757d9c5f78ae2ec7b9d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_register_resolver_type </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>scheme</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Register a resolver type. </p>
+<p>URI's of <em>scheme</em> will be resolved with the given resolver. If <em>priority</em> is greater than zero, then the resolver will be eligible to resolve names that are passed in with no scheme. Higher priority resolvers will be tried before lower priority schemes. </p>
+
+</div>
+</div>
+<a class="anchor" id="a42ba392534ac248b5a4ac1f87cd9b3b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>* grpc_resolver_create </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>subchannel_factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a resolver given <em>name</em>. </p>
+<p>First tries to parse <em>name</em> as a URI. If this succeeds, tries to locate a registered resolver factory based on the URI scheme. If parsing or location fails, prefixes default_prefix from grpc_resolver_registry_init to name, and tries again (if default_prefix was not NULL). If a resolver factory was found, use it to instantiate a resolver and return it. If a resolver factory was not found, return NULL. </p>
+
+</div>
+</div>
+<a class="anchor" id="a10ad765940e4f2ebf9d6bdc6b97d0fb0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_registry_init </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>default_prefix</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7e9178815fe26123c9413514e1212ca6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_resolver_registry_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/resolver__registry_8h_source.html b/doc/ref/core.internal/html/resolver__registry_8h_source.html
new file mode 100644
index 0000000000..f4b420974e
--- /dev/null
+++ b/doc/ref/core.internal/html/resolver__registry_8h_source.html
@@ -0,0 +1,156 @@
+<!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: src/core/client_config/resolver_registry.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">resolver_registry.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="resolver__registry_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_REGISTRY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_REGISTRY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="resolver__factory_8h.html">src/core/client_config/resolver_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0">grpc_resolver_registry_init</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *default_prefix);</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6">grpc_resolver_registry_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">grpc_register_resolver_type</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *scheme,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *<a class="code" href="resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0">grpc_resolver_create</a>(</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name, <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="code" href="structsubchannel__factory.html">subchannel_factory</a>);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVER_REGISTRY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="resolver__registry_8h_html_a563d9d398ed1757d9c5f78ae2ec7b9d7"><div class="ttname"><a href="resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7">grpc_register_resolver_type</a></div><div class="ttdeci">void grpc_register_resolver_type(const char *scheme, grpc_resolver_factory *factory)</div><div class="ttdoc">Register a resolver type. </div><div class="ttdef"><b>Definition:</b> resolver_registry.c:68</div></div>
+<div class="ttc" id="structgrpc__resolver_html"><div class="ttname"><a href="structgrpc__resolver.html">grpc_resolver</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver.h:46</div></div>
+<div class="ttc" id="structsubchannel__factory_html"><div class="ttname"><a href="structsubchannel__factory.html">subchannel_factory</a></div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:131</div></div>
+<div class="ttc" id="resolver__factory_8h_html"><div class="ttname"><a href="resolver__factory_8h.html">resolver_factory.h</a></div></div>
+<div class="ttc" id="resolver__registry_8h_html_a42ba392534ac248b5a4ac1f87cd9b3b0"><div class="ttname"><a href="resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0">grpc_resolver_create</a></div><div class="ttdeci">grpc_resolver * grpc_resolver_create(const char *name, grpc_subchannel_factory *subchannel_factory)</div><div class="ttdoc">Create a resolver given name. </div><div class="ttdef"><b>Definition:</b> resolver_registry.c:96</div></div>
+<div class="ttc" id="structgrpc__resolver__factory_html"><div class="ttname"><a href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver_factory.h:46</div></div>
+<div class="ttc" id="resolver__registry_8h_html_a7e9178815fe26123c9413514e1212ca6"><div class="ttname"><a href="resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6">grpc_resolver_registry_shutdown</a></div><div class="ttdeci">void grpc_resolver_registry_shutdown(void)</div><div class="ttdef"><b>Definition:</b> resolver_registry.c:59</div></div>
+<div class="ttc" id="resolver__registry_8h_html_a10ad765940e4f2ebf9d6bdc6b97d0fb0"><div class="ttname"><a href="resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0">grpc_resolver_registry_init</a></div><div class="ttdeci">void grpc_resolver_registry_init(const char *default_prefix)</div><div class="ttdef"><b>Definition:</b> resolver_registry.c:54</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html"><div class="ttname"><a href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></div><div class="ttdoc">Constructor for new configured channels. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:45</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/rpc__stat__id_8h.html b/doc/ref/core.internal/html/rpc__stat__id_8h.html
new file mode 100644
index 0000000000..64b921e5c3
--- /dev/null
+++ b/doc/ref/core.internal/html/rpc__stat__id_8h.html
@@ -0,0 +1,206 @@
+<!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: src/core/census/rpc_stat_id.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">rpc_stat_id.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rpc__stat__id_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a59e5e9d32ec60d7d202ebd834117c7b6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#a59e5e9d32ec60d7d202ebd834117c7b6">CENSUS_INVALID_STAT_ID</a>&#160;&#160;&#160;0 /* ID 0 is always invalid */</td></tr>
+<tr class="separator:a59e5e9d32ec60d7d202ebd834117c7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaec3ab6b88faa6f3d17df39886839b4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#aeaec3ab6b88faa6f3d17df39886839b4">CENSUS_RPC_CLIENT_REQUESTS</a>&#160;&#160;&#160;1 /* Count of client requests sent. */</td></tr>
+<tr class="separator:aeaec3ab6b88faa6f3d17df39886839b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdbb1e62656b892c48ef4b5123be59e2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#abdbb1e62656b892c48ef4b5123be59e2">CENSUS_RPC_SERVER_REQUESTS</a>&#160;&#160;&#160;2 /* Count of server requests sent. */</td></tr>
+<tr class="separator:abdbb1e62656b892c48ef4b5123be59e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab98fe10ab9da977ff1ab146fb47c25c6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#ab98fe10ab9da977ff1ab146fb47c25c6">CENSUS_RPC_CLIENT_ERRORS</a>&#160;&#160;&#160;3 /* Client error counts. */</td></tr>
+<tr class="separator:ab98fe10ab9da977ff1ab146fb47c25c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a653739d1d6b9c46c169dd40023e883c3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#a653739d1d6b9c46c169dd40023e883c3">CENSUS_RPC_SERVER_ERRORS</a>&#160;&#160;&#160;4 /* Server error counts. */</td></tr>
+<tr class="separator:a653739d1d6b9c46c169dd40023e883c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18893b8a61bb96d779e5f3e1c6384fe2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#a18893b8a61bb96d779e5f3e1c6384fe2">CENSUS_RPC_CLIENT_LATENCY</a>&#160;&#160;&#160;5 /* Client side request latency. */</td></tr>
+<tr class="separator:a18893b8a61bb96d779e5f3e1c6384fe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab30ee75f97d6c9361d8667d62349f49e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__stat__id_8h.html#ab30ee75f97d6c9361d8667d62349f49e">CENSUS_RPC_SERVER_LATENCY</a>&#160;&#160;&#160;6 /* Server side request latency. */</td></tr>
+<tr class="separator:ab30ee75f97d6c9361d8667d62349f49e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a59e5e9d32ec60d7d202ebd834117c7b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_INVALID_STAT_ID&#160;&#160;&#160;0 /* ID 0 is always invalid */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab98fe10ab9da977ff1ab146fb47c25c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_RPC_CLIENT_ERRORS&#160;&#160;&#160;3 /* Client error counts. */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a18893b8a61bb96d779e5f3e1c6384fe2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_RPC_CLIENT_LATENCY&#160;&#160;&#160;5 /* Client side request latency. */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeaec3ab6b88faa6f3d17df39886839b4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_RPC_CLIENT_REQUESTS&#160;&#160;&#160;1 /* Count of client requests sent. */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a653739d1d6b9c46c169dd40023e883c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_RPC_SERVER_ERRORS&#160;&#160;&#160;4 /* Server error counts. */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab30ee75f97d6c9361d8667d62349f49e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_RPC_SERVER_LATENCY&#160;&#160;&#160;6 /* Server side request latency. */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abdbb1e62656b892c48ef4b5123be59e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CENSUS_RPC_SERVER_REQUESTS&#160;&#160;&#160;2 /* Count of server requests sent. */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/rpc__stat__id_8h_source.html b/doc/ref/core.internal/html/rpc__stat__id_8h_source.html
new file mode 100644
index 0000000000..d3e7c634cc
--- /dev/null
+++ b/doc/ref/core.internal/html/rpc__stat__id_8h_source.html
@@ -0,0 +1,145 @@
+<!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: src/core/census/rpc_stat_id.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_63ea090b1bf0393f23b745b651ae7f2b.html">census</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">rpc_stat_id.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rpc__stat__id_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef CENSUS_RPC_STAT_ID_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_STAT_ID_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Stats ID&#39;s used for RPC measurements. */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#a59e5e9d32ec60d7d202ebd834117c7b6"> 38</a></span>&#160;<span class="preprocessor">#define CENSUS_INVALID_STAT_ID 0 </span><span class="comment">/* ID 0 is always invalid */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#aeaec3ab6b88faa6f3d17df39886839b4"> 39</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_CLIENT_REQUESTS 1 </span><span class="comment">/* Count of client requests sent. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#abdbb1e62656b892c48ef4b5123be59e2"> 40</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_SERVER_REQUESTS 2 </span><span class="comment">/* Count of server requests sent. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#ab98fe10ab9da977ff1ab146fb47c25c6"> 41</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_CLIENT_ERRORS 3 </span><span class="comment">/* Client error counts. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#a653739d1d6b9c46c169dd40023e883c3"> 42</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_SERVER_ERRORS 4 </span><span class="comment">/* Server error counts. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#a18893b8a61bb96d779e5f3e1c6384fe2"> 43</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_CLIENT_LATENCY 5 </span><span class="comment">/* Client side request latency. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="rpc__stat__id_8h.html#ab30ee75f97d6c9361d8667d62349f49e"> 44</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define CENSUS_RPC_SERVER_LATENCY 6 </span><span class="comment">/* Server side request latency. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* CENSUS_RPC_STAT_ID_H */</span><span class="preprocessor"></span></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/search/all_0.html b/doc/ref/core.internal/html/search/all_0.html
new file mode 100644
index 0000000000..17b6da85df
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_0.js b/doc/ref/core.internal/html/search/all_0.js
new file mode 100644
index 0000000000..aa3146dcea
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['_5fgnu_5fsource',['_GNU_SOURCE',['../tcp__server__posix_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;tcp_server_posix.c'],['../cpu__linux_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;cpu_linux.c'],['../env__linux_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;env_linux.c'],['../log__linux_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;log_linux.c']]],
+ ['_5fposix_5fsource',['_POSIX_SOURCE',['../log__linux_8c.html#ac3d144aa01e765a1fae62ab5491c7cc1',1,'log_linux.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_1.html b/doc/ref/core.internal/html/search/all_1.html
new file mode 100644
index 0000000000..e2906449f2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_1.js b/doc/ref/core.internal/html/search/all_1.js
new file mode 100644
index 0000000000..2581caad49
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_1.js
@@ -0,0 +1,67 @@
+var searchData=
+[
+ ['accept_5fstream',['accept_stream',['../structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a',1,'grpc_chttp2_transport']]],
+ ['accept_5fstream_5fuser_5fdata',['accept_stream_user_data',['../structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f',1,'grpc_chttp2_transport']]],
+ ['accepting_5fstream',['accepting_stream',['../structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e',1,'grpc_chttp2_transport']]],
+ ['access_5ftoken_5fmd',['access_token_md',['../structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be',1,'grpc_oauth2_token_fetcher_credentials::access_token_md()'],['../structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09',1,'grpc_access_token_credentials::access_token_md()'],['../structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693',1,'grpc_fake_oauth2_credentials::access_token_md()']]],
+ ['activated',['ACTIVATED',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d',1,'server.c']]],
+ ['active',['active',['../structgrpc__subchannel.html#a9095183eaf77899e3b932d3445cfa45b',1,'grpc_subchannel']]],
+ ['active_5fversion',['active_version',['../structgrpc__subchannel.html#a6569eb7df7abc7fd022ff8c1a6ce2ae1',1,'grpc_subchannel']]],
+ ['add_5fchannel_5farg_2ec',['add_channel_arg.c',['../add__channel__arg_8c.html',1,'']]],
+ ['add_5fchannel_5farg_2eh',['add_channel_arg.h',['../add__channel__arg_8h.html',1,'']]],
+ ['add_5fdeadline_5fscale',['ADD_DEADLINE_SCALE',['../alarm_8c.html#a27a820068e725cd087726fc5d913a5b6',1,'alarm.c']]],
+ ['add_5ffd',['add_fd',['../structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5',1,'grpc_pollset_vtable']]],
+ ['add_5fto_5fpollset',['add_to_pollset',['../structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556',1,'grpc_endpoint_vtable']]],
+ ['add_5fto_5fpollset_5fset',['add_to_pollset_set',['../structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c',1,'grpc_endpoint_vtable']]],
+ ['added_5fto_5fiocp',['added_to_iocp',['../structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47',1,'grpc_winsocket']]],
+ ['addr',['addr',['../structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834',1,'grpc_connect_in_args::addr()'],['../structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb',1,'grpc_subchannel_args::addr()'],['../structgrpc__resolved__address.html#a664035b0fc073c4a49f5e7c1cc765c9d',1,'grpc_resolved_address::addr()'],['../structsockaddr__resolver.html#a35fd9ba04c766da4556c76e6f32a6356',1,'sockaddr_resolver::addr()'],['../structgrpc__subchannel.html#a1133699340905f7c7f8c50fc97591647',1,'grpc_subchannel::addr()']]],
+ ['addr_5flen',['addr_len',['../structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b',1,'grpc_connect_in_args::addr_len()'],['../structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026',1,'grpc_subchannel_args::addr_len()'],['../structsockaddr__resolver.html#acad714ee68d2e23a4157f49f7fc35e91',1,'sockaddr_resolver::addr_len()'],['../structgrpc__subchannel.html#ab74ce5a1e1067a508e74048ec68aea10',1,'grpc_subchannel::addr_len()']]],
+ ['addresses',['addresses',['../structinternal__request.html#a0ab2a9ca4e299dc1f8fa41de2e3384b0',1,'internal_request']]],
+ ['addrs',['addrs',['../structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c',1,'grpc_resolved_addresses']]],
+ ['after_5fprioritization',['after_prioritization',['../structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0',1,'grpc_chttp2_hpack_parser']]],
+ ['aggregate_5ftotal_5fweight',['aggregate_total_weight',['../structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1',1,'grpc_time_averaged_stats']]],
+ ['aggregate_5fweighted_5favg',['aggregate_weighted_avg',['../structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab',1,'grpc_time_averaged_stats']]],
+ ['alarm',['alarm',['../structgrpc__subchannel.html#af42dd9bca8055a7afb3415f857ca28fa',1,'grpc_subchannel::alarm()'],['../structgrpc__call.html#a673a0cdde6bc7ebe5ff66820b8bd0b91',1,'grpc_call::alarm()'],['../structstate__watcher.html#a550220a27c14e026329a260cd581ece2',1,'state_watcher::alarm()']]],
+ ['alarm_2ec',['alarm.c',['../alarm_8c.html',1,'']]],
+ ['alarm_2eh',['alarm.h',['../alarm_8h.html',1,'']]],
+ ['alarm_5fcapacity',['alarm_capacity',['../structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd',1,'grpc_alarm_heap']]],
+ ['alarm_5fcount',['alarm_count',['../structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5',1,'grpc_alarm_heap']]],
+ ['alarm_5fheap_2ec',['alarm_heap.c',['../alarm__heap_8c.html',1,'']]],
+ ['alarm_5fheap_2eh',['alarm_heap.h',['../alarm__heap_8h.html',1,'']]],
+ ['alarm_5finternal_2eh',['alarm_internal.h',['../alarm__internal_8h.html',1,'']]],
+ ['alarms',['alarms',['../structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82',1,'grpc_alarm_heap']]],
+ ['alg',['alg',['../structjose__header.html#a1f2a1e1efa6f64762c67f7c688790c0d',1,'jose_header']]],
+ ['algorithm_2ec',['algorithm.c',['../algorithm_8c.html',1,'']]],
+ ['alloc_2ec',['alloc.c',['../alloc_8c.html',1,'']]],
+ ['alloc_2eh',['alloc.h',['../alloc_8h.html',1,'']]],
+ ['allocated',['allocated',['../structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e',1,'grpc_credentials_md_store::allocated()'],['../structjson__writer__userdata.html#a6be58e44bfcd53828551b919df38489d',1,'json_writer_userdata::allocated()']]],
+ ['allocated_5fcompletions',['allocated_completions',['../structgrpc__call.html#a7fa8c9ad3543546625b2aaa7d2853c05',1,'grpc_call']]],
+ ['allocated_5fmappings',['allocated_mappings',['../structgrpc__jwt__verifier.html#adcf1fd004d97c7345bffbbfbb5983e3c',1,'grpc_jwt_verifier']]],
+ ['allocated_5fsize',['allocated_size',['../structtsi__fake__frame.html#ac48b3f97ad8df8b87cf38b75d843591b',1,'tsi_fake_frame']]],
+ ['alpn_2ec',['alpn.c',['../alpn_8c.html',1,'']]],
+ ['alpn_2eh',['alpn.h',['../alpn_8h.html',1,'']]],
+ ['alpn_5fprotocol_5flist',['alpn_protocol_list',['../structtsi__ssl__client__handshaker__factory.html#a92aea4cb778959043703fcc3623c68a9',1,'tsi_ssl_client_handshaker_factory::alpn_protocol_list()'],['../structtsi__ssl__server__handshaker__factory.html#a02579737ef9a57855da159c54c05955f',1,'tsi_ssl_server_handshaker_factory::alpn_protocol_list()']]],
+ ['alpn_5fprotocol_5flist_5flength',['alpn_protocol_list_length',['../structtsi__ssl__client__handshaker__factory.html#a63415a7f73f99c3ccee2addc915c9482',1,'tsi_ssl_client_handshaker_factory::alpn_protocol_list_length()'],['../structtsi__ssl__server__handshaker__factory.html#a1dd579a38c0ab5d7f1304b26a838954b',1,'tsi_ssl_server_handshaker_factory::alpn_protocol_list_length()']]],
+ ['amount',['amount',['../structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2',1,'grpc_chttp2_window_update_parser']]],
+ ['announce_5fwindow',['announce_window',['../structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17',1,'grpc_chttp2_stream_writing']]],
+ ['arg',['arg',['../structarg.html',1,'arg'],['../structlistener.html#a979a29a26af9ef7a83a22f0cdd7fe1a4',1,'listener::arg()'],['../cmdline_8c.html#af240efb36795b416de0779ad5d5159e4',1,'arg():&#160;cmdline.c']]],
+ ['args',['args',['../structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76',1,'grpc_channel_args::args()'],['../structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081',1,'grpc_subchannel_args::args()'],['../structconnector.html#ad3d70fc61b888fcb246a4a307b16c4ec',1,'connector::args()'],['../structgrpc__subchannel.html#a9ffccab543a55f5ea53d9075f8d88079',1,'grpc_subchannel::args()'],['../structgpr__cmdline.html#a7966fa04e7e92065675c49535ea9c078',1,'gpr_cmdline::args()']]],
+ ['argtype',['argtype',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4',1,'cmdline.c']]],
+ ['argtype_5fbool',['ARGTYPE_BOOL',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4ad141b51bee7ccb14e0c83871f0e3ee0d',1,'cmdline.c']]],
+ ['argtype_5fint',['ARGTYPE_INT',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4a620547b20bcf630ba7f4d727fdb22521',1,'cmdline.c']]],
+ ['argtype_5fstring',['ARGTYPE_STRING',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4a50a996a2423b2fd5397a14b362fa23ab',1,'cmdline.c']]],
+ ['argv0',['argv0',['../structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e',1,'gpr_cmdline']]],
+ ['async_5fsetup_5ftask',['async_setup_task',['../structcall__data.html#ab21ef8aafd3c095825805e29e69670ce',1,'call_data']]],
+ ['atm',['atm',['../unionlockfree__node.html#a8bac5e680ab1fce893f7727f7a0be892',1,'lockfree_node']]],
+ ['atm_2eh',['atm.h',['../atm_8h.html',1,'']]],
+ ['atm_5fgcc_5fatomic_2eh',['atm_gcc_atomic.h',['../atm__gcc__atomic_8h.html',1,'']]],
+ ['atm_5fgcc_5fsync_2eh',['atm_gcc_sync.h',['../atm__gcc__sync_8h.html',1,'']]],
+ ['atm_5fwin32_2eh',['atm_win32.h',['../atm__win32_8h.html',1,'']]],
+ ['aud',['aud',['../structgrpc__jwt__claims.html#ab3aeb778bc0983824534ffa0c1e51f9c',1,'grpc_jwt_claims']]],
+ ['audience',['audience',['../structverifier__cb__ctx.html#afdbd6e54ed44e9938991b0ed1915ed2d',1,'verifier_cb_ctx']]],
+ ['auth_5fcontext',['auth_context',['../structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17',1,'grpc_security_connector::auth_context()'],['../structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c',1,'grpc_client_security_context::auth_context()'],['../structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1',1,'grpc_server_security_context::auth_context()']]],
+ ['auth_5ffilters_2eh',['auth_filters.h',['../auth__filters_8h.html',1,'']]],
+ ['authority',['authority',['../structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7',1,'grpc_uri::authority()'],['../structcall__data.html#a216c8a3e91a659b6ad5f3de09bbf8ff0',1,'call_data::authority()'],['../structregistered__call.html#aa41fdf7362b58db7148acb228df62408',1,'registered_call::authority()']]],
+ ['authority_5fkey',['authority_key',['../structchannel__data.html#abff9ead49754255e5fe5f5767634b553',1,'channel_data']]],
+ ['authority_5fstring',['authority_string',['../structchannel__data.html#a65b7bac5d0844808a6d6b399ca1d234f',1,'channel_data::authority_string()'],['../structgrpc__channel.html#a9ad924bb3cc339c10d106f48b9a4a959',1,'grpc_channel::authority_string()']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_10.html b/doc/ref/core.internal/html/search/all_10.html
new file mode 100644
index 0000000000..c55c8367e4
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_10.js b/doc/ref/core.internal/html/search/all_10.js
new file mode 100644
index 0000000000..8a70bb7876
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_10.js
@@ -0,0 +1,95 @@
+var searchData=
+[
+ ['p',['p',['../structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d',1,'grpc_arg']]],
+ ['parent',['parent',['../structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba',1,'grpc_json']]],
+ ['parser',['parser',['../structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61',1,'grpc_chttp2_transport_parsing::parser()'],['../structinternal__request.html#a2de0ab3497414fd48d1a180c4473cfab',1,'internal_request::parser()']]],
+ ['parser_2ec',['parser.c',['../parser_8c.html',1,'']]],
+ ['parser_2eh',['parser.h',['../parser_8h.html',1,'']]],
+ ['parser_5fdata',['parser_data',['../structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442',1,'grpc_chttp2_transport_parsing']]],
+ ['parsing',['parsing',['../structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae',1,'grpc_chttp2_hpack_parser::parsing()'],['../structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c',1,'grpc_chttp2_transport::parsing()'],['../structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9',1,'grpc_chttp2_stream::parsing()']]],
+ ['parsing_2ec',['parsing.c',['../parsing_8c.html',1,'']]],
+ ['parsing_5factive',['parsing_active',['../structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3',1,'grpc_chttp2_transport']]],
+ ['parsing_5fstream_5fmap',['parsing_stream_map',['../structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937',1,'grpc_chttp2_transport']]],
+ ['path',['path',['../structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa',1,'grpc_httpcli_request::path()'],['../structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f',1,'grpc_uri::path()'],['../structregistered__call.html#a9abf9cadc3985fe0eacd827dcb857ea5',1,'registered_call::path()'],['../structcall__data.html#a6bcb3a806a24c9818f835251b97c01f8',1,'call_data::path()']]],
+ ['path_5fkey',['path_key',['../structchannel__data.html#ad664631571a7160913f62e95368bbb2d',1,'channel_data']]],
+ ['path_5fstring',['path_string',['../structchannel__data.html#a3b2675d97ec1d95dc4cde4db5b00e0e7',1,'channel_data::path_string()'],['../structgrpc__channel.html#ad55dee766f5bae6c7bc00ad07bcb4b04',1,'grpc_channel::path_string()']]],
+ ['peer',['peer',['../structgrpc__ssl__channel__security__connector.html#a8624078f54a0cf3dfdd47f4a0ac81042',1,'grpc_ssl_channel_security_connector']]],
+ ['peer_5fidentity_5fproperty_5fname',['peer_identity_property_name',['../structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33',1,'grpc_auth_context']]],
+ ['peer_5fstring',['peer_string',['../structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7',1,'grpc_chttp2_transport']]],
+ ['pem_5fcert_5fchain',['pem_cert_chain',['../structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696',1,'grpc_ssl_config']]],
+ ['pem_5fcert_5fchain_5fsize',['pem_cert_chain_size',['../structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03',1,'grpc_ssl_config']]],
+ ['pem_5fcert_5fchains',['pem_cert_chains',['../structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270',1,'grpc_ssl_server_config']]],
+ ['pem_5fcert_5fchains_5fsizes',['pem_cert_chains_sizes',['../structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0',1,'grpc_ssl_server_config']]],
+ ['pem_5fprivate_5fkey',['pem_private_key',['../structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a',1,'grpc_ssl_config']]],
+ ['pem_5fprivate_5fkey_5fsize',['pem_private_key_size',['../structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820',1,'grpc_ssl_config']]],
+ ['pem_5fprivate_5fkeys',['pem_private_keys',['../structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49',1,'grpc_ssl_server_config']]],
+ ['pem_5fprivate_5fkeys_5fsizes',['pem_private_keys_sizes',['../structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c',1,'grpc_ssl_server_config']]],
+ ['pem_5froot_5fcerts',['pem_root_certs',['../structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41',1,'grpc_ssl_config::pem_root_certs()'],['../structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d',1,'grpc_ssl_server_config::pem_root_certs()']]],
+ ['pem_5froot_5fcerts_5fsize',['pem_root_certs_size',['../structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561',1,'grpc_ssl_config::pem_root_certs_size()'],['../structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121',1,'grpc_ssl_server_config::pem_root_certs_size()']]],
+ ['pending',['PENDING',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73',1,'server.c']]],
+ ['pending_5fclosures_5fhead',['pending_closures_head',['../structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84',1,'grpc_chttp2_transport_global']]],
+ ['pending_5fclosures_5ftail',['pending_closures_tail',['../structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf',1,'grpc_chttp2_transport_global']]],
+ ['pending_5fevents',['pending_events',['../structgrpc__completion__queue.html#a613cc61628fa742f363fb3125e8550db',1,'grpc_completion_queue']]],
+ ['pending_5fhead',['pending_head',['../structrequest__matcher.html#aa302d9766527338ff4b416b59bbe1db2',1,'request_matcher']]],
+ ['pending_5fnext',['pending_next',['../structcall__data.html#ad76af7080f636ebaa53a1575af62094e',1,'call_data']]],
+ ['pending_5fpick',['pending_pick',['../structpending__pick.html',1,'pending_pick'],['../pick__first_8c.html#ad479509ed6c18dc54a54d231ec73a4e6',1,'pending_pick():&#160;pick_first.c']]],
+ ['pending_5fpicks',['pending_picks',['../structpick__first__lb__policy.html#a017af289ea4d9b9b392eadec3356ff56',1,'pick_first_lb_policy']]],
+ ['pending_5ftail',['pending_tail',['../structrequest__matcher.html#a87b7e22827aea02c49a435f8aff3cdfe',1,'request_matcher']]],
+ ['perform_5fop',['perform_op',['../structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4',1,'grpc_transport_vtable']]],
+ ['perform_5fstream_5fop',['perform_stream_op',['../structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab',1,'grpc_transport_vtable']]],
+ ['persistence_5ffactor',['persistence_factor',['../structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602',1,'grpc_time_averaged_stats']]],
+ ['pf_5fdestroy',['pf_destroy',['../pick__first_8c.html#ab2197438a4e2ecaee6327c0a642c5bb9',1,'pick_first.c']]],
+ ['pf_5fexit_5fidle',['pf_exit_idle',['../pick__first_8c.html#a114522776c50c119fcb6eaa6241ee748',1,'pick_first.c']]],
+ ['pf_5fpick',['pf_pick',['../pick__first_8c.html#af15f282d4ed6e68ea1289e139c42db9a',1,'pick_first.c']]],
+ ['pf_5fshutdown',['pf_shutdown',['../pick__first_8c.html#a1592bd5626dae37b94c5a9d719beaf17',1,'pick_first.c']]],
+ ['phase',['phase',['../structstate__watcher.html#a02cd41caaad234931890c2f4740bf345',1,'state_watcher']]],
+ ['pick',['pick',['../structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f',1,'grpc_lb_policy_vtable']]],
+ ['pick_5ffirst_2ec',['pick_first.c',['../pick__first_8c.html',1,'']]],
+ ['pick_5ffirst_2eh',['pick_first.h',['../pick__first_8h.html',1,'']]],
+ ['pick_5ffirst_5flb_5fpolicy',['pick_first_lb_policy',['../structpick__first__lb__policy.html',1,'']]],
+ ['picked_5fchannel',['picked_channel',['../structcall__data.html#a96231ab5cca907d5638687fc2d64cccb',1,'call_data']]],
+ ['ping',['ping',['../structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30',1,'grpc_chttp2_transport_parsing']]],
+ ['ping_5fcounter',['ping_counter',['../structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7',1,'grpc_chttp2_transport_global']]],
+ ['pings',['pings',['../structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad',1,'grpc_chttp2_transport_global::pings()'],['../structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b',1,'grpc_chttp2_transport_parsing::pings()']]],
+ ['plaintext_5fheader',['PLAINTEXT_HEADER',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea6b3fea68a44cbdbcd96fbdcf35d98a4c',1,'hpack_parser.c']]],
+ ['pointer',['pointer',['../structgrpc__arg.html#a85b5bbfbdec09ae46cff15628096137a',1,'grpc_arg']]],
+ ['pollset',['pollset',['../structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6',1,'grpc_fd_watcher::pollset()'],['../structinternal__request.html#aba6c008fc3a067827acf1dea8d88dec7',1,'internal_request::pollset()'],['../structcall__data.html#ab3a66a414a73ad49d82a87935ec0c08e',1,'call_data::pollset()'],['../structgrpc__composite__credentials__metadata__context.html#a826b0b290b5335867fb0299e75006083',1,'grpc_composite_credentials_metadata_context::pollset()'],['../structcompute__engine__detector.html#aadec91057716658d818c9dd3ead90ccd',1,'compute_engine_detector::pollset()'],['../structverifier__cb__ctx.html#a66c16d6c5a98e27b0bdc901f4f2f010a',1,'verifier_cb_ctx::pollset()'],['../structpending__pick.html#afcad270e19b4e1e0a709426ca42e01fe',1,'pending_pick::pollset()'],['../structwaiting__for__connect.html#a18622a8e1fc008c3c9e97d0ae72a4369',1,'waiting_for_connect::pollset()'],['../structgrpc__completion__queue.html#aea3ae4f771564833e6082e50c4ebbbdc',1,'grpc_completion_queue::pollset()']]],
+ ['pollset_2eh',['pollset.h',['../pollset_8h.html',1,'']]],
+ ['pollset_5fcapacity',['pollset_capacity',['../structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7',1,'grpc_pollset_set']]],
+ ['pollset_5fcount',['pollset_count',['../structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9',1,'grpc_pollset_set']]],
+ ['pollset_5fkick_5fposix_2ec',['pollset_kick_posix.c',['../pollset__kick__posix_8c.html',1,'']]],
+ ['pollset_5fkick_5fposix_2eh',['pollset_kick_posix.h',['../pollset__kick__posix_8h.html',1,'']]],
+ ['pollset_5fmultipoller_5fwith_5fepoll_2ec',['pollset_multipoller_with_epoll.c',['../pollset__multipoller__with__epoll_8c.html',1,'']]],
+ ['pollset_5fmultipoller_5fwith_5fpoll_5fposix_2ec',['pollset_multipoller_with_poll_posix.c',['../pollset__multipoller__with__poll__posix_8c.html',1,'']]],
+ ['pollset_5fposix_2ec',['pollset_posix.c',['../pollset__posix_8c.html',1,'']]],
+ ['pollset_5fposix_2eh',['pollset_posix.h',['../pollset__posix_8h.html',1,'']]],
+ ['pollset_5fset',['pollset_set',['../structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2',1,'grpc_httpcli_context::pollset_set()'],['../structchannel__data.html#ac98d4251e7919399dc6504b3ac6d8977',1,'channel_data::pollset_set()'],['../structgrpc__subchannel.html#a5d4cf69a350aa223319ed1d916ae55d0',1,'grpc_subchannel::pollset_set()']]],
+ ['pollset_5fset_2eh',['pollset_set.h',['../pollset__set_8h.html',1,'']]],
+ ['pollset_5fset_5fposix_2ec',['pollset_set_posix.c',['../pollset__set__posix_8c.html',1,'']]],
+ ['pollset_5fset_5fposix_2eh',['pollset_set_posix.h',['../pollset__set__posix_8h.html',1,'']]],
+ ['pollset_5fset_5fwindows_2ec',['pollset_set_windows.c',['../pollset__set__windows_8c.html',1,'']]],
+ ['pollset_5fset_5fwindows_2eh',['pollset_set_windows.h',['../pollset__set__windows_8h.html',1,'']]],
+ ['pollset_5fwindows_2ec',['pollset_windows.c',['../pollset__windows_8c.html',1,'']]],
+ ['pollset_5fwindows_2eh',['pollset_windows.h',['../pollset__windows_8h.html',1,'']]],
+ ['pollsets',['pollsets',['../structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb',1,'grpc_pollset_set::pollsets()'],['../structgrpc__server.html#a747c9f6abd58918d40735615ad95e434',1,'grpc_server::pollsets()']]],
+ ['port_5fplatform_2eh',['port_platform.h',['../port__platform_8h.html',1,'']]],
+ ['prev',['prev',['../structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97',1,'grpc_alarm::prev()'],['../structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465',1,'grpc_fd_watcher::prev()'],['../structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d',1,'grpc_iomgr_object::prev()'],['../structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44',1,'grpc_kick_fd_info::prev()'],['../structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee',1,'grpc_json::prev()'],['../structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400',1,'grpc_chttp2_stream_link::prev()'],['../structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6',1,'grpc_chttp2_outstanding_ping::prev()'],['../structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0',1,'grpc_linked_mdelem::prev()'],['../structcall__link.html#abbc2f63926a688bd3fc03f5df8705bc3',1,'call_link::prev()'],['../structchannel__data.html#afbde4416755c3c9a0b7d0021e8e290c5',1,'channel_data::prev()'],['../structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4',1,'gpr_cancellable_list_::prev()']]],
+ ['private_5fkey',['private_key',['../structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72',1,'grpc_ssl_pem_key_cert_pair::private_key()'],['../structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2',1,'grpc_auth_json_key::private_key()']]],
+ ['private_5fkey_5fid',['private_key_id',['../structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4',1,'grpc_auth_json_key']]],
+ ['process_5fbytes_5ffrom_5fpeer',['process_bytes_from_peer',['../structtsi__handshaker__vtable.html#aefed0ec53fa68de5417c720357c50a38',1,'tsi_handshaker_vtable']]],
+ ['properties',['properties',['../structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7',1,'grpc_auth_context::properties()'],['../structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a',1,'tsi_peer::properties()']]],
+ ['property_5fcount',['property_count',['../structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b',1,'grpc_auth_context::property_count()'],['../structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8',1,'tsi_peer::property_count()']]],
+ ['protect',['protect',['../structtsi__frame__protector__vtable.html#aa9c6a8a8c0154365f7a62924e1ad458f',1,'tsi_frame_protector_vtable']]],
+ ['protect_5fflush',['protect_flush',['../structtsi__frame__protector__vtable.html#a4dc40054ebcebc5d9bc87a63adce0614',1,'tsi_frame_protector_vtable']]],
+ ['protect_5fframe',['protect_frame',['../structtsi__fake__frame__protector.html#a279c6e7620230ba5c790f7063846dbce',1,'tsi_fake_frame_protector']]],
+ ['protector',['protector',['../structsecure__endpoint.html#a43b8ec6db9164ca64be2b1629822d5ec',1,'secure_endpoint']]],
+ ['protector_5fmu',['protector_mu',['../structsecure__endpoint.html#a4fa8c5008b701606701d1d93c989961e',1,'secure_endpoint']]],
+ ['ptr',['ptr',['../structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009',1,'grpc_pollset']]],
+ ['publish_5fsopb',['publish_sopb',['../structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe',1,'grpc_chttp2_stream_global']]],
+ ['publish_5fstate',['publish_state',['../structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3',1,'grpc_chttp2_stream_global']]],
+ ['published',['published',['../structsockaddr__resolver.html#a38967133a685f7d20effceaaeec54e5e',1,'sockaddr_resolver']]],
+ ['published_5fcancelled',['published_cancelled',['../structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be',1,'grpc_chttp2_stream_global']]],
+ ['published_5fstate',['published_state',['../structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665',1,'grpc_chttp2_stream_global']]],
+ ['published_5fversion',['published_version',['../structdns__resolver.html#aaf1729e3f0480a378eb4689e6105454b',1,'dns_resolver']]],
+ ['pushed',['pushed',['../structgpr__stack__lockfree.html#a2e9bcdf7ab0d5eba90feec6754a7884a',1,'gpr_stack_lockfree']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_11.html b/doc/ref/core.internal/html/search/all_11.html
new file mode 100644
index 0000000000..6f3943a941
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_11.js b/doc/ref/core.internal/html/search/all_11.js
new file mode 100644
index 0000000000..f1c017a157
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_11.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['qbuf',['qbuf',['../structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4',1,'grpc_chttp2_transport_global::qbuf()'],['../structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308',1,'grpc_chttp2_transport_parsing::qbuf()']]],
+ ['queue_5fdeadline_5fcap',['queue_deadline_cap',['../structshard__type.html#a561cd2753aeec34ba62c823ca9471168',1,'shard_type']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_12.html b/doc/ref/core.internal/html/search/all_12.html
new file mode 100644
index 0000000000..3c7c89ef60
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_12.js b/doc/ref/core.internal/html/search/all_12.js
new file mode 100644
index 0000000000..74aa27a952
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_12.js
@@ -0,0 +1,100 @@
+var searchData=
+[
+ ['r',['r',['../structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a',1,'grpc_httpcli_parser']]],
+ ['random',['random',['../structgrpc__subchannel.html#aaf1f3f4c177860b9b000fea1c67e4af6',1,'grpc_subchannel']]],
+ ['raw',['raw',['../structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6',1,'grpc_byte_buffer']]],
+ ['rc',['rc',['../structnew__slice__refcount.html#ac72a90414d0021e8902d5cd9e5010f1b',1,'new_slice_refcount::rc()'],['../structnew__with__len__slice__refcount.html#a059da4cf3d67bbf0f8407872ee4c583b',1,'new_with_len_slice_refcount::rc()']]],
+ ['read_5fcb',['read_cb',['../structsecure__endpoint.html#a1abae10ca6f256c0ebc655e68f1d5a47',1,'secure_endpoint']]],
+ ['read_5fchar',['read_char',['../structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca',1,'grpc_json_reader_vtable']]],
+ ['read_5fclosed',['read_closed',['../structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a',1,'grpc_chttp2_stream_global']]],
+ ['read_5ffd',['read_fd',['../structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86',1,'grpc_wakeup_fd_info']]],
+ ['read_5finfo',['read_info',['../structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb',1,'grpc_winsocket']]],
+ ['read_5fstaging_5fbuffer',['read_staging_buffer',['../structsecure__endpoint.html#acb9f223fa1653bb697b63e21226c2915',1,'secure_endpoint']]],
+ ['read_5fstate',['read_state',['../structgrpc__call.html#a9f26a9a6519f11d88d97cd0b1f92c440',1,'grpc_call::read_state()'],['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17',1,'read_state():&#160;call.c']]],
+ ['read_5fstate_5fgot_5finitial_5fmetadata',['READ_STATE_GOT_INITIAL_METADATA',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a37370f960213dc0f115eb8495e038b2a',1,'call.c']]],
+ ['read_5fstate_5finitial',['READ_STATE_INITIAL',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17ad2197f646af67a6d937754c3a1417439',1,'call.c']]],
+ ['read_5fstate_5fread_5fclosed',['READ_STATE_READ_CLOSED',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a9c7de87cb383873b75a6de98df2dc445',1,'call.c']]],
+ ['read_5fstate_5fstream_5fclosed',['READ_STATE_STREAM_CLOSED',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17add056921b7a5dd24d85db716da87594a',1,'call.c']]],
+ ['read_5fuser_5fdata',['read_user_data',['../structsecure__endpoint.html#ae9adc2f043f1b89821897f926bd95ff5',1,'secure_endpoint']]],
+ ['read_5fwatcher',['read_watcher',['../structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27',1,'grpc_fd']]],
+ ['reading_5faction',['reading_action',['../structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885',1,'grpc_chttp2_transport']]],
+ ['reading_5fmessage',['reading_message',['../structgrpc__call.html#a9db5a5b3f304f49fef8c5ed3ce754761',1,'grpc_call']]],
+ ['readst',['readst',['../structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0',1,'grpc_fd']]],
+ ['reason_5fbytes',['reason_bytes',['../structgrpc__chttp2__rst__stream__parser.html#a254db3891d5bf60dec2f27a5ee6ef496',1,'grpc_chttp2_rst_stream_parser']]],
+ ['received_5fclose',['received_close',['../structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b',1,'grpc_chttp2_stream_parsing']]],
+ ['received_5fstatus',['received_status',['../structreceived__status.html',1,'']]],
+ ['receiving',['receiving',['../structgrpc__call.html#a95e4aaa4d6cd6b6f1568282178ba3682',1,'grpc_call']]],
+ ['record_5fstat_2ec',['record_stat.c',['../record__stat_8c.html',1,'']]],
+ ['recv_5fclose_5fon_5fserver',['recv_close_on_server',['../structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1',1,'grpc_op']]],
+ ['recv_5fdone_5fclosure',['recv_done_closure',['../structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c',1,'grpc_chttp2_stream_global']]],
+ ['recv_5finitial_5fmetadata',['recv_initial_metadata',['../structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749',1,'grpc_op']]],
+ ['recv_5fmessage',['recv_message',['../structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1',1,'grpc_op::recv_message()'],['../uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0',1,'grpc_ioreq_data::recv_message()']]],
+ ['recv_5fmetadata',['recv_metadata',['../uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8',1,'grpc_ioreq_data']]],
+ ['recv_5fops',['recv_ops',['../structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991',1,'grpc_transport_stream_op::recv_ops()'],['../structcall__data.html#a5a77f05f0ebe7e2fa851cb29f4175fd2',1,'call_data::recv_ops()'],['../structgrpc__call.html#a77c3749f20284b1a9a836286a470a08e',1,'grpc_call::recv_ops()']]],
+ ['recv_5fstate',['recv_state',['../structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc',1,'grpc_transport_stream_op::recv_state()'],['../structgrpc__call.html#a23a473fb241cc663a16873d18690535b',1,'grpc_call::recv_state()'],['../structcall__data.html#a58e1bd0d7508078f1e2ffae518f284c9',1,'call_data::recv_state()']]],
+ ['recv_5fstatus',['recv_status',['../uniongrpc__ioreq__data.html#ab9788c1a37dea6052f004111bc67d6e7',1,'grpc_ioreq_data']]],
+ ['recv_5fstatus_5fdetails',['recv_status_details',['../uniongrpc__ioreq__data.html#acddc8869b041b695c617cb46e941859e',1,'grpc_ioreq_data']]],
+ ['recv_5fstatus_5fon_5fclient',['recv_status_on_client',['../structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3',1,'grpc_op']]],
+ ['ref',['ref',['../structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15',1,'grpc_connector_vtable::ref()'],['../structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527',1,'grpc_resolver_factory_vtable::ref()'],['../structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed',1,'grpc_subchannel_factory_vtable::ref()'],['../structsecure__endpoint.html#a02863c0d02a5776bee65747c5553f517',1,'secure_endpoint::ref()'],['../structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7',1,'gpr_slice_refcount::ref()']]],
+ ['ref_5flog',['REF_LOG',['../subchannel_8c.html#a12a25b2a728caf10ef93487e8a41896c',1,'subchannel.c']]],
+ ['ref_5fmd_5flocked',['REF_MD_LOCKED',['../metadata_8c.html#a5456b7d52304a8749ca71440bc7c2a0f',1,'metadata.c']]],
+ ['ref_5fpass_5fargs',['REF_PASS_ARGS',['../subchannel_8c.html#a8b6e7b7a1e9f2434b354c7bae2760ab0',1,'subchannel.c']]],
+ ['ref_5ftransport',['REF_TRANSPORT',['../chttp2__transport_8c.html#a14b095839f9792316e7aea2ab7a68bdc',1,'chttp2_transport.c']]],
+ ['refcnt',['refcnt',['../structinternal__metadata.html#af658b2849de44285d529f4aa4da956f4',1,'internal_metadata']]],
+ ['refcount',['refcount',['../structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694',1,'grpc_credentials_md_store::refcount()'],['../structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6',1,'grpc_credentials::refcount()'],['../structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19',1,'grpc_security_connector::refcount()'],['../structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae',1,'grpc_auth_context::refcount()'],['../structgrpc__server__secure__state.html#ae73c249bbe0e5c30a103fe4fa2ec1f13',1,'grpc_server_secure_state::refcount()'],['../structinternal__string.html#a9e0174af2b64a5b66e09080c92a0aec2',1,'internal_string::refcount()'],['../structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24',1,'gpr_slice::refcount()']]],
+ ['refcounted',['refcounted',['../structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102',1,'gpr_slice']]],
+ ['refresh_5ftoken',['refresh_token',['../structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb',1,'grpc_refresh_token_credentials::refresh_token()'],['../structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12',1,'grpc_auth_refresh_token::refresh_token()']]],
+ ['refs',['refs',['../structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485',1,'grpc_lb_policy::refs()'],['../structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233',1,'grpc_resolver::refs()'],['../structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69',1,'grpc_chttp2_transport::refs()'],['../structconnector.html#ab2f6962cb7eff201b6b79655d8bace00',1,'connector::refs()'],['../structsubchannel__factory.html#a32ce0e8c21b78563576c8a620251a3f5',1,'subchannel_factory::refs()'],['../structgrpc__client__config.html#a176869d426cb1799e6eeebeb9cefd7e2',1,'grpc_client_config::refs()'],['../structdns__resolver.html#ab33e01167cedc1126007318a3c71238e',1,'dns_resolver::refs()'],['../structsockaddr__resolver.html#ae6ff58914bcf9afa2399f39fdd27ad5f',1,'sockaddr_resolver::refs()'],['../structconnection.html#a4f45cf20601ceebe1381dc83f1dbf516',1,'connection::refs()'],['../structgrpc__subchannel.html#ab4a1c366594861d4aa0da8b4ec9a3475',1,'grpc_subchannel::refs()'],['../structgrpc__subchannel__call.html#a74891e108fd0a94a2915e828c2a172c5',1,'grpc_subchannel_call::refs()'],['../structmerge__args__factory.html#aae69ffa567a7a04cf4c0f9f8eba0b852',1,'merge_args_factory::refs()'],['../structgrpc__channel.html#acc936d967cd122b7b5300387e8ea0abe',1,'grpc_channel::refs()'],['../structinternal__string.html#a870bec6b963c65fedd1290747c207650',1,'internal_string::refs()'],['../structgrpc__mdctx.html#a2764b3ed2bf9e59845aa9e1f02857d25',1,'grpc_mdctx::refs()'],['../structnew__slice__refcount.html#a2baa2f77ff0fd04fe3aa6b80c573e8fe',1,'new_slice_refcount::refs()'],['../structnew__with__len__slice__refcount.html#ae68449b1a65da5e9561a4762f5601fa3',1,'new_with_len_slice_refcount::refs()'],['../structmalloc__refcount.html#adcdbbc75e835cbf6fc50025880f5e569',1,'malloc_refcount::refs()']]],
+ ['refst',['refst',['../structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1',1,'grpc_fd']]],
+ ['registered',['registered',['../structrequested__call.html#a7ee06556aae0a6e22ca157a961c484ce',1,'requested_call']]],
+ ['registered_5fcall',['registered_call',['../structregistered__call.html',1,'registered_call'],['../channel_8c.html#a52a88ba75481c926895932b8b05951c2',1,'registered_call():&#160;channel.c'],['../server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa969f2119db66590473c2fa7f00e21c5a',1,'REGISTERED_CALL():&#160;server.c']]],
+ ['registered_5fcall_5fmu',['registered_call_mu',['../structgrpc__channel.html#aa59a21ba43df1a848efbc177cd5725cd',1,'grpc_channel']]],
+ ['registered_5fcalls',['registered_calls',['../structgrpc__channel.html#ac92f7c7b4dd87743f30a16aaaf91f061',1,'grpc_channel']]],
+ ['registered_5fmethod',['registered_method',['../structregistered__method.html',1,'registered_method'],['../structrequested__call.html#ae210a8bd23019d2008f1eb9ab1320eae',1,'requested_call::registered_method()'],['../server_8c.html#a6f8273ccf99ef212028d3488d579cf3b',1,'registered_method():&#160;server.c']]],
+ ['registered_5fmethod_5fmax_5fprobes',['registered_method_max_probes',['../structchannel__data.html#aa9b814136d8be896321481e78098008b',1,'channel_data']]],
+ ['registered_5fmethod_5fslots',['registered_method_slots',['../structchannel__data.html#a707bff2830ad502cdd36ec18235f12e1',1,'channel_data']]],
+ ['registered_5fmethods',['registered_methods',['../structchannel__data.html#a0c63e5d9500bc02961af18685479fc89',1,'channel_data::registered_methods()'],['../structgrpc__server.html#addf8e1f57942da0e5f7235668c0968bd',1,'grpc_server::registered_methods()']]],
+ ['registered_5fresolver',['registered_resolver',['../structregistered__resolver.html',1,'']]],
+ ['regress_5fweight',['regress_weight',['../structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d',1,'grpc_time_averaged_stats']]],
+ ['remaining_5finput',['remaining_input',['../structjson__reader__userdata.html#a3535b10b322fe1063463bbddadcbad61',1,'json_reader_userdata']]],
+ ['remaining_5fslice_5fbytes',['remaining_slice_bytes',['../structcall__data.html#a69fca2329317c8cf3d9c215334b2aa40',1,'call_data']]],
+ ['req_5fdone',['REQ_DONE',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17a9156fc9ac04c64171f05a5692a1356a9',1,'call.c']]],
+ ['req_5finitial',['REQ_INITIAL',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17a6268d672744bde6005590a30c8189779',1,'call.c']]],
+ ['req_5fready',['REQ_READY',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17a99044b02beb639fe667b1a5fcae61a96',1,'call.c']]],
+ ['req_5fstate',['req_state',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17',1,'call.c']]],
+ ['reqinfo_5fmaster',['reqinfo_master',['../structreqinfo__master.html',1,'']]],
+ ['reqset_5fdone',['REQSET_DONE',['../call_8c.html#afa1b821bc0571d94c462688e3deeeafd',1,'call.c']]],
+ ['reqset_5fempty',['REQSET_EMPTY',['../call_8c.html#a7810380d8811f64f6167a7427f22beb4',1,'call.c']]],
+ ['request_5fdata',['request_data',['../structgrpc__call.html#a7d8e4ea86a2539b59f762ba97652bd8d',1,'grpc_call']]],
+ ['request_5fflags',['request_flags',['../structgrpc__call.html#a43f9cd5720841b99ea69fd94aed0ee13',1,'grpc_call']]],
+ ['request_5ffreelist',['request_freelist',['../structgrpc__server.html#a70a23bf1b0e885d055f0c45382e7110a',1,'grpc_server']]],
+ ['request_5fkiller',['request_killer',['../structrequest__killer.html',1,'']]],
+ ['request_5fmatcher',['request_matcher',['../structrequest__matcher.html',1,'request_matcher'],['../structregistered__method.html#af4a01615a9970b99e38cacf58ed49da0',1,'registered_method::request_matcher()'],['../server_8c.html#a7c5e0489837d1efdf2f3fdb7087b59d4',1,'request_matcher():&#160;server.c']]],
+ ['request_5fmetadata_5fcreds',['request_metadata_creds',['../structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d',1,'grpc_channel_security_connector']]],
+ ['request_5fset',['request_set',['../structgrpc__call.html#adace21c70dcd672521c08f0465e33c95',1,'grpc_call']]],
+ ['request_5ftext',['request_text',['../structinternal__request.html#a17b242a8f7682f8438f357c5c7f05f67',1,'internal_request']]],
+ ['requested_5fcall',['requested_call',['../structrequested__call.html',1,'requested_call'],['../server_8c.html#a9b3e4fcd769f2a62cbbbde867715ef2c',1,'requested_call():&#160;server.c']]],
+ ['requested_5fcall_5ftype',['requested_call_type',['../server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a',1,'server.c']]],
+ ['requested_5fcalls',['requested_calls',['../structgrpc__server.html#ac582d8e154ce4f8a326bcf3a76f235e6',1,'grpc_server']]],
+ ['requests',['requests',['../structrequest__matcher.html#a5f69adf001614b2fda3756100b3ba60d',1,'request_matcher::requests()'],['../structrequest__killer.html#ae9c50f145796c60343bdc4100a79c231',1,'request_killer::requests()']]],
+ ['resolve_5faddress_2eh',['resolve_address.h',['../resolve__address_8h.html',1,'']]],
+ ['resolve_5faddress_5fposix_2ec',['resolve_address_posix.c',['../resolve__address__posix_8c.html',1,'']]],
+ ['resolve_5faddress_5fwindows_2ec',['resolve_address_windows.c',['../resolve__address__windows_8c.html',1,'']]],
+ ['resolved_5fconfig',['resolved_config',['../structdns__resolver.html#a368c90c0b364fd6b3459ca6ef25cfd6d',1,'dns_resolver']]],
+ ['resolved_5fversion',['resolved_version',['../structdns__resolver.html#aee7098ec311fd223ceb6e57e8bfdd2fc',1,'dns_resolver']]],
+ ['resolver',['resolver',['../structchannel__data.html#a8cf393ab5da1a500d6c6f8543c408682',1,'channel_data']]],
+ ['resolver_2ec',['resolver.c',['../resolver_8c.html',1,'']]],
+ ['resolver_2eh',['resolver.h',['../resolver_8h.html',1,'']]],
+ ['resolver_5ffactory_2ec',['resolver_factory.c',['../resolver__factory_8c.html',1,'']]],
+ ['resolver_5ffactory_2eh',['resolver_factory.h',['../resolver__factory_8h.html',1,'']]],
+ ['resolver_5fregistry_2ec',['resolver_registry.c',['../resolver__registry_8c.html',1,'']]],
+ ['resolver_5fregistry_2eh',['resolver_registry.h',['../resolver__registry_8h.html',1,'']]],
+ ['resolving',['resolving',['../structdns__resolver.html#abc4a241cfa112a6b430d39749a2f6faf',1,'dns_resolver']]],
+ ['result',['result',['../structconnector.html#a9b15773040e783143121ad19ad3582d8',1,'connector::result()'],['../structtsi__fake__handshaker.html#a7dc6f4f013c03d3aa669c3a2fb9a761c',1,'tsi_fake_handshaker::result()'],['../structtsi__ssl__handshaker.html#a12ec1007039ee18e12dee8b2fd2670b7',1,'tsi_ssl_handshaker::result()']]],
+ ['root_5fchannel_5fdata',['root_channel_data',['../structgrpc__server.html#ab9a64dbadf2655aa804caae0fbefe47d',1,'grpc_server']]],
+ ['rotl32',['ROTL32',['../murmur__hash_8c.html#aff6ce4cae0564b039bbb4ef0cbdc0032',1,'murmur_hash.c']]],
+ ['round_5fup_5fto_5falignment_5fsize',['ROUND_UP_TO_ALIGNMENT_SIZE',['../channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1',1,'channel_stack.c']]],
+ ['rpc_5fstat_5fid_2eh',['rpc_stat_id.h',['../rpc__stat__id_8h.html',1,'']]],
+ ['rst_5fstream',['rst_stream',['../structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04',1,'grpc_chttp2_transport_parsing']]],
+ ['rst_5fstream_5freason',['rst_stream_reason',['../structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2',1,'grpc_chttp2_stream_parsing']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_13.html b/doc/ref/core.internal/html/search/all_13.html
new file mode 100644
index 0000000000..0bd629b86b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_13.js b/doc/ref/core.internal/html/search/all_13.js
new file mode 100644
index 0000000000..2b723a5acb
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_13.js
@@ -0,0 +1,219 @@
+var searchData=
+[
+ ['saw_5frst_5fstream',['saw_rst_stream',['../structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b',1,'grpc_chttp2_stream_parsing']]],
+ ['sc',['sc',['../structgrpc__server__secure__state.html#ad912fd9fa1531a5f016f83e49c768512',1,'grpc_server_secure_state']]],
+ ['scheme',['scheme',['../structgrpc__uri.html#a6163de89ece765552254810174fdfc32',1,'grpc_uri::scheme()'],['../structcall__data.html#aa63048a662dd766734726542dba0f27a',1,'call_data::scheme()'],['../structchannel__data.html#ac7a621172aad5d1876691fb987a670e6',1,'channel_data::scheme()'],['../structregistered__resolver.html#a8b53ba24e4ee032d66224f3588bceaba',1,'registered_resolver::scheme()']]],
+ ['scope',['scope',['../structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f',1,'grpc_service_account_credentials']]],
+ ['secure_5fchannel_5fcreate_2ec',['secure_channel_create.c',['../secure__channel__create_8c.html',1,'']]],
+ ['secure_5fendpoint',['secure_endpoint',['../structsecure__endpoint.html',1,'secure_endpoint'],['../structgrpc__secure__transport__setup.html#ae7e2e65bef91a9804fe95a47c4bfb8cb',1,'grpc_secure_transport_setup::secure_endpoint()']]],
+ ['secure_5fendpoint_2ec',['secure_endpoint.c',['../secure__endpoint_8c.html',1,'']]],
+ ['secure_5fendpoint_2eh',['secure_endpoint.h',['../secure__endpoint_8h.html',1,'']]],
+ ['secure_5fpeer_5fname',['secure_peer_name',['../structgrpc__httpcli__ssl__channel__security__connector.html#a12192010723cff00bb4e87c9704ad768',1,'grpc_httpcli_ssl_channel_security_connector']]],
+ ['secure_5ftransport_5fsetup_2ec',['secure_transport_setup.c',['../secure__transport__setup_8c.html',1,'']]],
+ ['secure_5ftransport_5fsetup_2eh',['secure_transport_setup.h',['../secure__transport__setup_8h.html',1,'']]],
+ ['security_5fconnector',['security_connector',['../structchannel__data.html#a78473c478d6fbbb716fb77864c94efd6',1,'channel_data::security_connector()'],['../structchannel__data.html#a524d21c79ca4cf1ff1833c50197a9f1b',1,'channel_data::security_connector()'],['../structconnector.html#a83d8a5c7e3b72cdee46c36cca81d5cb0',1,'connector::security_connector()'],['../structsubchannel__factory.html#a9b700fff25d9d9c6739dfbed18ce5e2b',1,'subchannel_factory::security_connector()']]],
+ ['security_5fconnector_2ec',['security_connector.c',['../security__connector_8c.html',1,'']]],
+ ['security_5fconnector_2eh',['security_connector.h',['../security__connector_8h.html',1,'']]],
+ ['security_5fcontext_2ec',['security_context.c',['../security__context_8c.html',1,'']]],
+ ['security_5fcontext_2eh',['security_context.h',['../security__context_8h.html',1,'']]],
+ ['security_5fcontext_5fset',['security_context_set',['../structcall__data.html#a74f306e56988bd7e20d0116829ce4128',1,'call_data']]],
+ ['seen_5fauthority',['seen_authority',['../structcall__data.html#a5f3505d88df4cba5a1ed776c46b88b7e',1,'call_data']]],
+ ['seen_5fgoaway',['seen_goaway',['../structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829',1,'grpc_chttp2_transport_global']]],
+ ['seen_5fpath',['seen_path',['../structcall__data.html#acb1130d03f1fd0db1cf0d8d1fc10866e',1,'call_data']]],
+ ['seen_5fpost',['seen_post',['../structcall__data.html#aea6244f4fd9d2e7ccb5615b9f5ea5fe0',1,'call_data']]],
+ ['seen_5fscheme',['seen_scheme',['../structcall__data.html#a502cf8ae568f38ae501877458e399796',1,'call_data']]],
+ ['seen_5fte_5ftrailers',['seen_te_trailers',['../structcall__data.html#a54d050afd0c9cc8d05a561034602f280',1,'call_data']]],
+ ['selected',['selected',['../structpick__first__lb__policy.html#ad4fd8d1ef626d9c42f631317921634ef',1,'pick_first_lb_policy']]],
+ ['send_5faction',['send_action',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819',1,'call.c']]],
+ ['send_5fbuffered_5finitial_5fmetadata',['SEND_BUFFERED_INITIAL_METADATA',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819aa0eea39729a5b7c862262626fbe3d352',1,'call.c']]],
+ ['send_5fbuffered_5fmessage',['SEND_BUFFERED_MESSAGE',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819ad0b19b54eb40a63af9f7d957ff717f6e',1,'call.c']]],
+ ['send_5fclosed',['send_closed',['../structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0',1,'grpc_chttp2_stream_writing']]],
+ ['send_5fdeadline',['send_deadline',['../structgrpc__call.html#a5de7c68ffa6939ff2e1c43c4cd418315',1,'grpc_call']]],
+ ['send_5fdone_5fclosure',['send_done_closure',['../structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905',1,'grpc_chttp2_stream_global']]],
+ ['send_5ffinish',['SEND_FINISH',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819addfb3ce4bfcd50ee7ec74608fb32f8ef',1,'call.c']]],
+ ['send_5fgoaway',['send_goaway',['../structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704',1,'grpc_transport_op']]],
+ ['send_5finitial_5fmetadata',['send_initial_metadata',['../structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83',1,'grpc_op::send_initial_metadata()'],['../structgrpc__call.html#a96ac69dc425de5924edd871f93338112',1,'grpc_call::send_initial_metadata()'],['../call_8c.html#a5c099cbc41809afd83d900cef74c2819a7045eff04495ab507242e5da11bcb4ff',1,'SEND_INITIAL_METADATA():&#160;call.c']]],
+ ['send_5finitial_5fmetadata_5fcount',['send_initial_metadata_count',['../structgrpc__call.html#abb6adc9d5f666a056c89172f506fcc3d',1,'grpc_call']]],
+ ['send_5fmessage',['send_message',['../structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434',1,'grpc_op::send_message()'],['../uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45',1,'grpc_ioreq_data::send_message()'],['../call_8c.html#a5c099cbc41809afd83d900cef74c2819a5def54f3ec39f74661e1614669603d71',1,'SEND_MESSAGE():&#160;call.c']]],
+ ['send_5fmetadata',['send_metadata',['../uniongrpc__ioreq__data.html#a4b9337cc24e8b42caa5c1502be083952',1,'grpc_ioreq_data']]],
+ ['send_5fnothing',['SEND_NOTHING',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819ad40596b21bcebc4654bb8da5c7469b01',1,'call.c']]],
+ ['send_5fops',['send_ops',['../structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691',1,'grpc_transport_stream_op::send_ops()'],['../structgrpc__call.html#ab17467642afa4f6c1c27bb9013093592',1,'grpc_call::send_ops()']]],
+ ['send_5fping',['send_ping',['../structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286',1,'grpc_transport_op']]],
+ ['send_5fstatus',['send_status',['../uniongrpc__ioreq__data.html#a3711b0c39c293284a4e4897f74c974ab',1,'grpc_ioreq_data']]],
+ ['send_5fstatus_5ffrom_5fserver',['send_status_from_server',['../structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb',1,'grpc_op']]],
+ ['send_5ftrailing_5fmetadata_5fand_5ffinish',['SEND_TRAILING_METADATA_AND_FINISH',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819a69a25d71b99a99c66c39696b038aa486',1,'call.c']]],
+ ['sending',['sending',['../structgrpc__call.html#a7d64e836e0421c8129ac75e477271ef8',1,'grpc_call']]],
+ ['sent_5fauthority',['sent_authority',['../structcall__data.html#aab616ade799853e16e5e35ee3a16ffbc',1,'call_data']]],
+ ['sent_5fgoaway',['sent_goaway',['../structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8',1,'grpc_chttp2_transport_global']]],
+ ['sent_5finitial_5fmetadata',['sent_initial_metadata',['../structcall__data.html#aded44c7ecaa861e2a4a39380b172368a',1,'call_data']]],
+ ['sent_5flocal_5fsettings',['sent_local_settings',['../structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d',1,'grpc_chttp2_transport_global']]],
+ ['sent_5fstatus',['sent_status',['../structcall__data.html#a8b65de65391e41536ccf959f6b6a751d',1,'call_data']]],
+ ['server',['server',['../structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2',1,'grpc_endpoint_pair::server()'],['../structgrpc__server__secure__state.html#a81df8ea928391a76a30197cce0235455',1,'grpc_server_secure_state::server()'],['../structrequested__call.html#ad3fbf352005312d002348e26038d8fb0',1,'requested_call::server()'],['../structchannel__data.html#a52e6bd3f94f7bc6b7a5696532f747d8c',1,'channel_data::server()']]],
+ ['server_2ec',['server.c',['../server_8c.html',1,'']]],
+ ['server_2eh',['server.h',['../server_8h.html',1,'']]],
+ ['server_5fauth_5ffilter_2ec',['server_auth_filter.c',['../server__auth__filter_8c.html',1,'']]],
+ ['server_5fchttp2_2ec',['server_chttp2.c',['../server__chttp2_8c.html',1,'']]],
+ ['server_5fcreate_2ec',['server_create.c',['../server__create_8c.html',1,'']]],
+ ['server_5ffrom_5fcall_5felem',['SERVER_FROM_CALL_ELEM',['../server_8c.html#ad74e7a97d516828e54c49eb3e4878da3',1,'server.c']]],
+ ['server_5fon_5frecv',['server_on_recv',['../structcall__data.html#aa02e9d60f24965068bc073ec4870bcb4',1,'call_data']]],
+ ['server_5fregistered_5fmethod',['server_registered_method',['../structchannel__registered__method.html#a3d7e5ca9b211c76e489ddc6602da3509',1,'channel_registered_method']]],
+ ['server_5fsecure_5fchttp2_2ec',['server_secure_chttp2.c',['../server__secure__chttp2_8c.html',1,'']]],
+ ['service_5furl',['service_url',['../structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb',1,'grpc_service_account_jwt_access_credentials::service_url()'],['../structgrpc__composite__credentials__metadata__context.html#a7041c3ef3e78168d24699294470422e4',1,'grpc_composite_credentials_metadata_context::service_url()']]],
+ ['set_5faccept_5fstream',['set_accept_stream',['../structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8',1,'grpc_transport_op']]],
+ ['set_5faccept_5fstream_5fuser_5fdata',['set_accept_stream_user_data',['../structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f',1,'grpc_transport_op']]],
+ ['set_5ffalse',['set_false',['../structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6',1,'grpc_json_reader_vtable']]],
+ ['set_5fkey',['set_key',['../structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7',1,'grpc_json_reader_vtable']]],
+ ['set_5fnull',['set_null',['../structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff',1,'grpc_json_reader_vtable']]],
+ ['set_5fnumber',['set_number',['../structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596',1,'grpc_json_reader_vtable']]],
+ ['set_5fstate_5fmu',['set_state_mu',['../structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30',1,'grpc_fd']]],
+ ['set_5fstring',['set_string',['../structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4',1,'grpc_json_reader_vtable']]],
+ ['set_5ftrue',['set_true',['../structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e',1,'grpc_json_reader_vtable']]],
+ ['set_5fvalue',['set_value',['../uniongrpc__ioreq__data.html#aedb6839ded1488cf3bd6905345fba0d2',1,'grpc_ioreq_data']]],
+ ['settings',['settings',['../structgrpc__chttp2__transport__global.html#ab25f0c4b45d1c12d29eaf856e7b1b4a7',1,'grpc_chttp2_transport_global::settings()'],['../structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31',1,'grpc_chttp2_transport_parsing::settings()'],['../structgrpc__chttp2__transport__parsing.html#a629d17756af481ff81ea339acb751751',1,'grpc_chttp2_transport_parsing::settings()']]],
+ ['settings_5fack_5freceived',['settings_ack_received',['../structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586',1,'grpc_chttp2_transport_parsing']]],
+ ['settings_5fupdated',['settings_updated',['../structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013',1,'grpc_chttp2_transport_parsing']]],
+ ['severity',['severity',['../structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc',1,'gpr_log_func_args']]],
+ ['shard_5fqueue_5findex',['shard_queue_index',['../structshard__type.html#a2024ca8c92ce9d378aa5aa551126a9c1',1,'shard_type']]],
+ ['shard_5ftype',['shard_type',['../structshard__type.html',1,'']]],
+ ['shrink_5ffullness_5ffactor',['SHRINK_FULLNESS_FACTOR',['../alarm__heap_8c.html#ac5064e56882ef0a36524cae10ac800ce',1,'alarm_heap.c']]],
+ ['shrink_5fmin_5felems',['SHRINK_MIN_ELEMS',['../alarm__heap_8c.html#acea3d7e412eaa9246638bc218372f55e',1,'alarm_heap.c']]],
+ ['shutdown',['shutdown',['../structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6',1,'grpc_lb_policy_vtable::shutdown()'],['../structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae',1,'grpc_resolver_vtable::shutdown()'],['../structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6',1,'grpc_endpoint_vtable::shutdown()'],['../structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a',1,'grpc_fd::shutdown()'],['../structpick__first__lb__policy.html#a2818821a8daa60e92637357811aea7d4',1,'pick_first_lb_policy::shutdown()'],['../structgrpc__completion__queue.html#a4d6f10502b79874124dc63169f4366d6',1,'grpc_completion_queue::shutdown()']]],
+ ['shutdown_5fcalled',['shutdown_called',['../structgrpc__completion__queue.html#a81ae0a3f77b40e2a21370e641e9f73e4',1,'grpc_completion_queue']]],
+ ['shutdown_5fcleanup_5fargs',['shutdown_cleanup_args',['../structshutdown__cleanup__args.html',1,'']]],
+ ['shutdown_5fclosure',['shutdown_closure',['../structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a',1,'grpc_winsocket']]],
+ ['shutdown_5fclosures',['shutdown_closures',['../structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa',1,'grpc_fd']]],
+ ['shutdown_5fdone_5farg',['shutdown_done_arg',['../structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d',1,'grpc_pollset']]],
+ ['shutdown_5fdone_5fcb',['shutdown_done_cb',['../structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7',1,'grpc_pollset']]],
+ ['shutdown_5fflag',['shutdown_flag',['../structgrpc__server.html#aac6a14f451724678ba63c9f9a153dc33',1,'grpc_server']]],
+ ['shutdown_5fpublished',['shutdown_published',['../structgrpc__server.html#a6d04ab898c0d58f111975211c8d202ba',1,'grpc_server']]],
+ ['shutdown_5ftag',['shutdown_tag',['../structshutdown__tag.html',1,'shutdown_tag'],['../server_8c.html#a292b677b1a61ecd5c4608340fa647346',1,'shutdown_tag():&#160;server.c']]],
+ ['shutdown_5ftags',['shutdown_tags',['../structgrpc__server.html#ab0ca72c038ccce56c33539dc5f321864',1,'grpc_server']]],
+ ['shutting_5fdown',['shutting_down',['../structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c',1,'grpc_pollset']]],
+ ['signature',['signature',['../structverifier__cb__ctx.html#a78cd1bf7eb4ac6484ceeaf778ad6e2df',1,'verifier_cb_ctx']]],
+ ['signed_5fdata',['signed_data',['../structverifier__cb__ctx.html#a65de5acf17b58f8a142466750e1b558b',1,'verifier_cb_ctx']]],
+ ['simple',['simple',['../structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f',1,'grpc_chttp2_transport_parsing']]],
+ ['size',['size',['../structtsi__fake__frame.html#a59d8fa5e8e076fca91b8c1fa1572d9cf',1,'tsi_fake_frame']]],
+ ['sizeof_5fcall_5fdata',['sizeof_call_data',['../structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc',1,'grpc_channel_filter']]],
+ ['sizeof_5fchannel_5fdata',['sizeof_channel_data',['../structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4',1,'grpc_channel_filter']]],
+ ['sizeof_5fstream',['sizeof_stream',['../structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f',1,'grpc_transport_vtable']]],
+ ['slice',['slice',['../structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e',1,'grpc_mdstr::slice()'],['../structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee',1,'grpc_stream_op::slice()'],['../structshutdown__cleanup__args.html#ac171669ceb843c70885925c549867e5c',1,'shutdown_cleanup_args::slice()'],['../structinternal__string.html#aafd8da96270b4377198d99bc51f2ac9b',1,'internal_string::slice()']]],
+ ['slice_2ec',['slice.c',['../slice_8c.html',1,'']]],
+ ['slice_2eh',['slice.h',['../slice_8h.html',1,'']]],
+ ['slice_5fbuffer',['slice_buffer',['../structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae',1,'grpc_byte_buffer']]],
+ ['slice_5fbuffer_2ec',['slice_buffer.c',['../slice__buffer_8c.html',1,'']]],
+ ['slice_5fbuffer_2eh',['slice_buffer.h',['../slice__buffer_8h.html',1,'']]],
+ ['slices',['slices',['../structcall__data.html#a765c539d2737d435cf434241edda82f9',1,'call_data::slices()'],['../structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba',1,'gpr_slice_buffer::slices()']]],
+ ['sockaddr_2eh',['sockaddr.h',['../sockaddr_8h.html',1,'']]],
+ ['sockaddr_5fposix_2eh',['sockaddr_posix.h',['../sockaddr__posix_8h.html',1,'']]],
+ ['sockaddr_5fresolver',['sockaddr_resolver',['../structsockaddr__resolver.html',1,'']]],
+ ['sockaddr_5fresolver_2ec',['sockaddr_resolver.c',['../sockaddr__resolver_8c.html',1,'']]],
+ ['sockaddr_5fresolver_2eh',['sockaddr_resolver.h',['../sockaddr__resolver_8h.html',1,'']]],
+ ['sockaddr_5futils_2ec',['sockaddr_utils.c',['../sockaddr__utils_8c.html',1,'']]],
+ ['sockaddr_5futils_2eh',['sockaddr_utils.h',['../sockaddr__utils_8h.html',1,'']]],
+ ['sockaddr_5fwin32_2eh',['sockaddr_win32.h',['../sockaddr__win32_8h.html',1,'']]],
+ ['socket',['socket',['../structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d',1,'grpc_winsocket']]],
+ ['socket_5futils_5fcommon_5fposix_2ec',['socket_utils_common_posix.c',['../socket__utils__common__posix_8c.html',1,'']]],
+ ['socket_5futils_5flinux_2ec',['socket_utils_linux.c',['../socket__utils__linux_8c.html',1,'']]],
+ ['socket_5futils_5fposix_2ec',['socket_utils_posix.c',['../socket__utils__posix_8c.html',1,'']]],
+ ['socket_5futils_5fposix_2eh',['socket_utils_posix.h',['../socket__utils__posix_8h.html',1,'']]],
+ ['socket_5fwindows_2ec',['socket_windows.c',['../socket__windows_8c.html',1,'']]],
+ ['socket_5fwindows_2eh',['socket_windows.h',['../socket__windows_8h.html',1,'']]],
+ ['sopb',['sopb',['../structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120',1,'grpc_chttp2_stream_writing']]],
+ ['ssl',['ssl',['../structtsi__ssl__handshaker.html#a1dbdafd7f92dad04fe09c4648e5ee952',1,'tsi_ssl_handshaker::ssl()'],['../structtsi__ssl__frame__protector.html#a64129d003fe330c56c39496361bd9e5f',1,'tsi_ssl_frame_protector::ssl()']]],
+ ['ssl_5fcontext',['ssl_context',['../structtsi__ssl__client__handshaker__factory.html#a455d6ff556cd36c93ab91a0ef013ed9a',1,'tsi_ssl_client_handshaker_factory']]],
+ ['ssl_5fcontext_5fcount',['ssl_context_count',['../structtsi__ssl__server__handshaker__factory.html#a6aa4d962f3466b7cb16abd04b0266c2c',1,'tsi_ssl_server_handshaker_factory']]],
+ ['ssl_5fcontext_5fx509_5fsubject_5fnames',['ssl_context_x509_subject_names',['../structtsi__ssl__server__handshaker__factory.html#a9877f06340c6acaa2db8deb38ac03209',1,'tsi_ssl_server_handshaker_factory']]],
+ ['ssl_5fcontexts',['ssl_contexts',['../structtsi__ssl__server__handshaker__factory.html#a31163c22828f9e7467a4cf8ec6e79244',1,'tsi_ssl_server_handshaker_factory']]],
+ ['ssl_5ftransport_5fsecurity_2ec',['ssl_transport_security.c',['../ssl__transport__security_8c.html',1,'']]],
+ ['ssl_5ftransport_5fsecurity_2eh',['ssl_transport_security.h',['../ssl__transport__security_8h.html',1,'']]],
+ ['stack_5flockfree_2ec',['stack_lockfree.c',['../stack__lockfree_8c.html',1,'']]],
+ ['stack_5flockfree_2eh',['stack_lockfree.h',['../stack__lockfree_8h.html',1,'']]],
+ ['staging_5fbuffer_5fsize',['STAGING_BUFFER_SIZE',['../secure__endpoint_8c.html#a323532623f3183502482bb853c503353',1,'secure_endpoint.c']]],
+ ['stap_5ftimers_2ec',['stap_timers.c',['../stap__timers_8c.html',1,'']]],
+ ['start',['start',['../structlistener.html#a5fb6be7cbe102bcb09c1d26db4a26fb2',1,'listener']]],
+ ['start_5ftransport_5fop',['start_transport_op',['../structgrpc__channel__filter.html#aa3508daf2442c8bc11529d0295798819',1,'grpc_channel_filter']]],
+ ['start_5ftransport_5fstream_5fop',['start_transport_stream_op',['../structgrpc__channel__filter.html#a089c1e5997b329703ccaaf633722a6c5',1,'grpc_channel_filter']]],
+ ['started_5fpicking',['started_picking',['../structpick__first__lb__policy.html#a8eff3397ca43852b04a3be5b5e03a6ce',1,'pick_first_lb_policy']]],
+ ['state',['state',['../structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305',1,'grpc_httpcli_parser::state()'],['../structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245',1,'grpc_json_reader::state()'],['../structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab',1,'grpc_chttp2_data_parser::state()'],['../structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589',1,'grpc_chttp2_goaway_parser::state()'],['../structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4',1,'grpc_chttp2_settings_parser::state()'],['../structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4',1,'grpc_chttp2_hpack_parser::state()'],['../structlb__policy__connectivity__watcher.html#ac37e7a5f39e7f99381837601b8d0d7d5',1,'lb_policy_connectivity_watcher::state()'],['../structcall__data.html#a394da9a4876df32b91b8891303695a5d',1,'call_data::state()'],['../structstate__watcher.html#a3a1c09d1740e9cc49f81e4ac4f8bf4bd',1,'state_watcher::state()'],['../structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9',1,'gpr_event::state()'],['../structgpr__cmdline.html#acb165b9b6f98c942dd65d66f1c95a806',1,'gpr_cmdline::state()']]],
+ ['state_5fmu',['state_mu',['../structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551',1,'grpc_winsocket']]],
+ ['state_5ftracker',['state_tracker',['../structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857',1,'grpc_chttp2_transport::state_tracker()'],['../structchannel__data.html#ab56a403060ce2596d204cc024baea99d',1,'channel_data::state_tracker()'],['../structpick__first__lb__policy.html#a4b686da7cdddd0893e3d36c213bd274a',1,'pick_first_lb_policy::state_tracker()'],['../structgrpc__subchannel.html#af9e337eebe13100918b0c1178233d64d',1,'grpc_subchannel::state_tracker()']]],
+ ['state_5fwatcher',['state_watcher',['../structstate__watcher.html',1,'']]],
+ ['static_5fents',['static_ents',['../structgrpc__chttp2__hptbl.html#afe1cceb7c0988d6c29df983ad3764344',1,'grpc_chttp2_hptbl']]],
+ ['stats',['stats',['../structshard__type.html#a700e0afbcbed737607bac82970c61601',1,'shard_type']]],
+ ['status',['status',['../structgrpc__op.html#ae0d5a9db463391c0897914ef2d016b25',1,'grpc_op::status()'],['../structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4',1,'grpc_op::status()'],['../structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243',1,'grpc_httpcli_response::status()'],['../structcall__data.html#af1e73bf35274521a98f39316fddf3deb',1,'call_data::status()'],['../structchannel__data.html#aed19c41ead3b51daafdbf78a983c1877',1,'channel_data::status()'],['../structgrpc__call.html#ac4f49d27f54bd1436da3ad7cfe662639',1,'grpc_call::status()']]],
+ ['status_2eh',['status.h',['../status_8h.html',1,'']]],
+ ['status_5fconversion_2ec',['status_conversion.c',['../status__conversion_8c.html',1,'']]],
+ ['status_5fconversion_2eh',['status_conversion.h',['../status__conversion_8h.html',1,'']]],
+ ['status_5fdetails',['status_details',['../structgrpc__op.html#ae460836040d79eb2bd0a6d581b36c461',1,'grpc_op::status_details()'],['../structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6',1,'grpc_op::status_details()']]],
+ ['status_5fdetails_5fcapacity',['status_details_capacity',['../structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9',1,'grpc_op']]],
+ ['status_5ffrom_5fapi_5foverride',['STATUS_FROM_API_OVERRIDE',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271afd2f639169b914143f3b412ed1a2ef00',1,'call.c']]],
+ ['status_5ffrom_5fcore',['STATUS_FROM_CORE',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a48a145dfa9c97761d84d36131d27a72e',1,'call.c']]],
+ ['status_5ffrom_5fserver_5fstatus',['STATUS_FROM_SERVER_STATUS',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271aad4663967ed2d5b74e875954573b5c64',1,'call.c']]],
+ ['status_5ffrom_5fwire',['STATUS_FROM_WIRE',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a825b6688b57f66bdb07fef664aa8d569',1,'call.c']]],
+ ['status_5fkey',['status_key',['../structchannel__data.html#aa193724e83bed60e8f8f1a7a1cb0ca0f',1,'channel_data']]],
+ ['status_5flink',['status_link',['../structgrpc__call.html#acb6f13c9a524b29da7f4a760332dea6d',1,'grpc_call']]],
+ ['status_5fnot_5ffound',['status_not_found',['../structchannel__data.html#aa61798f024b686a60598011b688a5302',1,'channel_data']]],
+ ['status_5foffset',['STATUS_OFFSET',['../call_8c.html#ac3959778b8b4ee593c16fa33a06d844c',1,'call.c']]],
+ ['status_5fok',['status_ok',['../structchannel__data.html#a5d2922163981387d63fcc086acc40bc1',1,'channel_data']]],
+ ['status_5fsource',['status_source',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271',1,'call.c']]],
+ ['status_5fsource_5fcount',['STATUS_SOURCE_COUNT',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22',1,'call.c']]],
+ ['str',['str',['../structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c',1,'grpc_chttp2_hpack_parser_string::str()'],['../structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe',1,'grpc_chttp2_hpack_parser::str()']]],
+ ['str_5fgrpc_5ftimeout',['str_grpc_timeout',['../structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c',1,'grpc_chttp2_transport_parsing']]],
+ ['stream_5fencoder_2ec',['stream_encoder.c',['../stream__encoder_8c.html',1,'']]],
+ ['stream_5fencoder_2eh',['stream_encoder.h',['../stream__encoder_8h.html',1,'']]],
+ ['stream_5ffrom_5fglobal',['STREAM_FROM_GLOBAL',['../stream__lists_8c.html#ad226604f0f25167ab63b83fb504925ed',1,'STREAM_FROM_GLOBAL():&#160;stream_lists.c'],['../chttp2__transport_8c.html#ad226604f0f25167ab63b83fb504925ed',1,'STREAM_FROM_GLOBAL():&#160;chttp2_transport.c']]],
+ ['stream_5ffrom_5fparsing',['STREAM_FROM_PARSING',['../stream__lists_8c.html#af36e6925c4b86e9bdea0abf8824d521e',1,'stream_lists.c']]],
+ ['stream_5ffrom_5fwriting',['STREAM_FROM_WRITING',['../stream__lists_8c.html#a168549253d875995f6454b6ac5f9250f',1,'stream_lists.c']]],
+ ['stream_5fid',['stream_id',['../structframer__state.html#a568da28436bbdcbf1a1eb321cf064651',1,'framer_state']]],
+ ['stream_5flist_5fcount',['STREAM_LIST_COUNT',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5',1,'internal.h']]],
+ ['stream_5flists_2ec',['stream_lists.c',['../stream__lists_8c.html',1,'']]],
+ ['stream_5fmap_2ec',['stream_map.c',['../stream__map_8c.html',1,'']]],
+ ['stream_5fmap_2eh',['stream_map.h',['../stream__map_8h.html',1,'']]],
+ ['stream_5fop_2ec',['stream_op.c',['../stream__op_8c.html',1,'']]],
+ ['stream_5fop_2eh',['stream_op.h',['../stream__op_8h.html',1,'']]],
+ ['strgot',['strgot',['../structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6',1,'grpc_chttp2_hpack_parser']]],
+ ['string',['string',['../structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8',1,'grpc_arg::string()'],['../structjson__reader__userdata.html#aab7c5997934c699371c79b5a613a877e',1,'json_reader_userdata::string()']]],
+ ['string_2ec',['string.c',['../string_8c.html',1,'']]],
+ ['string_2eh',['string.h',['../string_8h.html',1,'']]],
+ ['string_5fadd_5fchar',['string_add_char',['../structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19',1,'grpc_json_reader_vtable']]],
+ ['string_5fadd_5futf32',['string_add_utf32',['../structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612',1,'grpc_json_reader_vtable']]],
+ ['string_5fclear',['string_clear',['../structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303',1,'grpc_json_reader_vtable']]],
+ ['string_5flen',['string_len',['../structjson__writer__userdata.html#a321162f4c1f6c7cb60676fa6a1eb3c18',1,'json_writer_userdata']]],
+ ['string_5fposix_2ec',['string_posix.c',['../string__posix_8c.html',1,'']]],
+ ['string_5fptr',['string_ptr',['../structjson__reader__userdata.html#a6afccb66b4dac7cb2db6ef4c8d0e073b',1,'json_reader_userdata']]],
+ ['string_5futil_2eh',['string_util.h',['../string__util_8h.html',1,'']]],
+ ['string_5fwin32_2ec',['string_win32.c',['../string__win32_8c.html',1,'']]],
+ ['string_5fwin32_2eh',['string_win32.h',['../string__win32_8h.html',1,'']]],
+ ['strlen',['strlen',['../structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab',1,'grpc_chttp2_hpack_parser']]],
+ ['strlen_5flit',['STRLEN_LIT',['../stream__encoder_8c.html#a4adf5996646225c1109095f57e5054c1',1,'stream_encoder.c']]],
+ ['strs',['strs',['../structgpr__strvec.html#a6c928c402061e0a51346155669029795',1,'gpr_strvec']]],
+ ['strtab',['strtab',['../structgrpc__mdctx.html#ad2eeb34c05c392c75ca79c62e0a91644',1,'grpc_mdctx']]],
+ ['strtab_5fcapacity',['strtab_capacity',['../structgrpc__mdctx.html#a1ac53c8c3069ff245cd33243094b21af',1,'grpc_mdctx']]],
+ ['strtab_5fcount',['strtab_count',['../structgrpc__mdctx.html#a19a486374bb3cc0c61ad53868423bce5',1,'grpc_mdctx']]],
+ ['sub',['sub',['../structgrpc__jwt__claims.html#a298ff2d584fdee85bd9de0b52c72a1bd',1,'grpc_jwt_claims']]],
+ ['subchannel',['subchannel',['../structconnection.html#ac46b9b593d187793cf2685550b615dc7',1,'connection::subchannel()'],['../structstate__watcher.html#ab1de71efe9c462d4692acedd9da69db3',1,'state_watcher::subchannel()'],['../structwaiting__for__connect.html#a6992a59790cdc05659227b1ea7b8650d',1,'waiting_for_connect::subchannel()']]],
+ ['subchannel_2ec',['subchannel.c',['../subchannel_8c.html',1,'']]],
+ ['subchannel_2eh',['subchannel.h',['../subchannel_8h.html',1,'']]],
+ ['subchannel_5fcall',['subchannel_call',['../structcall__data.html#a68077448625c53fa5dab0a717c0a77b2',1,'call_data']]],
+ ['subchannel_5fcall_5fto_5fcall_5fstack',['SUBCHANNEL_CALL_TO_CALL_STACK',['../subchannel_8c.html#a6f8f2e93f13638c3344bed1c0a810a90',1,'subchannel.c']]],
+ ['subchannel_5ffactory',['subchannel_factory',['../structsubchannel__factory.html',1,'subchannel_factory'],['../structdns__resolver.html#ad80a689714c3c2d68bba566d1c5ae236',1,'dns_resolver::subchannel_factory()'],['../structsockaddr__resolver.html#ae68e3b93926c4d132ca5c05a752b1e59',1,'sockaddr_resolver::subchannel_factory()']]],
+ ['subchannel_5ffactory_2ec',['subchannel_factory.c',['../subchannel__factory_8c.html',1,'']]],
+ ['subchannel_5ffactory_2eh',['subchannel_factory.h',['../subchannel__factory_8h.html',1,'']]],
+ ['subchannel_5fref_5flocked',['SUBCHANNEL_REF_LOCKED',['../subchannel_8c.html#ad1c3bb13282f81c8384752ae3e2d74ad',1,'subchannel.c']]],
+ ['subchannel_5funref_5flocked',['SUBCHANNEL_UNREF_LOCKED',['../subchannel_8c.html#ac827935703a637a3a74cb54936a49f25',1,'subchannel.c']]],
+ ['subchannels',['subchannels',['../structpick__first__lb__policy.html#a359affbda6360c97745389a1c036afbf',1,'pick_first_lb_policy']]],
+ ['subprocess_2eh',['subprocess.h',['../subprocess_8h.html',1,'']]],
+ ['subprocess_5fposix_2ec',['subprocess_posix.c',['../subprocess__posix_8c.html',1,'']]],
+ ['success',['success',['../structgrpc__event.html#a99d4215e5df50869af320b1cca5540db',1,'grpc_event::success()'],['../structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0',1,'grpc_iomgr_closure::success()'],['../structcompute__engine__detector.html#a952441665ae667415c4eed612ec5f25b',1,'compute_engine_detector::success()'],['../structcompleted__request.html#a5512a2663c0d87f40b1e493b0bf9dd6b',1,'completed_request::success()'],['../structreqinfo__master.html#a638b15223a3d12acea6adf081d2a43a9',1,'reqinfo_master::success()'],['../structstate__watcher.html#a0e2c034f2582615aa9c6949879289cc2',1,'state_watcher::success()']]],
+ ['sum',['sum',['../structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a',1,'gpr_histogram']]],
+ ['sum_5fof_5fsquares',['sum_of_squares',['../structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1',1,'gpr_histogram']]],
+ ['surface_5ftrace_2ec',['surface_trace.c',['../surface__trace_8c.html',1,'']]],
+ ['surface_5ftrace_2eh',['surface_trace.h',['../surface__trace_8h.html',1,'']]],
+ ['sync_2ec',['sync.c',['../sync_8c.html',1,'']]],
+ ['sync_2eh',['sync.h',['../sync_8h.html',1,'']]],
+ ['sync_5fgeneric_2eh',['sync_generic.h',['../sync__generic_8h.html',1,'']]],
+ ['sync_5fposix_2ec',['sync_posix.c',['../sync__posix_8c.html',1,'']]],
+ ['sync_5fposix_2eh',['sync_posix.h',['../sync__posix_8h.html',1,'']]],
+ ['sync_5fwin32_2ec',['sync_win32.c',['../sync__win32_8c.html',1,'']]],
+ ['sync_5fwin32_2eh',['sync_win32.h',['../sync__win32_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_14.html b/doc/ref/core.internal/html/search/all_14.html
new file mode 100644
index 0000000000..2ad638b277
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_14.js b/doc/ref/core.internal/html/search/all_14.js
new file mode 100644
index 0000000000..ab110295d2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_14.js
@@ -0,0 +1,159 @@
+var searchData=
+[
+ ['table',['table',['../structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17',1,'grpc_chttp2_hpack_parser']]],
+ ['table_5felem_5fsize',['table_elem_size',['../structgrpc__chttp2__hpack__compressor.html#a067f49c14e2c169678f44c10a7e4ee2e',1,'grpc_chttp2_hpack_compressor']]],
+ ['table_5felems',['table_elems',['../structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6',1,'grpc_chttp2_hpack_compressor']]],
+ ['table_5fsize',['table_size',['../structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425',1,'grpc_chttp2_hpack_compressor']]],
+ ['tag',['tag',['../structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201',1,'grpc_event::tag()'],['../structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e',1,'grpc_cq_completion::tag()'],['../structstate__watcher.html#a67d44afd79ad20ec97e2e43f538f6d77',1,'state_watcher::tag()'],['../structrequested__call.html#abcebc67ebdd3f7230b72cbb324049ff4',1,'requested_call::tag()'],['../structshutdown__tag.html#a632bfe333648e7440bf13caa5eaa48c0',1,'shutdown_tag::tag()']]],
+ ['tail',['tail',['../structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620',1,'grpc_chttp2_stream_list::tail()'],['../structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193',1,'grpc_mdelem_list::tail()']]],
+ ['tail_5fremote_5findex',['tail_remote_index',['../structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893',1,'grpc_chttp2_hpack_compressor']]],
+ ['target',['target',['../structpending__pick.html#aa395cbb07c193eaa41d0463f46067fec',1,'pending_pick::target()'],['../structwaiting__for__connect.html#afa5ba6604f746da394b505f116e764f6',1,'waiting_for_connect::target()'],['../structgrpc__channel.html#ac84ed7ccb6f221068ee55b5e6c073543',1,'grpc_channel::target()']]],
+ ['target_5fconfig',['target_config',['../structdns__resolver.html#a757b9b42d89d961103798397c2cddefb',1,'dns_resolver::target_config()'],['../structsockaddr__resolver.html#ad9d11ab81955963bff8db90903241efa',1,'sockaddr_resolver::target_config()']]],
+ ['target_5fname',['target_name',['../structgrpc__ssl__channel__security__connector.html#ac86e0e283bad7b35d30cec32ed042a5b',1,'grpc_ssl_channel_security_connector']]],
+ ['target_5fsettings',['target_settings',['../structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528',1,'grpc_chttp2_settings_parser']]],
+ ['tcp',['tcp',['../structgrpc__server__secure__state.html#a8c4788f633b14cc2d49c26d9172b0b69',1,'grpc_server_secure_state']]],
+ ['tcp_5fclient_2eh',['tcp_client.h',['../tcp__client_8h.html',1,'']]],
+ ['tcp_5fclient_5fposix_2ec',['tcp_client_posix.c',['../tcp__client__posix_8c.html',1,'']]],
+ ['tcp_5fclient_5fwindows_2ec',['tcp_client_windows.c',['../tcp__client__windows_8c.html',1,'']]],
+ ['tcp_5fendpoint',['tcp_endpoint',['../structtcp__endpoint__list.html#a1de9aaa649c6d84c81c676171676b862',1,'tcp_endpoint_list']]],
+ ['tcp_5fendpoint_5flist',['tcp_endpoint_list',['../structtcp__endpoint__list.html',1,'tcp_endpoint_list'],['../server__secure__chttp2_8c.html#ac7944e456bcd1ed1ea7e112ee396e6aa',1,'tcp_endpoint_list():&#160;server_secure_chttp2.c']]],
+ ['tcp_5fposix_2ec',['tcp_posix.c',['../tcp__posix_8c.html',1,'']]],
+ ['tcp_5fposix_2eh',['tcp_posix.h',['../tcp__posix_8h.html',1,'']]],
+ ['tcp_5fserver_2eh',['tcp_server.h',['../tcp__server_8h.html',1,'']]],
+ ['tcp_5fserver_5fposix_2ec',['tcp_server_posix.c',['../tcp__server__posix_8c.html',1,'']]],
+ ['tcp_5fserver_5fwindows_2ec',['tcp_server_windows.c',['../tcp__server__windows_8c.html',1,'']]],
+ ['tcp_5fwindows_2ec',['tcp_windows.c',['../tcp__windows_8c.html',1,'']]],
+ ['tcp_5fwindows_2eh',['tcp_windows.h',['../tcp__windows_8h.html',1,'']]],
+ ['te_5ftrailers',['te_trailers',['../structcall__data.html#a8cfc1a2d2dab43a5bddc26df4801721b',1,'call_data::te_trailers()'],['../structchannel__data.html#a141ad0e139c47b491a219ad68b263c2b',1,'channel_data::te_trailers()']]],
+ ['temp',['temp',['../structhuff__out.html#a29fa27e52be848917a68702c97e75d3b',1,'huff_out']]],
+ ['temp_5flength',['temp_length',['../structhuff__out.html#a47f24dd352a07a9a7124319d8222090e',1,'huff_out']]],
+ ['thd_2ec',['thd.c',['../thd_8c.html',1,'']]],
+ ['thd_2eh',['thd.h',['../thd_8h.html',1,'']]],
+ ['thd_5finternal_2eh',['thd_internal.h',['../thd__internal_8h.html',1,'']]],
+ ['thd_5fposix_2ec',['thd_posix.c',['../thd__posix_8c.html',1,'']]],
+ ['thd_5fwin32_2ec',['thd_win32.c',['../thd__win32_8c.html',1,'']]],
+ ['time_2ec',['time.c',['../time_8c.html',1,'']]],
+ ['time_2eh',['time.h',['../time_8h.html',1,'']]],
+ ['time_5faveraged_5fstats_2ec',['time_averaged_stats.c',['../time__averaged__stats_8c.html',1,'']]],
+ ['time_5faveraged_5fstats_2eh',['time_averaged_stats.h',['../time__averaged__stats_8h.html',1,'']]],
+ ['time_5fposix_2ec',['time_posix.c',['../time__posix_8c.html',1,'']]],
+ ['time_5fwin32_2ec',['time_win32.c',['../time__win32_8c.html',1,'']]],
+ ['timeout_5fencoding_2ec',['timeout_encoding.c',['../timeout__encoding_8c.html',1,'']]],
+ ['timeout_5fencoding_2eh',['timeout_encoding.h',['../timeout__encoding_8h.html',1,'']]],
+ ['timeout_5fkey',['TIMEOUT_KEY',['../stream__encoder_8c.html#a730f13257408fd7a5a3d734f5399cba7',1,'stream_encoder.c']]],
+ ['timeout_5fkey_5fstr',['timeout_key_str',['../structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1',1,'grpc_chttp2_hpack_compressor']]],
+ ['timers_2eh',['timers.h',['../timers_8h.html',1,'']]],
+ ['timers_5fpreciseclock_2eh',['timers_preciseclock.h',['../timers__preciseclock_8h.html',1,'']]],
+ ['tls_2eh',['tls.h',['../tls_8h.html',1,'']]],
+ ['tls_5fgcc_2eh',['tls_gcc.h',['../tls__gcc_8h.html',1,'']]],
+ ['tls_5fmsvc_2eh',['tls_msvc.h',['../tls__msvc_8h.html',1,'']]],
+ ['tls_5fpthread_2ec',['tls_pthread.c',['../tls__pthread_8c.html',1,'']]],
+ ['tls_5fpthread_2eh',['tls_pthread.h',['../tls__pthread_8h.html',1,'']]],
+ ['token_5fexpiration',['token_expiration',['../structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13',1,'grpc_oauth2_token_fetcher_credentials']]],
+ ['token_5flifetime',['token_lifetime',['../structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae',1,'grpc_service_account_credentials']]],
+ ['top',['top',['../structjson__reader__userdata.html#ac4f75823aab9f46c2541424046742c13',1,'json_reader_userdata']]],
+ ['top_5fbit_5fof_5ftype',['TOP_BIT_OF_TYPE',['../time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500',1,'time.c']]],
+ ['trace_2ec',['trace.c',['../trace_8c.html',1,'']]],
+ ['trace_2eh',['trace.h',['../trace_8h.html',1,'']]],
+ ['trace_5fid',['trace_id',['../structcensus__context.html#af2f543e5253035ca31b883c23453c918',1,'census_context']]],
+ ['tracer',['tracer',['../structtracer.html',1,'tracer'],['../trace_8c.html#aff327d037f1cb69bc5c5c25a73b63104',1,'tracer():&#160;trace.c']]],
+ ['trailing_5fmetadata',['trailing_metadata',['../structgrpc__op.html#a521b48faec3b3f7646a877055f118d47',1,'grpc_op::trailing_metadata()'],['../structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1',1,'grpc_op::trailing_metadata()']]],
+ ['trailing_5fmetadata_5fcount',['trailing_metadata_count',['../structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab',1,'grpc_op']]],
+ ['transport',['transport',['../structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9',1,'grpc_connect_out_args::transport()'],['../structconnected__channel__channel__data.html#a7f95ecc760083ad9d72bada84f33ca6b',1,'connected_channel_channel_data::transport()']]],
+ ['transport_2ec',['transport.c',['../transport_8c.html',1,'']]],
+ ['transport_2eh',['transport.h',['../transport_8h.html',1,'']]],
+ ['transport_5ffrom_5fglobal',['TRANSPORT_FROM_GLOBAL',['../stream__lists_8c.html#a029ef12f8edec2cce810fc244777f39e',1,'TRANSPORT_FROM_GLOBAL():&#160;stream_lists.c'],['../chttp2__transport_8c.html#a029ef12f8edec2cce810fc244777f39e',1,'TRANSPORT_FROM_GLOBAL():&#160;chttp2_transport.c']]],
+ ['transport_5ffrom_5fparsing',['TRANSPORT_FROM_PARSING',['../stream__lists_8c.html#a5d41409974a115e2721fe32cd1c1b8eb',1,'TRANSPORT_FROM_PARSING():&#160;stream_lists.c'],['../chttp2__transport_8c.html#a720ba3d4f39bd3a50eef94f3af02df26',1,'TRANSPORT_FROM_PARSING():&#160;chttp2_transport.c']]],
+ ['transport_5ffrom_5fwriting',['TRANSPORT_FROM_WRITING',['../stream__lists_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba',1,'TRANSPORT_FROM_WRITING():&#160;stream_lists.c'],['../chttp2__transport_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba',1,'TRANSPORT_FROM_WRITING():&#160;chttp2_transport.c']]],
+ ['transport_5fimpl_2eh',['transport_impl.h',['../transport__impl_8h.html',1,'']]],
+ ['transport_5fop_5fstring_2ec',['transport_op_string.c',['../transport__op__string_8c.html',1,'']]],
+ ['transport_5fsecurity_2ec',['transport_security.c',['../transport__security_8c.html',1,'']]],
+ ['transport_5fsecurity_2eh',['transport_security.h',['../transport__security_8h.html',1,'']]],
+ ['transport_5fsecurity_5finterface_2eh',['transport_security_interface.h',['../transport__security__interface_8h.html',1,'']]],
+ ['transport_5fstream_5ffrom_5fcall_5fdata',['TRANSPORT_STREAM_FROM_CALL_DATA',['../connected__channel_8c.html#a20fccb78f707f86985ab8dccc8f9ff68',1,'connected_channel.c']]],
+ ['triggered',['triggered',['../structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f',1,'grpc_alarm']]],
+ ['tsi_5fcertificate_5ftype_5fpeer_5fproperty',['TSI_CERTIFICATE_TYPE_PEER_PROPERTY',['../transport__security__interface_8h.html#ac1c4704b4f46d8db67be7d79cf9abee4',1,'transport_security_interface.h']]],
+ ['tsi_5fconstruct_5fallocated_5fstring_5fpeer_5fproperty',['tsi_construct_allocated_string_peer_property',['../transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc',1,'tsi_construct_allocated_string_peer_property(const char *name, size_t value_length, tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a8a308346bff8f401be5fb4411995aafc',1,'tsi_construct_allocated_string_peer_property(const char *name, size_t value_length, tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fconstruct_5fpeer',['tsi_construct_peer',['../transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68',1,'tsi_construct_peer(size_t property_count, tsi_peer *peer):&#160;transport_security.c'],['../transport__security_8c.html#a08ce831015f22dfc2b0c9c324f4d3f68',1,'tsi_construct_peer(size_t property_count, tsi_peer *peer):&#160;transport_security.c']]],
+ ['tsi_5fconstruct_5fstring_5fpeer_5fproperty',['tsi_construct_string_peer_property',['../transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb',1,'tsi_construct_string_peer_property(const char *name, const char *value, size_t value_length, tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a77bdd8a1373d9badafe0f9628d613ccb',1,'tsi_construct_string_peer_property(const char *name, const char *value, size_t value_length, tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fconstruct_5fstring_5fpeer_5fproperty_5ffrom_5fcstring',['tsi_construct_string_peer_property_from_cstring',['../transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d',1,'tsi_construct_string_peer_property_from_cstring(const char *name, const char *value, tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a95d8643bd4378f9e648d5155a757ff3d',1,'tsi_construct_string_peer_property_from_cstring(const char *name, const char *value, tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fcreate_5ffake_5fhandshaker',['tsi_create_fake_handshaker',['../fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3',1,'tsi_create_fake_handshaker(int is_client):&#160;fake_transport_security.c'],['../fake__transport__security_8c.html#a7ce2a5356ae53a2f4686faa9f32910d3',1,'tsi_create_fake_handshaker(int is_client):&#160;fake_transport_security.c']]],
+ ['tsi_5fcreate_5ffake_5fprotector',['tsi_create_fake_protector',['../fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932',1,'tsi_create_fake_protector(size_t *max_protected_frame_size):&#160;fake_transport_security.c'],['../fake__transport__security_8c.html#a6af0733aaa845a070d6d92e5d79e8932',1,'tsi_create_fake_protector(size_t *max_protected_frame_size):&#160;fake_transport_security.c']]],
+ ['tsi_5fcreate_5fssl_5fclient_5fhandshaker_5ffactory',['tsi_create_ssl_client_handshaker_factory',['../ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954',1,'tsi_create_ssl_client_handshaker_factory(const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a74245460a2a17181e62578a3c9e3a566',1,'tsi_create_ssl_client_handshaker_factory(const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_list, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c']]],
+ ['tsi_5fcreate_5fssl_5fserver_5fhandshaker_5ffactory',['tsi_create_ssl_server_handshaker_factory',['../ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104',1,'tsi_create_ssl_server_handshaker_factory(const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a90c268a36d1837b23c08ec862b810b4d',1,'tsi_create_ssl_server_handshaker_factory(const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_list, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c']]],
+ ['tsi_5fdata_5fcorrupted',['TSI_DATA_CORRUPTED',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54',1,'transport_security_interface.h']]],
+ ['tsi_5ffailed_5fprecondition',['TSI_FAILED_PRECONDITION',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe',1,'transport_security_interface.h']]],
+ ['tsi_5ffake_5fcertificate_5ftype',['TSI_FAKE_CERTIFICATE_TYPE',['../fake__transport__security_8h.html#ae0392587ca3b2c370e2d0b23bd3567dc',1,'fake_transport_security.h']]],
+ ['tsi_5ffake_5fclient_5ffinished',['TSI_FAKE_CLIENT_FINISHED',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a8449ebdb0b21fe666efe134d8eb5af74',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fclient_5finit',['TSI_FAKE_CLIENT_INIT',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a3eef9f8827f4892e807c2b0e1a9187f3',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fdefault_5fframe_5fsize',['TSI_FAKE_DEFAULT_FRAME_SIZE',['../fake__transport__security_8c.html#a5e80c442eaaca03f86cd1b2a1beea9f3',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fframe',['tsi_fake_frame',['../structtsi__fake__frame.html',1,'']]],
+ ['tsi_5ffake_5fframe_5fheader_5fsize',['TSI_FAKE_FRAME_HEADER_SIZE',['../fake__transport__security_8c.html#ad4e1e451d3d99c6805c489641d4934df',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fframe_5finitial_5fallocated_5fsize',['TSI_FAKE_FRAME_INITIAL_ALLOCATED_SIZE',['../fake__transport__security_8c.html#a4faca44775d659e16993c11482a4a80e',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fframe_5fprotector',['tsi_fake_frame_protector',['../structtsi__fake__frame__protector.html',1,'']]],
+ ['tsi_5ffake_5fhandshake_5fmessage',['tsi_fake_handshake_message',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fhandshake_5fmessage_5fmax',['TSI_FAKE_HANDSHAKE_MESSAGE_MAX',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52adf08f2bf334a78ccee66b203a08b6e7b',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fhandshaker',['tsi_fake_handshaker',['../structtsi__fake__handshaker.html',1,'']]],
+ ['tsi_5ffake_5fserver_5ffinished',['TSI_FAKE_SERVER_FINISHED',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52abf558a770548cdab6e4716e7f30ac641',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fserver_5finit',['TSI_FAKE_SERVER_INIT',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a062ff4e0c7cb1b8894dbd5d633f4e5bb',1,'fake_transport_security.c']]],
+ ['tsi_5fframe_5fprotector',['tsi_frame_protector',['../structtsi__frame__protector.html',1,'tsi_frame_protector'],['../transport__security__interface_8h.html#a39ae4fe62f4ebc278c7738d6eda50dc8',1,'tsi_frame_protector():&#160;transport_security_interface.h']]],
+ ['tsi_5fframe_5fprotector_5fdestroy',['tsi_frame_protector_destroy',['../transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9',1,'tsi_frame_protector_destroy(tsi_frame_protector *self):&#160;transport_security.c'],['../transport__security_8c.html#adfd6e29ec9ee51f095a2fd73bbc222f9',1,'tsi_frame_protector_destroy(tsi_frame_protector *self):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5fprotect',['tsi_frame_protector_protect',['../transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6',1,'tsi_frame_protector_protect(tsi_frame_protector *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size):&#160;transport_security.c'],['../transport__security_8c.html#a5ceba08b6b8e98bc296e3c168cfe7ff6',1,'tsi_frame_protector_protect(tsi_frame_protector *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5fprotect_5fflush',['tsi_frame_protector_protect_flush',['../transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10',1,'tsi_frame_protector_protect_flush(tsi_frame_protector *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size):&#160;transport_security.c'],['../transport__security_8c.html#a97f093ea9700617a4bd64846e1040e10',1,'tsi_frame_protector_protect_flush(tsi_frame_protector *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5funprotect',['tsi_frame_protector_unprotect',['../transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f',1,'tsi_frame_protector_unprotect(tsi_frame_protector *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size):&#160;transport_security.c'],['../transport__security_8c.html#af7379ce84c820020001fd1538135f45f',1,'tsi_frame_protector_unprotect(tsi_frame_protector *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5fvtable',['tsi_frame_protector_vtable',['../structtsi__frame__protector__vtable.html',1,'']]],
+ ['tsi_5fhandshake_5fin_5fprogress',['TSI_HANDSHAKE_IN_PROGRESS',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c',1,'transport_security_interface.h']]],
+ ['tsi_5fhandshaker',['tsi_handshaker',['../structtsi__handshaker.html',1,'tsi_handshaker'],['../transport__security__interface_8h.html#a37dc2869b4b8fbc2347d4e37a7f7a971',1,'tsi_handshaker():&#160;transport_security_interface.h']]],
+ ['tsi_5fhandshaker_5fcreate_5fframe_5fprotector',['tsi_handshaker_create_frame_protector',['../transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51',1,'tsi_handshaker_create_frame_protector(tsi_handshaker *self, size_t *max_output_protected_frame_size, tsi_frame_protector **protector):&#160;transport_security.c'],['../transport__security_8c.html#a332227aadf03c58b8ee4089f6f87bde6',1,'tsi_handshaker_create_frame_protector(tsi_handshaker *self, size_t *max_protected_frame_size, tsi_frame_protector **protector):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fdestroy',['tsi_handshaker_destroy',['../transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d',1,'tsi_handshaker_destroy(tsi_handshaker *self):&#160;transport_security.c'],['../transport__security_8c.html#aa86ebc2ea2967a18ff5c6007bb80e28d',1,'tsi_handshaker_destroy(tsi_handshaker *self):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fextract_5fpeer',['tsi_handshaker_extract_peer',['../transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be',1,'tsi_handshaker_extract_peer(tsi_handshaker *self, tsi_peer *peer):&#160;transport_security.c'],['../transport__security_8c.html#acf71ef6d2d7c6934ba7252195fb866be',1,'tsi_handshaker_extract_peer(tsi_handshaker *self, tsi_peer *peer):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fget_5fbytes_5fto_5fsend_5fto_5fpeer',['tsi_handshaker_get_bytes_to_send_to_peer',['../transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35',1,'tsi_handshaker_get_bytes_to_send_to_peer(tsi_handshaker *self, unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c'],['../transport__security_8c.html#a29d1896a9b936a8bd534902bfc074e35',1,'tsi_handshaker_get_bytes_to_send_to_peer(tsi_handshaker *self, unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fget_5fresult',['tsi_handshaker_get_result',['../transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e',1,'tsi_handshaker_get_result(tsi_handshaker *self):&#160;transport_security.c'],['../transport__security_8c.html#ac41531015167b3ac51aa5e201189701e',1,'tsi_handshaker_get_result(tsi_handshaker *self):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fis_5fin_5fprogress',['tsi_handshaker_is_in_progress',['../transport__security__interface_8h.html#a08a4eb400e7769528cf47bf38542010c',1,'transport_security_interface.h']]],
+ ['tsi_5fhandshaker_5fprocess_5fbytes_5ffrom_5fpeer',['tsi_handshaker_process_bytes_from_peer',['../transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0',1,'tsi_handshaker_process_bytes_from_peer(tsi_handshaker *self, const unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c'],['../transport__security_8c.html#add638c90585ef6e5e4418c35a7df9fa0',1,'tsi_handshaker_process_bytes_from_peer(tsi_handshaker *self, const unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fvtable',['tsi_handshaker_vtable',['../structtsi__handshaker__vtable.html',1,'']]],
+ ['tsi_5fincomplete_5fdata',['TSI_INCOMPLETE_DATA',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e',1,'transport_security_interface.h']]],
+ ['tsi_5finit_5fpeer_5fproperty',['tsi_init_peer_property',['../transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1',1,'tsi_init_peer_property(void):&#160;transport_security.c'],['../transport__security_8c.html#ab5d4e3b2905ddbc6fb66be56bd6564b1',1,'tsi_init_peer_property(void):&#160;transport_security.c']]],
+ ['tsi_5finternal_5ferror',['TSI_INTERNAL_ERROR',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34',1,'transport_security_interface.h']]],
+ ['tsi_5finvalid_5fargument',['TSI_INVALID_ARGUMENT',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada',1,'transport_security_interface.h']]],
+ ['tsi_5fnot_5ffound',['TSI_NOT_FOUND',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6',1,'transport_security_interface.h']]],
+ ['tsi_5fok',['TSI_OK',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d',1,'transport_security_interface.h']]],
+ ['tsi_5fopenssl_5falpn_5fsupport',['TSI_OPENSSL_ALPN_SUPPORT',['../ssl__transport__security_8c.html#a6ddfac76c84308f6f7525adccea25b50',1,'ssl_transport_security.c']]],
+ ['tsi_5fout_5fof_5fresources',['TSI_OUT_OF_RESOURCES',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519',1,'transport_security_interface.h']]],
+ ['tsi_5fpeer',['tsi_peer',['../structtsi__peer.html',1,'']]],
+ ['tsi_5fpeer_5fdestruct',['tsi_peer_destruct',['../transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467',1,'tsi_peer_destruct(tsi_peer *self):&#160;transport_security.c'],['../transport__security_8c.html#a2c4bbdf32c13cf926aa28dc464a6f467',1,'tsi_peer_destruct(tsi_peer *self):&#160;transport_security.c']]],
+ ['tsi_5fpeer_5fget_5fproperty_5fby_5fname',['tsi_peer_get_property_by_name',['../security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66',1,'tsi_peer_get_property_by_name(const tsi_peer *peer, const char *name):&#160;security_connector.c'],['../security__connector_8c.html#a4e8c8c71595e5af0861880070356ce66',1,'tsi_peer_get_property_by_name(const tsi_peer *peer, const char *name):&#160;security_connector.c']]],
+ ['tsi_5fpeer_5fproperty',['tsi_peer_property',['../structtsi__peer__property.html',1,'tsi_peer_property'],['../transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be',1,'tsi_peer_property():&#160;transport_security_interface.h']]],
+ ['tsi_5fpeer_5fproperty_5fdestruct',['tsi_peer_property_destruct',['../transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819',1,'tsi_peer_property_destruct(tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a83e56daafef9ce0d55873f2c63940819',1,'tsi_peer_property_destruct(tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fpermission_5fdenied',['TSI_PERMISSION_DENIED',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906',1,'transport_security_interface.h']]],
+ ['tsi_5fprotocol_5ffailure',['TSI_PROTOCOL_FAILURE',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a',1,'transport_security_interface.h']]],
+ ['tsi_5fresult',['tsi_result',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468',1,'transport_security_interface.h']]],
+ ['tsi_5fresult_5fto_5fstring',['tsi_result_to_string',['../transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964',1,'tsi_result_to_string(tsi_result result):&#160;transport_security.c'],['../transport__security_8c.html#aaee2576c8d1108c2f28b78bcf5f85964',1,'tsi_result_to_string(tsi_result result):&#160;transport_security.c']]],
+ ['tsi_5fssl_5falpn_5fselected_5fprotocol',['TSI_SSL_ALPN_SELECTED_PROTOCOL',['../ssl__transport__security_8h.html#a7772b205a40f5d0e6bf613f666df70fa',1,'ssl_transport_security.h']]],
+ ['tsi_5fssl_5fclient_5fhandshaker_5ffactory',['tsi_ssl_client_handshaker_factory',['../structtsi__ssl__client__handshaker__factory.html',1,'']]],
+ ['tsi_5fssl_5fframe_5fprotector',['tsi_ssl_frame_protector',['../structtsi__ssl__frame__protector.html',1,'']]],
+ ['tsi_5fssl_5fhandshaker',['tsi_ssl_handshaker',['../structtsi__ssl__handshaker.html',1,'']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory',['tsi_ssl_handshaker_factory',['../structtsi__ssl__handshaker__factory.html',1,'tsi_ssl_handshaker_factory'],['../ssl__transport__security_8h.html#a33648ab82d52fddf97cd254ab14cad32',1,'tsi_ssl_handshaker_factory():&#160;ssl_transport_security.h']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory_5fcreate_5fhandshaker',['tsi_ssl_handshaker_factory_create_handshaker',['../ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142',1,'tsi_ssl_handshaker_factory_create_handshaker(tsi_ssl_handshaker_factory *self, const char *server_name_indication, tsi_handshaker **handshaker):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a640862c021958b7cc4e841d5842b3142',1,'tsi_ssl_handshaker_factory_create_handshaker(tsi_ssl_handshaker_factory *self, const char *server_name_indication, tsi_handshaker **handshaker):&#160;ssl_transport_security.c']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory_5fdestroy',['tsi_ssl_handshaker_factory_destroy',['../ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b',1,'tsi_ssl_handshaker_factory_destroy(tsi_ssl_handshaker_factory *self):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a55e5ff567c916f396a960d9ba259fd5b',1,'tsi_ssl_handshaker_factory_destroy(tsi_ssl_handshaker_factory *self):&#160;ssl_transport_security.c']]],
+ ['tsi_5fssl_5fmax_5fprotected_5fframe_5fsize_5flower_5fbound',['TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND',['../ssl__transport__security_8c.html#a57f67839c0d50a95afa6b14b8917b7ba',1,'ssl_transport_security.c']]],
+ ['tsi_5fssl_5fmax_5fprotected_5fframe_5fsize_5fupper_5fbound',['TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND',['../ssl__transport__security_8c.html#afce1f5cc8a28bd1d4cea273bb2b5f5d8',1,'ssl_transport_security.c']]],
+ ['tsi_5fssl_5fmax_5fprotection_5foverhead',['TSI_SSL_MAX_PROTECTION_OVERHEAD',['../ssl__transport__security_8c.html#ac62522a33798b7b5bb434e1b8e49974f',1,'ssl_transport_security.c']]],
+ ['tsi_5fssl_5fpeer_5fmatches_5fname',['tsi_ssl_peer_matches_name',['../ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647',1,'tsi_ssl_peer_matches_name(const tsi_peer *peer, const char *name):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a22edee478b3473e184d77d74c13d9647',1,'tsi_ssl_peer_matches_name(const tsi_peer *peer, const char *name):&#160;ssl_transport_security.c']]],
+ ['tsi_5fssl_5fpeer_5fto_5fauth_5fcontext',['tsi_ssl_peer_to_auth_context',['../security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6',1,'tsi_ssl_peer_to_auth_context(const tsi_peer *peer):&#160;security_connector.c'],['../security__connector_8c.html#a12dbc067a07c36d5219ba31f5dffc8c6',1,'tsi_ssl_peer_to_auth_context(const tsi_peer *peer):&#160;security_connector.c']]],
+ ['tsi_5fssl_5fserver_5fhandshaker_5ffactory',['tsi_ssl_server_handshaker_factory',['../structtsi__ssl__server__handshaker__factory.html',1,'']]],
+ ['tsi_5fstrdup',['tsi_strdup',['../transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72',1,'tsi_strdup(const char *src):&#160;transport_security.c'],['../transport__security_8c.html#a4db31a671b7e77b6ecd14af773154c72',1,'tsi_strdup(const char *src):&#160;transport_security.c']]],
+ ['tsi_5ftracing_5fenabled',['tsi_tracing_enabled',['../transport__security_8h.html#a4e3d547c54325370492151543325e23c',1,'tsi_tracing_enabled():&#160;transport_security.c'],['../transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c',1,'tsi_tracing_enabled():&#160;transport_security.c'],['../transport__security_8c.html#a4e3d547c54325370492151543325e23c',1,'tsi_tracing_enabled():&#160;transport_security.c']]],
+ ['tsi_5funimplemented',['TSI_UNIMPLEMENTED',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e',1,'transport_security_interface.h']]],
+ ['tsi_5funknown_5ferror',['TSI_UNKNOWN_ERROR',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe',1,'transport_security_interface.h']]],
+ ['tsi_5fx509_5fcertificate_5ftype',['TSI_X509_CERTIFICATE_TYPE',['../ssl__transport__security_8h.html#a394dce2eccd1a35e54ea94ed19b95a7c',1,'ssl_transport_security.h']]],
+ ['tsi_5fx509_5fsubject_5falternative_5fname_5fpeer_5fproperty',['TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY',['../ssl__transport__security_8h.html#a64e0648b7d1eec9671f01aa79f508c0f',1,'ssl_transport_security.h']]],
+ ['tsi_5fx509_5fsubject_5fcommon_5fname_5fpeer_5fproperty',['TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY',['../ssl__transport__security_8h.html#a3015d52d16728b0e28f354217fbb6296',1,'ssl_transport_security.h']]],
+ ['tv_5fnsec',['tv_nsec',['../structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268',1,'gpr_timespec']]],
+ ['tv_5fsec',['tv_sec',['../structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e',1,'gpr_timespec']]],
+ ['typ',['typ',['../structjose__header.html#a62661b991df1e33a832d0bf7449ab2d4',1,'jose_header']]],
+ ['type',['type',['../structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8',1,'grpc_byte_buffer::type()'],['../structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4',1,'grpc_arg::type()'],['../structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7',1,'grpc_event::type()'],['../structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b',1,'grpc_credentials::type()'],['../structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c',1,'grpc_server_credentials::type()'],['../structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52',1,'grpc_auth_json_key::type()'],['../structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e',1,'grpc_auth_refresh_token::type()'],['../structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e',1,'grpc_json::type()'],['../structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580',1,'grpc_stream_op::type()'],['../structrequested__call.html#a45da072fe9d7a970fe7880d9d2671e4c',1,'requested_call::type()'],['../structarg.html#ac42f6b11ab4ceee17be7871636e06dca',1,'arg::type()']]],
+ ['type_5fis_5fsigned',['TYPE_IS_SIGNED',['../time_8c.html#aee5df4784512f172739646babf8fa13d',1,'time.c']]],
+ ['type_5fmax',['TYPE_MAX',['../time_8c.html#a87353338032e1f56c958d981731f8378',1,'time.c']]],
+ ['type_5fmin',['TYPE_MIN',['../time_8c.html#ad5b4c36b3633abe2c68f8b4ab3c7de8c',1,'time.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_15.html b/doc/ref/core.internal/html/search/all_15.html
new file mode 100644
index 0000000000..d3b5274ba7
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_15.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_15.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_15.js b/doc/ref/core.internal/html/search/all_15.js
new file mode 100644
index 0000000000..e231ada665
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_15.js
@@ -0,0 +1,25 @@
+var searchData=
+[
+ ['unannounced_5fincoming_5fwindow',['unannounced_incoming_window',['../structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9',1,'grpc_chttp2_stream_global']]],
+ ['unbound_5fjson_5fstring_5flength',['UNBOUND_JSON_STRING_LENGTH',['../json__string_8c.html#a1cb2ee1031195d596402be8c2c7e8065',1,'json_string.c']]],
+ ['unicode_5fchar',['unicode_char',['../structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562',1,'grpc_json_reader']]],
+ ['unicode_5fhigh_5fsurrogate',['unicode_high_surrogate',['../structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1',1,'grpc_json_reader']]],
+ ['unprotect',['unprotect',['../structtsi__frame__protector__vtable.html#aa4c1c5ad2e0299585050a3d11247e91e',1,'tsi_frame_protector_vtable']]],
+ ['unprotect_5fframe',['unprotect_frame',['../structtsi__fake__frame__protector.html#ac3e7c2d5e9b3f81c75772f328243db00',1,'tsi_fake_frame_protector']]],
+ ['unref',['unref',['../structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9',1,'grpc_connector_vtable::unref()'],['../structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e',1,'grpc_resolver_factory_vtable::unref()'],['../structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a',1,'grpc_subchannel_factory_vtable::unref()'],['../structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00',1,'gpr_slice_refcount::unref()']]],
+ ['unref_5flog',['UNREF_LOG',['../subchannel_8c.html#a113001b9e3c0ff95ddc62508d3abddaa',1,'subchannel.c']]],
+ ['unref_5ftransport',['UNREF_TRANSPORT',['../chttp2__transport_8c.html#a2a872dae5a8d3799232cbae46e1ed133',1,'chttp2_transport.c']]],
+ ['unregistered_5frequest_5fmatcher',['unregistered_request_matcher',['../structgrpc__server.html#a8114e3dda6d6f5ec9257b5a5343b9821',1,'grpc_server']]],
+ ['unused',['unused',['../structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c',1,'grpc_pollset_set::unused()'],['../structcall__data.html#ab6ed893c5caa5b86338edf8b97bd77d8',1,'call_data::unused()'],['../structconnected__channel__call__data.html#ab7364ac5f5abf2c67075fd09e829cffd',1,'connected_channel_call_data::unused()'],['../structchannel__data.html#af5333a0c2b420d203cbe8a1a5e270efb',1,'channel_data::unused()']]],
+ ['uri_5fparser_2ec',['uri_parser.c',['../uri__parser_8c.html',1,'']]],
+ ['uri_5fparser_2eh',['uri_parser.h',['../uri__parser_8h.html',1,'']]],
+ ['url_5fscheme',['url_scheme',['../structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca',1,'grpc_security_connector']]],
+ ['use_5fssl',['use_ssl',['../structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3',1,'grpc_httpcli_request::use_ssl()'],['../structinternal__request.html#a0d17604038fc0b611296561b66cb46c5',1,'internal_request::use_ssl()']]],
+ ['useful_2eh',['useful.h',['../useful_8h.html',1,'']]],
+ ['user_5fagent',['user_agent',['../structcall__data.html#ab58bbaa2f8f054f606d919abce3f4716',1,'call_data::user_agent()'],['../structchannel__data.html#a9fd48ef186ac5f36381e9e873a1e2602',1,'channel_data::user_agent()']]],
+ ['user_5fcb',['user_cb',['../structverifier__cb__ctx.html#acb4e5c28f3b0d9270a28dc0c730123fa',1,'verifier_cb_ctx']]],
+ ['user_5fdata',['user_data',['../uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331',1,'grpc_ioreq_data::user_data()'],['../structinternal__request.html#aa47b4bb5697930b25831fbc2fc9ae16e',1,'internal_request::user_data()'],['../structgrpc__credentials__metadata__request.html#afba92ff6e76a2b87d1b4b6e0d8531b87',1,'grpc_credentials_metadata_request::user_data()'],['../structgrpc__composite__credentials__metadata__context.html#aa7ca5d9fca93b8a99acc2119f36b8ce6',1,'grpc_composite_credentials_metadata_context::user_data()'],['../structverifier__cb__ctx.html#a9ceed8c4de3dcf252fdaf7347c0b93a8',1,'verifier_cb_ctx::user_data()'],['../structgrpc__secure__transport__setup.html#a8c39ff96c74f4adc29fc0ba7e79f849c',1,'grpc_secure_transport_setup::user_data()'],['../structcompleted__request.html#a0f293e59a3e7c87f6cc59694a9b567ac',1,'completed_request::user_data()'],['../structreqinfo__master.html#aeaa50a715a0fc681a87daae3e3b72c9d',1,'reqinfo_master::user_data()'],['../structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef',1,'internal_metadata::user_data()'],['../structnew__slice__refcount.html#a0476a0932ddf32f1cdd04cdd585fda68',1,'new_slice_refcount::user_data()'],['../structnew__with__len__slice__refcount.html#a47821f141ea3ddf0c13dd7d5bed35dda',1,'new_with_len_slice_refcount::user_data()']]],
+ ['user_5fdestroy',['user_destroy',['../structnew__slice__refcount.html#abe796cd680fb136eff9fa49f96bbd3e8',1,'new_slice_refcount::user_destroy()'],['../structnew__with__len__slice__refcount.html#ac8dc1c24ebd5fee4f034679b05177755',1,'new_with_len_slice_refcount::user_destroy()']]],
+ ['user_5flength',['user_length',['../structnew__with__len__slice__refcount.html#ab9f2fc163ee3e185eda913129ffb4546',1,'new_with_len_slice_refcount']]],
+ ['userdata',['userdata',['../structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc',1,'grpc_json_reader::userdata()'],['../structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31',1,'grpc_json_writer::userdata()']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_16.html b/doc/ref/core.internal/html/search/all_16.html
new file mode 100644
index 0000000000..b4e3666ffb
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_16.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_16.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_16.js b/doc/ref/core.internal/html/search/all_16.js
new file mode 100644
index 0000000000..0c6c5bd4ac
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_16.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+ ['value',['value',['../structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e',1,'grpc_auth_property::value()'],['../structgrpc__arg.html#ad2be4ee606c82fc084af1661d30f6f7f',1,'grpc_arg::value()'],['../structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36',1,'grpc_metadata::value()'],['../structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179',1,'census_stat::value()'],['../structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa',1,'grpc_httpcli_header::value()'],['../structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841',1,'grpc_credentials_md::value()'],['../structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6',1,'tsi_peer_property::value()'],['../structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4',1,'grpc_call_context_element::value()'],['../structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44',1,'grpc_json::value()'],['../structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327',1,'grpc_chttp2_settings_parser::value()'],['../structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e',1,'grpc_chttp2_hpack_parser::value()'],['../structgrpc__chttp2__hpack__parser.html#a5291e99e19d95c5e130b62958750adef',1,'grpc_chttp2_hpack_parser::value()'],['../structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1',1,'grpc_mdelem::value()'],['../structinternal__metadata.html#abef02b106cd8bcee80c9d5ee375fe537',1,'internal_metadata::value()'],['../structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a',1,'gpr_stats_counter::value()'],['../structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1',1,'gpr_gcc_thread_local::value()'],['../structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798',1,'gpr_msvc_thread_local::value()'],['../structarg.html#a688d0385c96e5d5d7cb1a7342f9b4497',1,'arg::value()'],['../hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d',1,'value():&#160;hpack_table.c']]],
+ ['value_5flength',['value_length',['../structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101',1,'grpc_auth_property::value_length()'],['../structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f',1,'grpc_metadata::value_length()']]],
+ ['values',['values',['../structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824',1,'grpc_chttp2_stream_map']]],
+ ['varint_2ec',['varint.c',['../varint_8c.html',1,'']]],
+ ['varint_2eh',['varint.h',['../varint_8h.html',1,'']]],
+ ['verifier',['verifier',['../structverifier__cb__ctx.html#ac60d07b1cc9322f01f2f76f462188737',1,'verifier_cb_ctx']]],
+ ['verifier_5fcb_5fctx',['verifier_cb_ctx',['../structverifier__cb__ctx.html',1,'']]],
+ ['verifier_5fcb_5fctx_5fdestroy',['verifier_cb_ctx_destroy',['../jwt__verifier_8c.html#a6abd17abf83cb50196792f26f82ddb47',1,'jwt_verifier.c']]],
+ ['version',['version',['../structstate__watcher.html#adb6d0b4ffa782421e6f0898f8b13d4e8',1,'state_watcher']]],
+ ['version_2ec',['version.c',['../version_8c.html',1,'']]],
+ ['vtable',['vtable',['../structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e',1,'grpc_credentials::vtable()'],['../structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63',1,'grpc_server_credentials::vtable()'],['../structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1',1,'grpc_security_connector::vtable()'],['../structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619',1,'tsi_frame_protector::vtable()'],['../structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958',1,'tsi_handshaker::vtable()'],['../structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec',1,'grpc_connector::vtable()'],['../structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a',1,'grpc_lb_policy::vtable()'],['../structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386',1,'grpc_resolver::vtable()'],['../structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3',1,'grpc_resolver_factory::vtable()'],['../structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51',1,'grpc_subchannel_factory::vtable()'],['../structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7',1,'grpc_endpoint::vtable()'],['../structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887',1,'grpc_pollset::vtable()'],['../structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5',1,'grpc_json_reader::vtable()'],['../structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b',1,'grpc_json_writer::vtable()'],['../structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007',1,'grpc_transport::vtable()']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_17.html b/doc/ref/core.internal/html/search/all_17.html
new file mode 100644
index 0000000000..6dcb33cf18
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_17.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_17.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_17.js b/doc/ref/core.internal/html/search/all_17.js
new file mode 100644
index 0000000000..b8598c3908
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_17.js
@@ -0,0 +1,42 @@
+var searchData=
+[
+ ['waiters',['waiters',['../structgpr__cancellable.html#a99dfebf899cae60307fb8b83e8cfdb43',1,'gpr_cancellable']]],
+ ['waiting',['waiting',['../structgrpc__subchannel.html#a86222e4f70c6a36a9345ce2388f94e22',1,'grpc_subchannel::waiting()'],['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca757971c0bc5a1972d5f1b1be2c0e2087',1,'WAITING():&#160;channel_connectivity.c']]],
+ ['waiting_5fcall',['waiting_call',['../structwaiting__call.html',1,'']]],
+ ['waiting_5ffor_5fconfig_5fclosures',['waiting_for_config_closures',['../structchannel__data.html#ac701a31115f0dcb435265a106baf619f',1,'channel_data']]],
+ ['waiting_5ffor_5fconnect',['waiting_for_connect',['../structwaiting__for__connect.html',1,'waiting_for_connect'],['../subchannel_8c.html#a5c5a0a02a82c51b4df27922770a17516',1,'waiting_for_connect():&#160;subchannel.c']]],
+ ['waiting_5fop',['waiting_op',['../structcall__data.html#a95c7079af1a663431de6bfe8e919cff7',1,'call_data']]],
+ ['wakeup',['wakeup',['../structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f',1,'grpc_wakeup_fd_vtable']]],
+ ['wakeup_5ffd',['wakeup_fd',['../structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479',1,'grpc_kick_fd_info']]],
+ ['wakeup_5ffd_5feventfd_2ec',['wakeup_fd_eventfd.c',['../wakeup__fd__eventfd_8c.html',1,'']]],
+ ['wakeup_5ffd_5fnospecial_2ec',['wakeup_fd_nospecial.c',['../wakeup__fd__nospecial_8c.html',1,'']]],
+ ['wakeup_5ffd_5fpipe_2ec',['wakeup_fd_pipe.c',['../wakeup__fd__pipe_8c.html',1,'']]],
+ ['wakeup_5ffd_5fpipe_2eh',['wakeup_fd_pipe.h',['../wakeup__fd__pipe_8h.html',1,'']]],
+ ['wakeup_5ffd_5fposix_2ec',['wakeup_fd_posix.c',['../wakeup__fd__posix_8c.html',1,'']]],
+ ['wakeup_5ffd_5fposix_2eh',['wakeup_fd_posix.h',['../wakeup__fd__posix_8h.html',1,'']]],
+ ['watcher_5fmu',['watcher_mu',['../structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b',1,'grpc_fd']]],
+ ['watchers',['watchers',['../structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd',1,'grpc_connectivity_state_tracker']]],
+ ['window_5fupdate',['window_update',['../structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d',1,'grpc_chttp2_transport_parsing']]],
+ ['wrapped',['wrapped',['../structmerge__args__factory.html#aecaa1e5ad4e5838355a2f1515943e378',1,'merge_args_factory']]],
+ ['wrapped_5fendpoint',['wrapped_endpoint',['../structgrpc__secure__transport__setup.html#a6718bd343a57770498f8bfcfeefbaf9a',1,'grpc_secure_transport_setup']]],
+ ['wrapped_5fep',['wrapped_ep',['../structsecure__endpoint.html#aee294803f06c5d38dac97d2933d52e94',1,'secure_endpoint']]],
+ ['write',['write',['../structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739',1,'grpc_endpoint_vtable']]],
+ ['write_5fcb',['write_cb',['../structsecure__endpoint.html#a0d57c837c3b9281454f2629845162de0',1,'secure_endpoint']]],
+ ['write_5ffd',['write_fd',['../structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f',1,'grpc_wakeup_fd_info']]],
+ ['write_5finfo',['write_info',['../structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6',1,'grpc_winsocket']]],
+ ['write_5fstaging_5fbuffer',['write_staging_buffer',['../structsecure__endpoint.html#a9349d713abd0f17c41579a9c149629c2',1,'secure_endpoint']]],
+ ['write_5fstate',['write_state',['../structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9',1,'grpc_chttp2_stream_global::write_state()'],['../structgrpc__call.html#a9a08d62d6d129d629c2cbe25511983ac',1,'grpc_call::write_state()'],['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688d',1,'write_state():&#160;call.c']]],
+ ['write_5fstate_5finitial',['WRITE_STATE_INITIAL',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688da18e6209a49059c72ae1a0671fbe729f3',1,'call.c']]],
+ ['write_5fstate_5fstarted',['WRITE_STATE_STARTED',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688da26c7fbe66a37088b9bc8f34edd4e2634',1,'call.c']]],
+ ['write_5fstate_5fwrite_5fclosed',['WRITE_STATE_WRITE_CLOSED',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688daa6f0a8cbb946569f2f609e500abbbff4',1,'call.c']]],
+ ['write_5fuser_5fdata',['write_user_data',['../structsecure__endpoint.html#ae444fbf4226a8118b5cac6f71d043124',1,'secure_endpoint']]],
+ ['write_5fwatcher',['write_watcher',['../structgrpc__fd.html#ae2395965de88538f112be69c21307d01',1,'grpc_fd']]],
+ ['writest',['writest',['../structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676',1,'grpc_fd']]],
+ ['writing',['writing',['../structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf',1,'grpc_chttp2_transport::writing()'],['../structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e',1,'grpc_chttp2_stream::writing()']]],
+ ['writing_2ec',['writing.c',['../writing_8c.html',1,'']]],
+ ['writing_5faction',['writing_action',['../structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224',1,'grpc_chttp2_transport']]],
+ ['writing_5factive',['writing_active',['../structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b',1,'grpc_chttp2_transport']]],
+ ['writing_5fnow',['writing_now',['../structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c',1,'grpc_chttp2_stream_global']]],
+ ['written_5finitial_5fmetadata',['written_initial_metadata',['../structcall__data.html#a5fccfa4c3448bcfd28f80b2caad5485b',1,'call_data']]],
+ ['wsa_5ferror',['wsa_error',['../structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29',1,'grpc_winsocket_callback_info']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_18.html b/doc/ref/core.internal/html/search/all_18.html
new file mode 100644
index 0000000000..f83cb81144
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_18.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_18.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_18.js b/doc/ref/core.internal/html/search/all_18.js
new file mode 100644
index 0000000000..b52b388472
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_18.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['zombied',['ZOMBIED',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_2.html b/doc/ref/core.internal/html/search/all_2.html
new file mode 100644
index 0000000000..95ded1222d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_2.js b/doc/ref/core.internal/html/search/all_2.js
new file mode 100644
index 0000000000..5fcdacf140
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_2.js
@@ -0,0 +1,50 @@
+var searchData=
+[
+ ['b64_5fbyte0',['B64_BYTE0',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a500a293aa7eb4d4757a1f8c68e6130a2',1,'hpack_parser.c']]],
+ ['b64_5fbyte1',['B64_BYTE1',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a55a85d993feb4d0602aa7321264b6803',1,'hpack_parser.c']]],
+ ['b64_5fbyte2',['B64_BYTE2',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a67574c0700ab2dd5156af220443386d2',1,'hpack_parser.c']]],
+ ['b64_5fbyte3',['B64_BYTE3',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2aabf8c05acae26139d5ba70316b749524',1,'hpack_parser.c']]],
+ ['b64_5fhuff_5fsym',['b64_huff_sym',['../structb64__huff__sym.html',1,'']]],
+ ['backoff_5fdelta',['backoff_delta',['../structgrpc__subchannel.html#a337c8cb56f9a249ca181ddc1f5999af5',1,'grpc_subchannel']]],
+ ['base',['base',['../structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4',1,'grpc_ssl_credentials::base()'],['../structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71',1,'grpc_ssl_server_credentials::base()'],['../structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4',1,'grpc_service_account_jwt_access_credentials::base()'],['../structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5',1,'grpc_oauth2_token_fetcher_credentials::base()'],['../structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0',1,'grpc_service_account_credentials::base()'],['../structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e',1,'grpc_refresh_token_credentials::base()'],['../structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b',1,'grpc_access_token_credentials::base()'],['../structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901',1,'grpc_fake_oauth2_credentials::base()'],['../structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d',1,'grpc_iam_credentials::base()'],['../structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2',1,'grpc_composite_credentials::base()'],['../structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08',1,'grpc_channel_security_connector::base()'],['../structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f',1,'grpc_chttp2_transport::base()'],['../structgrpc__httpcli__ssl__channel__security__connector.html#a4da06be1278854b4447140407d81db25',1,'grpc_httpcli_ssl_channel_security_connector::base()'],['../structsecure__endpoint.html#ac85eec4e82c343cb9fd03c8dea0a08bb',1,'secure_endpoint::base()'],['../structgrpc__fake__channel__security__connector.html#a3a30ba1484411dcedb12607e1a523431',1,'grpc_fake_channel_security_connector::base()'],['../structgrpc__ssl__channel__security__connector.html#af7253d985a9b58d3f7a363d05fdb148c',1,'grpc_ssl_channel_security_connector::base()'],['../structgrpc__ssl__server__security__connector.html#a458d7df65c42b6df819570e79f750907',1,'grpc_ssl_server_security_connector::base()'],['../structconnector.html#a073303affdd652e8688303df9a126bd2',1,'connector::base()'],['../structsubchannel__factory.html#a58fdbc6cebefc2d0f5a75081bee7b676',1,'subchannel_factory::base()'],['../structtsi__fake__handshaker.html#ac20760acd01b20d55b2f92b6a8a139da',1,'tsi_fake_handshaker::base()'],['../structtsi__fake__frame__protector.html#a1f23e2443125ab322674638a71832620',1,'tsi_fake_frame_protector::base()'],['../structtsi__ssl__client__handshaker__factory.html#a66026b4b56a25d198d4aafa959da8413',1,'tsi_ssl_client_handshaker_factory::base()'],['../structtsi__ssl__server__handshaker__factory.html#a68655e93122b5b856ecb840526ff86d9',1,'tsi_ssl_server_handshaker_factory::base()'],['../structtsi__ssl__handshaker.html#a21ae1da6ec22caf8229b148e11aad657',1,'tsi_ssl_handshaker::base()'],['../structtsi__ssl__frame__protector.html#a7d015792be7227bfd44a6a17dc08aa72',1,'tsi_ssl_frame_protector::base()'],['../structpick__first__lb__policy.html#a3e8f7088400929001aa4b589a3f79f79',1,'pick_first_lb_policy::base()'],['../structdns__resolver.html#a135f51d63ab8d730d7ba491f0d94b6f6',1,'dns_resolver::base()'],['../structsockaddr__resolver.html#a92a0b91dca1a2ecdb5eea739a8038c82',1,'sockaddr_resolver::base()'],['../structmerge__args__factory.html#a10d01f7c94efbd37682c4c2af19a21e8',1,'merge_args_factory::base()'],['../structmalloc__refcount.html#a9443dc5946fa32f480286c87d5dc3686',1,'malloc_refcount::base()']]],
+ ['base64_2ec',['base64.c',['../base64_8c.html',1,'']]],
+ ['base64_2eh',['base64.h',['../base64_8h.html',1,'']]],
+ ['base64_5fand_5fhuffman',['base64_and_huffman',['../structinternal__string.html#abfafee0983fc1c6c1e38c8e539d41999',1,'internal_string']]],
+ ['base64_5fbuffer',['base64_buffer',['../structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e',1,'grpc_chttp2_hpack_parser']]],
+ ['basic_5ftimers_2ec',['basic_timers.c',['../basic__timers_8c.html',1,'']]],
+ ['batch',['batch',['../structrequested__call.html#a664afa5ffde3750f0ff04f69813fbcd2',1,'requested_call']]],
+ ['batch_5fcall',['BATCH_CALL',['../server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa38d2782a64b3bf4a845e9795b295b685',1,'server.c']]],
+ ['batch_5fnum_5fsamples',['batch_num_samples',['../structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb',1,'grpc_time_averaged_stats']]],
+ ['batch_5ftotal_5fvalue',['batch_total_value',['../structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b',1,'grpc_time_averaged_stats']]],
+ ['begin_5fmessage',['begin_message',['../structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f',1,'grpc_stream_op']]],
+ ['bin_5fencoder_2ec',['bin_encoder.c',['../bin__encoder_8c.html',1,'']]],
+ ['bin_5fencoder_2eh',['bin_encoder.h',['../bin__encoder_8h.html',1,'']]],
+ ['binary',['binary',['../structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f',1,'grpc_chttp2_hpack_parser']]],
+ ['binary_5fheader',['BINARY_HEADER',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea4940041097c06eed1076f5dc2de17d9a',1,'hpack_parser.c']]],
+ ['binary_5fstate',['binary_state',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2',1,'hpack_parser.c']]],
+ ['bind_5fpollset',['bind_pollset',['../structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4',1,'grpc_transport_stream_op::bind_pollset()'],['../structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2',1,'grpc_transport_op::bind_pollset()']]],
+ ['bind_5fpollset_5fset',['bind_pollset_set',['../structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3',1,'grpc_transport_op']]],
+ ['bits',['bits',['../structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88',1,'grpc_chttp2_huffsym::bits()'],['../structb64__huff__sym.html#ab216d5e5b8fdb4ccfd9a4843aa389b81',1,'b64_huff_sym::bits()']]],
+ ['body',['body',['../structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90',1,'grpc_httpcli_response']]],
+ ['body_5fcapacity',['body_capacity',['../structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628',1,'grpc_httpcli_parser']]],
+ ['body_5flength',['body_length',['../structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb',1,'grpc_httpcli_response']]],
+ ['bound_5fpollset',['bound_pollset',['../structgrpc__call.html#a3cd66ac4c2f69f16f6037fc63f0d49db',1,'grpc_call']]],
+ ['broadcast',['broadcast',['../structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3',1,'grpc_lb_policy_vtable']]],
+ ['bucket_5fnext',['bucket_next',['../structinternal__string.html#a821c2b13cb1eea1ed3e36e867b62f3ba',1,'internal_string::bucket_next()'],['../structinternal__metadata.html#aadcd0104b419227943fcd4a53920777e',1,'internal_metadata::bucket_next()']]],
+ ['buckets',['buckets',['../structgpr__histogram.html#abc707964e4925f4b7abf4c69daaaef73',1,'gpr_histogram']]],
+ ['buffer',['buffer',['../structjose__header.html#af14380ad49201179d4ad6e3fa7a0e58b',1,'jose_header::buffer()'],['../structgrpc__jwt__claims.html#a62be74275bf0b7d887d70229bb9e497b',1,'grpc_jwt_claims::buffer()'],['../structtsi__ssl__frame__protector.html#a3df125b5b712526ea26ba5dbaa8a71ee',1,'tsi_ssl_frame_protector::buffer()']]],
+ ['buffer_5fin',['buffer_in',['../structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22',1,'grpc_byte_buffer_reader']]],
+ ['buffer_5foffset',['buffer_offset',['../structtsi__ssl__frame__protector.html#a8d6f4e3e06cec85370146dae562a572f',1,'tsi_ssl_frame_protector']]],
+ ['buffer_5fout',['buffer_out',['../structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47',1,'grpc_byte_buffer_reader']]],
+ ['buffer_5fsize',['buffer_size',['../structtsi__ssl__frame__protector.html#a1a3705245461fa77c84d7cb3806b1840',1,'tsi_ssl_frame_protector']]],
+ ['buffered_5fmetadata',['buffered_metadata',['../structgrpc__call.html#ae501d7b947eb7a73170ccc5272e83c15',1,'grpc_call']]],
+ ['byte',['byte',['../structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33',1,'grpc_chttp2_ping_parser::byte()'],['../structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665',1,'grpc_chttp2_rst_stream_parser::byte()'],['../structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79',1,'grpc_chttp2_window_update_parser::byte()']]],
+ ['byte_5fbuffer_2ec',['byte_buffer.c',['../byte__buffer_8c.html',1,'']]],
+ ['byte_5fbuffer_2eh',['byte_buffer.h',['../byte__buffer_8h.html',1,'']]],
+ ['byte_5fbuffer_5fqueue_2ec',['byte_buffer_queue.c',['../byte__buffer__queue_8c.html',1,'']]],
+ ['byte_5fbuffer_5fqueue_2eh',['byte_buffer_queue.h',['../byte__buffer__queue_8h.html',1,'']]],
+ ['byte_5fbuffer_5freader_2ec',['byte_buffer_reader.c',['../byte__buffer__reader_8c.html',1,'']]],
+ ['byte_5fbuffer_5freader_2eh',['byte_buffer_reader.h',['../byte__buffer__reader_8h.html',1,'']]],
+ ['bytes',['bytes',['../structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59',1,'grpc_byte_buffer_queue::bytes()'],['../structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864',1,'gpr_slice::bytes()'],['../structgpr__slice.html#a39592633c4ad594a15b3a52aadff398d',1,'gpr_slice::bytes()']]],
+ ['bytes_5ftransfered',['bytes_transfered',['../structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e',1,'grpc_winsocket_callback_info']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_3.html b/doc/ref/core.internal/html/search/all_3.html
new file mode 100644
index 0000000000..4d312d03dd
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_3.js b/doc/ref/core.internal/html/search/all_3.js
new file mode 100644
index 0000000000..45fe1433aa
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_3.js
@@ -0,0 +1,216 @@
+var searchData=
+[
+ ['cache_5fmu',['cache_mu',['../structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94',1,'grpc_service_account_jwt_access_credentials']]],
+ ['cached',['cached',['../structgrpc__service__account__jwt__access__credentials.html#a8c7e6a306aa24aaefa9f96982fdaafbd',1,'grpc_service_account_jwt_access_credentials']]],
+ ['call',['call',['../structfinished__loose__op__allocated__args.html#a39f5408992820aa61c3aa11e378612d3',1,'finished_loose_op_allocated_args::call()'],['../structrequested__call.html#a0995465df7da49fbbb591d8b03dd1de2',1,'requested_call::call()'],['../structcall__data.html#a5512e8a6ddade275bc9b64ef48de3036',1,'call_data::call()']]],
+ ['call_2ec',['call.c',['../call_8c.html',1,'']]],
+ ['call_2eh',['call.h',['../call_8h.html',1,'']]],
+ ['call_5factive',['CALL_ACTIVE',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9',1,'client_channel.c']]],
+ ['call_5fcancelled',['CALL_CANCELLED',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d',1,'client_channel.c']]],
+ ['call_5fcreated',['CALL_CREATED',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8',1,'client_channel.c']]],
+ ['call_5fdata',['call_data',['../structcall__data.html',1,'call_data'],['../structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04',1,'grpc_call_element::call_data()'],['../server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;server_auth_filter.c'],['../client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8',1,'call_data():&#160;client_channel.c'],['../compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;compress_filter.c'],['../connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889',1,'call_data():&#160;connected_channel.c'],['../http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;http_client_filter.c'],['../http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;http_server_filter.c'],['../noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;noop_filter.c'],['../server_8c.html#a9d8dd5943711393112c0fe83c02c0ca8',1,'call_data():&#160;server.c']]],
+ ['call_5fdata_5ffrom_5ftransport_5fstream',['CALL_DATA_FROM_TRANSPORT_STREAM',['../connected__channel_8c.html#adc89e1ee71e626f5adc6ceb2de12935a',1,'connected_channel.c']]],
+ ['call_5fdetails_2ec',['call_details.c',['../call__details_8c.html',1,'']]],
+ ['call_5felem_5ffrom_5fcall',['CALL_ELEM_FROM_CALL',['../call_8c.html#acd274f346b0ea7fc3235481cb7726c25',1,'call.c']]],
+ ['call_5felems_5ffrom_5fstack',['CALL_ELEMS_FROM_STACK',['../channel__stack_8c.html#a604f63dd1fea052b4285b1437c100610',1,'channel_stack.c']]],
+ ['call_5ffrom_5fcall_5fstack',['CALL_FROM_CALL_STACK',['../call_8c.html#a5e0acdef58012600d44f7978256c82d9',1,'call.c']]],
+ ['call_5ffrom_5ftop_5felem',['CALL_FROM_TOP_ELEM',['../call_8c.html#a195c2e9b9e6551cf5973560eec7a97fa',1,'call.c']]],
+ ['call_5fhost_5fcheck_5fis_5fasync',['call_host_check_is_async',['../structgrpc__fake__channel__security__connector.html#af6c4c25382f598179b3b50d4a90a0584',1,'grpc_fake_channel_security_connector']]],
+ ['call_5flink',['call_link',['../structcall__link.html',1,'']]],
+ ['call_5flog_5fbatch_2ec',['call_log_batch.c',['../call__log__batch_8c.html',1,'']]],
+ ['call_5fstack_5ffrom_5fcall',['CALL_STACK_FROM_CALL',['../call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b',1,'call.c']]],
+ ['call_5fstack_5fsize',['call_stack_size',['../structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2',1,'grpc_channel_stack']]],
+ ['call_5fstate',['call_state',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1',1,'call_state():&#160;client_channel.c'],['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1',1,'call_state():&#160;server.c']]],
+ ['call_5fwaiting_5ffor_5fcall',['CALL_WAITING_FOR_CALL',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fconfig',['CALL_WAITING_FOR_CONFIG',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fpick',['CALL_WAITING_FOR_PICK',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fsend',['CALL_WAITING_FOR_SEND',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c',1,'client_channel.c']]],
+ ['callback_5fphase',['callback_phase',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c',1,'channel_connectivity.c']]],
+ ['called_5fback',['CALLED_BACK',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca7cf5434be93040e9946cc788465d3b3a',1,'channel_connectivity.c']]],
+ ['called_5fshutdown',['called_shutdown',['../structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53',1,'grpc_pollset']]],
+ ['calling_5fback',['CALLING_BACK',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845cab5a94c295540046002de0f889519c275',1,'channel_connectivity.c']]],
+ ['calling_5fback_5fand_5ffinished',['CALLING_BACK_AND_FINISHED',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca4ed55db80fc1cf98cb8fc633fd59d68d',1,'channel_connectivity.c']]],
+ ['cancel_5falarm',['cancel_alarm',['../structgrpc__call.html#a8ecae45b11c6194a51ccd17b0ae1a724',1,'grpc_call']]],
+ ['cancel_5fwith_5fstatus',['cancel_with_status',['../structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf',1,'grpc_transport_stream_op::cancel_with_status()'],['../structgrpc__call.html#a52b7e350723f5cd4a577a86a4b72f026',1,'grpc_call::cancel_with_status()']]],
+ ['cancellable_2ec',['cancellable.c',['../cancellable_8c.html',1,'']]],
+ ['cancellable_5fplatform_2eh',['cancellable_platform.h',['../cancellable__platform_8h.html',1,'']]],
+ ['cancelled',['cancelled',['../structgrpc__op.html#ae5a9717d4a69c46f343381596e223874',1,'grpc_op::cancelled()'],['../structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312',1,'grpc_chttp2_stream_global::cancelled()'],['../structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2',1,'gpr_cancellable::cancelled()']]],
+ ['cancelled_5fstatus',['cancelled_status',['../structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098',1,'grpc_chttp2_stream_global']]],
+ ['capacity',['capacity',['../structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97',1,'grpc_metadata_array::capacity()'],['../structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9',1,'grpc_bbq_array::capacity()'],['../structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613',1,'grpc_chttp2_hpack_parser_string::capacity()'],['../structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd',1,'grpc_chttp2_incoming_metadata_buffer::capacity()'],['../structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef',1,'grpc_chttp2_stream_map::capacity()'],['../structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772',1,'grpc_stream_op_buffer::capacity()'],['../structrequest__killer.html#aef7c9b567894a3f6af2ebaed400fff42',1,'request_killer::capacity()'],['../structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e',1,'gpr_slice_buffer::capacity()'],['../structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd',1,'gpr_strvec::capacity()'],['../structdump__out.html#ad4ef0a9a3b2494b534b9fcba9d349f21',1,'dump_out::capacity()']]],
+ ['cb',['cb',['../structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd',1,'grpc_alarm::cb()'],['../structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1',1,'grpc_iomgr_closure::cb()'],['../structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1',1,'grpc_winsocket_callback_info::cb()'],['../structgrpc__credentials__metadata__request.html#afd521fb44c2c0a7aaab92243f606c67e',1,'grpc_credentials_metadata_request::cb()'],['../structgrpc__composite__credentials__metadata__context.html#a14c42c56de0c02fcaca7103953411ce0',1,'grpc_composite_credentials_metadata_context::cb()'],['../structgrpc__secure__transport__setup.html#a1bf28f7192cd4fe30e4daaf306545e9c',1,'grpc_secure_transport_setup::cb()']]],
+ ['cb_5farg',['cb_arg',['../structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3',1,'grpc_alarm::cb_arg()'],['../structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293',1,'grpc_iomgr_closure::cb_arg()']]],
+ ['census_2eh',['census.h',['../census_8h.html',1,'']]],
+ ['census_5fcontext',['census_context',['../structcensus__context.html',1,'census_context'],['../census_8h.html#a27fc8788690179599713226f1f054736',1,'census_context():&#160;census.h']]],
+ ['census_5fcontext_5fdeserialize',['census_context_deserialize',['../census_8h.html#ad9daab242b41571299ac5b3bca71fc0d',1,'census_context_deserialize(const char *buffer, census_context **context):&#160;context.c'],['../context_8c.html#ad9daab242b41571299ac5b3bca71fc0d',1,'census_context_deserialize(const char *buffer, census_context **context):&#160;context.c']]],
+ ['census_5fcontext_5fdestroy',['census_context_destroy',['../census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d',1,'census_context_destroy(census_context *context):&#160;context.c'],['../context_8c.html#a5bfcd1edc546eeacf111c3316ae7785d',1,'census_context_destroy(census_context *context):&#160;context.c']]],
+ ['census_5fcontext_5fserialize',['census_context_serialize',['../census_8h.html#ad9a7d3170ecf720e1b22a4f255605748',1,'census_context_serialize(const census_context *context, char *buffer, size_t buf_size):&#160;context.c'],['../context_8c.html#ad9a7d3170ecf720e1b22a4f255605748',1,'census_context_serialize(const census_context *context, char *buffer, size_t buf_size):&#160;context.c']]],
+ ['census_5fenabled',['census_enabled',['../census_8h.html#a742616973e78aaf969389cea20feea9f',1,'census_enabled(void):&#160;initialize.c'],['../initialize_8c.html#a742616973e78aaf969389cea20feea9f',1,'census_enabled(void):&#160;initialize.c']]],
+ ['census_5ffeature_5fall',['CENSUS_FEATURE_ALL',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c',1,'census.h']]],
+ ['census_5ffeature_5fcpu',['CENSUS_FEATURE_CPU',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5',1,'census.h']]],
+ ['census_5ffeature_5fnone',['CENSUS_FEATURE_NONE',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab',1,'census.h']]],
+ ['census_5ffeature_5fstats',['CENSUS_FEATURE_STATS',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a',1,'census.h']]],
+ ['census_5ffeature_5ftracing',['CENSUS_FEATURE_TRACING',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718',1,'census.h']]],
+ ['census_5ffeatures',['census_features',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8',1,'census.h']]],
+ ['census_5ffilter_2eh',['census_filter.h',['../census__filter_8h.html',1,'']]],
+ ['census_5finitialize',['census_initialize',['../census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6',1,'census_initialize(int features):&#160;initialize.c'],['../initialize_8c.html#a4cea92157f3de215724f6bf4aeaee1b6',1,'census_initialize(int features):&#160;initialize.c']]],
+ ['census_5finvalid_5fstat_5fid',['CENSUS_INVALID_STAT_ID',['../rpc__stat__id_8h.html#a59e5e9d32ec60d7d202ebd834117c7b6',1,'rpc_stat_id.h']]],
+ ['census_5frecord_5fstat',['census_record_stat',['../census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb',1,'census_record_stat(census_context *context, census_stat *stats, size_t nstats):&#160;record_stat.c'],['../record__stat_8c.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb',1,'census_record_stat(census_context *context, census_stat *stats, size_t nstats):&#160;record_stat.c']]],
+ ['census_5frpc_5fclient_5ferrors',['CENSUS_RPC_CLIENT_ERRORS',['../rpc__stat__id_8h.html#ab98fe10ab9da977ff1ab146fb47c25c6',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fclient_5flatency',['CENSUS_RPC_CLIENT_LATENCY',['../rpc__stat__id_8h.html#a18893b8a61bb96d779e5f3e1c6384fe2',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fclient_5frequests',['CENSUS_RPC_CLIENT_REQUESTS',['../rpc__stat__id_8h.html#aeaec3ab6b88faa6f3d17df39886839b4',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fserver_5ferrors',['CENSUS_RPC_SERVER_ERRORS',['../rpc__stat__id_8h.html#a653739d1d6b9c46c169dd40023e883c3',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fserver_5flatency',['CENSUS_RPC_SERVER_LATENCY',['../rpc__stat__id_8h.html#ab30ee75f97d6c9361d8667d62349f49e',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fserver_5frequests',['CENSUS_RPC_SERVER_REQUESTS',['../rpc__stat__id_8h.html#abdbb1e62656b892c48ef4b5123be59e2',1,'rpc_stat_id.h']]],
+ ['census_5fshutdown',['census_shutdown',['../census_8h.html#aa792b067548ecdd987d560b492c83d85',1,'census_shutdown(void):&#160;initialize.c'],['../initialize_8c.html#aa792b067548ecdd987d560b492c83d85',1,'census_shutdown(void):&#160;initialize.c']]],
+ ['census_5fstat',['census_stat',['../structcensus__stat.html',1,'']]],
+ ['census_5fsupported',['census_supported',['../census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9',1,'census_supported(void):&#160;initialize.c'],['../initialize_8c.html#ad5f627a64ac4febbc61d2b89801d40e9',1,'census_supported(void):&#160;initialize.c']]],
+ ['cert_5fchain',['cert_chain',['../structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656',1,'grpc_ssl_pem_key_cert_pair']]],
+ ['chained',['chained',['../structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6',1,'grpc_auth_context']]],
+ ['chand',['chand',['../structlb__policy__connectivity__watcher.html#a8c4c66e260e9c93b8ce9b4a129e581e5',1,'lb_policy_connectivity_watcher']]],
+ ['channel',['channel',['../structgrpc__call.html#aefaa9e839c97ca63876add3d3a04a94d',1,'grpc_call::channel()'],['../structstate__watcher.html#a0b0df5ad70d6a91a268452e03a885404',1,'state_watcher::channel()'],['../structchannel__data.html#aa44b8e02dfe6cd2b3823c51f9559dc29',1,'channel_data::channel()']]],
+ ['channel_2ec',['channel.c',['../channel_8c.html',1,'']]],
+ ['channel_2eh',['channel.h',['../channel_8h.html',1,'']]],
+ ['channel_5fargs',['channel_args',['../structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab',1,'grpc_connect_in_args::channel_args()'],['../structgrpc__server.html#ab1ef57d52ade4e4f8eb0e26b42ea48a4',1,'grpc_server::channel_args()']]],
+ ['channel_5fargs_2ec',['channel_args.c',['../channel__args_8c.html',1,'']]],
+ ['channel_5fargs_2eh',['channel_args.h',['../channel__args_8h.html',1,'']]],
+ ['channel_5fbroadcaster',['channel_broadcaster',['../structchannel__broadcaster.html',1,'']]],
+ ['channel_5fcallback',['channel_callback',['../structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb',1,'grpc_chttp2_transport']]],
+ ['channel_5fconnectivity_2ec',['channel_connectivity.c',['../channel__connectivity_8c.html',1,'']]],
+ ['channel_5fconnectivity_5fchanged',['channel_connectivity_changed',['../structchannel__data.html#a026ed08d4fb85fff5a0f332d3a35cf17',1,'channel_data']]],
+ ['channel_5fcreate_2ec',['channel_create.c',['../channel__create_8c.html',1,'']]],
+ ['channel_5fdata',['channel_data',['../structchannel__data.html',1,'channel_data'],['../structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d',1,'grpc_channel_element::channel_data()'],['../structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b',1,'grpc_call_element::channel_data()'],['../server__auth__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;server_auth_filter.c'],['../compress__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;compress_filter.c'],['../connected__channel_8c.html#a43362118345c9bbd8b75103f9854a69d',1,'channel_data():&#160;connected_channel.c'],['../http__client__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;http_client_filter.c'],['../http__server__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;http_server_filter.c'],['../noop__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;noop_filter.c'],['../server_8c.html#a663530098451ca6ac5dd8381e470b512',1,'channel_data():&#160;server.c']]],
+ ['channel_5felems_5ffrom_5fstack',['CHANNEL_ELEMS_FROM_STACK',['../channel__stack_8c.html#ada2431407a0c579217e6b33534dc4b68',1,'channel_stack.c']]],
+ ['channel_5ffilter_5fcount',['channel_filter_count',['../structgrpc__server.html#a090ca3cc3f02e7b51d8c089f6c675ac2',1,'grpc_server']]],
+ ['channel_5ffilters',['channel_filters',['../structgrpc__server.html#a2da21f54a2ad688793d6c753ea74ec02',1,'grpc_server']]],
+ ['channel_5ffrom_5fchannel_5fstack',['CHANNEL_FROM_CHANNEL_STACK',['../channel_8c.html#ae9cf519e646bc07f4b32920f39fba049',1,'channel.c']]],
+ ['channel_5ffrom_5ftop_5felem',['CHANNEL_FROM_TOP_ELEM',['../channel_8c.html#a79c20e305865805bbe3e21adc8da9e72',1,'channel.c']]],
+ ['channel_5fregistered_5fmethod',['channel_registered_method',['../structchannel__registered__method.html',1,'channel_registered_method'],['../server_8c.html#a47b693eb517ae870b0243f6c7be3541f',1,'channel_registered_method():&#160;server.c']]],
+ ['channel_5fsaw_5ferror',['channel_saw_error',['../structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b',1,'grpc_resolver_vtable']]],
+ ['channel_5fstack_2ec',['channel_stack.c',['../channel__stack_8c.html',1,'']]],
+ ['channel_5fstack_2eh',['channel_stack.h',['../channel__stack_8h.html',1,'']]],
+ ['channel_5fstack_5ffrom_5fchannel',['CHANNEL_STACK_FROM_CHANNEL',['../channel_8c.html#a66dde7aaec84b22bf4ddfa999a2201ed',1,'channel.c']]],
+ ['channel_5fstack_5ffrom_5fconnection',['CHANNEL_STACK_FROM_CONNECTION',['../subchannel_8c.html#a004980d48eea483363d061723e95834e',1,'subchannel.c']]],
+ ['channels',['channels',['../structchannel__broadcaster.html#ad8aee8e6b39c0a74c47bc518fe60e0d7',1,'channel_broadcaster']]],
+ ['check_5favailability',['check_availability',['../structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04',1,'grpc_wakeup_fd_vtable']]],
+ ['check_5fcall_5fhost',['check_call_host',['../structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e',1,'grpc_channel_security_connector']]],
+ ['check_5fconnectivity',['check_connectivity',['../structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25',1,'grpc_lb_policy_vtable']]],
+ ['check_5fpeer',['check_peer',['../structgrpc__security__connector__vtable.html#aee8169e56a02a5cb55d68bcc6d0d56de',1,'grpc_security_connector_vtable']]],
+ ['checking_5fconnectivity',['checking_connectivity',['../structpick__first__lb__policy.html#a27c07323206631d5b7b021bfc2fb13d8',1,'pick_first_lb_policy']]],
+ ['checking_5fsubchannel',['checking_subchannel',['../structpick__first__lb__policy.html#a71958e25ab870a0f4436c07fed4585da',1,'pick_first_lb_policy']]],
+ ['child',['child',['../structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71',1,'grpc_json']]],
+ ['chttp2_5ftransport_2ec',['chttp2_transport.c',['../chttp2__transport_8c.html',1,'']]],
+ ['chttp2_5ftransport_2eh',['chttp2_transport.h',['../chttp2__transport_8h.html',1,'']]],
+ ['claims',['claims',['../structverifier__cb__ctx.html#a47babe5494185ee4fd95e92a8309fa26',1,'verifier_cb_ctx']]],
+ ['client',['client',['../structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c',1,'grpc_endpoint_pair']]],
+ ['client_5fauth_5ffilter_2ec',['client_auth_filter.c',['../client__auth__filter_8c.html',1,'']]],
+ ['client_5fchannel_2ec',['client_channel.c',['../client__channel_8c.html',1,'']]],
+ ['client_5fchannel_2eh',['client_channel.h',['../client__channel_8h.html',1,'']]],
+ ['client_5fconfig_2ec',['client_config.c',['../client__config_8c.html',1,'']]],
+ ['client_5fconfig_2eh',['client_config.h',['../client__config_8h.html',1,'']]],
+ ['client_5femail',['client_email',['../structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b',1,'grpc_auth_json_key']]],
+ ['client_5fid',['client_id',['../structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462',1,'grpc_auth_json_key::client_id()'],['../structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c',1,'grpc_auth_refresh_token::client_id()']]],
+ ['client_5fsecret',['client_secret',['../structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4',1,'grpc_auth_refresh_token']]],
+ ['clock',['clock',['../structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75',1,'grpc_precise_clock']]],
+ ['clock_5ftype',['clock_type',['../structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff',1,'gpr_timespec']]],
+ ['closed',['closed',['../structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e',1,'grpc_fd::closed()'],['../structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405',1,'grpc_chttp2_transport::closed()']]],
+ ['closure',['closure',['../structwaiting__call.html#ad8d9537c7523e3c09e5fcd4cf0bb1124',1,'waiting_call::closure()'],['../structstate__watcher.html#ab806a249c408b4412fc03ed0a5ede4c9',1,'state_watcher::closure()'],['../structfinished__loose__op__allocated__args.html#a1bf518b8de4a386cbf55698134e8c485',1,'finished_loose_op_allocated_args::closure()'],['../structshutdown__cleanup__args.html#a42d1e24f7cc5d51db75df17263950c9a',1,'shutdown_cleanup_args::closure()']]],
+ ['cmdline_2ec',['cmdline.c',['../cmdline_8c.html',1,'']]],
+ ['cmdline_2eh',['cmdline.h',['../cmdline_8h.html',1,'']]],
+ ['code',['code',['../uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1',1,'grpc_ioreq_data::code()'],['../structreceived__status.html#a5adb1c689f796d0055094addbc8b31c2',1,'received_status::code()']]],
+ ['complete_5fmask',['complete_mask',['../structreqinfo__master.html#a42a5da5664f298a2ff5c94760f69ffb3',1,'reqinfo_master']]],
+ ['completed_5fhead',['completed_head',['../structgrpc__completion__queue.html#a484ad9fad34b51c8ab2e0f6a144e6d5e',1,'grpc_completion_queue']]],
+ ['completed_5frequest',['completed_request',['../structcompleted__request.html',1,'']]],
+ ['completed_5frequests',['completed_requests',['../structgrpc__call.html#af82a58a0e542b5acd8bc4b1e50842ddd',1,'grpc_call']]],
+ ['completed_5ftail',['completed_tail',['../structgrpc__completion__queue.html#a82c067060ebf5ff91bc9ec961b414fa2',1,'grpc_completion_queue']]],
+ ['completing',['completing',['../structgrpc__call.html#a0ad5b28a10c5453b5fcd3cbf5e9ec0cc',1,'grpc_call']]],
+ ['completion',['completion',['../structrequested__call.html#a4ab625b5e4dc9670ef586c4d245858f5',1,'requested_call::completion()'],['../structshutdown__tag.html#a659b6448a029795dd262462d5f679609',1,'shutdown_tag::completion()']]],
+ ['completion_5fmu',['completion_mu',['../structgrpc__call.html#aaf50407acc01602b67f4e442b3a3121d',1,'grpc_call']]],
+ ['completion_5fqueue_2ec',['completion_queue.c',['../completion__queue_8c.html',1,'']]],
+ ['completion_5fqueue_2eh',['completion_queue.h',['../completion__queue_8h.html',1,'']]],
+ ['completion_5fstorage',['completion_storage',['../structstate__watcher.html#a1d65436328c649d7f029b98e54d50588',1,'state_watcher']]],
+ ['completions',['completions',['../structgrpc__call.html#ad48e9f752753814bf9ee0233c392fccd',1,'grpc_call']]],
+ ['composite_5fcreds',['composite_creds',['../structgrpc__composite__credentials__metadata__context.html#aa01c70e7c7cd7ac2071c933c4ca4ed65',1,'grpc_composite_credentials_metadata_context']]],
+ ['compress_5ffilter_2ec',['compress_filter.c',['../compress__filter_8c.html',1,'']]],
+ ['compress_5ffilter_2eh',['compress_filter.h',['../compress__filter_8h.html',1,'']]],
+ ['compress_5finner',['compress_inner',['../message__compress_8c.html#a703e3d8f4ace9e8b102552c527b879d8',1,'message_compress.c']]],
+ ['compress_5foffset',['COMPRESS_OFFSET',['../call_8c.html#a94d05fca53ff43502691278ac008b36c',1,'call.c']]],
+ ['compression',['compression',['../structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399',1,'grpc_byte_buffer']]],
+ ['compression_2eh',['compression.h',['../compression_8h.html',1,'']]],
+ ['compression_5falgorithm',['compression_algorithm',['../structcall__data.html#a9f593ec03211bdc3ede0b4da81d4354f',1,'call_data::compression_algorithm()'],['../structgrpc__call.html#afa14a32dc253da1909a2dd6e44304fdc',1,'grpc_call::compression_algorithm()']]],
+ ['compression_5falgorithm_5fstorage',['compression_algorithm_storage',['../structcall__data.html#ad33eb76b6d73d8a4475ff69ff4e8964c',1,'call_data']]],
+ ['compute_5fand_5fencode_5fsignature',['compute_and_encode_signature',['../json__token_8c.html#a08e7b0b2b3e6352e92cc7ae87328a480',1,'json_token.c']]],
+ ['compute_5fengine_5fdetector',['compute_engine_detector',['../structcompute__engine__detector.html',1,'']]],
+ ['concurrent_5fstream_5fcount',['concurrent_stream_count',['../structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995',1,'grpc_chttp2_transport_global']]],
+ ['config',['config',['../structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06',1,'grpc_ssl_credentials::config()'],['../structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3',1,'grpc_ssl_server_credentials::config()']]],
+ ['connect',['connect',['../structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078',1,'grpc_connector_vtable']]],
+ ['connected',['connected',['../structgrpc__subchannel.html#a69b581893484f0f728b780c5a9152bf4',1,'grpc_subchannel']]],
+ ['connected_5fchannel_2ec',['connected_channel.c',['../connected__channel_8c.html',1,'']]],
+ ['connected_5fchannel_2eh',['connected_channel.h',['../connected__channel_8h.html',1,'']]],
+ ['connected_5fchannel_5fcall_5fdata',['connected_channel_call_data',['../structconnected__channel__call__data.html',1,'']]],
+ ['connected_5fchannel_5fchannel_5fdata',['connected_channel_channel_data',['../structconnected__channel__channel__data.html',1,'']]],
+ ['connecting',['connecting',['../structgrpc__subchannel.html#a084840ded6075b823c3572c504694635',1,'grpc_subchannel']]],
+ ['connecting_5fresult',['connecting_result',['../structgrpc__subchannel.html#a71c47f21609f3dab29311d422360665f',1,'grpc_subchannel']]],
+ ['connection',['connection',['../structconnection.html',1,'connection'],['../structgrpc__subchannel__call.html#a1eb7f2be785456f81008f984d80f8ac6',1,'grpc_subchannel_call::connection()']]],
+ ['connection_5fref_5flocked',['CONNECTION_REF_LOCKED',['../subchannel_8c.html#a5a6df9d57aa14df8c30325f7b403a6ba',1,'subchannel.c']]],
+ ['connection_5funref_5flocked',['CONNECTION_UNREF_LOCKED',['../subchannel_8c.html#a7511e39882d77270a0e73a6ea6bdbf22',1,'subchannel.c']]],
+ ['connection_5fwindow_5ftarget',['connection_window_target',['../structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06',1,'grpc_chttp2_transport_global']]],
+ ['connectivity_5fchanged',['connectivity_changed',['../structpick__first__lb__policy.html#a54f466dc5e968d2b3a8f8fe6511d2c56',1,'pick_first_lb_policy']]],
+ ['connectivity_5fstate',['connectivity_state',['../structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d',1,'grpc_transport_op::connectivity_state()'],['../structstate__watcher.html#a2777b6c363f7d4262252bc4aaf515d43',1,'state_watcher::connectivity_state()'],['../structchannel__data.html#ace61d17706353a536bd079f18d54564f',1,'channel_data::connectivity_state()']]],
+ ['connectivity_5fstate_2ec',['connectivity_state.c',['../connectivity__state_8c.html',1,'']]],
+ ['connectivity_5fstate_2eh',['connectivity_state.h',['../connectivity__state_8h.html',1,'']]],
+ ['connector',['connector',['../structconnector.html',1,'connector'],['../structgrpc__secure__transport__setup.html#a494b76f3257449ed5eb88e0a52194324',1,'grpc_secure_transport_setup::connector()'],['../structgrpc__subchannel.html#a9439dd93e3b5078fb1e2669c327ed984',1,'grpc_subchannel::connector()']]],
+ ['connector_2ec',['connector.c',['../connector_8c.html',1,'']]],
+ ['connector_2eh',['connector.h',['../connector_8h.html',1,'']]],
+ ['connector_5fcreds',['connector_creds',['../structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637',1,'grpc_composite_credentials']]],
+ ['consume',['consume',['../structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e',1,'grpc_wakeup_fd_vtable']]],
+ ['container_5fbegins',['container_begins',['../structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4',1,'grpc_json_reader_vtable']]],
+ ['container_5fempty',['container_empty',['../structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381',1,'grpc_json_writer']]],
+ ['container_5fends',['container_ends',['../structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec',1,'grpc_json_reader_vtable']]],
+ ['container_5fjust_5fbegun',['container_just_begun',['../structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3',1,'grpc_json_reader']]],
+ ['content_5ftype',['content_type',['../structcall__data.html#a4169f3d34c6e55c4bba43a86241bf1ea',1,'call_data::content_type()'],['../structchannel__data.html#a7d6e2d61b1f1dc47be825afbdb0b1176',1,'channel_data::content_type()']]],
+ ['contents',['contents',['../unionlockfree__node.html#a4cf276073deb1a941a409b19bb78f5c4',1,'lockfree_node']]],
+ ['context',['context',['../structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae',1,'grpc_transport_stream_op::context()'],['../structinternal__request.html#a0a0fbaaabcd158b4fb0ff6c8b2d4879f',1,'internal_request::context()'],['../structgrpc__call.html#a91cd558ccf432aa44bbe813c4acd022c',1,'grpc_call::context()'],['../structinternal__string.html#a1bfe57ac1191b1278d4a61d34edbf1d7',1,'internal_string::context()'],['../structinternal__metadata.html#a19b31328660cdb5c8a8bf821094871c5',1,'internal_metadata::context()']]],
+ ['context_2ec',['context.c',['../context_8c.html',1,'']]],
+ ['context_2eh',['context.h',['../channel_2context_8h.html',1,'']]],
+ ['context_2eh',['context.h',['../census_2context_8h.html',1,'']]],
+ ['continuation',['continuation',['../structwaiting__for__connect.html#a8289e332e8b65421a161e607bb637f51',1,'waiting_for_connect']]],
+ ['copy',['copy',['../structgrpc__arg.html#abef4f8be0109b19fcbe7f614f1243303',1,'grpc_arg']]],
+ ['count',['count',['../structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4',1,'grpc_metadata_array::count()'],['../structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a',1,'grpc_op::count()'],['../structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67',1,'grpc_channel_stack::count()'],['../structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a',1,'grpc_call_stack::count()'],['../structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2',1,'grpc_bbq_array::count()'],['../uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a',1,'grpc_ioreq_data::count()'],['../structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd',1,'grpc_chttp2_incoming_metadata_buffer::count()'],['../structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8',1,'grpc_chttp2_stream_map::count()'],['../structrequest__killer.html#ae3dd02f0f46905f3d7a7b88193ca0af6',1,'request_killer::count()'],['../structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff',1,'gpr_slice_buffer::count()'],['../structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470',1,'gpr_refcount::count()'],['../structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387',1,'gpr_strvec::count()'],['../structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d',1,'gpr_histogram::count()']]],
+ ['counter',['counter',['../structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1',1,'grpc_pollset']]],
+ ['cpu_2eh',['cpu.h',['../cpu_8h.html',1,'']]],
+ ['cpu_5fiphone_2ec',['cpu_iphone.c',['../cpu__iphone_8c.html',1,'']]],
+ ['cpu_5flinux_2ec',['cpu_linux.c',['../cpu__linux_8c.html',1,'']]],
+ ['cpu_5fposix_2ec',['cpu_posix.c',['../cpu__posix_8c.html',1,'']]],
+ ['cpu_5fwindows_2ec',['cpu_windows.c',['../cpu__windows_8c.html',1,'']]],
+ ['cq',['cq',['../structgrpc__call.html#ae24201f3b8347e790898e3bc2ae1ad09',1,'grpc_call::cq()'],['../structstate__watcher.html#ae85d1a92c4f1e6a4eff3bcb356ff8204',1,'state_watcher::cq()'],['../structshutdown__tag.html#afca3fb84e8cde4f0b5f3e18905f555e9',1,'shutdown_tag::cq()']]],
+ ['cq_5fbound_5fto_5fcall',['cq_bound_to_call',['../structrequested__call.html#a7294f3532a1f72151e0ef3634f518431',1,'requested_call']]],
+ ['cq_5fcount',['cq_count',['../structgrpc__server.html#a0a49b61d38a3aee3f080087cf4b1f92d',1,'grpc_server']]],
+ ['cq_5ffor_5fnotification',['cq_for_notification',['../structrequested__call.html#a3b4918a8f8c79ab768156dc658e21b83',1,'requested_call']]],
+ ['cq_5fnew',['cq_new',['../structcall__data.html#a253926f346f7783d43ad5791ac70bba2',1,'call_data']]],
+ ['cqs',['cqs',['../structgrpc__server.html#a87495e0b247e92860d6c2a6504cf5528',1,'grpc_server']]],
+ ['create',['create',['../structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e',1,'grpc_wakeup_fd_vtable']]],
+ ['create_5fframe_5fprotector',['create_frame_protector',['../structtsi__handshaker__vtable.html#a071e3b76f8ddec1c89f9131c923f3648',1,'tsi_handshaker_vtable']]],
+ ['create_5fhandshaker',['create_handshaker',['../structgrpc__security__connector__vtable.html#ae1202bdafbea18af0fe2b0e6c11ae636',1,'grpc_security_connector_vtable::create_handshaker()'],['../structtsi__ssl__handshaker__factory.html#a44a633a0520c8561b5c63f97742daaef',1,'tsi_ssl_handshaker_factory::create_handshaker()']]],
+ ['create_5fresolver',['create_resolver',['../structgrpc__resolver__factory__vtable.html#a59d7eb4c9cb95b6ba33628c30b948f10',1,'grpc_resolver_factory_vtable']]],
+ ['create_5fsecurity_5fconnector',['create_security_connector',['../structgrpc__credentials__vtable.html#a7bbb5a8658e7f2295ed816f7f60e6f00',1,'grpc_credentials_vtable::create_security_connector()'],['../structgrpc__server__credentials__vtable.html#af56836a7d92bb4475b92d5991eb9c30d',1,'grpc_server_credentials_vtable::create_security_connector()']]],
+ ['create_5fsubchannel',['create_subchannel',['../structgrpc__subchannel__factory__vtable.html#a25972ec53ef7aa219669847b7cbb515d',1,'grpc_subchannel_factory_vtable']]],
+ ['credentials_2ec',['credentials.c',['../credentials_8c.html',1,'']]],
+ ['credentials_2eh',['credentials.h',['../credentials_8h.html',1,'']]],
+ ['credentials_5fmetadata_2ec',['credentials_metadata.c',['../credentials__metadata_8c.html',1,'']]],
+ ['credentials_5fposix_2ec',['credentials_posix.c',['../credentials__posix_8c.html',1,'']]],
+ ['credentials_5fwin32_2ec',['credentials_win32.c',['../credentials__win32_8c.html',1,'']]],
+ ['creds',['creds',['../structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf',1,'grpc_client_security_context::creds()'],['../structcall__data.html#a163b0cfa0e971a064e4ad6f35001f8ed',1,'call_data::creds()'],['../structgrpc__credentials__metadata__request.html#a7cf76389aba6b2f8ae6fcb00f59bff98',1,'grpc_credentials_metadata_request::creds()']]],
+ ['creds_5farray',['creds_array',['../structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231',1,'grpc_credentials_array']]],
+ ['creds_5findex',['creds_index',['../structgrpc__composite__credentials__metadata__context.html#af3232f00703210b60772c4dd1c727a56',1,'grpc_composite_credentials_metadata_context']]],
+ ['cs',['cs',['../structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c',1,'gpr_mu']]],
+ ['ctx',['ctx',['../structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58',1,'grpc_auth_property_iterator']]],
+ ['cur_5farg',['cur_arg',['../structgpr__cmdline.html#aa4b1fcaf802c2ca83c9e2213b8283297',1,'gpr_cmdline']]],
+ ['cur_5fframe_5ftype',['cur_frame_type',['../structframer__state.html#ab6d529c8b0d12ca60075d0c9e29d037b',1,'framer_state']]],
+ ['cur_5fline',['cur_line',['../structgrpc__httpcli__parser.html#a8524fc39d4fa476bf3133e922edf092c',1,'grpc_httpcli_parser']]],
+ ['cur_5fline_5flength',['cur_line_length',['../structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e',1,'grpc_httpcli_parser']]],
+ ['current',['current',['../structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f',1,'grpc_byte_buffer_reader::current()'],['../structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f',1,'grpc_connectivity_state_watcher::current()']]],
+ ['current_5fcontainer',['current_container',['../structjson__reader__userdata.html#a46c3b03cc1ca3fbeeb76f726ce844bf2',1,'json_reader_userdata']]],
+ ['current_5fstate',['current_state',['../structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e',1,'grpc_connectivity_state_tracker']]],
+ ['current_5fvalue',['current_value',['../structjson__reader__userdata.html#ab1069140339bf83ea323ac0ac696cc8c',1,'json_reader_userdata']]],
+ ['cv',['cv',['../structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844',1,'grpc_pollset::cv()'],['../structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459',1,'gpr_cancellable_list_::cv()']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_4.html b/doc/ref/core.internal/html/search/all_4.html
new file mode 100644
index 0000000000..d72a9104cd
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_4.js b/doc/ref/core.internal/html/search/all_4.js
new file mode 100644
index 0000000000..8d8c32ad7f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_4.js
@@ -0,0 +1,44 @@
+var searchData=
+[
+ ['data',['data',['../structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f',1,'grpc_byte_buffer::data()'],['../structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad',1,'grpc_op::data()'],['../structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55',1,'tsi_peer_property::data()'],['../structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621',1,'grpc_pollset::data()'],['../structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51',1,'grpc_bbq_array::data()'],['../structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61',1,'grpc_ioreq::data()'],['../structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9',1,'grpc_stream_op::data()'],['../structtsi__fake__frame.html#a4c55725c3501776bccf3dc63dc3c0301',1,'tsi_fake_frame::data()'],['../structrequested__call.html#a1814382d48854b3ce31b0aef9c4b4c7e',1,'requested_call::data()'],['../structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da',1,'gpr_slice::data()'],['../structdump__out.html#aaceca2e7d88a29bcd3593c5cba3e8a3a',1,'dump_out::data()'],['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa9d7d6f31868d66330397c967c4afd2d2',1,'DATA():&#160;stream_encoder.c']]],
+ ['data_5fparser',['data_parser',['../structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54',1,'grpc_chttp2_stream_parsing']]],
+ ['deadline',['deadline',['../structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15',1,'grpc_call_details::deadline()'],['../structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c',1,'grpc_connect_in_args::deadline()'],['../structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126',1,'grpc_alarm::deadline()'],['../structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589',1,'grpc_chttp2_incoming_metadata_buffer::deadline()'],['../structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04',1,'grpc_metadata_batch::deadline()'],['../structinternal__request.html#a3b0a573ccd8ac3d01b0b3668e39a2e61',1,'internal_request::deadline()'],['../structcall__data.html#a9ca8837431c3942aa3b18092e314632c',1,'call_data::deadline()'],['../structrequested__call.html#a7b0834c5a24427fbe79fb77ffd103cc8',1,'requested_call::deadline()']]],
+ ['debug_5fargs',['DEBUG_ARGS',['../metadata_8c.html#a74ccabb9eadfe99a2fa8e5004fdf7cfc',1,'metadata.c']]],
+ ['debug_5fdata',['debug_data',['../structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e',1,'grpc_chttp2_goaway_parser']]],
+ ['debug_5flength',['debug_length',['../structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23',1,'grpc_chttp2_goaway_parser']]],
+ ['debug_5fpos',['debug_pos',['../structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce',1,'grpc_chttp2_goaway_parser']]],
+ ['decl_5ffactory',['DECL_FACTORY',['../sockaddr__resolver_8c.html#ae666b8dfe7a65b7719adcc22034160e6',1,'sockaddr_resolver.c']]],
+ ['default_5fauthority',['default_authority',['../structchannel__data.html#a51d18a12253f4520179c5f04cc9f4c48',1,'channel_data']]],
+ ['default_5fcompression_5falgorithm',['default_compression_algorithm',['../structchannel__data.html#acc452310378fb56c38c296cdfdde14e3',1,'channel_data']]],
+ ['default_5fconnection_5fwindow_5ftarget',['DEFAULT_CONNECTION_WINDOW_TARGET',['../chttp2__transport_8c.html#a609f239b676101bc4e1358eeac253916',1,'chttp2_transport.c']]],
+ ['default_5fmax_5fmessage_5flength',['DEFAULT_MAX_MESSAGE_LENGTH',['../channel_8c.html#ac48c5c1b1a6288d82d88bad6aa306d56',1,'channel.c']]],
+ ['default_5fport',['default_port',['../structdns__resolver.html#ad3a4ce330d39e62347c8d230dc0431f4',1,'dns_resolver']]],
+ ['default_5fvalue',['default_value',['../structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb',1,'grpc_chttp2_setting_parameters']]],
+ ['default_5fwindow',['DEFAULT_WINDOW',['../chttp2__transport_8c.html#af9edf0dca12d746c6cf6c6852f4398ae',1,'chttp2_transport.c']]],
+ ['deframe_5fstate',['deframe_state',['../structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250',1,'grpc_chttp2_transport_parsing']]],
+ ['del_5ffd',['del_fd',['../structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60',1,'grpc_pollset_vtable']]],
+ ['depth',['depth',['../structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4',1,'grpc_json_reader::depth()'],['../structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995',1,'grpc_json_writer::depth()']]],
+ ['description',['description',['../structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d',1,'gpr_cmdline']]],
+ ['destroy',['destroy',['../structgrpc__arg.html#a15c9a748974a6ac525074f3ed1e04eb4',1,'grpc_arg::destroy()'],['../structgrpc__credentials__vtable.html#a95766dfd1880536b6b891b18514b5720',1,'grpc_credentials_vtable::destroy()'],['../structgrpc__server__credentials__vtable.html#a78347ce536f6c1885d49a6cd5106eade',1,'grpc_server_credentials_vtable::destroy()'],['../structgrpc__security__connector__vtable.html#acd16feb960e41e1920c193017a135704',1,'grpc_security_connector_vtable::destroy()'],['../structtsi__frame__protector__vtable.html#ac47686a0367046026dc8b97050ec2cdf',1,'tsi_frame_protector_vtable::destroy()'],['../structtsi__handshaker__vtable.html#a6ddd06eccb4d0576a3daba0ee98f45d8',1,'tsi_handshaker_vtable::destroy()'],['../structgrpc__call__context__element.html#a896c4d5b89848f2f14678745b6162f94',1,'grpc_call_context_element::destroy()'],['../structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c',1,'grpc_lb_policy_vtable::destroy()'],['../structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7',1,'grpc_resolver_vtable::destroy()'],['../structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c',1,'grpc_endpoint_vtable::destroy()'],['../structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815',1,'grpc_pollset_vtable::destroy()'],['../structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2',1,'grpc_wakeup_fd_vtable::destroy()'],['../structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf',1,'grpc_transport_vtable::destroy()'],['../structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a',1,'tsi_ssl_handshaker_factory::destroy()'],['../structlistener.html#add425fdd17452e62c09d047e24a3034f',1,'listener::destroy()']]],
+ ['destroy_5fcall_5felem',['destroy_call_elem',['../structgrpc__channel__filter.html#a347e5451860788a084735e66b1684312',1,'grpc_channel_filter']]],
+ ['destroy_5fcalled',['destroy_called',['../structgrpc__call.html#af72cb94597b41817f2c12e8d4ac5ae95',1,'grpc_call']]],
+ ['destroy_5fchannel_5felem',['destroy_channel_elem',['../structgrpc__channel__filter.html#a7ab39b0d83fd44c9e3be4b930e6b60e2',1,'grpc_channel_filter']]],
+ ['destroy_5fclosure',['destroy_closure',['../structgrpc__call.html#a2cac7abed2fe85b3ddbdde40931ed793',1,'grpc_call::destroy_closure()'],['../structgrpc__channel.html#ae6dda10ffe354ceefda810573f5e80e9',1,'grpc_channel::destroy_closure()']]],
+ ['destroy_5fstream',['destroy_stream',['../structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b',1,'grpc_transport_vtable']]],
+ ['destroy_5fuser_5fdata',['destroy_user_data',['../structinternal__metadata.html#a5377f467bb28c9b4774d896b44d8c6a2',1,'internal_metadata']]],
+ ['destroying',['destroying',['../structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f',1,'grpc_chttp2_transport']]],
+ ['details',['details',['../uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6',1,'grpc_ioreq_data::details()'],['../uniongrpc__ioreq__data.html#aabf2513498a2eee60eec1d1d70968169',1,'grpc_ioreq_data::details()'],['../structcall__data.html#a178c22c4c266e3ffd0583f3ed9bc749f',1,'call_data::details()'],['../structreceived__status.html#a6b73f215e5290bb6660c25e34c07ca72',1,'received_status::details()'],['../structrequested__call.html#a65cfbe1bb43697b7cc762ca44fa94c1b',1,'requested_call::details()']]],
+ ['details_5fcapacity',['details_capacity',['../uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468',1,'grpc_ioreq_data']]],
+ ['details_5flink',['details_link',['../structgrpc__call.html#a932212dbec6334868cf997dd275c2192',1,'grpc_call']]],
+ ['dirtied_5flocal_5fsettings',['dirtied_local_settings',['../structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e',1,'grpc_chttp2_transport_global']]],
+ ['disconnect',['disconnect',['../structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b',1,'grpc_transport_op']]],
+ ['disconnected',['disconnected',['../structgrpc__subchannel.html#aeb64d3a8c4d1f0c3b75cda0f97d80c5c',1,'grpc_subchannel']]],
+ ['dns_5fresolver',['dns_resolver',['../structdns__resolver.html',1,'']]],
+ ['dns_5fresolver_2ec',['dns_resolver.c',['../dns__resolver_8c.html',1,'']]],
+ ['dns_5fresolver_2eh',['dns_resolver.h',['../dns__resolver_8h.html',1,'']]],
+ ['done',['done',['../structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64',1,'grpc_cq_completion']]],
+ ['done_5farg',['done_arg',['../structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a',1,'grpc_cq_completion']]],
+ ['drain_5fpos',['drain_pos',['../structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b',1,'grpc_byte_buffer_queue']]],
+ ['draining',['draining',['../structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b',1,'grpc_byte_buffer_queue']]],
+ ['dump_5fout',['dump_out',['../structdump__out.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_5.html b/doc/ref/core.internal/html/search/all_5.html
new file mode 100644
index 0000000000..99ef726704
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_5.js b/doc/ref/core.internal/html/search/all_5.js
new file mode 100644
index 0000000000..7b7e1c33a3
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_5.js
@@ -0,0 +1,40 @@
+var searchData=
+[
+ ['elem',['elem',['../structcall__data.html#a7042d8feb119d4fcce1258c5eddca8ff',1,'call_data::elem()'],['../structwaiting__call.html#af0c24ed1b79604b43d7a669331adcbc4',1,'waiting_call::elem()']]],
+ ['elems',['elems',['../structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92',1,'grpc_chttp2_incoming_metadata_buffer::elems()'],['../structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d',1,'grpc_chttp2_incoming_metadata_live_op_buffer::elems()']]],
+ ['email_5fdomain',['email_domain',['../structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df',1,'grpc_jwt_verifier_email_domain_key_url_mapping::email_domain()'],['../structemail__key__mapping.html#a379069d9b6baffade9583b28046eab90',1,'email_key_mapping::email_domain()']]],
+ ['email_5fkey_5fmapping',['email_key_mapping',['../structemail__key__mapping.html',1,'']]],
+ ['endpoint_2ec',['endpoint.c',['../endpoint_8c.html',1,'']]],
+ ['endpoint_2eh',['endpoint.h',['../endpoint_8h.html',1,'']]],
+ ['endpoint_5fpair_2eh',['endpoint_pair.h',['../endpoint__pair_8h.html',1,'']]],
+ ['endpoint_5fpair_5fposix_2ec',['endpoint_pair_posix.c',['../endpoint__pair__posix_8c.html',1,'']]],
+ ['endpoint_5fpair_5fwindows_2ec',['endpoint_pair_windows.c',['../endpoint__pair__windows_8c.html',1,'']]],
+ ['endpoint_5freading',['endpoint_reading',['../structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905',1,'grpc_chttp2_transport']]],
+ ['entries',['entries',['../structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5',1,'grpc_credentials_md_store::entries()'],['../structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1',1,'gpr_stack_lockfree::entries()']]],
+ ['entries_5felems',['entries_elems',['../structgrpc__chttp2__hpack__compressor.html#a028e3752a9b203d820e194029f6df186',1,'grpc_chttp2_hpack_compressor']]],
+ ['entries_5fkeys',['entries_keys',['../structgrpc__chttp2__hpack__compressor.html#a80cc9b5282b637b3facbb68cf1038125',1,'grpc_chttp2_hpack_compressor']]],
+ ['entry_5falignment_5fbits',['ENTRY_ALIGNMENT_BITS',['../stack__lockfree_8c.html#a8644da45b827e108bca857053cbf48af',1,'stack_lockfree.c']]],
+ ['ents',['ents',['../structgrpc__chttp2__hptbl.html#af14d20a9a16ee86be7d9f18b2f5334eb',1,'grpc_chttp2_hptbl']]],
+ ['env_2eh',['env.h',['../env_8h.html',1,'']]],
+ ['env_5flinux_2ec',['env_linux.c',['../env__linux_8c.html',1,'']]],
+ ['env_5fposix_2ec',['env_posix.c',['../env__posix_8c.html',1,'']]],
+ ['env_5fwin32_2ec',['env_win32.c',['../env__win32_8c.html',1,'']]],
+ ['ep',['ep',['../structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff',1,'grpc_chttp2_transport::ep()'],['../structinternal__request.html#af6443badea586cce9b4e3112832760c7',1,'internal_request::ep()']]],
+ ['error_5fcode',['error_code',['../structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5',1,'grpc_chttp2_goaway_parser']]],
+ ['error_5fheader',['ERROR_HEADER',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea57e2b3994258d7216de08793daaa2b35',1,'hpack_parser.c']]],
+ ['error_5fmsg_5fkey',['error_msg_key',['../structchannel__data.html#a214f33e78aafbbac774ea95c2e9dc8b3',1,'channel_data']]],
+ ['error_5fstatus_5fset',['error_status_set',['../structgrpc__call.html#a5cb38ade0e31380920c4afe56eea7b85',1,'grpc_call']]],
+ ['escaped_5fstring_5fwas_5fkey',['escaped_string_was_key',['../structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107',1,'grpc_json_reader']]],
+ ['event_5fstring_2ec',['event_string.c',['../event__string_8c.html',1,'']]],
+ ['event_5fstring_2eh',['event_string.h',['../event__string_8h.html',1,'']]],
+ ['event_5fsync_5fpartitions',['event_sync_partitions',['../sync_8c.html#a0ed680fdb405e7195d9f14032851eebba036372fdae4f52140a8f27482b729753',1,'sync.c']]],
+ ['exit_5fidle',['exit_idle',['../structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301',1,'grpc_lb_policy_vtable']]],
+ ['exit_5fidle_5fwhen_5flb_5fpolicy_5farrives',['exit_idle_when_lb_policy_arrives',['../structchannel__data.html#a3fe0f0347e1953376cd84db85bba9917',1,'channel_data']]],
+ ['exp',['exp',['../structgrpc__jwt__claims.html#adb8933c8e007a5864aea01e258637594',1,'grpc_jwt_claims']]],
+ ['expect_5fcontinuation_5fstream_5fid',['expect_continuation_stream_id',['../structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060',1,'grpc_chttp2_transport_parsing']]],
+ ['extra_5farg',['extra_arg',['../structgpr__cmdline.html#a1109c69ceb7d9c2ae8f374377690b4cb',1,'gpr_cmdline']]],
+ ['extra_5farg_5fhelp',['extra_arg_help',['../structgpr__cmdline.html#ab1e7d3da9d7dac50a04411059cf856fb',1,'gpr_cmdline']]],
+ ['extra_5farg_5fname',['extra_arg_name',['../structgpr__cmdline.html#abc1adda9fabb39a4cb8beba086aaa8b5',1,'gpr_cmdline']]],
+ ['extra_5farg_5fuser_5fdata',['extra_arg_user_data',['../structgpr__cmdline.html#afcf2c751450c2b09eea9ac769ddb2f11',1,'gpr_cmdline']]],
+ ['extract_5fpeer',['extract_peer',['../structtsi__handshaker__vtable.html#ab34c8028cf54bc2b0ee1e5ab95578541',1,'tsi_handshaker_vtable']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_6.html b/doc/ref/core.internal/html/search/all_6.html
new file mode 100644
index 0000000000..6133ab3af1
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_6.js b/doc/ref/core.internal/html/search/all_6.js
new file mode 100644
index 0000000000..db18cabd82
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_6.js
@@ -0,0 +1,59 @@
+var searchData=
+[
+ ['factory',['factory',['../structregistered__resolver.html#a19447c6e94f1739efdfdf0928f62a1bb',1,'registered_resolver']]],
+ ['fake_5ftransport_5fsecurity_2ec',['fake_transport_security.c',['../fake__transport__security_8c.html',1,'']]],
+ ['fake_5ftransport_5fsecurity_2eh',['fake_transport_security.h',['../fake__transport__security_8h.html',1,'']]],
+ ['fd',['fd',['../structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc',1,'grpc_fd_watcher::fd()'],['../structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32',1,'grpc_fd::fd()'],['../structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc',1,'grpc_pollset::fd()']]],
+ ['fd_5fcapacity',['fd_capacity',['../structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec',1,'grpc_pollset_set']]],
+ ['fd_5fcount',['fd_count',['../structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6',1,'grpc_pollset_set']]],
+ ['fd_5flist',['fd_list',['../structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772',1,'grpc_pollset_kick_state']]],
+ ['fd_5fposix_2ec',['fd_posix.c',['../fd__posix_8c.html',1,'']]],
+ ['fd_5fposix_2eh',['fd_posix.h',['../fd__posix_8h.html',1,'']]],
+ ['fds',['fds',['../structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6',1,'grpc_pollset_set']]],
+ ['fetch_5ffunc',['fetch_func',['../structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54',1,'grpc_oauth2_token_fetcher_credentials']]],
+ ['file',['file',['../structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89',1,'gpr_log_func_args']]],
+ ['file_2ec',['file.c',['../file_8c.html',1,'']]],
+ ['file_2eh',['file.h',['../file_8h.html',1,'']]],
+ ['file_5fposix_2ec',['file_posix.c',['../file__posix_8c.html',1,'']]],
+ ['file_5fwin32_2ec',['file_win32.c',['../file__win32_8c.html',1,'']]],
+ ['filling',['filling',['../structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c',1,'grpc_byte_buffer_queue']]],
+ ['filter',['filter',['../structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3',1,'grpc_channel_element::filter()'],['../structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8',1,'grpc_call_element::filter()']]],
+ ['filter_5fcount',['filter_count',['../structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128',1,'grpc_subchannel_args']]],
+ ['filter_5felems',['filter_elems',['../structgrpc__chttp2__hpack__compressor.html#a387e0eb34c64c7faaf16e0f2f3ad4d0e',1,'grpc_chttp2_hpack_compressor']]],
+ ['filter_5felems_5fsum',['filter_elems_sum',['../structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8',1,'grpc_chttp2_hpack_compressor']]],
+ ['filters',['filters',['../structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2',1,'grpc_connect_out_args::filters()'],['../structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab',1,'grpc_subchannel_args::filters()'],['../structgrpc__subchannel.html#a9de51c82bda25cff592acbe7b2866a32',1,'grpc_subchannel::filters()']]],
+ ['finish_5fdestroy_5fchannel_5fclosure',['finish_destroy_channel_closure',['../structchannel__data.html#acecc0d7f7ae20cc71b53692eb20a0a92',1,'channel_data']]],
+ ['finish_5fshutdown',['finish_shutdown',['../structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8',1,'grpc_pollset_vtable']]],
+ ['finished_5floose_5fop_5fallocated_5fargs',['finished_loose_op_allocated_args',['../structfinished__loose__op__allocated__args.html',1,'']]],
+ ['first_5fbyte_5ftype',['first_byte_type',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918',1,'hpack_parser.c']]],
+ ['first_5fent',['first_ent',['../structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77',1,'grpc_chttp2_hptbl']]],
+ ['flag',['flag',['../structtracer.html#a7cb129f30976377f84c881d419094573',1,'tracer']]],
+ ['flags',['flags',['../structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb',1,'grpc_op::flags()'],['../structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1',1,'grpc_ioreq::flags()'],['../structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b',1,'grpc_begin_message::flags()'],['../structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c',1,'gpr_thd_options::flags()']]],
+ ['fmix32',['FMIX32',['../murmur__hash_8c.html#a35851ba6b08c118345278effc46695e6',1,'murmur_hash.c']]],
+ ['force_5fclient_5fauth',['force_client_auth',['../structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007',1,'grpc_ssl_server_config']]],
+ ['force_5fsend_5fsettings',['force_send_settings',['../structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027',1,'grpc_chttp2_transport_global']]],
+ ['format_5frequest_2ec',['format_request.c',['../format__request_8c.html',1,'']]],
+ ['format_5frequest_2eh',['format_request.h',['../format__request_8h.html',1,'']]],
+ ['frame_2eh',['frame.h',['../frame_8h.html',1,'']]],
+ ['frame_5fdata_2ec',['frame_data.c',['../frame__data_8c.html',1,'']]],
+ ['frame_5fdata_2eh',['frame_data.h',['../frame__data_8h.html',1,'']]],
+ ['frame_5fgoaway_2ec',['frame_goaway.c',['../frame__goaway_8c.html',1,'']]],
+ ['frame_5fgoaway_2eh',['frame_goaway.h',['../frame__goaway_8h.html',1,'']]],
+ ['frame_5fping_2ec',['frame_ping.c',['../frame__ping_8c.html',1,'']]],
+ ['frame_5fping_2eh',['frame_ping.h',['../frame__ping_8h.html',1,'']]],
+ ['frame_5fprotector_5fcreated',['frame_protector_created',['../structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec',1,'tsi_handshaker']]],
+ ['frame_5frst_5fstream_2ec',['frame_rst_stream.c',['../frame__rst__stream_8c.html',1,'']]],
+ ['frame_5frst_5fstream_2eh',['frame_rst_stream.h',['../frame__rst__stream_8h.html',1,'']]],
+ ['frame_5fsettings_2ec',['frame_settings.c',['../frame__settings_8c.html',1,'']]],
+ ['frame_5fsettings_2eh',['frame_settings.h',['../frame__settings_8h.html',1,'']]],
+ ['frame_5fsize',['frame_size',['../structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a',1,'grpc_chttp2_data_parser']]],
+ ['frame_5ftype',['frame_type',['../structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865',1,'grpc_chttp2_data_parser::frame_type()'],['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f',1,'frame_type():&#160;stream_encoder.c']]],
+ ['frame_5fwindow_5fupdate_2ec',['frame_window_update.c',['../frame__window__update_8c.html',1,'']]],
+ ['frame_5fwindow_5fupdate_2eh',['frame_window_update.h',['../frame__window__update_8h.html',1,'']]],
+ ['framer_5fstate',['framer_state',['../structframer__state.html',1,'']]],
+ ['free',['free',['../structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece',1,'grpc_chttp2_stream_map']]],
+ ['free_5fspace',['free_space',['../structjson__writer__userdata.html#a7bb26b7e7b6783d61265705d79c87e03',1,'json_writer_userdata']]],
+ ['freelist_5fnext',['freelist_next',['../structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d',1,'grpc_fd']]],
+ ['from_5fssl',['from_ssl',['../structtsi__ssl__handshaker.html#a92fd97e3dc2041f61cf9e99b51f5a8e8',1,'tsi_ssl_handshaker::from_ssl()'],['../structtsi__ssl__frame__protector.html#a5d6ce8a49205271885618a79964a6b73',1,'tsi_ssl_frame_protector::from_ssl()']]],
+ ['fwd_5fdebug_5fargs',['FWD_DEBUG_ARGS',['../metadata_8c.html#a3cfab2da250dee51694faff7226974a6',1,'metadata.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_7.html b/doc/ref/core.internal/html/search/all_7.html
new file mode 100644
index 0000000000..574812594f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_7.js b/doc/ref/core.internal/html/search/all_7.js
new file mode 100644
index 0000000000..74bed41623
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_7.js
@@ -0,0 +1,1522 @@
+var searchData=
+[
+ ['garbage',['garbage',['../structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc',1,'grpc_metadata_batch']]],
+ ['get_5fbytes_5fto_5fsend_5fto_5fpeer',['get_bytes_to_send_to_peer',['../structtsi__handshaker__vtable.html#a78c12cd8f2a53cc2bd32367a725f48ff',1,'tsi_handshaker_vtable']]],
+ ['get_5fpeer',['get_peer',['../structgrpc__channel__filter.html#a6ddcbc355118eca15b48ee15476d2ace',1,'grpc_channel_filter::get_peer()'],['../structgrpc__endpoint__vtable.html#a01e48582c45e2e7033e344d253316911',1,'grpc_endpoint_vtable::get_peer()'],['../structgrpc__transport__vtable.html#a763d8c95adc9c74dae02a58557e001ed',1,'grpc_transport_vtable::get_peer()']]],
+ ['get_5frequest_5fmetadata',['get_request_metadata',['../structgrpc__credentials__vtable.html#a14795750df563c75436add4e7c05603d',1,'grpc_credentials_vtable']]],
+ ['get_5fresult',['get_result',['../structtsi__handshaker__vtable.html#af65c4700c22e71ecb09a94ae951d2bf3',1,'tsi_handshaker_vtable']]],
+ ['getblock32',['GETBLOCK32',['../murmur__hash_8c.html#aaaaac568919d152a24bbff8d8c1bc194',1,'murmur_hash.c']]],
+ ['global',['global',['../structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694',1,'grpc_chttp2_transport::global()'],['../structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5',1,'grpc_chttp2_stream::global()']]],
+ ['goaway_5ferror',['goaway_error',['../structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5flast_5fstream_5findex',['goaway_last_stream_index',['../structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5fmessage',['goaway_message',['../structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293',1,'grpc_transport_op']]],
+ ['goaway_5fparser',['goaway_parser',['../structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5freceived',['goaway_received',['../structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5fstatus',['goaway_status',['../structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f',1,'grpc_transport_op']]],
+ ['goaway_5ftext',['goaway_text',['../structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8',1,'grpc_chttp2_transport_parsing']]],
+ ['google_5fdefault_5fcredentials_2ec',['google_default_credentials.c',['../google__default__credentials_8c.html',1,'']]],
+ ['got_5finitial_5fmetadata',['got_initial_metadata',['../structcall__data.html#a7bda5a1466231baa3df0059573579b9b',1,'call_data::got_initial_metadata()'],['../structcall__data.html#a6bd5678f8f7fb5e1c91f0b98ced36147',1,'call_data::got_initial_metadata()']]],
+ ['got_5fkey',['got_key',['../structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed',1,'grpc_json_writer']]],
+ ['gpr_5farray_5fsize',['GPR_ARRAY_SIZE',['../useful_8h.html#a0e411d4f81a169c97c319d4e84df5747',1,'useful.h']]],
+ ['gpr_5fasprintf',['gpr_asprintf',['../string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0',1,'string_util.h']]],
+ ['gpr_5fassert',['GPR_ASSERT',['../log_8h.html#a6ccf52ff690655cc22cd9d053650876f',1,'log.h']]],
+ ['gpr_5fatm',['gpr_atm',['../atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc',1,'gpr_atm():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc',1,'gpr_atm():&#160;atm_gcc_sync.h'],['../atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc',1,'gpr_atm():&#160;atm_win32.h']]],
+ ['gpr_5fatm_5facq_5fcas',['gpr_atm_acq_cas',['../atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5facq_5fload',['gpr_atm_acq_load',['../atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fatm_5fcompile_5fbarrier_5f',['GPR_ATM_COMPILE_BARRIER_',['../atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5ffull_5fbarrier',['gpr_atm_full_barrier',['../atm__gcc__atomic_8h.html#a95f86e51ae9a479026bd237cb792193e',1,'gpr_atm_full_barrier():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#a95f86e51ae9a479026bd237cb792193e',1,'gpr_atm_full_barrier():&#160;atm_gcc_sync.h'],['../atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d',1,'gpr_atm_full_barrier():&#160;atm_win32.h']]],
+ ['gpr_5fatm_5ffull_5ffetch_5fadd',['gpr_atm_full_fetch_add',['../atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c',1,'gpr_atm_full_fetch_add():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c',1,'gpr_atm_full_fetch_add():&#160;atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fls_5fbarrier_5f',['GPR_ATM_LS_BARRIER_',['../atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5fcas',['gpr_atm_no_barrier_cas',['../atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5ffetch_5fadd',['gpr_atm_no_barrier_fetch_add',['../atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c',1,'gpr_atm_no_barrier_fetch_add():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c',1,'gpr_atm_no_barrier_fetch_add():&#160;atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5fload',['gpr_atm_no_barrier_load',['../atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5fstore',['gpr_atm_no_barrier_store',['../atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fatm_5frel_5fcas',['gpr_atm_rel_cas',['../atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5frel_5fstore',['gpr_atm_rel_store',['../atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fbitclear',['GPR_BITCLEAR',['../useful_8h.html#af797bf1803f9809b3ccceaa619078c89',1,'useful.h']]],
+ ['gpr_5fbitcount',['GPR_BITCOUNT',['../useful_8h.html#a8f51444fe97eb3f83184b98035e3357f',1,'useful.h']]],
+ ['gpr_5fbitget',['GPR_BITGET',['../useful_8h.html#a7c54bb2fffdaae24ba38ca5e5c53ab41',1,'useful.h']]],
+ ['gpr_5fbitset',['GPR_BITSET',['../useful_8h.html#a28de4ed955bfc2bff309061b7820a37a',1,'useful.h']]],
+ ['gpr_5fcacheline_5fsize',['GPR_CACHELINE_SIZE',['../port__platform_8h.html#ad9b7cc620233bbab0bc57cfbbe9519ad',1,'port_platform.h']]],
+ ['gpr_5fcacheline_5fsize_5flog',['GPR_CACHELINE_SIZE_LOG',['../port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576',1,'port_platform.h']]],
+ ['gpr_5fcancellable',['gpr_cancellable',['../structgpr__cancellable.html',1,'']]],
+ ['gpr_5fcancellable_5fcancel',['gpr_cancellable_cancel',['../sync_8h.html#a895fb73161d2dd1fa19be10d5395001c',1,'gpr_cancellable_cancel(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#a895fb73161d2dd1fa19be10d5395001c',1,'gpr_cancellable_cancel(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5fdestroy',['gpr_cancellable_destroy',['../sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338',1,'gpr_cancellable_destroy(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#aa82b7172b992bd33bd6fd4b4dc89e338',1,'gpr_cancellable_destroy(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5finit',['gpr_cancellable_init',['../sync_8h.html#aec0b0e9b9f084550cdec300da1f31add',1,'gpr_cancellable_init(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#aec0b0e9b9f084550cdec300da1f31add',1,'gpr_cancellable_init(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5fis_5fcancelled',['gpr_cancellable_is_cancelled',['../sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b',1,'gpr_cancellable_is_cancelled(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#a1e53047443e5eb1f9895be0c90bc790b',1,'gpr_cancellable_is_cancelled(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5flist_5f',['gpr_cancellable_list_',['../structgpr__cancellable__list__.html',1,'']]],
+ ['gpr_5fclamp',['GPR_CLAMP',['../useful_8h.html#ac974b8c13ee716193e0ee30d9513672c',1,'useful.h']]],
+ ['gpr_5fclock_5fmonotonic',['GPR_CLOCK_MONOTONIC',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c',1,'time.h']]],
+ ['gpr_5fclock_5frealtime',['GPR_CLOCK_REALTIME',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746',1,'time.h']]],
+ ['gpr_5fclock_5ftype',['gpr_clock_type',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281',1,'time.h']]],
+ ['gpr_5fcmdline',['gpr_cmdline',['../structgpr__cmdline.html',1,'gpr_cmdline'],['../cmdline_8h.html#aaad93cd9bfc32c54fc89f7c2f3b74eb6',1,'gpr_cmdline():&#160;cmdline.h']]],
+ ['gpr_5fcmdline_5fadd_5fflag',['gpr_cmdline_add_flag',['../cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e',1,'gpr_cmdline_add_flag(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c'],['../cmdline_8c.html#ac5ecfdfc605896c29df846b1e268045e',1,'gpr_cmdline_add_flag(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fadd_5fint',['gpr_cmdline_add_int',['../cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f',1,'gpr_cmdline_add_int(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c'],['../cmdline_8c.html#a0fc8cd330751e9876e8635189a1bc10f',1,'gpr_cmdline_add_int(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fadd_5fstring',['gpr_cmdline_add_string',['../cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3',1,'gpr_cmdline_add_string(gpr_cmdline *cl, const char *name, const char *help, char **value):&#160;cmdline.c'],['../cmdline_8c.html#a34568676c089f3284dc8f7d8d706b1d3',1,'gpr_cmdline_add_string(gpr_cmdline *cl, const char *name, const char *help, char **value):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fcreate',['gpr_cmdline_create',['../cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773',1,'gpr_cmdline_create(const char *description):&#160;cmdline.c'],['../cmdline_8c.html#a608f6fbc4edfb4d2c18e3c0660fd8773',1,'gpr_cmdline_create(const char *description):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fdestroy',['gpr_cmdline_destroy',['../cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98',1,'gpr_cmdline_destroy(gpr_cmdline *cl):&#160;cmdline.c'],['../cmdline_8c.html#a018f826ce313b02d2773ef97b8df5f98',1,'gpr_cmdline_destroy(gpr_cmdline *cl):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fon_5fextra_5farg',['gpr_cmdline_on_extra_arg',['../cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9',1,'gpr_cmdline_on_extra_arg(gpr_cmdline *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *arg), void *user_data):&#160;cmdline.c'],['../cmdline_8c.html#afcf023a5eb082034a650a0f0177d1fe9',1,'gpr_cmdline_on_extra_arg(gpr_cmdline *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *arg), void *user_data):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fparse',['gpr_cmdline_parse',['../cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4',1,'gpr_cmdline_parse(gpr_cmdline *cl, int argc, char **argv):&#160;cmdline.c'],['../cmdline_8c.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4',1,'gpr_cmdline_parse(gpr_cmdline *cl, int argc, char **argv):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fusage_5fstring',['gpr_cmdline_usage_string',['../cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030',1,'gpr_cmdline_usage_string(gpr_cmdline *cl, const char *argv0):&#160;cmdline.c'],['../cmdline_8c.html#a4eac81d047bdc6e679079309bf60f030',1,'gpr_cmdline_usage_string(gpr_cmdline *cl, const char *argv0):&#160;cmdline.c']]],
+ ['gpr_5fconvert_5fclock_5ftype',['gpr_convert_clock_type',['../time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74',1,'gpr_convert_clock_type(gpr_timespec t, gpr_clock_type target_clock):&#160;time.c'],['../time_8c.html#ab265219dd3038a1e89ded09033bada5e',1,'gpr_convert_clock_type(gpr_timespec t, gpr_clock_type clock_type):&#160;time.c']]],
+ ['gpr_5fcpu_5fcurrent_5fcpu',['gpr_cpu_current_cpu',['../cpu_8h.html#ad713326192eea685047b742f1da87c1d',1,'cpu.h']]],
+ ['gpr_5fcpu_5fnum_5fcores',['gpr_cpu_num_cores',['../cpu_8h.html#abfe660c6872b008de80de5b39ac2538d',1,'cpu.h']]],
+ ['gpr_5fcv',['gpr_cv',['../sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885',1,'gpr_cv():&#160;sync_posix.h'],['../sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d',1,'gpr_cv():&#160;sync_win32.h']]],
+ ['gpr_5fcv_5fbroadcast',['gpr_cv_broadcast',['../sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b',1,'sync.h']]],
+ ['gpr_5fcv_5fcancellable_5fwait',['gpr_cv_cancellable_wait',['../sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9',1,'gpr_cv_cancellable_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#a5f1df649a9885ff2354dd4ce611017d9',1,'gpr_cv_cancellable_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcv_5fdestroy',['gpr_cv_destroy',['../sync_8h.html#a652900a910676d5cae9ccba052adb6b0',1,'sync.h']]],
+ ['gpr_5fcv_5finit',['gpr_cv_init',['../sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2',1,'sync.h']]],
+ ['gpr_5fcv_5fsignal',['gpr_cv_signal',['../sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f',1,'sync.h']]],
+ ['gpr_5fcv_5fwait',['gpr_cv_wait',['../sync_8h.html#ad5d8d01509b75addc44e5a43783a826e',1,'sync.h']]],
+ ['gpr_5fdebug',['GPR_DEBUG',['../log_8h.html#a3e793245091f13bb7318a18b1166a773',1,'log.h']]],
+ ['gpr_5fdefault_5flog',['gpr_default_log',['../log_8c.html#a620ef16728107bedfa4188786f901ff9',1,'log.c']]],
+ ['gpr_5fdump',['gpr_dump',['../string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1',1,'gpr_dump(const char *buf, size_t len, gpr_uint32 flags):&#160;string.c'],['../string_8c.html#a5b9ee77c9f03764e72d7b91a64ef86f1',1,'gpr_dump(const char *buf, size_t len, gpr_uint32 flags):&#160;string.c']]],
+ ['gpr_5fdump_5fascii',['GPR_DUMP_ASCII',['../string_8h.html#ac0676a68b67df2660352db8168c6c180',1,'string.h']]],
+ ['gpr_5fdump_5fhex',['GPR_DUMP_HEX',['../string_8h.html#a2d592b56804af1c0d0e5237c37ce0313',1,'string.h']]],
+ ['gpr_5fdump_5fslice',['gpr_dump_slice',['../string_8h.html#a77bcdd897064702d16e7aaaea2e0e259',1,'gpr_dump_slice(gpr_slice slice, gpr_uint32 flags):&#160;string.c'],['../string_8c.html#a008e053cd53efcf2f606b7414c22ea95',1,'gpr_dump_slice(gpr_slice s, gpr_uint32 flags):&#160;string.c']]],
+ ['gpr_5fempty_5fslice',['gpr_empty_slice',['../slice_8h.html#a1a8906400c956fb8c508326a072b0662',1,'gpr_empty_slice(void):&#160;slice.c'],['../slice_8c.html#a1a8906400c956fb8c508326a072b0662',1,'gpr_empty_slice(void):&#160;slice.c']]],
+ ['gpr_5ferror',['GPR_ERROR',['../log_8h.html#a63faedb3eefd93d1c0e79974be80cc36',1,'log.h']]],
+ ['gpr_5fevent',['gpr_event',['../structgpr__event.html',1,'']]],
+ ['gpr_5fevent_5fcancellable_5fwait',['gpr_event_cancellable_wait',['../sync_8h.html#ae048c7e762b723821e35a07fd0d85e22',1,'gpr_event_cancellable_wait(gpr_event *ev, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;sync.c'],['../sync_8c.html#ae048c7e762b723821e35a07fd0d85e22',1,'gpr_event_cancellable_wait(gpr_event *ev, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;sync.c']]],
+ ['gpr_5fevent_5fget',['gpr_event_get',['../sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161',1,'gpr_event_get(gpr_event *ev):&#160;sync.c'],['../sync_8c.html#ac0a2305d9e6575cc5a3d92bc3f12c161',1,'gpr_event_get(gpr_event *ev):&#160;sync.c']]],
+ ['gpr_5fevent_5finit',['GPR_EVENT_INIT',['../sync__generic_8h.html#a6f38fe7692eaa6663c1f79ff5847c050',1,'GPR_EVENT_INIT():&#160;sync_generic.h'],['../sync_8h.html#a93f37cd27964fda51acd4cd8e6737922',1,'gpr_event_init(gpr_event *ev):&#160;sync.c'],['../sync_8c.html#a93f37cd27964fda51acd4cd8e6737922',1,'gpr_event_init(gpr_event *ev):&#160;sync.c']]],
+ ['gpr_5fevent_5fset',['gpr_event_set',['../sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd',1,'gpr_event_set(gpr_event *ev, void *value):&#160;sync.c'],['../sync_8c.html#a1b1d014640e00512f6789dacc4ff88bd',1,'gpr_event_set(gpr_event *ev, void *value):&#160;sync.c']]],
+ ['gpr_5fevent_5fwait',['gpr_event_wait',['../sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7',1,'gpr_event_wait(gpr_event *ev, gpr_timespec abs_deadline):&#160;sync.c'],['../sync_8c.html#a01d442a76ff77f64d9f898b22ea33db7',1,'gpr_event_wait(gpr_event *ev, gpr_timespec abs_deadline):&#160;sync.c']]],
+ ['gpr_5fformat_5fmessage',['gpr_format_message',['../log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536',1,'log_win32.h']]],
+ ['gpr_5ffree',['gpr_free',['../alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8',1,'gpr_free(void *ptr):&#160;alloc.c'],['../alloc_8c.html#abb8ce294adb033ac54e7a2e28b9bdac6',1,'gpr_free(void *p):&#160;alloc.c']]],
+ ['gpr_5ffree_5faligned',['gpr_free_aligned',['../alloc_8h.html#af9b603aefd33752e1b473856af77cbc9',1,'gpr_free_aligned(void *ptr):&#160;alloc.c'],['../alloc_8c.html#af9b603aefd33752e1b473856af77cbc9',1,'gpr_free_aligned(void *ptr):&#160;alloc.c']]],
+ ['gpr_5fgcc_5fthread_5flocal',['gpr_gcc_thread_local',['../structgpr__gcc__thread__local.html',1,'']]],
+ ['gpr_5fgetenv',['gpr_getenv',['../env_8h.html#a56b20a68a421e585a14b92cb9999eafb',1,'env.h']]],
+ ['gpr_5fhistogram',['gpr_histogram',['../structgpr__histogram.html',1,'gpr_histogram'],['../histogram_8h.html#a7125b0cef0e61a441a17f887dbc073fc',1,'gpr_histogram():&#160;histogram.h']]],
+ ['gpr_5fhistogram_5fadd',['gpr_histogram_add',['../histogram_8h.html#a63815a52b0236626a30480915ff51847',1,'gpr_histogram_add(gpr_histogram *h, double x):&#160;histogram.c'],['../histogram_8c.html#a63815a52b0236626a30480915ff51847',1,'gpr_histogram_add(gpr_histogram *h, double x):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fcount',['gpr_histogram_count',['../histogram_8h.html#a242b0541ee25271812d867d8f2734255',1,'gpr_histogram_count(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a9789e9d2bfe80302771cb7037ff67109',1,'gpr_histogram_count(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fcreate',['gpr_histogram_create',['../histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c',1,'gpr_histogram_create(double resolution, double max_bucket_start):&#160;histogram.c'],['../histogram_8c.html#a5da9d3dac4262c5ae1e974a649edbd5c',1,'gpr_histogram_create(double resolution, double max_bucket_start):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fdestroy',['gpr_histogram_destroy',['../histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c',1,'gpr_histogram_destroy(gpr_histogram *h):&#160;histogram.c'],['../histogram_8c.html#a7411a760aa075c1c27eeb9249d951c6c',1,'gpr_histogram_destroy(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fget_5fcontents',['gpr_histogram_get_contents',['../histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4',1,'gpr_histogram_get_contents(gpr_histogram *histogram, size_t *count):&#160;histogram.c'],['../histogram_8c.html#adcd82f9ac3a24d76fa43d6ee38cd03d9',1,'gpr_histogram_get_contents(gpr_histogram *h, size_t *size):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmaximum',['gpr_histogram_maximum',['../histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb',1,'gpr_histogram_maximum(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#aede32c052f8cfb6c645773dc02abb269',1,'gpr_histogram_maximum(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmean',['gpr_histogram_mean',['../histogram_8h.html#a14d68ff71978bda93a07d019d993d83c',1,'gpr_histogram_mean(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a5fe371014a644b04cb7a3cc10d0c4d54',1,'gpr_histogram_mean(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmerge',['gpr_histogram_merge',['../histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2',1,'gpr_histogram_merge(gpr_histogram *dst, gpr_histogram *src):&#160;histogram.c'],['../histogram_8c.html#a41caac8747588e75cf5fed974fcd90f2',1,'gpr_histogram_merge(gpr_histogram *dst, gpr_histogram *src):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmerge_5fcontents',['gpr_histogram_merge_contents',['../histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30',1,'gpr_histogram_merge_contents(gpr_histogram *histogram, const gpr_uint32 *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count):&#160;histogram.c'],['../histogram_8c.html#a4092227c6ba42490fd0311f5f8223e73',1,'gpr_histogram_merge_contents(gpr_histogram *dst, const gpr_uint32 *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fminimum',['gpr_histogram_minimum',['../histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76',1,'gpr_histogram_minimum(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a02493e2e022e463dcaf0738cc2f57e9e',1,'gpr_histogram_minimum(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fpercentile',['gpr_histogram_percentile',['../histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431',1,'gpr_histogram_percentile(gpr_histogram *histogram, double percentile):&#160;histogram.c'],['../histogram_8c.html#a29c6f43aed5d521d17bf7677b2fbee39',1,'gpr_histogram_percentile(gpr_histogram *h, double percentile):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fstddev',['gpr_histogram_stddev',['../histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91',1,'gpr_histogram_stddev(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a36846d8c0ae93fa49fb4a1d07d8a2872',1,'gpr_histogram_stddev(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fsum',['gpr_histogram_sum',['../histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933',1,'gpr_histogram_sum(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a6f5945872847d0d3e460181bb11c8414',1,'gpr_histogram_sum(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fsum_5fof_5fsquares',['gpr_histogram_sum_of_squares',['../histogram_8h.html#a5788652eb5350afcc534f563fd0265d3',1,'gpr_histogram_sum_of_squares(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a651cd46647b768e4c7ffceb20d4ac523',1,'gpr_histogram_sum_of_squares(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fvariance',['gpr_histogram_variance',['../histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b',1,'gpr_histogram_variance(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a36df07c41d7d9e92e2b7cfce5cba2083',1,'gpr_histogram_variance(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5finf_5ffuture',['gpr_inf_future',['../time_8h.html#a9324a2b33d5d7686fb14714c59ff026d',1,'gpr_inf_future(gpr_clock_type type):&#160;time.c'],['../time_8c.html#a9324a2b33d5d7686fb14714c59ff026d',1,'gpr_inf_future(gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5finf_5fpast',['gpr_inf_past',['../time_8h.html#abd2eba8066648fe0d94146d8310b4283',1,'gpr_inf_past(gpr_clock_type type):&#160;time.c'],['../time_8c.html#abd2eba8066648fe0d94146d8310b4283',1,'gpr_inf_past(gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5finfo',['GPR_INFO',['../log_8h.html#af0d0d75690f79edc9294498c88f96703',1,'log.h']]],
+ ['gpr_5fint16',['gpr_int16',['../port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709',1,'port_platform.h']]],
+ ['gpr_5fint32',['gpr_int32',['../port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7',1,'port_platform.h']]],
+ ['gpr_5fint64',['gpr_int64',['../port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181',1,'port_platform.h']]],
+ ['gpr_5fint64_5fmax',['GPR_INT64_MAX',['../port__platform_8h.html#aaff7a6a2f0868f8b0648b74828ef0e4f',1,'port_platform.h']]],
+ ['gpr_5finternal_5fhexdigit_5fbitcount',['GPR_INTERNAL_HEXDIGIT_BITCOUNT',['../useful_8h.html#a601e1be692fe7922b52991a5d410b945',1,'useful.h']]],
+ ['gpr_5fintmax',['gpr_intmax',['../port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139',1,'port_platform.h']]],
+ ['gpr_5fintptr',['gpr_intptr',['../port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2',1,'port_platform.h']]],
+ ['gpr_5fjoin_5fhost_5fport',['gpr_join_host_port',['../host__port_8h.html#a75d6ea0faeed039dc132873afce91508',1,'gpr_join_host_port(char **out, const char *host, int port):&#160;host_port.c'],['../host__port_8c.html#a75d6ea0faeed039dc132873afce91508',1,'gpr_join_host_port(char **out, const char *host, int port):&#160;host_port.c']]],
+ ['gpr_5fload_5ffile',['gpr_load_file',['../file_8h.html#aaad6ffe6949461096a99c7d2e8890c59',1,'gpr_load_file(const char *filename, int add_null_terminator, int *success):&#160;file.c'],['../file_8c.html#aaad6ffe6949461096a99c7d2e8890c59',1,'gpr_load_file(const char *filename, int add_null_terminator, int *success):&#160;file.c']]],
+ ['gpr_5flog',['gpr_log',['../log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1',1,'log.h']]],
+ ['gpr_5flog_5ffunc',['gpr_log_func',['../log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0',1,'log.h']]],
+ ['gpr_5flog_5ffunc_5fargs',['gpr_log_func_args',['../structgpr__log__func__args.html',1,'']]],
+ ['gpr_5flog_5fmessage',['gpr_log_message',['../log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61',1,'gpr_log_message(const char *file, int line, gpr_log_severity severity, const char *message):&#160;log.c'],['../log_8c.html#a7a3d59528754f8fbcfe54f6f8a72ec61',1,'gpr_log_message(const char *file, int line, gpr_log_severity severity, const char *message):&#160;log.c']]],
+ ['gpr_5flog_5fseverity',['gpr_log_severity',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48',1,'gpr_log_severity():&#160;log.h'],['../log_8h.html#ad49303346a78cf4881129958214fde8d',1,'gpr_log_severity():&#160;log.h']]],
+ ['gpr_5flog_5fseverity_5fdebug',['GPR_LOG_SEVERITY_DEBUG',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6',1,'log.h']]],
+ ['gpr_5flog_5fseverity_5ferror',['GPR_LOG_SEVERITY_ERROR',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4',1,'log.h']]],
+ ['gpr_5flog_5fseverity_5finfo',['GPR_LOG_SEVERITY_INFO',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1',1,'log.h']]],
+ ['gpr_5flog_5fseverity_5fstring',['gpr_log_severity_string',['../log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb',1,'gpr_log_severity_string(gpr_log_severity severity):&#160;log.c'],['../log_8c.html#a3badccbc5ec4c725eadbc07b8e5706eb',1,'gpr_log_severity_string(gpr_log_severity severity):&#160;log.c']]],
+ ['gpr_5fltoa',['gpr_ltoa',['../string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24',1,'gpr_ltoa(long value, char *output):&#160;string.c'],['../string_8c.html#aa6aa8a10c07a02550542c920a6b1f5f6',1,'gpr_ltoa(long value, char *string):&#160;string.c']]],
+ ['gpr_5fltoa_5fmin_5fbufsize',['GPR_LTOA_MIN_BUFSIZE',['../string_8h.html#a21406aaed4e32e895145541eabbad527',1,'string.h']]],
+ ['gpr_5fmalloc',['gpr_malloc',['../alloc_8h.html#af5896bb446b6179f35651730357149bb',1,'gpr_malloc(size_t size):&#160;alloc.c'],['../alloc_8c.html#af5896bb446b6179f35651730357149bb',1,'gpr_malloc(size_t size):&#160;alloc.c']]],
+ ['gpr_5fmalloc_5faligned',['gpr_malloc_aligned',['../alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4',1,'gpr_malloc_aligned(size_t size, size_t alignment_log):&#160;alloc.c'],['../alloc_8c.html#a73551a6249ae9b0a73ad75733c67ead4',1,'gpr_malloc_aligned(size_t size, size_t alignment_log):&#160;alloc.c']]],
+ ['gpr_5fmax',['GPR_MAX',['../useful_8h.html#af50c518bb1183da84adb7d8a86cd568a',1,'useful.h']]],
+ ['gpr_5fmax_5falignment',['GPR_MAX_ALIGNMENT',['../port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2',1,'port_platform.h']]],
+ ['gpr_5fmin',['GPR_MIN',['../useful_8h.html#a298322c952526928cf8dbc7aaba7b84d',1,'useful.h']]],
+ ['gpr_5fms_5fper_5fsec',['GPR_MS_PER_SEC',['../time_8h.html#af2c8091db4e2a3133b93131f64db859e',1,'time.h']]],
+ ['gpr_5fmsvc_5fthread_5flocal',['gpr_msvc_thread_local',['../structgpr__msvc__thread__local.html',1,'']]],
+ ['gpr_5fmu',['gpr_mu',['../structgpr__mu.html',1,'gpr_mu'],['../sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f',1,'gpr_mu():&#160;sync_posix.h']]],
+ ['gpr_5fmu_5fdestroy',['gpr_mu_destroy',['../sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e',1,'sync.h']]],
+ ['gpr_5fmu_5finit',['gpr_mu_init',['../sync_8h.html#a16694f755266c254390b041a0f069094',1,'sync.h']]],
+ ['gpr_5fmu_5flock',['gpr_mu_lock',['../sync_8h.html#a44b385455d169e6c84659adb222c1d42',1,'sync.h']]],
+ ['gpr_5fmu_5ftrylock',['gpr_mu_trylock',['../sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777',1,'sync.h']]],
+ ['gpr_5fmu_5funlock',['gpr_mu_unlock',['../sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff',1,'sync.h']]],
+ ['gpr_5fmurmur_5fhash3',['gpr_murmur_hash3',['../murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0',1,'gpr_murmur_hash3(const void *key, size_t len, gpr_uint32 seed):&#160;murmur_hash.c'],['../murmur__hash_8c.html#afd4a38ba55dc020a76c1ec09a4f626d0',1,'gpr_murmur_hash3(const void *key, size_t len, gpr_uint32 seed):&#160;murmur_hash.c']]],
+ ['gpr_5fnow',['gpr_now',['../time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19',1,'time.h']]],
+ ['gpr_5fns_5fper_5fms',['GPR_NS_PER_MS',['../time_8h.html#a3c63ee76f91a122abf3a0806b64318eb',1,'time.h']]],
+ ['gpr_5fns_5fper_5fsec',['GPR_NS_PER_SEC',['../time_8h.html#a447d0913b0cfdc943df51585f0e2785e',1,'time.h']]],
+ ['gpr_5fns_5fper_5fus',['GPR_NS_PER_US',['../time_8h.html#adc295bf07c72edae8a2ad49e24da2f32',1,'time.h']]],
+ ['gpr_5fonce',['gpr_once',['../sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f',1,'gpr_once():&#160;sync_posix.h'],['../sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13',1,'gpr_once():&#160;sync_win32.h']]],
+ ['gpr_5fonce_5finit',['GPR_ONCE_INIT',['../sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666',1,'GPR_ONCE_INIT():&#160;sync_posix.h'],['../sync__win32_8h.html#a8edd7eb4f6860a4f79defbad49c35666',1,'GPR_ONCE_INIT():&#160;sync_win32.h'],['../sync_8h.html#ad5c88872723a129b09200b1892d2323f',1,'gpr_once_init(gpr_once *once, void(*init_routine)(void)):&#160;sync.h']]],
+ ['gpr_5fparse_5fbytes_5fto_5fuint32',['gpr_parse_bytes_to_uint32',['../string_8h.html#a753cd4bfe9add8476a2797904c4c68c7',1,'gpr_parse_bytes_to_uint32(const char *data, size_t length, gpr_uint32 *result):&#160;string.c'],['../string_8c.html#ad68355bffdcb8c7f69fc908e60ab9da6',1,'gpr_parse_bytes_to_uint32(const char *buf, size_t len, gpr_uint32 *result):&#160;string.c']]],
+ ['gpr_5fplatform_5fstring',['GPR_PLATFORM_STRING',['../port__platform_8h.html#a99f34e9b119908109486e91abedc933e',1,'port_platform.h']]],
+ ['gpr_5fpthread_5fthread_5flocal',['gpr_pthread_thread_local',['../structgpr__pthread__thread__local.html',1,'']]],
+ ['gpr_5frealloc',['gpr_realloc',['../alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91',1,'gpr_realloc(void *p, size_t size):&#160;alloc.c'],['../alloc_8c.html#a25d9a067b093e9c76dbbd77995b1bc91',1,'gpr_realloc(void *p, size_t size):&#160;alloc.c']]],
+ ['gpr_5fref',['gpr_ref',['../sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571',1,'gpr_ref(gpr_refcount *r):&#160;sync.c'],['../sync_8c.html#ac0e52c6bfc7a04ba8a269f3227104571',1,'gpr_ref(gpr_refcount *r):&#160;sync.c']]],
+ ['gpr_5fref_5finit',['gpr_ref_init',['../sync_8h.html#a235584f36572b5410b042ee63cb0740b',1,'gpr_ref_init(gpr_refcount *r, int n):&#160;sync.c'],['../sync_8c.html#a235584f36572b5410b042ee63cb0740b',1,'gpr_ref_init(gpr_refcount *r, int n):&#160;sync.c']]],
+ ['gpr_5frefcount',['gpr_refcount',['../structgpr__refcount.html',1,'']]],
+ ['gpr_5frefn',['gpr_refn',['../sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25',1,'gpr_refn(gpr_refcount *r, int n):&#160;sync.c'],['../sync_8c.html#a516e26b66b1aa53fba8f5f52b249cb25',1,'gpr_refn(gpr_refcount *r, int n):&#160;sync.c']]],
+ ['gpr_5freverse_5fbytes',['gpr_reverse_bytes',['../string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9',1,'gpr_reverse_bytes(char *str, int len):&#160;string.c'],['../string_8c.html#ac61f7fa80be757db2d5457e3fe21ffe9',1,'gpr_reverse_bytes(char *str, int len):&#160;string.c']]],
+ ['gpr_5frotl',['GPR_ROTL',['../useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85',1,'useful.h']]],
+ ['gpr_5frotr',['GPR_ROTR',['../useful_8h.html#a5ff4b278972e799dc134963a0249f316',1,'useful.h']]],
+ ['gpr_5fset_5flog_5ffunction',['gpr_set_log_function',['../log_8h.html#a75771a41e3bb2831df8043a57de05330',1,'gpr_set_log_function(gpr_log_func func):&#160;log.c'],['../log_8c.html#a4a4590f04f5e003b740b7688014b7be5',1,'gpr_set_log_function(gpr_log_func f):&#160;log.c']]],
+ ['gpr_5fsetenv',['gpr_setenv',['../env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3',1,'env.h']]],
+ ['gpr_5fsleep_5funtil',['gpr_sleep_until',['../time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7',1,'time.h']]],
+ ['gpr_5fslice',['gpr_slice',['../structgpr__slice.html',1,'gpr_slice'],['../slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c',1,'gpr_slice():&#160;slice.h']]],
+ ['gpr_5fslice_5fbuffer',['gpr_slice_buffer',['../structgpr__slice__buffer.html',1,'']]],
+ ['gpr_5fslice_5fbuffer_5fadd',['gpr_slice_buffer_add',['../slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12',1,'gpr_slice_buffer_add(gpr_slice_buffer *sb, gpr_slice slice):&#160;slice_buffer.c'],['../slice__buffer_8c.html#ae202c0235646241cf95ffbb2479bada9',1,'gpr_slice_buffer_add(gpr_slice_buffer *sb, gpr_slice s):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fadd_5findexed',['gpr_slice_buffer_add_indexed',['../slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045',1,'gpr_slice_buffer_add_indexed(gpr_slice_buffer *sb, gpr_slice slice):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a31bc820cee4aae1904d67a9d81fd83b3',1,'gpr_slice_buffer_add_indexed(gpr_slice_buffer *sb, gpr_slice s):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5faddn',['gpr_slice_buffer_addn',['../slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46',1,'gpr_slice_buffer_addn(gpr_slice_buffer *sb, gpr_slice *slices, size_t n):&#160;slice_buffer.c'],['../slice__buffer_8c.html#af58c3edcfaf90b364e3977e3bb423e3f',1,'gpr_slice_buffer_addn(gpr_slice_buffer *sb, gpr_slice *s, size_t n):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fdestroy',['gpr_slice_buffer_destroy',['../slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399',1,'gpr_slice_buffer_destroy(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a60c8b437918c3a81651b5f9a892f6399',1,'gpr_slice_buffer_destroy(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5finit',['gpr_slice_buffer_init',['../slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8',1,'gpr_slice_buffer_init(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#aab5ed508480703c7b856e92ef6d7e4c8',1,'gpr_slice_buffer_init(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fmove_5finto',['gpr_slice_buffer_move_into',['../slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1',1,'gpr_slice_buffer_move_into(gpr_slice_buffer *src, gpr_slice_buffer *dst):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a0289912040151750bbee19ba632a88f1',1,'gpr_slice_buffer_move_into(gpr_slice_buffer *src, gpr_slice_buffer *dst):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fpop',['gpr_slice_buffer_pop',['../slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79',1,'gpr_slice_buffer_pop(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#ae3bd1bc560aad5b69a6ef0b09286cc79',1,'gpr_slice_buffer_pop(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5freset_5fand_5funref',['gpr_slice_buffer_reset_and_unref',['../slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010',1,'gpr_slice_buffer_reset_and_unref(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#aa2819a201e9dcf62e31a6dbfc6fe3010',1,'gpr_slice_buffer_reset_and_unref(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fswap',['gpr_slice_buffer_swap',['../slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d',1,'gpr_slice_buffer_swap(gpr_slice_buffer *a, gpr_slice_buffer *b):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a672b80e16cdabf26c7b558a54edfcd2d',1,'gpr_slice_buffer_swap(gpr_slice_buffer *a, gpr_slice_buffer *b):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5ftiny_5fadd',['gpr_slice_buffer_tiny_add',['../slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0',1,'gpr_slice_buffer_tiny_add(gpr_slice_buffer *sb, unsigned len):&#160;slice_buffer.c'],['../slice__buffer_8c.html#ae5498f14d7b008d134a3ad32935df4ac',1,'gpr_slice_buffer_tiny_add(gpr_slice_buffer *sb, unsigned n):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fcmp',['gpr_slice_cmp',['../slice_8h.html#add3c8736c46bea7517991f178c82ba3c',1,'gpr_slice_cmp(gpr_slice a, gpr_slice b):&#160;slice.c'],['../slice_8c.html#add3c8736c46bea7517991f178c82ba3c',1,'gpr_slice_cmp(gpr_slice a, gpr_slice b):&#160;slice.c']]],
+ ['gpr_5fslice_5fend_5fptr',['GPR_SLICE_END_PTR',['../slice_8h.html#a9b7e9acd0eb92039a9bc897712a62a14',1,'slice.h']]],
+ ['gpr_5fslice_5ffrom_5fcopied_5fbuffer',['gpr_slice_from_copied_buffer',['../slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e',1,'gpr_slice_from_copied_buffer(const char *source, size_t len):&#160;slice.c'],['../slice_8c.html#a54af06d0bea05fa416a85402e3f0d3b4',1,'gpr_slice_from_copied_buffer(const char *source, size_t length):&#160;slice.c']]],
+ ['gpr_5fslice_5ffrom_5fcopied_5fstring',['gpr_slice_from_copied_string',['../slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b',1,'gpr_slice_from_copied_string(const char *source):&#160;slice.c'],['../slice_8c.html#adf4df32e55b1b09d3f11c39447dcc68b',1,'gpr_slice_from_copied_string(const char *source):&#160;slice.c']]],
+ ['gpr_5fslice_5finlined_5fsize',['GPR_SLICE_INLINED_SIZE',['../slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31',1,'slice.h']]],
+ ['gpr_5fslice_5fis_5fempty',['GPR_SLICE_IS_EMPTY',['../slice_8h.html#ad4fe3efa7a8938045ce79271d79f79ef',1,'slice.h']]],
+ ['gpr_5fslice_5flength',['GPR_SLICE_LENGTH',['../slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb',1,'slice.h']]],
+ ['gpr_5fslice_5fmalloc',['gpr_slice_malloc',['../slice_8h.html#ab57463740ccedc00b50721dce66ebd7b',1,'gpr_slice_malloc(size_t length):&#160;slice.c'],['../slice_8c.html#ab57463740ccedc00b50721dce66ebd7b',1,'gpr_slice_malloc(size_t length):&#160;slice.c']]],
+ ['gpr_5fslice_5fnew',['gpr_slice_new',['../slice_8h.html#aea43587a11bfe2e06fb8532035229bb2',1,'gpr_slice_new(void *p, size_t len, void(*destroy)(void *)):&#160;slice.c'],['../slice_8c.html#aea43587a11bfe2e06fb8532035229bb2',1,'gpr_slice_new(void *p, size_t len, void(*destroy)(void *)):&#160;slice.c']]],
+ ['gpr_5fslice_5fnew_5fwith_5flen',['gpr_slice_new_with_len',['../slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812',1,'gpr_slice_new_with_len(void *p, size_t len, void(*destroy)(void *, size_t)):&#160;slice.c'],['../slice_8c.html#affd1fef2ffaca67e0b2e7b60923da812',1,'gpr_slice_new_with_len(void *p, size_t len, void(*destroy)(void *, size_t)):&#160;slice.c']]],
+ ['gpr_5fslice_5fref',['gpr_slice_ref',['../slice_8h.html#ad28a2bcca348046cbe660a44180e75ca',1,'gpr_slice_ref(gpr_slice s):&#160;slice.c'],['../slice_8c.html#aa439f1ee94ab61e6ff17647940d29582',1,'gpr_slice_ref(gpr_slice slice):&#160;slice.c']]],
+ ['gpr_5fslice_5frefcount',['gpr_slice_refcount',['../structgpr__slice__refcount.html',1,'gpr_slice_refcount'],['../slice_8h.html#af8841873e741f6cf38b2192147ea4f3e',1,'gpr_slice_refcount():&#160;slice.h']]],
+ ['gpr_5fslice_5fset_5flength',['GPR_SLICE_SET_LENGTH',['../slice_8h.html#a1f5333a1260aef2efe086d4e2188e613',1,'slice.h']]],
+ ['gpr_5fslice_5fsplit',['gpr_slice_split',['../string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3',1,'gpr_slice_split(gpr_slice str, const char *sep, gpr_slice_buffer *dst):&#160;string.c'],['../string_8c.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3',1,'gpr_slice_split(gpr_slice str, const char *sep, gpr_slice_buffer *dst):&#160;string.c']]],
+ ['gpr_5fslice_5fsplit_5fhead',['gpr_slice_split_head',['../slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24',1,'gpr_slice_split_head(gpr_slice *s, size_t split):&#160;slice.c'],['../slice_8c.html#a15ea61593682d41ef435b9f7fa44a604',1,'gpr_slice_split_head(gpr_slice *source, size_t split):&#160;slice.c']]],
+ ['gpr_5fslice_5fsplit_5ftail',['gpr_slice_split_tail',['../slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e',1,'gpr_slice_split_tail(gpr_slice *s, size_t split):&#160;slice.c'],['../slice_8c.html#af592ef63bc65829371d4dacaa4f5eef1',1,'gpr_slice_split_tail(gpr_slice *source, size_t split):&#160;slice.c']]],
+ ['gpr_5fslice_5fstart_5fptr',['GPR_SLICE_START_PTR',['../slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15',1,'slice.h']]],
+ ['gpr_5fslice_5fstr_5fcmp',['gpr_slice_str_cmp',['../slice_8h.html#aef752203db50c932010a74c6845872c2',1,'gpr_slice_str_cmp(gpr_slice a, const char *b):&#160;slice.c'],['../slice_8c.html#aef752203db50c932010a74c6845872c2',1,'gpr_slice_str_cmp(gpr_slice a, const char *b):&#160;slice.c']]],
+ ['gpr_5fslice_5fsub',['gpr_slice_sub',['../slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb',1,'gpr_slice_sub(gpr_slice s, size_t begin, size_t end):&#160;slice.c'],['../slice_8c.html#a60d9c7c62fdbbd7d4be1ff0f8d357032',1,'gpr_slice_sub(gpr_slice source, size_t begin, size_t end):&#160;slice.c']]],
+ ['gpr_5fslice_5fsub_5fno_5fref',['gpr_slice_sub_no_ref',['../slice_8h.html#accf08ddad530a5f1cca82c834dc70965',1,'gpr_slice_sub_no_ref(gpr_slice s, size_t begin, size_t end):&#160;slice.c'],['../slice_8c.html#a03f66bb8343910499215c75f6ad69be4',1,'gpr_slice_sub_no_ref(gpr_slice source, size_t begin, size_t end):&#160;slice.c']]],
+ ['gpr_5fslice_5fto_5fcstring',['gpr_slice_to_cstring',['../slice_8c.html#a2e5f30a9a0750b8d38100dbfe647438e',1,'slice.c']]],
+ ['gpr_5fslice_5funref',['gpr_slice_unref',['../slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7',1,'gpr_slice_unref(gpr_slice s):&#160;slice.c'],['../slice_8c.html#aaa595344a06d9a17f64f2774a42fe160',1,'gpr_slice_unref(gpr_slice slice):&#160;slice.c']]],
+ ['gpr_5fsplit_5fhost_5fport',['gpr_split_host_port',['../host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea',1,'gpr_split_host_port(const char *name, char **host, char **port):&#160;host_port.c'],['../host__port_8c.html#aacb0efdff2bb1b15d5e7edeb62ae4aea',1,'gpr_split_host_port(const char *name, char **host, char **port):&#160;host_port.c']]],
+ ['gpr_5fstack_5flockfree',['gpr_stack_lockfree',['../structgpr__stack__lockfree.html',1,'gpr_stack_lockfree'],['../stack__lockfree_8h.html#a66ea3d52c0bac00af25057468bbd8465',1,'gpr_stack_lockfree():&#160;stack_lockfree.h']]],
+ ['gpr_5fstack_5flockfree_5fcreate',['gpr_stack_lockfree_create',['../stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9',1,'gpr_stack_lockfree_create(int entries):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#a281add9a8c1bdc0a6715cc168c6f41a9',1,'gpr_stack_lockfree_create(int entries):&#160;stack_lockfree.c']]],
+ ['gpr_5fstack_5flockfree_5fdestroy',['gpr_stack_lockfree_destroy',['../stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554',1,'gpr_stack_lockfree_destroy(gpr_stack_lockfree *stack):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#a0d082653d002f9849d89f1ac93f21554',1,'gpr_stack_lockfree_destroy(gpr_stack_lockfree *stack):&#160;stack_lockfree.c']]],
+ ['gpr_5fstack_5flockfree_5fpop',['gpr_stack_lockfree_pop',['../stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14',1,'gpr_stack_lockfree_pop(gpr_stack_lockfree *stack):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#ae2548d065e76c3ece34984e43c599d14',1,'gpr_stack_lockfree_pop(gpr_stack_lockfree *stack):&#160;stack_lockfree.c']]],
+ ['gpr_5fstack_5flockfree_5fpush',['gpr_stack_lockfree_push',['../stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa',1,'gpr_stack_lockfree_push(gpr_stack_lockfree *, int entry):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#a0c2fa41e3046d10a9e98416f4d809933',1,'gpr_stack_lockfree_push(gpr_stack_lockfree *stack, int entry):&#160;stack_lockfree.c']]],
+ ['gpr_5fstats_5fcounter',['gpr_stats_counter',['../structgpr__stats__counter.html',1,'']]],
+ ['gpr_5fstats_5finc',['gpr_stats_inc',['../sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c',1,'gpr_stats_inc(gpr_stats_counter *c, gpr_intptr inc):&#160;sync.c'],['../sync_8c.html#a8e51ec3b46c7c03602e2279a802daa1c',1,'gpr_stats_inc(gpr_stats_counter *c, gpr_intptr inc):&#160;sync.c']]],
+ ['gpr_5fstats_5finit',['GPR_STATS_INIT',['../sync__generic_8h.html#ada230498c8e2aca51e9349709e70e1ef',1,'GPR_STATS_INIT():&#160;sync_generic.h'],['../sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30',1,'gpr_stats_init(gpr_stats_counter *c, gpr_intptr n):&#160;sync.c'],['../sync_8c.html#a76b8e5de6e1baa4fd66c014417dc0a30',1,'gpr_stats_init(gpr_stats_counter *c, gpr_intptr n):&#160;sync.c']]],
+ ['gpr_5fstats_5fread',['gpr_stats_read',['../sync_8h.html#abb2c58da7d0b785887266b3b1890764d',1,'gpr_stats_read(const gpr_stats_counter *c):&#160;sync.c'],['../sync_8c.html#abb2c58da7d0b785887266b3b1890764d',1,'gpr_stats_read(const gpr_stats_counter *c):&#160;sync.c']]],
+ ['gpr_5fstrdup',['gpr_strdup',['../string__util_8h.html#a7a021bce444344f0a96cb022038eed93',1,'gpr_strdup(const char *src):&#160;string.c'],['../string_8c.html#a7a021bce444344f0a96cb022038eed93',1,'gpr_strdup(const char *src):&#160;string.c']]],
+ ['gpr_5fstrjoin',['gpr_strjoin',['../string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c',1,'gpr_strjoin(const char **strs, size_t nstrs, size_t *total_length):&#160;string.c'],['../string_8c.html#a5de29a3d1854cf2dfa54b501e2793e96',1,'gpr_strjoin(const char **strs, size_t nstrs, size_t *final_length):&#160;string.c']]],
+ ['gpr_5fstrjoin_5fsep',['gpr_strjoin_sep',['../string_8h.html#ac842445695baf5ff8e96a7bf12c6b176',1,'gpr_strjoin_sep(const char **strs, size_t nstrs, const char *sep, size_t *total_length):&#160;string.c'],['../string_8c.html#a5b9d1ee9cc94732b728b033649c2d00a',1,'gpr_strjoin_sep(const char **strs, size_t nstrs, const char *sep, size_t *final_length):&#160;string.c']]],
+ ['gpr_5fstrvec',['gpr_strvec',['../structgpr__strvec.html',1,'']]],
+ ['gpr_5fstrvec_5fadd',['gpr_strvec_add',['../string_8h.html#a4eaa61df749bed219a09e69837a69a50',1,'gpr_strvec_add(gpr_strvec *strs, char *add):&#160;string.c'],['../string_8c.html#a9d91f04f11bc82ed5a562e44878eafde',1,'gpr_strvec_add(gpr_strvec *sv, char *str):&#160;string.c']]],
+ ['gpr_5fstrvec_5fdestroy',['gpr_strvec_destroy',['../string_8h.html#af194bff1a43db7ed5be927264bce7f52',1,'gpr_strvec_destroy(gpr_strvec *strs):&#160;string.c'],['../string_8c.html#a0c7ab5a87b900005d826bdaa8e106b28',1,'gpr_strvec_destroy(gpr_strvec *sv):&#160;string.c']]],
+ ['gpr_5fstrvec_5fflatten',['gpr_strvec_flatten',['../string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185',1,'gpr_strvec_flatten(gpr_strvec *strs, size_t *total_length):&#160;string.c'],['../string_8c.html#a0145a60ccd4d1e25389f8bad033f1ff5',1,'gpr_strvec_flatten(gpr_strvec *sv, size_t *final_length):&#160;string.c']]],
+ ['gpr_5fstrvec_5finit',['gpr_strvec_init',['../string_8h.html#a78cca9fe86b48cf442f80a666b73768f',1,'gpr_strvec_init(gpr_strvec *strs):&#160;string.c'],['../string_8c.html#a751f38e61272bd9626890fa54270b82f',1,'gpr_strvec_init(gpr_strvec *sv):&#160;string.c']]],
+ ['gpr_5fsubprocess',['gpr_subprocess',['../subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fbinary_5fextension',['gpr_subprocess_binary_extension',['../subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fcreate',['gpr_subprocess_create',['../subprocess_8h.html#a761755433d8809a68024b03176341242',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fdestroy',['gpr_subprocess_destroy',['../subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5finterrupt',['gpr_subprocess_interrupt',['../subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fjoin',['gpr_subprocess_join',['../subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5',1,'subprocess.h']]],
+ ['gpr_5fswap',['GPR_SWAP',['../useful_8h.html#a9f884f8218a97ed9739e2dac467f0719',1,'useful.h']]],
+ ['gpr_5fthd_5fcurrentid',['gpr_thd_currentid',['../thd_8h.html#a8c875ae5410d10d658cfb7b917909624',1,'thd.h']]],
+ ['gpr_5fthd_5fid',['gpr_thd_id',['../thd_8h.html#a04194350e2fb18edc439ab0a9d355a72',1,'thd.h']]],
+ ['gpr_5fthd_5fjoin',['gpr_thd_join',['../thd_8h.html#a73509f851051b4d5f02ca1982d216776',1,'thd.h']]],
+ ['gpr_5fthd_5fjoinable',['GPR_THD_JOINABLE',['../thd_8c.html#a0944a4353780132eeab7b06e3e42291da228d343354c0f2bb16c0fb1f79e71dbc',1,'thd.c']]],
+ ['gpr_5fthd_5fnew',['gpr_thd_new',['../thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea',1,'thd.h']]],
+ ['gpr_5fthd_5foptions',['gpr_thd_options',['../structgpr__thd__options.html',1,'']]],
+ ['gpr_5fthd_5foptions_5fdefault',['gpr_thd_options_default',['../thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862',1,'gpr_thd_options_default(void):&#160;thd.c'],['../thd_8c.html#abf8bb34ba7d26ddab0696e24b1fcc862',1,'gpr_thd_options_default(void):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fis_5fdetached',['gpr_thd_options_is_detached',['../thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89',1,'gpr_thd_options_is_detached(const gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#a1647c2e991d269cdaf146dc33f61ce89',1,'gpr_thd_options_is_detached(const gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fis_5fjoinable',['gpr_thd_options_is_joinable',['../thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b',1,'gpr_thd_options_is_joinable(const gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b',1,'gpr_thd_options_is_joinable(const gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fset_5fdetached',['gpr_thd_options_set_detached',['../thd_8h.html#a704882e5c65d29c817fae9173085e5ba',1,'gpr_thd_options_set_detached(gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#a704882e5c65d29c817fae9173085e5ba',1,'gpr_thd_options_set_detached(gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fset_5fjoinable',['gpr_thd_options_set_joinable',['../thd_8h.html#a87ad3ff4d439450ae1318151c1526745',1,'gpr_thd_options_set_joinable(gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#a87ad3ff4d439450ae1318151c1526745',1,'gpr_thd_options_set_joinable(gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5ftime_5f0',['gpr_time_0',['../time_8h.html#a4f552f0628cc389dfbe3674a1a978108',1,'gpr_time_0(gpr_clock_type type):&#160;time.c'],['../time_8c.html#a4f552f0628cc389dfbe3674a1a978108',1,'gpr_time_0(gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5fadd',['gpr_time_add',['../time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004',1,'gpr_time_add(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#a6f2c6fbc9fef45d74670c446e2bad004',1,'gpr_time_add(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fcmp',['gpr_time_cmp',['../time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0',1,'gpr_time_cmp(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#aeb10778e9b7c1dd7e6c47099d55f0fa0',1,'gpr_time_cmp(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fhours',['gpr_time_from_hours',['../time_8h.html#af7a9aca2af5348cbb8dc835853dc2756',1,'gpr_time_from_hours(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#ab8e7ff6a62bcd1fda7ea07ee67ffbacd',1,'gpr_time_from_hours(long h, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fmicros',['gpr_time_from_micros',['../time_8h.html#a79956c6fba5b660aeee24b09ae026d6c',1,'gpr_time_from_micros(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#a4c0445a26d72673e14ea4c403b69ee65',1,'gpr_time_from_micros(long us, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fmillis',['gpr_time_from_millis',['../time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946',1,'gpr_time_from_millis(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#a3b46878435c03a093b01f23b6a23631b',1,'gpr_time_from_millis(long ms, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fminutes',['gpr_time_from_minutes',['../time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba',1,'gpr_time_from_minutes(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#afd411906dd4100d1a359177eaa8e6d5f',1,'gpr_time_from_minutes(long m, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fnanos',['gpr_time_from_nanos',['../time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a',1,'gpr_time_from_nanos(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#a7b5437762ab2c7b7b31f7ab8e054eb04',1,'gpr_time_from_nanos(long ns, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fseconds',['gpr_time_from_seconds',['../time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916',1,'gpr_time_from_seconds(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#ac43b8cfb4ba31a567eb77c2dacda57a7',1,'gpr_time_from_seconds(long s, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5finit',['gpr_time_init',['../time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56',1,'time.h']]],
+ ['gpr_5ftime_5fmax',['gpr_time_max',['../time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8',1,'gpr_time_max(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#a4e1c94c1e488381e9f01d4318c2a45d8',1,'gpr_time_max(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fmin',['gpr_time_min',['../time_8h.html#af15f574932e56662f57bd3573e3cc469',1,'gpr_time_min(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#af15f574932e56662f57bd3573e3cc469',1,'gpr_time_min(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fsimilar',['gpr_time_similar',['../time_8h.html#a914f666c6cfe709650d96c986600de15',1,'gpr_time_similar(gpr_timespec a, gpr_timespec b, gpr_timespec threshold):&#160;time.c'],['../time_8c.html#a914f666c6cfe709650d96c986600de15',1,'gpr_time_similar(gpr_timespec a, gpr_timespec b, gpr_timespec threshold):&#160;time.c']]],
+ ['gpr_5ftime_5fsub',['gpr_time_sub',['../time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a',1,'gpr_time_sub(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#a1eaf8db9ee9e94bd4af005f1049f967a',1,'gpr_time_sub(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fto_5fmillis',['gpr_time_to_millis',['../time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df',1,'gpr_time_to_millis(gpr_timespec timespec):&#160;time.c'],['../time_8c.html#a0e913ddb6917c82510ff48d34672f6a1',1,'gpr_time_to_millis(gpr_timespec t):&#160;time.c']]],
+ ['gpr_5ftimespan',['GPR_TIMESPAN',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741',1,'time.h']]],
+ ['gpr_5ftimespec',['gpr_timespec',['../structgpr__timespec.html',1,'gpr_timespec'],['../time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45',1,'gpr_timespec():&#160;time.h']]],
+ ['gpr_5ftimespec_5fto_5fmicros',['gpr_timespec_to_micros',['../time_8h.html#a1704f2028070b3c92bd5420864458bac',1,'gpr_timespec_to_micros(gpr_timespec t):&#160;time.c'],['../time_8c.html#a1704f2028070b3c92bd5420864458bac',1,'gpr_timespec_to_micros(gpr_timespec t):&#160;time.c']]],
+ ['gpr_5ftls_5fdecl',['GPR_TLS_DECL',['../tls__gcc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd',1,'GPR_TLS_DECL():&#160;tls_gcc.h'],['../tls__msvc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd',1,'GPR_TLS_DECL():&#160;tls_msvc.h'],['../tls__pthread_8h.html#ab2c3baa4e4ceb366668aaf51379340fd',1,'GPR_TLS_DECL():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5fdestroy',['gpr_tls_destroy',['../tls__gcc_8h.html#a187108e1078d2ce05388cb17bc59ce74',1,'gpr_tls_destroy():&#160;tls_gcc.h'],['../tls__msvc_8h.html#a187108e1078d2ce05388cb17bc59ce74',1,'gpr_tls_destroy():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a187108e1078d2ce05388cb17bc59ce74',1,'gpr_tls_destroy():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5fget',['gpr_tls_get',['../tls__gcc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3',1,'gpr_tls_get():&#160;tls_gcc.h'],['../tls__msvc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3',1,'gpr_tls_get():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3',1,'gpr_tls_get():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5finit',['gpr_tls_init',['../tls__gcc_8h.html#a43768a42ff705cc028b4a483dc3b65c5',1,'gpr_tls_init():&#160;tls_gcc.h'],['../tls__msvc_8h.html#a43768a42ff705cc028b4a483dc3b65c5',1,'gpr_tls_init():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a43768a42ff705cc028b4a483dc3b65c5',1,'gpr_tls_init():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5fset',['gpr_tls_set',['../tls__gcc_8h.html#aa8f01b3e40178b80d098650f42c529e7',1,'gpr_tls_set():&#160;tls_gcc.h'],['../tls__msvc_8h.html#aa8f01b3e40178b80d098650f42c529e7',1,'gpr_tls_set():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea',1,'gpr_tls_set(struct gpr_pthread_thread_local *tls, gpr_intptr value):&#160;tls_pthread.h']]],
+ ['gpr_5ftmpfile',['gpr_tmpfile',['../file_8h.html#abdc37810133df55be624548f00fd177f',1,'file.h']]],
+ ['gpr_5fuint16',['gpr_uint16',['../port__platform_8h.html#abb7bceac4325643af77af51c7b6af371',1,'port_platform.h']]],
+ ['gpr_5fuint32',['gpr_uint32',['../port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9',1,'port_platform.h']]],
+ ['gpr_5fuint64',['gpr_uint64',['../port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6',1,'port_platform.h']]],
+ ['gpr_5fuint8',['gpr_uint8',['../port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0',1,'port_platform.h']]],
+ ['gpr_5fuintmax',['gpr_uintmax',['../port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7',1,'port_platform.h']]],
+ ['gpr_5fuintptr',['gpr_uintptr',['../port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4',1,'port_platform.h']]],
+ ['gpr_5funref',['gpr_unref',['../sync_8h.html#a76b570c831b14070c37e708dde91b795',1,'gpr_unref(gpr_refcount *r):&#160;sync.c'],['../sync_8c.html#a76b570c831b14070c37e708dde91b795',1,'gpr_unref(gpr_refcount *r):&#160;sync.c']]],
+ ['gpr_5fus_5fper_5fms',['GPR_US_PER_MS',['../time_8h.html#a33dba9a222266cf2270c9b09c1f64336',1,'time.h']]],
+ ['gpr_5fus_5fper_5fsec',['GPR_US_PER_SEC',['../time_8h.html#a48433e202646afa00d9694585b05b9e3',1,'time.h']]],
+ ['grow',['GROW',['../stream__op_8c.html#a886cd1bc8d999f1eca35adda926045dc',1,'GROW():&#160;stream_op.c'],['../slice__buffer_8c.html#a886cd1bc8d999f1eca35adda926045dc',1,'GROW():&#160;slice_buffer.c']]],
+ ['grpc_2eh',['grpc.h',['../grpc_8h.html',1,'']]],
+ ['grpc_5faccept4',['grpc_accept4',['../socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060',1,'socket_utils_posix.h']]],
+ ['grpc_5faccess_5ftoken_5fcredentials',['grpc_access_token_credentials',['../structgrpc__access__token__credentials.html',1,'']]],
+ ['grpc_5faccess_5ftoken_5fcredentials_5fcreate',['grpc_access_token_credentials_create',['../grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041',1,'grpc_access_token_credentials_create(const char *access_token):&#160;credentials.c'],['../credentials_8c.html#a7ef8e179bb5d15c81dfd363924db0041',1,'grpc_access_token_credentials_create(const char *access_token):&#160;credentials.c']]],
+ ['grpc_5facked_5fsettings',['GRPC_ACKED_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42',1,'internal.h']]],
+ ['grpc_5falarm',['grpc_alarm',['../structgrpc__alarm.html',1,'grpc_alarm'],['../alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea',1,'grpc_alarm():&#160;alarm.h']]],
+ ['grpc_5falarm_5fcancel',['grpc_alarm_cancel',['../alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60',1,'grpc_alarm_cancel(grpc_alarm *alarm):&#160;alarm.c'],['../alarm_8c.html#a921e9a2f728d338f42ad586e6d4eaf60',1,'grpc_alarm_cancel(grpc_alarm *alarm):&#160;alarm.c']]],
+ ['grpc_5falarm_5fcheck',['grpc_alarm_check',['../alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863',1,'grpc_alarm_check(gpr_mu *drop_mu, gpr_timespec now, gpr_timespec *next):&#160;alarm.c'],['../alarm_8c.html#a28de65beea264f65e15824cbf866d863',1,'grpc_alarm_check(gpr_mu *drop_mu, gpr_timespec now, gpr_timespec *next):&#160;alarm.c']]],
+ ['grpc_5falarm_5fheap',['grpc_alarm_heap',['../structgrpc__alarm__heap.html',1,'']]],
+ ['grpc_5falarm_5fheap_5fadd',['grpc_alarm_heap_add',['../alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4',1,'grpc_alarm_heap_add(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a96e6b49b0020da6f3163dfaeac36fed4',1,'grpc_alarm_heap_add(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fdestroy',['grpc_alarm_heap_destroy',['../alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9',1,'grpc_alarm_heap_destroy(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a827cbed1eadd7b307da4f509bb0e4ff9',1,'grpc_alarm_heap_destroy(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5finit',['grpc_alarm_heap_init',['../alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674',1,'grpc_alarm_heap_init(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a353a4a1809ac4546d62b3098dda8f674',1,'grpc_alarm_heap_init(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fis_5fempty',['grpc_alarm_heap_is_empty',['../alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb',1,'grpc_alarm_heap_is_empty(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a52d3c052d322cc97ced32a68bd9048cb',1,'grpc_alarm_heap_is_empty(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fpop',['grpc_alarm_heap_pop',['../alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029',1,'grpc_alarm_heap_pop(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a40cf7d2741c1640309682f14cafbb029',1,'grpc_alarm_heap_pop(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fremove',['grpc_alarm_heap_remove',['../alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c',1,'grpc_alarm_heap_remove(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a69c5b3ff692b6ca36c48d727acd45e9c',1,'grpc_alarm_heap_remove(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5ftop',['grpc_alarm_heap_top',['../alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea',1,'grpc_alarm_heap_top(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a1c81a64c942586da4313547cc8d259ea',1,'grpc_alarm_heap_top(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5finit',['grpc_alarm_init',['../alarm_8h.html#a50483486a229b573a29ed9fa30807999',1,'grpc_alarm_init(grpc_alarm *alarm, gpr_timespec deadline, grpc_iomgr_cb_func alarm_cb, void *alarm_cb_arg, gpr_timespec now):&#160;alarm.c'],['../alarm_8c.html#a50483486a229b573a29ed9fa30807999',1,'grpc_alarm_init(grpc_alarm *alarm, gpr_timespec deadline, grpc_iomgr_cb_func alarm_cb, void *alarm_cb_arg, gpr_timespec now):&#160;alarm.c']]],
+ ['grpc_5falarm_5flist_5finit',['grpc_alarm_list_init',['../alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e',1,'grpc_alarm_list_init(gpr_timespec now):&#160;alarm.c'],['../alarm_8c.html#a7f76e290e84d187382a25d0d6999067e',1,'grpc_alarm_list_init(gpr_timespec now):&#160;alarm.c']]],
+ ['grpc_5falarm_5flist_5fnext_5ftimeout',['grpc_alarm_list_next_timeout',['../alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa',1,'grpc_alarm_list_next_timeout(void):&#160;alarm.c'],['../alarm_8c.html#a257c1eaf2f1c2f352893dcc0af034dfa',1,'grpc_alarm_list_next_timeout(void):&#160;alarm.c']]],
+ ['grpc_5falarm_5flist_5fshutdown',['grpc_alarm_list_shutdown',['../alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831',1,'grpc_alarm_list_shutdown(void):&#160;alarm.c'],['../alarm_8c.html#a768994cd3fff1f9b3ca7805dee7b3831',1,'grpc_alarm_list_shutdown(void):&#160;alarm.c']]],
+ ['grpc_5farg',['grpc_arg',['../structgrpc__arg.html',1,'']]],
+ ['grpc_5farg_5fdefault_5fauthority',['GRPC_ARG_DEFAULT_AUTHORITY',['../grpc_8h.html#add42f97666fbfc66b7dac253ac3b73ae',1,'grpc.h']]],
+ ['grpc_5farg_5fenable_5fcensus',['GRPC_ARG_ENABLE_CENSUS',['../grpc_8h.html#ae498934a02de89ce29cec570b02a2037',1,'grpc.h']]],
+ ['grpc_5farg_5fhttp2_5finitial_5fsequence_5fnumber',['GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER',['../grpc_8h.html#aecc45a63163796ca1bc5453938bdfb36',1,'grpc.h']]],
+ ['grpc_5farg_5fhttp2_5fscheme',['GRPC_ARG_HTTP2_SCHEME',['../http__client__filter_8h.html#a7797da9f3f5a1381484b2cabca1920fc',1,'http_client_filter.h']]],
+ ['grpc_5farg_5finteger',['GRPC_ARG_INTEGER',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689',1,'grpc.h']]],
+ ['grpc_5farg_5fmax_5fconcurrent_5fstreams',['GRPC_ARG_MAX_CONCURRENT_STREAMS',['../grpc_8h.html#a5bb9256d0b457cab219f4d9d765148b6',1,'grpc.h']]],
+ ['grpc_5farg_5fmax_5fmessage_5flength',['GRPC_ARG_MAX_MESSAGE_LENGTH',['../grpc_8h.html#a50f37feb7c000a23b3b0edf4c31d4367',1,'grpc.h']]],
+ ['grpc_5farg_5fpointer',['GRPC_ARG_POINTER',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b',1,'grpc.h']]],
+ ['grpc_5farg_5fprimary_5fuser_5fagent_5fstring',['GRPC_ARG_PRIMARY_USER_AGENT_STRING',['../grpc_8h.html#a0732df2d9003e9ee1c01e50e41b5a8e2',1,'grpc.h']]],
+ ['grpc_5farg_5fsecondary_5fuser_5fagent_5fstring',['GRPC_ARG_SECONDARY_USER_AGENT_STRING',['../grpc_8h.html#af47b4048c11e4f8f4162f12c135c2da4',1,'grpc.h']]],
+ ['grpc_5farg_5fstring',['GRPC_ARG_STRING',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d',1,'grpc.h']]],
+ ['grpc_5farg_5ftype',['grpc_arg_type',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593',1,'grpc.h']]],
+ ['grpc_5fauth_5fcontext',['grpc_auth_context',['../structgrpc__auth__context.html',1,'grpc_auth_context'],['../grpc__security_8h.html#aa13f0724cb7ff99995d7f0881c01d553',1,'grpc_auth_context():&#160;grpc_security.h']]],
+ ['grpc_5fauth_5fcontext_5fcreate',['grpc_auth_context_create',['../security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25',1,'grpc_auth_context_create(grpc_auth_context *chained, size_t property_count):&#160;security_context.c'],['../security__context_8c.html#ab81f0d925a8aefc04349a849e63d9d25',1,'grpc_auth_context_create(grpc_auth_context *chained, size_t property_count):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5ffind_5fproperties_5fby_5fname',['grpc_auth_context_find_properties_by_name',['../grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7',1,'grpc_auth_context_find_properties_by_name(const grpc_auth_context *ctx, const char *name):&#160;security_context.c'],['../security__context_8c.html#a5298ac64614986581fc314f63fa9afd7',1,'grpc_auth_context_find_properties_by_name(const grpc_auth_context *ctx, const char *name):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fpeer_5fidentity',['grpc_auth_context_peer_identity',['../grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced',1,'grpc_auth_context_peer_identity(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#a144c6f3a56c8592489b3978e0c5caced',1,'grpc_auth_context_peer_identity(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fpeer_5fidentity_5fproperty_5fname',['grpc_auth_context_peer_identity_property_name',['../grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23',1,'grpc_auth_context_peer_identity_property_name(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#ac05022ccd5b972ba089950437727ff23',1,'grpc_auth_context_peer_identity_property_name(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fpeer_5fis_5fauthenticated',['grpc_auth_context_peer_is_authenticated',['../grpc__security_8h.html#af33fe6681dedb389edbf708020680093',1,'grpc_auth_context_peer_is_authenticated(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#af33fe6681dedb389edbf708020680093',1,'grpc_auth_context_peer_is_authenticated(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fproperty_5fiterator',['grpc_auth_context_property_iterator',['../grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780',1,'grpc_auth_context_property_iterator(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#aaad9fed074f7aebed63ed075bb6ff780',1,'grpc_auth_context_property_iterator(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fref',['GRPC_AUTH_CONTEXT_REF',['../security__context_8h.html#a3df5d42b28934cbeb932f18d61a8fe77',1,'GRPC_AUTH_CONTEXT_REF():&#160;security_context.h'],['../security__context_8h.html#aafcd59997402fd705818b3ce8e374623',1,'grpc_auth_context_ref(grpc_auth_context *policy):&#160;security_context.c'],['../security__context_8c.html#a449824176a9f6c79ee461e476f409aec',1,'grpc_auth_context_ref(grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5frelease',['grpc_auth_context_release',['../grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9',1,'grpc_auth_context_release(grpc_auth_context *context):&#160;security_context.c'],['../security__context_8c.html#a2eea99f76030b21ad58afdf615f4d2b9',1,'grpc_auth_context_release(grpc_auth_context *context):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5funref',['GRPC_AUTH_CONTEXT_UNREF',['../security__context_8h.html#ae6b74ab5e3a697c5a93529609bdb2668',1,'GRPC_AUTH_CONTEXT_UNREF():&#160;security_context.h'],['../security__context_8h.html#a19e637927ac80502fe6093a2669674da',1,'grpc_auth_context_unref(grpc_auth_context *policy):&#160;security_context.c'],['../security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33',1,'grpc_auth_context_unref(grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fjson_5fkey',['grpc_auth_json_key',['../structgrpc__auth__json__key.html',1,'']]],
+ ['grpc_5fauth_5fjson_5fkey_5fcreate_5ffrom_5fjson',['grpc_auth_json_key_create_from_json',['../json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194',1,'grpc_auth_json_key_create_from_json(const grpc_json *json):&#160;json_token.c'],['../json__token_8c.html#a99327b0fd2f13d8c98ebb68aecde0194',1,'grpc_auth_json_key_create_from_json(const grpc_json *json):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fcreate_5ffrom_5fstring',['grpc_auth_json_key_create_from_string',['../json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462',1,'grpc_auth_json_key_create_from_string(const char *json_string):&#160;json_token.c'],['../json__token_8c.html#aed79d1eb6161019cd427d7dc4bdc8462',1,'grpc_auth_json_key_create_from_string(const char *json_string):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fdestruct',['grpc_auth_json_key_destruct',['../json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7',1,'grpc_auth_json_key_destruct(grpc_auth_json_key *json_key):&#160;json_token.c'],['../json__token_8c.html#a0be195f2d8dad589b59befaaf379deb7',1,'grpc_auth_json_key_destruct(grpc_auth_json_key *json_key):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fis_5fvalid',['grpc_auth_json_key_is_valid',['../json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689',1,'grpc_auth_json_key_is_valid(const grpc_auth_json_key *json_key):&#160;json_token.c'],['../json__token_8c.html#ac4a86a67c8b9cd4b8b142fe880099689',1,'grpc_auth_json_key_is_valid(const grpc_auth_json_key *json_key):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5ftype_5fauthorized_5fuser',['GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER',['../json__token_8h.html#af371d9efcf5a20784bfeae73e3369fd3',1,'json_token.h']]],
+ ['grpc_5fauth_5fjson_5ftype_5finvalid',['GRPC_AUTH_JSON_TYPE_INVALID',['../json__token_8h.html#af5c8010a33e3a9b7b23f88cc87c1149e',1,'json_token.h']]],
+ ['grpc_5fauth_5fjson_5ftype_5fservice_5faccount',['GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT',['../json__token_8h.html#ae7dd581751d41c6ea4d8dd5af295d495',1,'json_token.h']]],
+ ['grpc_5fauth_5fproperty',['grpc_auth_property',['../structgrpc__auth__property.html',1,'grpc_auth_property'],['../grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429',1,'grpc_auth_property():&#160;grpc_security.h']]],
+ ['grpc_5fauth_5fproperty_5finit',['grpc_auth_property_init',['../security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a',1,'grpc_auth_property_init(const char *name, const char *value, size_t value_length):&#160;security_context.c'],['../security__context_8c.html#a816adda9cd16c9f8087a1f11b1f7154a',1,'grpc_auth_property_init(const char *name, const char *value, size_t value_length):&#160;security_context.c']]],
+ ['grpc_5fauth_5fproperty_5finit_5ffrom_5fcstring',['grpc_auth_property_init_from_cstring',['../security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58',1,'grpc_auth_property_init_from_cstring(const char *name, const char *value):&#160;security_context.c'],['../security__context_8c.html#a9ffe10ffd7c0397eb9656a5017ba0e58',1,'grpc_auth_property_init_from_cstring(const char *name, const char *value):&#160;security_context.c']]],
+ ['grpc_5fauth_5fproperty_5fiterator',['grpc_auth_property_iterator',['../structgrpc__auth__property__iterator.html',1,'grpc_auth_property_iterator'],['../grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf',1,'grpc_auth_property_iterator():&#160;grpc_security.h']]],
+ ['grpc_5fauth_5fproperty_5fiterator_5fnext',['grpc_auth_property_iterator_next',['../grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae',1,'grpc_auth_property_iterator_next(grpc_auth_property_iterator *it):&#160;security_context.c'],['../security__context_8c.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae',1,'grpc_auth_property_iterator_next(grpc_auth_property_iterator *it):&#160;security_context.c']]],
+ ['grpc_5fauth_5fproperty_5freset',['grpc_auth_property_reset',['../security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195',1,'grpc_auth_property_reset(grpc_auth_property *property):&#160;security_context.c'],['../security__context_8c.html#a9721c8f46ab15103ee4f69cf49c04195',1,'grpc_auth_property_reset(grpc_auth_property *property):&#160;security_context.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken',['grpc_auth_refresh_token',['../structgrpc__auth__refresh__token.html',1,'']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fcreate_5ffrom_5fjson',['grpc_auth_refresh_token_create_from_json',['../json__token_8h.html#a31e46f408f67e61eb59471816d7394d9',1,'grpc_auth_refresh_token_create_from_json(const grpc_json *json):&#160;json_token.c'],['../json__token_8c.html#a31e46f408f67e61eb59471816d7394d9',1,'grpc_auth_refresh_token_create_from_json(const grpc_json *json):&#160;json_token.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fcreate_5ffrom_5fstring',['grpc_auth_refresh_token_create_from_string',['../json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06',1,'grpc_auth_refresh_token_create_from_string(const char *json_string):&#160;json_token.c'],['../json__token_8c.html#aa8602827c182047ae58ff6f8d55fcf06',1,'grpc_auth_refresh_token_create_from_string(const char *json_string):&#160;json_token.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fdestruct',['grpc_auth_refresh_token_destruct',['../json__token_8h.html#a14f7331e37fa96ee4652780610e1b773',1,'grpc_auth_refresh_token_destruct(grpc_auth_refresh_token *refresh_token):&#160;json_token.c'],['../json__token_8c.html#a14f7331e37fa96ee4652780610e1b773',1,'grpc_auth_refresh_token_destruct(grpc_auth_refresh_token *refresh_token):&#160;json_token.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fis_5fvalid',['grpc_auth_refresh_token_is_valid',['../json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f',1,'grpc_auth_refresh_token_is_valid(const grpc_auth_refresh_token *refresh_token):&#160;json_token.c'],['../json__token_8c.html#a9b1a8c0e0fda0b36dc2ad142f276002f',1,'grpc_auth_refresh_token_is_valid(const grpc_auth_refresh_token *refresh_token):&#160;json_token.c']]],
+ ['grpc_5fauthorization_5fmetadata_5fkey',['GRPC_AUTHORIZATION_METADATA_KEY',['../credentials_8h.html#ae5d55c31d952d739f5be7de47ad425a3',1,'credentials.h']]],
+ ['grpc_5fbase64_5fdecode',['grpc_base64_decode',['../base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96',1,'grpc_base64_decode(const char *b64, int url_safe):&#160;base64.c'],['../base64_8c.html#a81bf1bd8387f2d69d6fe48e463a40c96',1,'grpc_base64_decode(const char *b64, int url_safe):&#160;base64.c']]],
+ ['grpc_5fbase64_5fdecode_5fwith_5flen',['grpc_base64_decode_with_len',['../base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f',1,'grpc_base64_decode_with_len(const char *b64, size_t b64_len, int url_safe):&#160;base64.c'],['../base64_8c.html#a2d9a616e303d93f4cb0733fe96a0f28f',1,'grpc_base64_decode_with_len(const char *b64, size_t b64_len, int url_safe):&#160;base64.c']]],
+ ['grpc_5fbase64_5fencode',['grpc_base64_encode',['../base64_8h.html#af3751ba76aa864e4983cea879fb437d8',1,'grpc_base64_encode(const void *data, size_t data_size, int url_safe, int multiline):&#160;base64.c'],['../base64_8c.html#a52b0da4b71404bafb66d7cd2d6bc898a',1,'grpc_base64_encode(const void *vdata, size_t data_size, int url_safe, int multiline):&#160;base64.c']]],
+ ['grpc_5fbase64_5fmultiline_5fline_5flen',['GRPC_BASE64_MULTILINE_LINE_LEN',['../base64_8c.html#a044b2c792f69cf3efaad0895e38122a7',1,'base64.c']]],
+ ['grpc_5fbase64_5fmultiline_5fnum_5fblocks',['GRPC_BASE64_MULTILINE_NUM_BLOCKS',['../base64_8c.html#abf98a03e292b4943e5d9df3314a91d2e',1,'base64.c']]],
+ ['grpc_5fbase64_5fpad_5fbyte',['GRPC_BASE64_PAD_BYTE',['../base64_8c.html#a74d467f02f0a2a5e88cc0231ea2d3603',1,'base64.c']]],
+ ['grpc_5fbase64_5fpad_5fchar',['GRPC_BASE64_PAD_CHAR',['../base64_8c.html#a6ccc23e3f23a06fd1e83f07fc80a36f5',1,'base64.c']]],
+ ['grpc_5fbb_5fraw',['GRPC_BB_RAW',['../byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636',1,'byte_buffer.h']]],
+ ['grpc_5fbbq_5farray',['grpc_bbq_array',['../structgrpc__bbq__array.html',1,'']]],
+ ['grpc_5fbbq_5fbytes',['grpc_bbq_bytes',['../byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28',1,'grpc_bbq_bytes(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a86c63b57cc95e136b8de2592e4dedf28',1,'grpc_bbq_bytes(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fdestroy',['grpc_bbq_destroy',['../byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb',1,'grpc_bbq_destroy(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#ae1f26933a5e6e643c3c31de676804edb',1,'grpc_bbq_destroy(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fempty',['grpc_bbq_empty',['../byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15',1,'grpc_bbq_empty(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#aaa5f8cf8f94340a6e2f6c803a8001c15',1,'grpc_bbq_empty(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fflush',['grpc_bbq_flush',['../byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a',1,'grpc_bbq_flush(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a8308c0116008c7abd4554a34a549e94a',1,'grpc_bbq_flush(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fpop',['grpc_bbq_pop',['../byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5',1,'grpc_bbq_pop(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a0539ad1d8c25d3060475370bcc9d37c5',1,'grpc_bbq_pop(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fpush',['grpc_bbq_push',['../byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae',1,'grpc_bbq_push(grpc_byte_buffer_queue *q, grpc_byte_buffer *bb):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a34702570a1438c8cf7a4dcdcc65a5891',1,'grpc_bbq_push(grpc_byte_buffer_queue *q, grpc_byte_buffer *buffer):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbegin_5fmessage',['grpc_begin_message',['../structgrpc__begin__message.html',1,'grpc_begin_message'],['../stream__op_8h.html#a6d154e209d826dcf514850c6724d3596',1,'grpc_begin_message():&#160;stream_op.h']]],
+ ['grpc_5fblocking_5fresolve_5faddress',['grpc_blocking_resolve_address',['../resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c',1,'resolve_address.h']]],
+ ['grpc_5fbyte_5fbuffer',['grpc_byte_buffer',['../structgrpc__byte__buffer.html',1,'grpc_byte_buffer'],['../byte__buffer_8h.html#a670951ae03b0a2dc4e50f4e25160fc2e',1,'grpc_byte_buffer():&#160;byte_buffer.h']]],
+ ['grpc_5fbyte_5fbuffer_5fcopy',['grpc_byte_buffer_copy',['../byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb',1,'grpc_byte_buffer_copy(grpc_byte_buffer *bb):&#160;byte_buffer.c'],['../byte__buffer_8c.html#aac8a5605c5de93a78da7e8ca06a80efb',1,'grpc_byte_buffer_copy(grpc_byte_buffer *bb):&#160;byte_buffer.c']]],
+ ['grpc_5fbyte_5fbuffer_5fdestroy',['grpc_byte_buffer_destroy',['../byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5',1,'grpc_byte_buffer_destroy(grpc_byte_buffer *byte_buffer):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a0099fc01264d8aeb7cd56dfb58652d22',1,'grpc_byte_buffer_destroy(grpc_byte_buffer *bb):&#160;byte_buffer.c']]],
+ ['grpc_5fbyte_5fbuffer_5flength',['grpc_byte_buffer_length',['../byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d',1,'grpc_byte_buffer_length(grpc_byte_buffer *bb):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a61b6ac03d6a50664786e45d616ba435d',1,'grpc_byte_buffer_length(grpc_byte_buffer *bb):&#160;byte_buffer.c']]],
+ ['grpc_5fbyte_5fbuffer_5fqueue',['grpc_byte_buffer_queue',['../structgrpc__byte__buffer__queue.html',1,'']]],
+ ['grpc_5fbyte_5fbuffer_5freader',['grpc_byte_buffer_reader',['../structgrpc__byte__buffer__reader.html',1,'grpc_byte_buffer_reader'],['../byte__buffer_8h.html#a16143f22ea46cc7fa6b53e6cb30715f1',1,'grpc_byte_buffer_reader():&#160;byte_buffer.h']]],
+ ['grpc_5fbyte_5fbuffer_5freader_5fdestroy',['grpc_byte_buffer_reader_destroy',['../byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778',1,'grpc_byte_buffer_reader_destroy(grpc_byte_buffer_reader *reader):&#160;byte_buffer_reader.c'],['../byte__buffer__reader_8c.html#aed5f40a76941741b7672c14f15be0778',1,'grpc_byte_buffer_reader_destroy(grpc_byte_buffer_reader *reader):&#160;byte_buffer_reader.c']]],
+ ['grpc_5fbyte_5fbuffer_5freader_5finit',['grpc_byte_buffer_reader_init',['../byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268',1,'grpc_byte_buffer_reader_init(grpc_byte_buffer_reader *reader, grpc_byte_buffer *buffer):&#160;byte_buffer_reader.c'],['../byte__buffer__reader_8c.html#a71016674849f4f57c1a4319d7964d268',1,'grpc_byte_buffer_reader_init(grpc_byte_buffer_reader *reader, grpc_byte_buffer *buffer):&#160;byte_buffer_reader.c']]],
+ ['grpc_5fbyte_5fbuffer_5freader_5fnext',['grpc_byte_buffer_reader_next',['../byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9',1,'grpc_byte_buffer_reader_next(grpc_byte_buffer_reader *reader, gpr_slice *slice):&#160;byte_buffer_reader.c'],['../byte__buffer__reader_8c.html#aff713900a0177997a0be49a40781bcc9',1,'grpc_byte_buffer_reader_next(grpc_byte_buffer_reader *reader, gpr_slice *slice):&#160;byte_buffer_reader.c']]],
+ ['grpc_5fbyte_5fbuffer_5ftype',['grpc_byte_buffer_type',['../byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6',1,'byte_buffer.h']]],
+ ['grpc_5fcall',['grpc_call',['../structgrpc__call.html',1,'grpc_call'],['../grpc_8h.html#a122f8f4f0a585396d993d9b55848f222',1,'grpc_call():&#160;grpc.h']]],
+ ['grpc_5fcall_5fauth_5fcontext',['grpc_call_auth_context',['../grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe',1,'grpc_call_auth_context(grpc_call *call):&#160;security_context.c'],['../security__context_8c.html#a0b439e6d2875c8b5e2e901a959f6a2fe',1,'grpc_call_auth_context(grpc_call *call):&#160;security_context.c']]],
+ ['grpc_5fcall_5fcancel',['grpc_call_cancel',['../grpc_8h.html#adce32a3168cfc0048423af94a3961878',1,'grpc_call_cancel(grpc_call *call):&#160;call.c'],['../call_8c.html#adce32a3168cfc0048423af94a3961878',1,'grpc_call_cancel(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5fcancel_5fwith_5fstatus',['grpc_call_cancel_with_status',['../grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2',1,'grpc_call_cancel_with_status(grpc_call *call, grpc_status_code status, const char *description):&#160;call.c'],['../call_8c.html#a1adb0f85dd491cc47dd8da655c4e30a6',1,'grpc_call_cancel_with_status(grpc_call *c, grpc_status_code status, const char *description):&#160;call.c']]],
+ ['grpc_5fcall_5fcontext_5felement',['grpc_call_context_element',['../structgrpc__call__context__element.html',1,'']]],
+ ['grpc_5fcall_5fcontext_5fget',['grpc_call_context_get',['../call_8h.html#a039322642b1682808002d1302c248c5f',1,'grpc_call_context_get(grpc_call *call, grpc_context_index elem):&#160;call.c'],['../call_8c.html#a039322642b1682808002d1302c248c5f',1,'grpc_call_context_get(grpc_call *call, grpc_context_index elem):&#160;call.c']]],
+ ['grpc_5fcall_5fcontext_5fset',['grpc_call_context_set',['../call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9',1,'grpc_call_context_set(grpc_call *call, grpc_context_index elem, void *value, void(*destroy)(void *value)):&#160;call.c'],['../call_8c.html#adad531b2cfc5574dbc4bebaafe0db1e9',1,'grpc_call_context_set(grpc_call *call, grpc_context_index elem, void *value, void(*destroy)(void *value)):&#160;call.c']]],
+ ['grpc_5fcall_5fcreate',['grpc_call_create',['../call_8h.html#a0199bd70012c6e2dfa8667dd1d280109',1,'grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq, const void *server_transport_data, grpc_mdelem **add_initial_metadata, size_t add_initial_metadata_count, gpr_timespec send_deadline):&#160;call.c'],['../call_8c.html#a0199bd70012c6e2dfa8667dd1d280109',1,'grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq, const void *server_transport_data, grpc_mdelem **add_initial_metadata, size_t add_initial_metadata_count, gpr_timespec send_deadline):&#160;call.c']]],
+ ['grpc_5fcall_5fdestroy',['grpc_call_destroy',['../grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125',1,'grpc_call_destroy(grpc_call *call):&#160;call.c'],['../call_8c.html#a456f491fd120a1561aa8cd1178ddb4c7',1,'grpc_call_destroy(grpc_call *c):&#160;call.c']]],
+ ['grpc_5fcall_5fdetails',['grpc_call_details',['../structgrpc__call__details.html',1,'']]],
+ ['grpc_5fcall_5fdetails_5fdestroy',['grpc_call_details_destroy',['../grpc_8h.html#a436819189c9155a0761db7667f9078f9',1,'grpc_call_details_destroy(grpc_call_details *details):&#160;call_details.c'],['../call__details_8c.html#a8ac75052ac470570689777a7a2684012',1,'grpc_call_details_destroy(grpc_call_details *cd):&#160;call_details.c']]],
+ ['grpc_5fcall_5fdetails_5finit',['grpc_call_details_init',['../grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5',1,'grpc_call_details_init(grpc_call_details *details):&#160;call_details.c'],['../call__details_8c.html#aec87c14a6d7452bfb029af6a317a6cff',1,'grpc_call_details_init(grpc_call_details *cd):&#160;call_details.c']]],
+ ['grpc_5fcall_5felement',['grpc_call_element',['../structgrpc__call__element.html',1,'grpc_call_element'],['../channel__stack_8h.html#ad4b0603b98c350dc4bfdcc2ba95d5401',1,'grpc_call_element():&#160;channel_stack.h']]],
+ ['grpc_5fcall_5felement_5fsend_5fcancel',['grpc_call_element_send_cancel',['../channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5',1,'grpc_call_element_send_cancel(grpc_call_element *cur_elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a7127b6c0b4d14c70e23e65875c7b6bc5',1,'grpc_call_element_send_cancel(grpc_call_element *cur_elem):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5ferror',['GRPC_CALL_ERROR',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41',1,'GRPC_CALL_ERROR():&#160;grpc.h'],['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b',1,'grpc_call_error():&#160;grpc.h'],['../grpc_8h.html#abb51216cb5ac1cfd8ca4d096e060adbb',1,'grpc_call_error():&#160;grpc.h']]],
+ ['grpc_5fcall_5ferror_5falready_5faccepted',['GRPC_CALL_ERROR_ALREADY_ACCEPTED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5falready_5ffinished',['GRPC_CALL_ERROR_ALREADY_FINISHED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5falready_5finvoked',['GRPC_CALL_ERROR_ALREADY_INVOKED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5finvalid_5fflags',['GRPC_CALL_ERROR_INVALID_FLAGS',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5finvalid_5fmetadata',['GRPC_CALL_ERROR_INVALID_METADATA',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5finvoked',['GRPC_CALL_ERROR_NOT_INVOKED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5fon_5fclient',['GRPC_CALL_ERROR_NOT_ON_CLIENT',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5fon_5fserver',['GRPC_CALL_ERROR_NOT_ON_SERVER',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5fserver_5fcompletion_5fqueue',['GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5ftoo_5fmany_5foperations',['GRPC_CALL_ERROR_TOO_MANY_OPERATIONS',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454',1,'grpc.h']]],
+ ['grpc_5fcall_5ffrom_5ftop_5felement',['grpc_call_from_top_element',['../call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e',1,'grpc_call_from_top_element(grpc_call_element *surface_element):&#160;call.c'],['../call_8c.html#a92d6bdbeddb5e6918e118bc0979a1a9b',1,'grpc_call_from_top_element(grpc_call_element *elem):&#160;call.c']]],
+ ['grpc_5fcall_5fget_5fcall_5fstack',['grpc_call_get_call_stack',['../call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f',1,'grpc_call_get_call_stack(grpc_call *call):&#160;call.c'],['../call_8c.html#a089e0677c51d9a5d4a4a7e582f86b27f',1,'grpc_call_get_call_stack(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5fget_5fcompletion_5fqueue',['grpc_call_get_completion_queue',['../call_8h.html#a383950ef84646c0f3cb3cb38807503db',1,'grpc_call_get_completion_queue(grpc_call *call):&#160;call.c'],['../call_8c.html#a383950ef84646c0f3cb3cb38807503db',1,'grpc_call_get_completion_queue(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5fget_5fcompression_5falgorithm',['grpc_call_get_compression_algorithm',['../call_8c.html#a5128cbee3e5ed3cd97b4043c0f6d7d04',1,'call.c']]],
+ ['grpc_5fcall_5fget_5fpeer',['grpc_call_get_peer',['../grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada',1,'grpc_call_get_peer(grpc_call *call):&#160;call.c'],['../call_8c.html#adf4ac8b78da7b957ce05dc0f62719ada',1,'grpc_call_get_peer(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5finternal_5fref',['GRPC_CALL_INTERNAL_REF',['../call_8h.html#a8096750f0a0c7cb97a4c38df49242f8b',1,'GRPC_CALL_INTERNAL_REF():&#160;call.h'],['../call_8h.html#a6845825cac8a628227db13fef74ac84d',1,'grpc_call_internal_ref(grpc_call *call):&#160;call.c'],['../call_8c.html#afdbe0f591e358205051b2af04a8df4f8',1,'grpc_call_internal_ref(grpc_call *c):&#160;call.c']]],
+ ['grpc_5fcall_5finternal_5funref',['GRPC_CALL_INTERNAL_UNREF',['../call_8h.html#a88a83bb312e007ce3b253c97a567383b',1,'GRPC_CALL_INTERNAL_UNREF():&#160;call.h'],['../call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76',1,'grpc_call_internal_unref(grpc_call *call, int allow_immediate_deletion):&#160;call.c'],['../call_8c.html#afc70fe56761341f774d1b03a55a0e0e9',1,'grpc_call_internal_unref(grpc_call *c, int allow_immediate_deletion):&#160;call.c']]],
+ ['grpc_5fcall_5fis_5fclient',['grpc_call_is_client',['../call_8h.html#af101e4a67c8995de55cbd8b113e3b394',1,'grpc_call_is_client(grpc_call *call):&#160;call.c'],['../call_8c.html#af101e4a67c8995de55cbd8b113e3b394',1,'grpc_call_is_client(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5flog_5fbatch',['GRPC_CALL_LOG_BATCH',['../call_8h.html#afb66440381d35f27f8a59ce496970c8a',1,'GRPC_CALL_LOG_BATCH():&#160;call.h'],['../call_8h.html#a70fab32081ad1821de8bf3979cfa01d6',1,'grpc_call_log_batch(char *file, int line, gpr_log_severity severity, grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call_log_batch.c'],['../call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6',1,'grpc_call_log_batch(char *file, int line, gpr_log_severity severity, grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call_log_batch.c']]],
+ ['grpc_5fcall_5flog_5fop',['grpc_call_log_op',['../channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee',1,'grpc_call_log_op(char *file, int line, gpr_log_severity severity, grpc_call_element *elem, grpc_transport_stream_op *op):&#160;transport_op_string.c'],['../transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee',1,'grpc_call_log_op(char *file, int line, gpr_log_severity severity, grpc_call_element *elem, grpc_transport_stream_op *op):&#160;transport_op_string.c'],['../channel__stack_8h.html#a933b113b310801b8f916dade1569dbc3',1,'GRPC_CALL_LOG_OP():&#160;channel_stack.h']]],
+ ['grpc_5fcall_5fnext_5fget_5fpeer',['grpc_call_next_get_peer',['../channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801',1,'grpc_call_next_get_peer(grpc_call_element *elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a40c122e470335bb7a6edf1e0a31fc801',1,'grpc_call_next_get_peer(grpc_call_element *elem):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fnext_5fop',['grpc_call_next_op',['../channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9',1,'grpc_call_next_op(grpc_call_element *elem, grpc_transport_stream_op *op):&#160;channel_stack.c'],['../channel__stack_8c.html#af52cb36e243fc3bfb81ebca882346ce9',1,'grpc_call_next_op(grpc_call_element *elem, grpc_transport_stream_op *op):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fok',['GRPC_CALL_OK',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8',1,'grpc.h']]],
+ ['grpc_5fcall_5fset_5fcompletion_5fqueue',['grpc_call_set_completion_queue',['../call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd',1,'grpc_call_set_completion_queue(grpc_call *call, grpc_completion_queue *cq):&#160;call.c'],['../call_8c.html#a29e0a4ca5d3d86c071b41dcb30c117bd',1,'grpc_call_set_completion_queue(grpc_call *call, grpc_completion_queue *cq):&#160;call.c']]],
+ ['grpc_5fcall_5fset_5fcredentials',['grpc_call_set_credentials',['../grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60',1,'grpc_call_set_credentials(grpc_call *call, grpc_credentials *creds):&#160;security_context.c'],['../security__context_8c.html#a56de54ae2563e67e236c10e8fa419f60',1,'grpc_call_set_credentials(grpc_call *call, grpc_credentials *creds):&#160;security_context.c']]],
+ ['grpc_5fcall_5fstack',['grpc_call_stack',['../structgrpc__call__stack.html',1,'']]],
+ ['grpc_5fcall_5fstack_5fdestroy',['grpc_call_stack_destroy',['../channel__stack_8h.html#a441c43095f765c200e679230a11c6116',1,'grpc_call_stack_destroy(grpc_call_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#a441c43095f765c200e679230a11c6116',1,'grpc_call_stack_destroy(grpc_call_stack *stack):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstack_5felement',['grpc_call_stack_element',['../channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17',1,'grpc_call_stack_element(grpc_call_stack *stack, size_t i):&#160;channel_stack.c'],['../channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333',1,'grpc_call_stack_element(grpc_call_stack *call_stack, size_t index):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstack_5ffrom_5ftop_5felement',['grpc_call_stack_from_top_element',['../channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c',1,'grpc_call_stack_from_top_element(grpc_call_element *elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c',1,'grpc_call_stack_from_top_element(grpc_call_element *elem):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstack_5finit',['grpc_call_stack_init',['../channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d',1,'grpc_call_stack_init(grpc_channel_stack *channel_stack, const void *transport_server_data, grpc_transport_stream_op *initial_op, grpc_call_stack *call_stack):&#160;channel_stack.c'],['../channel__stack_8c.html#ac7f3085338ed96593ca7c814cd6d705d',1,'grpc_call_stack_init(grpc_channel_stack *channel_stack, const void *transport_server_data, grpc_transport_stream_op *initial_op, grpc_call_stack *call_stack):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstart_5fbatch',['grpc_call_start_batch',['../grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101',1,'grpc_call_start_batch(grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call.c'],['../call_8c.html#ae0e60993c9d6e5ceccaf2e61f690b101',1,'grpc_call_start_batch(grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call.c']]],
+ ['grpc_5fcall_5fstart_5fioreq_5fand_5fcall_5fback',['grpc_call_start_ioreq_and_call_back',['../call_8h.html#aef30c2ddcfea12c0df20548f32b4378d',1,'grpc_call_start_ioreq_and_call_back(grpc_call *call, const grpc_ioreq *reqs, size_t nreqs, grpc_ioreq_completion_func on_complete, void *user_data):&#160;call.c'],['../call_8c.html#aef30c2ddcfea12c0df20548f32b4378d',1,'grpc_call_start_ioreq_and_call_back(grpc_call *call, const grpc_ioreq *reqs, size_t nreqs, grpc_ioreq_completion_func on_complete, void *user_data):&#160;call.c']]],
+ ['grpc_5fcensus_5fcall_5fget_5fcontext',['grpc_census_call_get_context',['../grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66',1,'grpc_census_call_get_context(grpc_call *call):&#160;grpc_context.c'],['../grpc__context_8c.html#a333e4c9a18683ab7a0db218df7a5fc6e',1,'grpc_census_call_get_context(grpc_call *call):&#160;grpc_context.c']]],
+ ['grpc_5fcensus_5fcall_5fset_5fcontext',['grpc_census_call_set_context',['../grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a',1,'grpc_census_call_set_context(grpc_call *call, struct census_context *context):&#160;grpc_context.c'],['../grpc__context_8c.html#afe9f71e9469141cc38cf3ec1375830ce',1,'grpc_census_call_set_context(grpc_call *call, census_context *context):&#160;grpc_context.c']]],
+ ['grpc_5fchannel',['grpc_channel',['../structgrpc__channel.html',1,'grpc_channel'],['../grpc_8h.html#a432bfa6b9f6603643cdf9de8804c254e',1,'grpc_channel():&#160;grpc.h']]],
+ ['grpc_5fchannel_5fargs',['grpc_channel_args',['../structgrpc__channel__args.html',1,'']]],
+ ['grpc_5fchannel_5fargs_5fcopy',['grpc_channel_args_copy',['../channel__args_8h.html#aea7141804d69de11c1470197ad87b45d',1,'grpc_channel_args_copy(const grpc_channel_args *src):&#160;channel_args.c'],['../channel__args_8c.html#aea7141804d69de11c1470197ad87b45d',1,'grpc_channel_args_copy(const grpc_channel_args *src):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fcopy_5fand_5fadd',['grpc_channel_args_copy_and_add',['../channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3',1,'grpc_channel_args_copy_and_add(const grpc_channel_args *src, const grpc_arg *to_add, size_t num_to_add):&#160;channel_args.c'],['../channel__args_8c.html#ace4130d42d359c697a99d4ed7a7e54c3',1,'grpc_channel_args_copy_and_add(const grpc_channel_args *src, const grpc_arg *to_add, size_t num_to_add):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fdestroy',['grpc_channel_args_destroy',['../channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e',1,'grpc_channel_args_destroy(grpc_channel_args *a):&#160;channel_args.c'],['../channel__args_8c.html#ad7467ddcad8160325b79b8d3a627c42e',1,'grpc_channel_args_destroy(grpc_channel_args *a):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fget_5fcompression_5falgorithm',['grpc_channel_args_get_compression_algorithm',['../channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb',1,'grpc_channel_args_get_compression_algorithm(const grpc_channel_args *a):&#160;channel_args.c'],['../channel__args_8c.html#ab6073e21bee62a87f891a10d5bb4a3bb',1,'grpc_channel_args_get_compression_algorithm(const grpc_channel_args *a):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fis_5fcensus_5fenabled',['grpc_channel_args_is_census_enabled',['../channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0',1,'grpc_channel_args_is_census_enabled(const grpc_channel_args *a):&#160;channel_args.c'],['../channel__args_8c.html#a918e3c374d10937b1cf1a7bec45e96c0',1,'grpc_channel_args_is_census_enabled(const grpc_channel_args *a):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fmerge',['grpc_channel_args_merge',['../channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a',1,'grpc_channel_args_merge(const grpc_channel_args *a, const grpc_channel_args *b):&#160;channel_args.c'],['../channel__args_8c.html#aa098be5f086aefff83a52e202d11a39a',1,'grpc_channel_args_merge(const grpc_channel_args *a, const grpc_channel_args *b):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fset_5fcompression_5falgorithm',['grpc_channel_args_set_compression_algorithm',['../channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70',1,'grpc_channel_args_set_compression_algorithm(grpc_channel_args *a, grpc_compression_algorithm algorithm):&#160;channel_args.c'],['../channel__args_8c.html#a1666cde2d23a797e95cf09e3c26e7f70',1,'grpc_channel_args_set_compression_algorithm(grpc_channel_args *a, grpc_compression_algorithm algorithm):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fcheck_5fconnectivity_5fstate',['grpc_channel_check_connectivity_state',['../grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3',1,'grpc_channel_check_connectivity_state(grpc_channel *channel, int try_to_connect):&#160;channel_connectivity.c'],['../channel__connectivity_8c.html#a9623d8e4df1d17eb26b67d905f1d7cb3',1,'grpc_channel_check_connectivity_state(grpc_channel *channel, int try_to_connect):&#160;channel_connectivity.c']]],
+ ['grpc_5fchannel_5fconnecting',['GRPC_CHANNEL_CONNECTING',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299',1,'grpc.h']]],
+ ['grpc_5fchannel_5fcreate_5fcall',['grpc_channel_create_call',['../grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e',1,'grpc_channel_create_call(grpc_channel *channel, grpc_completion_queue *completion_queue, const char *method, const char *host, gpr_timespec deadline):&#160;channel.c'],['../channel_8c.html#aa6b80c5019007f758b1bf414e323db05',1,'grpc_channel_create_call(grpc_channel *channel, grpc_completion_queue *cq, const char *method, const char *host, gpr_timespec deadline):&#160;channel.c']]],
+ ['grpc_5fchannel_5fcreate_5ffrom_5ffilters',['grpc_channel_create_from_filters',['../channel_8h.html#a12b25d31348401c51adab93c4f461d58',1,'grpc_channel_create_from_filters(const char *target, const grpc_channel_filter **filters, size_t count, const grpc_channel_args *args, grpc_mdctx *mdctx, int is_client):&#160;channel.c'],['../channel_8c.html#a32e56f0a0ab55d90624b92cbbf7bd384',1,'grpc_channel_create_from_filters(const char *target, const grpc_channel_filter **filters, size_t num_filters, const grpc_channel_args *args, grpc_mdctx *mdctx, int is_client):&#160;channel.c']]],
+ ['grpc_5fchannel_5fcreate_5fregistered_5fcall',['grpc_channel_create_registered_call',['../grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa',1,'grpc_channel_create_registered_call(grpc_channel *channel, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline):&#160;channel.c'],['../channel_8c.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa',1,'grpc_channel_create_registered_call(grpc_channel *channel, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline):&#160;channel.c']]],
+ ['grpc_5fchannel_5fdestroy',['grpc_channel_destroy',['../grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3',1,'grpc_channel_destroy(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a16e4b95581ad12e8e0af2af8d41b71b3',1,'grpc_channel_destroy(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5felement',['grpc_channel_element',['../structgrpc__channel__element.html',1,'grpc_channel_element'],['../channel__stack_8h.html#aea7892e6dfe1fbf098a7d6deea46d4ca',1,'grpc_channel_element():&#160;channel_stack.h']]],
+ ['grpc_5fchannel_5ffatal_5ffailure',['GRPC_CHANNEL_FATAL_FAILURE',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6',1,'grpc.h']]],
+ ['grpc_5fchannel_5ffilter',['grpc_channel_filter',['../structgrpc__channel__filter.html',1,'']]],
+ ['grpc_5fchannel_5fget_5fchannel_5fstack',['grpc_channel_get_channel_stack',['../channel_8h.html#a264b543c86559165c42b1c41cb4c9045',1,'grpc_channel_get_channel_stack(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a264b543c86559165c42b1c41cb4c9045',1,'grpc_channel_get_channel_stack(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fcompression_5falgorithm_5fstring',['grpc_channel_get_compression_algorithm_string',['../channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af',1,'grpc_channel_get_compression_algorithm_string(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#aee69f0f30f9cdcdd3961b1d253fa29af',1,'grpc_channel_get_compression_algorithm_string(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fmax_5fmessage_5flength',['grpc_channel_get_max_message_length',['../channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd',1,'grpc_channel_get_max_message_length(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a1f91159c2a0d259aa7f854ba4204cafd',1,'grpc_channel_get_max_message_length(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fmessage_5fstring',['grpc_channel_get_message_string',['../channel_8h.html#a3008e3086b47f6170180c32ef88c83db',1,'grpc_channel_get_message_string(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a3008e3086b47f6170180c32ef88c83db',1,'grpc_channel_get_message_string(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fmetadata_5fcontext',['grpc_channel_get_metadata_context',['../channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80',1,'grpc_channel_get_metadata_context(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a6b9ee58f86b3e3026767b37bbc3efa80',1,'grpc_channel_get_metadata_context(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5freffed_5fstatus_5felem',['grpc_channel_get_reffed_status_elem',['../channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101',1,'grpc_channel_get_reffed_status_elem(grpc_channel *channel, int status_code):&#160;channel.c'],['../channel_8c.html#a49c14becac82008119b5e9fd9d554983',1,'grpc_channel_get_reffed_status_elem(grpc_channel *channel, int i):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fstatus_5fstring',['grpc_channel_get_status_string',['../channel_8h.html#a2192de2d31a54523311ce241f933e048',1,'grpc_channel_get_status_string(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a2192de2d31a54523311ce241f933e048',1,'grpc_channel_get_status_string(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5ftarget',['grpc_channel_get_target',['../grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499',1,'grpc_channel_get_target(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a108ef86bc0e5ebcb05f744315e2a6499',1,'grpc_channel_get_target(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fidle',['GRPC_CHANNEL_IDLE',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77',1,'grpc.h']]],
+ ['grpc_5fchannel_5finternal_5fref',['GRPC_CHANNEL_INTERNAL_REF',['../channel_8h.html#aa19087be931208174c3f30c983b0061c',1,'GRPC_CHANNEL_INTERNAL_REF():&#160;channel.h'],['../channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634',1,'grpc_channel_internal_ref(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41',1,'grpc_channel_internal_ref(grpc_channel *c):&#160;channel.c']]],
+ ['grpc_5fchannel_5finternal_5funref',['grpc_channel_internal_unref',['../channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b',1,'grpc_channel_internal_unref(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b',1,'grpc_channel_internal_unref(grpc_channel *channel):&#160;channel.c'],['../channel_8h.html#a8391477c21b23ffe97f2e6327c74e77e',1,'GRPC_CHANNEL_INTERNAL_UNREF():&#160;channel.h']]],
+ ['grpc_5fchannel_5fnext_5fop',['grpc_channel_next_op',['../channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9',1,'grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op):&#160;channel_stack.c'],['../channel__stack_8c.html#aea7eceb60c0e94465c4baea314c0ebd9',1,'grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fready',['GRPC_CHANNEL_READY',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea',1,'grpc.h']]],
+ ['grpc_5fchannel_5fregister_5fcall',['grpc_channel_register_call',['../grpc_8h.html#af00855f27d8b7c6b232982446371c04d',1,'grpc_channel_register_call(grpc_channel *channel, const char *method, const char *host):&#160;channel.c'],['../channel_8c.html#af00855f27d8b7c6b232982446371c04d',1,'grpc_channel_register_call(grpc_channel *channel, const char *method, const char *host):&#160;channel.c']]],
+ ['grpc_5fchannel_5fsecurity_5fconnector',['grpc_channel_security_connector',['../structgrpc__channel__security__connector.html',1,'grpc_channel_security_connector'],['../security__connector_8h.html#afbebb4c120eeea2ad96953aae5f656ec',1,'grpc_channel_security_connector():&#160;security_connector.h']]],
+ ['grpc_5fchannel_5fsecurity_5fconnector_5fcheck_5fcall_5fhost',['grpc_channel_security_connector_check_call_host',['../security__connector_8h.html#a845341440590ee81647b56575eb60168',1,'grpc_channel_security_connector_check_call_host(grpc_channel_security_connector *sc, const char *host, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c'],['../security__connector_8c.html#a845341440590ee81647b56575eb60168',1,'grpc_channel_security_connector_check_call_host(grpc_channel_security_connector *sc, const char *host, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c']]],
+ ['grpc_5fchannel_5fstack',['grpc_channel_stack',['../structgrpc__channel__stack.html',1,'']]],
+ ['grpc_5fchannel_5fstack_5fdestroy',['grpc_channel_stack_destroy',['../channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764',1,'grpc_channel_stack_destroy(grpc_channel_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#ad06f3ee4d872888e99778e5faa610764',1,'grpc_channel_stack_destroy(grpc_channel_stack *stack):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5felement',['grpc_channel_stack_element',['../channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40',1,'grpc_channel_stack_element(grpc_channel_stack *stack, size_t i):&#160;channel_stack.c'],['../channel__stack_8c.html#a6fa445cf1f13f17095e14c0cc8801fb5',1,'grpc_channel_stack_element(grpc_channel_stack *channel_stack, size_t index):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5ffrom_5ftop_5felement',['grpc_channel_stack_from_top_element',['../channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406',1,'grpc_channel_stack_from_top_element(grpc_channel_element *elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406',1,'grpc_channel_stack_from_top_element(grpc_channel_element *elem):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5finit',['grpc_channel_stack_init',['../channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928',1,'grpc_channel_stack_init(const grpc_channel_filter **filters, size_t filter_count, grpc_channel *master, const grpc_channel_args *args, grpc_mdctx *metadata_context, grpc_channel_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#a9dfbcf853676b70efa84cf8777a7b928',1,'grpc_channel_stack_init(const grpc_channel_filter **filters, size_t filter_count, grpc_channel *master, const grpc_channel_args *args, grpc_mdctx *metadata_context, grpc_channel_stack *stack):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5flast_5felement',['grpc_channel_stack_last_element',['../channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0',1,'grpc_channel_stack_last_element(grpc_channel_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#a663793c2627677279816d636bf310b50',1,'grpc_channel_stack_last_element(grpc_channel_stack *channel_stack):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5fsize',['grpc_channel_stack_size',['../channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b',1,'grpc_channel_stack_size(const grpc_channel_filter **filters, size_t filter_count):&#160;channel_stack.c'],['../channel__stack_8c.html#a7593e5b07a422db70484cfb66264dd1b',1,'grpc_channel_stack_size(const grpc_channel_filter **filters, size_t filter_count):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5ftransient_5ffailure',['GRPC_CHANNEL_TRANSIENT_FAILURE',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6',1,'grpc.h']]],
+ ['grpc_5fchannel_5fwatch_5fconnectivity_5fstate',['grpc_channel_watch_connectivity_state',['../grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b',1,'grpc_channel_watch_connectivity_state(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag):&#160;channel_connectivity.c'],['../channel__connectivity_8c.html#a29aa98ca6ce9f7e5116e43b0c414e96b',1,'grpc_channel_watch_connectivity_state(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag):&#160;channel_connectivity.c']]],
+ ['grpc_5fchttp2_5f_5ferror_5fdo_5fnot_5fuse',['GRPC_CHTTP2__ERROR_DO_NOT_USE',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fadd_5fincoming_5fgoaway',['grpc_chttp2_add_incoming_goaway',['../internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771',1,'grpc_chttp2_add_incoming_goaway(grpc_chttp2_transport_global *transport_global, gpr_uint32 goaway_error, gpr_slice goaway_text):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#aeb6a160980622d4e5d1b8e9e608c6771',1,'grpc_chttp2_add_incoming_goaway(grpc_chttp2_transport_global *transport_global, gpr_uint32 goaway_error, gpr_slice goaway_text):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fbase64_5fencode',['grpc_chttp2_base64_encode',['../bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde',1,'grpc_chttp2_base64_encode(gpr_slice input):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a1435a6d866c6e7f7989ca786facc1fde',1,'grpc_chttp2_base64_encode(gpr_slice input):&#160;bin_encoder.c']]],
+ ['grpc_5fchttp2_5fbase64_5fencode_5fand_5fhuffman_5fcompress',['grpc_chttp2_base64_encode_and_huffman_compress',['../bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7',1,'grpc_chttp2_base64_encode_and_huffman_compress(gpr_slice input):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a0d29385f837594681b517d91d5d578a7',1,'grpc_chttp2_base64_encode_and_huffman_compress(gpr_slice input):&#160;bin_encoder.c']]],
+ ['grpc_5fchttp2_5fcancel',['GRPC_CHTTP2_CANCEL',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fclamp_5finvalid_5fvalue',['GRPC_CHTTP2_CLAMP_INVALID_VALUE',['../frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fcleanup_5fwriting',['grpc_chttp2_cleanup_writing',['../internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9',1,'grpc_chttp2_cleanup_writing(grpc_chttp2_transport_global *global, grpc_chttp2_transport_writing *writing):&#160;writing.c'],['../writing_8c.html#aec2dafff34e07d99d473de28a658614f',1,'grpc_chttp2_cleanup_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing):&#160;writing.c']]],
+ ['grpc_5fchttp2_5fclient_5fconnect_5fstring',['GRPC_CHTTP2_CLIENT_CONNECT_STRING',['../internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4',1,'internal.h']]],
+ ['grpc_5fchttp2_5fclient_5fconnect_5fstrlen',['GRPC_CHTTP2_CLIENT_CONNECT_STRLEN',['../internal_8h.html#a5fd119b62e9b3648496dbb7c2f2a0025',1,'internal.h']]],
+ ['grpc_5fchttp2_5fcompression_5ferror',['GRPC_CHTTP2_COMPRESSION_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fconnect_5ferror',['GRPC_CHTTP2_CONNECT_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fconnection_5ferror',['GRPC_CHTTP2_CONNECTION_ERROR',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f0',['GRPC_CHTTP2_DATA_FH_0',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f1',['GRPC_CHTTP2_DATA_FH_1',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f2',['GRPC_CHTTP2_DATA_FH_2',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f3',['GRPC_CHTTP2_DATA_FH_3',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f4',['GRPC_CHTTP2_DATA_FH_4',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5fflag_5fend_5fheaders',['GRPC_CHTTP2_DATA_FLAG_END_HEADERS',['../frame_8h.html#a9e28337a838f07e06987f344a01f7f0f',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5fflag_5fend_5fstream',['GRPC_CHTTP2_DATA_FLAG_END_STREAM',['../frame_8h.html#aebe712016c70bba5c7fc0cbc7f372681',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5fflag_5fpadded',['GRPC_CHTTP2_DATA_FLAG_PADDED',['../frame_8h.html#ab01d61cf6f1abddae8031ebcf6e34e09',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5fframe',['GRPC_CHTTP2_DATA_FRAME',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5fframe_5fcreate_5fempty_5fclose',['grpc_chttp2_data_frame_create_empty_close',['../frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362',1,'grpc_chttp2_data_frame_create_empty_close(gpr_uint32 id):&#160;stream_encoder.c'],['../stream__encoder_8c.html#aa79c486a29b6e104c57be53a20d91362',1,'grpc_chttp2_data_frame_create_empty_close(gpr_uint32 id):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser',['grpc_chttp2_data_parser',['../structgrpc__chttp2__data__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5fbegin_5fframe',['grpc_chttp2_data_parser_begin_frame',['../frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a',1,'grpc_chttp2_data_parser_begin_frame(grpc_chttp2_data_parser *parser, gpr_uint8 flags):&#160;frame_data.c'],['../frame__data_8c.html#afab39491d68260dc81d1a57cac6f434a',1,'grpc_chttp2_data_parser_begin_frame(grpc_chttp2_data_parser *parser, gpr_uint8 flags):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5fdestroy',['grpc_chttp2_data_parser_destroy',['../frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468',1,'grpc_chttp2_data_parser_destroy(grpc_chttp2_data_parser *parser):&#160;frame_data.c'],['../frame__data_8c.html#a5927900bd0d0911de70cab715f4d4468',1,'grpc_chttp2_data_parser_destroy(grpc_chttp2_data_parser *parser):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5finit',['grpc_chttp2_data_parser_init',['../frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7',1,'grpc_chttp2_data_parser_init(grpc_chttp2_data_parser *parser):&#160;frame_data.c'],['../frame__data_8c.html#a796d3b28bd11e75897705b4f92a5cae7',1,'grpc_chttp2_data_parser_init(grpc_chttp2_data_parser *parser):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5fparse',['grpc_chttp2_data_parser_parse',['../frame__data_8h.html#abc519029db35772068e9a052076fcfa1',1,'grpc_chttp2_data_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_data.c'],['../frame__data_8c.html#abc519029db35772068e9a052076fcfa1',1,'grpc_chttp2_data_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdecode_5ftimeout',['grpc_chttp2_decode_timeout',['../timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8',1,'grpc_chttp2_decode_timeout(const char *buffer, gpr_timespec *timeout):&#160;timeout_encoding.c'],['../timeout__encoding_8c.html#ac96a9d21da277e6a790fa8ac5846b5d8',1,'grpc_chttp2_decode_timeout(const char *buffer, gpr_timespec *timeout):&#160;timeout_encoding.c']]],
+ ['grpc_5fchttp2_5fdeframe_5ftransport_5fstate',['grpc_chttp2_deframe_transport_state',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62',1,'internal.h']]],
+ ['grpc_5fchttp2_5fdisconnect_5fon_5finvalid_5fvalue',['GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE',['../frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fencode',['grpc_chttp2_encode',['../stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd',1,'grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof, gpr_uint32 stream_id, grpc_chttp2_hpack_compressor *compressor, gpr_slice_buffer *output):&#160;stream_encoder.c'],['../stream__encoder_8c.html#a1fdaaa3443176e8815ffe75804b5efbd',1,'grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof, gpr_uint32 stream_id, grpc_chttp2_hpack_compressor *compressor, gpr_slice_buffer *output):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fencode_5ftimeout',['grpc_chttp2_encode_timeout',['../timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc',1,'grpc_chttp2_encode_timeout(gpr_timespec timeout, char *buffer):&#160;timeout_encoding.c'],['../timeout__encoding_8c.html#aa4128995f3b3d4fe068c1635a85f7bcc',1,'grpc_chttp2_encode_timeout(gpr_timespec timeout, char *buffer):&#160;timeout_encoding.c']]],
+ ['grpc_5fchttp2_5fenhance_5fyour_5fcalm',['GRPC_CHTTP2_ENHANCE_YOUR_CALM',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5ferror_5fcode',['grpc_chttp2_error_code',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fflag_5fack',['GRPC_CHTTP2_FLAG_ACK',['../frame_8h.html#ae399b812927e4ccfa1836814e719bec6',1,'frame.h']]],
+ ['grpc_5fchttp2_5fflag_5fhas_5fpriority',['GRPC_CHTTP2_FLAG_HAS_PRIORITY',['../frame_8h.html#a8fbbbbd20f7217de2249fb8597b48c36',1,'frame.h']]],
+ ['grpc_5fchttp2_5fflow_5fcontrol_5ferror',['GRPC_CHTTP2_FLOW_CONTROL_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fflowctl_5ftrace',['grpc_chttp2_flowctl_trace',['../internal_8h.html#ac054ecf6e743093e5527787063f3acaa',1,'grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#ac054ecf6e743093e5527787063f3acaa',1,'grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fflowctl_5ftrace_5fstream',['GRPC_CHTTP2_FLOWCTL_TRACE_STREAM',['../internal_8h.html#a927cb1449b541fcb1812761184135ca1',1,'internal.h']]],
+ ['grpc_5fchttp2_5fflowctl_5ftrace_5ftransport',['GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT',['../internal_8h.html#ad6d86669b104a248fbee4d8f63237a06',1,'internal.h']]],
+ ['grpc_5fchttp2_5ffor_5fall_5fstreams',['grpc_chttp2_for_all_streams',['../internal_8h.html#a62031f6afc6643cc2f34b4af2d547576',1,'grpc_chttp2_for_all_streams(grpc_chttp2_transport_global *transport_global, void *user_data, void(*cb)(grpc_chttp2_transport_global *transport_global, void *user_data, grpc_chttp2_stream_global *stream_global)):&#160;stream_lists.c'],['../stream__lists_8c.html#a62031f6afc6643cc2f34b4af2d547576',1,'grpc_chttp2_for_all_streams(grpc_chttp2_transport_global *transport_global, void *user_data, void(*cb)(grpc_chttp2_transport_global *transport_global, void *user_data, grpc_chttp2_stream_global *stream_global)):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fframe_5fcontinuation',['GRPC_CHTTP2_FRAME_CONTINUATION',['../frame_8h.html#ae8ffe7f9a02584c5eed5876f6d8e497b',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fdata',['GRPC_CHTTP2_FRAME_DATA',['../frame_8h.html#af475a6ee5b3fc2b9c8b835d927521bee',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fgoaway',['GRPC_CHTTP2_FRAME_GOAWAY',['../frame_8h.html#a624f289bc52602a8c3340ad747075130',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fheader',['GRPC_CHTTP2_FRAME_HEADER',['../frame_8h.html#ab82e94b9ff60e4ef29301db9b4022805',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fping',['GRPC_CHTTP2_FRAME_PING',['../frame_8h.html#a9a92c84ae932e1b9a79af8f099516ece',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5frst_5fstream',['GRPC_CHTTP2_FRAME_RST_STREAM',['../frame_8h.html#a0e6ad3bb0bc03b02cd2791f34014c933',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fsettings',['GRPC_CHTTP2_FRAME_SETTINGS',['../frame_8h.html#aa030a067f1b4cbb8d34c28fbb43e8046',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fsize_5ferror',['GRPC_CHTTP2_FRAME_SIZE_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fframe_5fwindow_5fupdate',['GRPC_CHTTP2_FRAME_WINDOW_UPDATE',['../frame_8h.html#ac9af6484a80a10f0213465fa5dc14031',1,'frame.h']]],
+ ['grpc_5fchttp2_5fget_5falpn_5fversion_5findex',['grpc_chttp2_get_alpn_version_index',['../alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5',1,'grpc_chttp2_get_alpn_version_index(size_t i):&#160;alpn.c'],['../alpn_8c.html#a3f09d970c73c43952620b5e983c77dc5',1,'grpc_chttp2_get_alpn_version_index(size_t i):&#160;alpn.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fappend',['grpc_chttp2_goaway_append',['../frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc',1,'grpc_chttp2_goaway_append(gpr_uint32 last_stream_id, gpr_uint32 error_code, gpr_slice debug_data, gpr_slice_buffer *slice_buffer):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a71bd236ace0cb6b0f04ebb1049efc5bc',1,'grpc_chttp2_goaway_append(gpr_uint32 last_stream_id, gpr_uint32 error_code, gpr_slice debug_data, gpr_slice_buffer *slice_buffer):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fdebug',['GRPC_CHTTP2_GOAWAY_DEBUG',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr0',['GRPC_CHTTP2_GOAWAY_ERR0',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr1',['GRPC_CHTTP2_GOAWAY_ERR1',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr2',['GRPC_CHTTP2_GOAWAY_ERR2',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr3',['GRPC_CHTTP2_GOAWAY_ERR3',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi0',['GRPC_CHTTP2_GOAWAY_LSI0',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi1',['GRPC_CHTTP2_GOAWAY_LSI1',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi2',['GRPC_CHTTP2_GOAWAY_LSI2',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi3',['GRPC_CHTTP2_GOAWAY_LSI3',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5fparse_5fstate',['grpc_chttp2_goaway_parse_state',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser',['grpc_chttp2_goaway_parser',['../structgrpc__chttp2__goaway__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5fbegin_5fframe',['grpc_chttp2_goaway_parser_begin_frame',['../frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6',1,'grpc_chttp2_goaway_parser_begin_frame(grpc_chttp2_goaway_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a2dd5fba43ce1f26f220199c1c7db0f05',1,'grpc_chttp2_goaway_parser_begin_frame(grpc_chttp2_goaway_parser *p, gpr_uint32 length, gpr_uint8 flags):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5fdestroy',['grpc_chttp2_goaway_parser_destroy',['../frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8',1,'grpc_chttp2_goaway_parser_destroy(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a5cd3e388f5844ad2c4c7d1c9488436a8',1,'grpc_chttp2_goaway_parser_destroy(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5finit',['grpc_chttp2_goaway_parser_init',['../frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23',1,'grpc_chttp2_goaway_parser_init(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a8df9b9a3fcd7bc6d679b47909c2c8f23',1,'grpc_chttp2_goaway_parser_init(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5fparse',['grpc_chttp2_goaway_parser_parse',['../frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d',1,'grpc_chttp2_goaway_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a52a6863feebfb5a9962330d42b22be2d',1,'grpc_chttp2_goaway_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgrpc_5fstatus_5fto_5fhttp2_5ferror',['grpc_chttp2_grpc_status_to_http2_error',['../status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6',1,'grpc_chttp2_grpc_status_to_http2_error(grpc_status_code status):&#160;status_conversion.c'],['../status__conversion_8c.html#a8fc288b0c9b0f2333adb3c1de2559c1d',1,'grpc_chttp2_grpc_status_to_http2_error(grpc_status_code status):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fgrpc_5fstatus_5fto_5fhttp2_5fstatus',['grpc_chttp2_grpc_status_to_http2_status',['../status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a',1,'grpc_chttp2_grpc_status_to_http2_status(grpc_status_code status):&#160;status_conversion.c'],['../status__conversion_8c.html#a30ec4cf33600ca53524bb3003c02b37a',1,'grpc_chttp2_grpc_status_to_http2_status(grpc_status_code status):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fhas_5fstreams',['grpc_chttp2_has_streams',['../internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1',1,'grpc_chttp2_has_streams(grpc_chttp2_transport *t):&#160;stream_lists.c'],['../stream__lists_8c.html#a19ad8f2b321787a1255a888d5d5923f1',1,'grpc_chttp2_has_streams(grpc_chttp2_transport *t):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fheader_5fparser_5fparse',['grpc_chttp2_header_parser_parse',['../hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3',1,'grpc_chttp2_header_parser_parse(void *hpack_parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;hpack_parser.c'],['../hpack__parser_8c.html#a7a92d332cfe4cdd2fe066d8c187a19c3',1,'grpc_chttp2_header_parser_parse(void *hpack_parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fcompressor',['grpc_chttp2_hpack_compressor',['../structgrpc__chttp2__hpack__compressor.html',1,'']]],
+ ['grpc_5fchttp2_5fhpack_5fcompressor_5fdestroy',['grpc_chttp2_hpack_compressor_destroy',['../stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66',1,'grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c):&#160;stream_encoder.c'],['../stream__encoder_8c.html#a03663bcc8cda8973711333e62e7aff66',1,'grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fhpack_5fcompressor_5finit',['grpc_chttp2_hpack_compressor_init',['../stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89',1,'grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c, grpc_mdctx *mdctx):&#160;stream_encoder.c'],['../stream__encoder_8c.html#ad9ec21ece920fa6f844eeecf4b5c4149',1,'grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c, grpc_mdctx *ctx):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fhpack_5fentry_5foverhead',['GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD',['../hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fhpack_5fparser',['grpc_chttp2_hpack_parser',['../structgrpc__chttp2__hpack__parser.html',1,'grpc_chttp2_hpack_parser'],['../hpack__parser_8h.html#ae66f95f470e6a67afa580dd7d1d3d39b',1,'grpc_chttp2_hpack_parser():&#160;hpack_parser.h']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fdestroy',['grpc_chttp2_hpack_parser_destroy',['../hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573',1,'grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c'],['../hpack__parser_8c.html#ae43cb55b0e7102694c68c29d93cd3573',1,'grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5finit',['grpc_chttp2_hpack_parser_init',['../hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43',1,'grpc_chttp2_hpack_parser_init(grpc_chttp2_hpack_parser *p, grpc_mdctx *mdctx):&#160;hpack_parser.c'],['../hpack__parser_8c.html#ae9f87d2fc6cdda2cfcedd228feff9a43',1,'grpc_chttp2_hpack_parser_init(grpc_chttp2_hpack_parser *p, grpc_mdctx *mdctx):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fparse',['grpc_chttp2_hpack_parser_parse',['../hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc',1,'grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end):&#160;hpack_parser.c'],['../hpack__parser_8c.html#a883d1c556ca6aaea2fbb04dda7928ebc',1,'grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fset_5fhas_5fpriority',['grpc_chttp2_hpack_parser_set_has_priority',['../hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee',1,'grpc_chttp2_hpack_parser_set_has_priority(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c'],['../hpack__parser_8c.html#a9fc7e7f152280acc512689e138805eee',1,'grpc_chttp2_hpack_parser_set_has_priority(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fstate',['grpc_chttp2_hpack_parser_state',['../hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507',1,'hpack_parser.h']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fstring',['grpc_chttp2_hpack_parser_string',['../structgrpc__chttp2__hpack__parser__string.html',1,'']]],
+ ['grpc_5fchttp2_5fhpack_5fvarint_5flength',['grpc_chttp2_hpack_varint_length',['../varint_8h.html#a2b4567fce80183246809231da7d798dc',1,'grpc_chttp2_hpack_varint_length(gpr_uint32 tail_value):&#160;varint.c'],['../varint_8c.html#a2b4567fce80183246809231da7d798dc',1,'grpc_chttp2_hpack_varint_length(gpr_uint32 tail_value):&#160;varint.c']]],
+ ['grpc_5fchttp2_5fhpack_5fwrite_5fvarint_5ftail',['grpc_chttp2_hpack_write_varint_tail',['../varint_8h.html#a7fcc1174a3686feebdb7085e30283a66',1,'grpc_chttp2_hpack_write_varint_tail(gpr_uint32 tail_value, gpr_uint8 *target, int tail_length):&#160;varint.c'],['../varint_8c.html#a7fcc1174a3686feebdb7085e30283a66',1,'grpc_chttp2_hpack_write_varint_tail(gpr_uint32 tail_value, gpr_uint8 *target, int tail_length):&#160;varint.c']]],
+ ['grpc_5fchttp2_5fhpackc_5fmax_5ftable_5felems',['GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS',['../stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4',1,'stream_encoder.h']]],
+ ['grpc_5fchttp2_5fhpackc_5fnum_5ffilters',['GRPC_CHTTP2_HPACKC_NUM_FILTERS',['../stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6',1,'stream_encoder.h']]],
+ ['grpc_5fchttp2_5fhpackc_5fnum_5fvalues',['GRPC_CHTTP2_HPACKC_NUM_VALUES',['../stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f',1,'stream_encoder.h']]],
+ ['grpc_5fchttp2_5fhptbl',['grpc_chttp2_hptbl',['../structgrpc__chttp2__hptbl.html',1,'']]],
+ ['grpc_5fchttp2_5fhptbl_5fadd',['grpc_chttp2_hptbl_add',['../hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84',1,'grpc_chttp2_hptbl_add(grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c'],['../hpack__table_8c.html#a1ad3f82e2b6f66cf022f672861b65b84',1,'grpc_chttp2_hptbl_add(grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5fdestroy',['grpc_chttp2_hptbl_destroy',['../hpack__table_8h.html#aeef559491f324858e464dff14851d857',1,'grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl *tbl):&#160;hpack_table.c'],['../hpack__table_8c.html#aeef559491f324858e464dff14851d857',1,'grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl *tbl):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5ffind',['grpc_chttp2_hptbl_find',['../hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba',1,'grpc_chttp2_hptbl_find(const grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c'],['../hpack__table_8c.html#aaa946e97b0f962e4d7e8fb8b4886f1ba',1,'grpc_chttp2_hptbl_find(const grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5ffind_5fresult',['grpc_chttp2_hptbl_find_result',['../structgrpc__chttp2__hptbl__find__result.html',1,'']]],
+ ['grpc_5fchttp2_5fhptbl_5finit',['grpc_chttp2_hptbl_init',['../hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0',1,'grpc_chttp2_hptbl_init(grpc_chttp2_hptbl *tbl, grpc_mdctx *mdctx):&#160;hpack_table.c'],['../hpack__table_8c.html#a17492a855a901fafa3086087e74a16f0',1,'grpc_chttp2_hptbl_init(grpc_chttp2_hptbl *tbl, grpc_mdctx *mdctx):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5flookup',['grpc_chttp2_hptbl_lookup',['../hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b',1,'grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl *tbl, gpr_uint32 index):&#160;hpack_table.c'],['../hpack__table_8c.html#a3e857648df8d6b50e5faac502bd5fe5b',1,'grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl *tbl, gpr_uint32 index):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhttp2_5ferror_5fto_5fgrpc_5fstatus',['grpc_chttp2_http2_error_to_grpc_status',['../status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2',1,'grpc_chttp2_http2_error_to_grpc_status(grpc_chttp2_error_code error):&#160;status_conversion.c'],['../status__conversion_8c.html#ae4babdebe7ad9dc3b68b37b86d00f3e2',1,'grpc_chttp2_http2_error_to_grpc_status(grpc_chttp2_error_code error):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fhttp2_5fstatus_5fto_5fgrpc_5fstatus',['grpc_chttp2_http2_status_to_grpc_status',['../status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12',1,'grpc_chttp2_http2_status_to_grpc_status(int status):&#160;status_conversion.c'],['../status__conversion_8c.html#a6e442a5cee1439a8cf37203b40956d12',1,'grpc_chttp2_http2_status_to_grpc_status(int status):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fhuffman_5fcompress',['grpc_chttp2_huffman_compress',['../bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123',1,'grpc_chttp2_huffman_compress(gpr_slice input):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a4445cb57a3331537c4d942764b555123',1,'grpc_chttp2_huffman_compress(gpr_slice input):&#160;bin_encoder.c']]],
+ ['grpc_5fchttp2_5fhuffsym',['grpc_chttp2_huffsym',['../structgrpc__chttp2__huffsym.html',1,'']]],
+ ['grpc_5fchttp2_5fhuffsyms',['grpc_chttp2_huffsyms',['../huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c',1,'grpc_chttp2_huffsyms():&#160;huffsyms.c'],['../huffsyms_8c.html#a8cbea7cb59b983d744943eab38e8d55f',1,'grpc_chttp2_huffsyms():&#160;huffsyms.c']]],
+ ['grpc_5fchttp2_5fif_5ftracing',['GRPC_CHTTP2_IF_TRACING',['../internal_8h.html#ab4ecd954e779c49a6159f842dc5a2ab4',1,'internal.h']]],
+ ['grpc_5fchttp2_5finadequate_5fsecurity',['GRPC_CHTTP2_INADEQUATE_SECURITY',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer',['grpc_chttp2_incoming_metadata_buffer',['../structgrpc__chttp2__incoming__metadata__buffer.html',1,'']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fadd',['grpc_chttp2_incoming_metadata_buffer_add',['../incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0',1,'grpc_chttp2_incoming_metadata_buffer_add(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_mdelem *elem):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a0b7de798f56d0202db1102c2c87313d0',1,'grpc_chttp2_incoming_metadata_buffer_add(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_mdelem *elem):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fdestroy',['grpc_chttp2_incoming_metadata_buffer_destroy',['../incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31',1,'grpc_chttp2_incoming_metadata_buffer_destroy(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a640db57113d389432d42bda5e1169b31',1,'grpc_chttp2_incoming_metadata_buffer_destroy(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5finit',['grpc_chttp2_incoming_metadata_buffer_init',['../incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00',1,'grpc_chttp2_incoming_metadata_buffer_init(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#acb327575a569f6d7fbb40c309119bc00',1,'grpc_chttp2_incoming_metadata_buffer_init(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fplace_5fmetadata_5fbatch_5finto',['grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into',['../incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137',1,'grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a6b6375d9d949b70f2d38ceeb57437137',1,'grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fpostprocess_5fsopb_5fand_5fbegin_5flive_5fop',['grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op',['../incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d',1,'grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb, grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#aafe1950af666833c29b8086f4931be4d',1,'grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb, grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5freset',['grpc_chttp2_incoming_metadata_buffer_reset',['../incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883',1,'incoming_metadata.h']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fset_5fdeadline',['grpc_chttp2_incoming_metadata_buffer_set_deadline',['../incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603',1,'grpc_chttp2_incoming_metadata_buffer_set_deadline(grpc_chttp2_incoming_metadata_buffer *buffer, gpr_timespec deadline):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#aba03088316cada64053b68851b5a5603',1,'grpc_chttp2_incoming_metadata_buffer_set_deadline(grpc_chttp2_incoming_metadata_buffer *buffer, gpr_timespec deadline):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fswap',['grpc_chttp2_incoming_metadata_buffer_swap',['../incoming__metadata_8c.html#a3ae615483b18241fe3a8fe7c9897cee4',1,'incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5flive_5fop_5fbuffer',['grpc_chttp2_incoming_metadata_live_op_buffer',['../structgrpc__chttp2__incoming__metadata__live__op__buffer.html',1,'']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5flive_5fop_5fbuffer_5fend',['grpc_chttp2_incoming_metadata_live_op_buffer_end',['../incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2',1,'grpc_chttp2_incoming_metadata_live_op_buffer_end(grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a5b987a9d3099c62ad4a6c198242b884e',1,'grpc_chttp2_incoming_metadata_live_op_buffer_end(grpc_chttp2_incoming_metadata_live_op_buffer *buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5finitial_5fhpack_5ftable_5fsize',['GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE',['../hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5finternal_5ferror',['GRPC_CHTTP2_INTERNAL_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5finvalid_5fvalue_5fbehavior',['grpc_chttp2_invalid_value_behavior',['../frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fis_5falpn_5fversion_5fsupported',['grpc_chttp2_is_alpn_version_supported',['../alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b',1,'grpc_chttp2_is_alpn_version_supported(const char *version, size_t size):&#160;alpn.c'],['../alpn_8c.html#ad4d4c481dfaefe5690ccb83861466f6b',1,'grpc_chttp2_is_alpn_version_supported(const char *version, size_t size):&#160;alpn.c']]],
+ ['grpc_5fchttp2_5flast_5fstatic_5fentry',['GRPC_CHTTP2_LAST_STATIC_ENTRY',['../hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fcancelled_5fwaiting_5ffor_5fwriting',['grpc_chttp2_list_add_cancelled_waiting_for_writing',['../internal_8h.html#ad26dae5e10a026530f50b133359b3ee2',1,'grpc_chttp2_list_add_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ad26dae5e10a026530f50b133359b3ee2',1,'grpc_chttp2_list_add_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fclosed_5fwaiting_5ffor_5fparsing',['grpc_chttp2_list_add_closed_waiting_for_parsing',['../internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907',1,'grpc_chttp2_list_add_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a1208f234dcb6b2a73be3c875b2b52907',1,'grpc_chttp2_list_add_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5ffirst_5fwritable_5fstream',['grpc_chttp2_list_add_first_writable_stream',['../internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9',1,'grpc_chttp2_list_add_first_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a8858ea6e4f6e7c363985793b403a0ac9',1,'grpc_chttp2_list_add_first_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fincoming_5fwindow_5fupdated',['grpc_chttp2_list_add_incoming_window_updated',['../internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2',1,'grpc_chttp2_list_add_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a1d99597284d4c0a0bd3cbf102ff415a2',1,'grpc_chttp2_list_add_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fparsing_5fseen_5fstream',['grpc_chttp2_list_add_parsing_seen_stream',['../internal_8h.html#a771e6e4a553060bfac71d00b5f866877',1,'grpc_chttp2_list_add_parsing_seen_stream(grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing):&#160;stream_lists.c'],['../stream__lists_8c.html#a771e6e4a553060bfac71d00b5f866877',1,'grpc_chttp2_list_add_parsing_seen_stream(grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fread_5fwrite_5fstate_5fchanged',['grpc_chttp2_list_add_read_write_state_changed',['../internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a',1,'grpc_chttp2_list_add_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#aa6b5168e8b96d0bc9f9d84a4cbef653a',1,'grpc_chttp2_list_add_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwaiting_5ffor_5fconcurrency',['grpc_chttp2_list_add_waiting_for_concurrency',['../internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e',1,'grpc_chttp2_list_add_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a71d9dea1ff323c374d7ea47818defc2e',1,'grpc_chttp2_list_add_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwritable_5fstream',['grpc_chttp2_list_add_writable_stream',['../internal_8h.html#a117877f5202f072aa35e7ada0379d0db',1,'grpc_chttp2_list_add_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a117877f5202f072aa35e7ada0379d0db',1,'grpc_chttp2_list_add_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwriting_5fstream',['grpc_chttp2_list_add_writing_stream',['../internal_8h.html#af5740bd38b626e875166e60e697e099e',1,'grpc_chttp2_list_add_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#af5740bd38b626e875166e60e697e099e',1,'grpc_chttp2_list_add_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwritten_5fstream',['grpc_chttp2_list_add_written_stream',['../internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69',1,'grpc_chttp2_list_add_written_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#ac6b7a089de78b67a9650e42b4a76ac69',1,'grpc_chttp2_list_add_written_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fall_5fstreams',['GRPC_CHTTP2_LIST_ALL_STREAMS',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fcancelled_5fwaiting_5ffor_5fwriting',['GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fclosed_5fwaiting_5ffor_5fparsing',['GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fhave_5fwriting_5fstreams',['grpc_chttp2_list_have_writing_streams',['../internal_8h.html#a2c7a37cef27c29528850701b9cf772d4',1,'grpc_chttp2_list_have_writing_streams(grpc_chttp2_transport_writing *transport_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#a2c7a37cef27c29528850701b9cf772d4',1,'grpc_chttp2_list_have_writing_streams(grpc_chttp2_transport_writing *transport_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fincoming_5fwindow_5fupdated',['GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fparsing_5fseen',['GRPC_CHTTP2_LIST_PARSING_SEEN',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fcancelled_5fwaiting_5ffor_5fwriting',['grpc_chttp2_list_pop_cancelled_waiting_for_writing',['../internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44',1,'grpc_chttp2_list_pop_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ad2d2a802b9072505d1e6f8bb68727f44',1,'grpc_chttp2_list_pop_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fclosed_5fwaiting_5ffor_5fparsing',['grpc_chttp2_list_pop_closed_waiting_for_parsing',['../internal_8h.html#ad0434ee720b66a5ee51c9904548857af',1,'grpc_chttp2_list_pop_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ad0434ee720b66a5ee51c9904548857af',1,'grpc_chttp2_list_pop_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fincoming_5fwindow_5fupdated',['grpc_chttp2_list_pop_incoming_window_updated',['../internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62',1,'grpc_chttp2_list_pop_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c'],['../stream__lists_8c.html#a90a6cb6d111a750ab1f28bf4e438bb62',1,'grpc_chttp2_list_pop_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fparsing_5fseen_5fstream',['grpc_chttp2_list_pop_parsing_seen_stream',['../internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d',1,'grpc_chttp2_list_pop_parsing_seen_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c'],['../stream__lists_8c.html#a1d1ec9b2edce465d2fd18002a403878d',1,'grpc_chttp2_list_pop_parsing_seen_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fread_5fwrite_5fstate_5fchanged',['grpc_chttp2_list_pop_read_write_state_changed',['../internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4',1,'grpc_chttp2_list_pop_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ac9e8165e01d872ed42c0333aee9d31c4',1,'grpc_chttp2_list_pop_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwaiting_5ffor_5fconcurrency',['grpc_chttp2_list_pop_waiting_for_concurrency',['../internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0',1,'grpc_chttp2_list_pop_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a6b62b98b415b3984616d4e851f0ff5c0',1,'grpc_chttp2_list_pop_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwritable_5fstream',['grpc_chttp2_list_pop_writable_stream',['../internal_8h.html#aeac970afdd6294bac9d1dcb84b702167',1,'grpc_chttp2_list_pop_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#aeac970afdd6294bac9d1dcb84b702167',1,'grpc_chttp2_list_pop_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwriting_5fstream',['grpc_chttp2_list_pop_writing_stream',['../internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7',1,'grpc_chttp2_list_pop_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#aba4771272cd49e3012d81c05fad1bdb7',1,'grpc_chttp2_list_pop_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwritten_5fstream',['grpc_chttp2_list_pop_written_stream',['../internal_8h.html#a3107afcec2694dd7c7855d540a560090',1,'grpc_chttp2_list_pop_written_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#a3107afcec2694dd7c7855d540a560090',1,'grpc_chttp2_list_pop_written_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fread_5fwrite_5fstate_5fchanged',['GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fremove_5fincoming_5fwindow_5fupdated',['grpc_chttp2_list_remove_incoming_window_updated',['../internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89',1,'grpc_chttp2_list_remove_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a8a7f981b74e1e99b0a1afe0c45702d89',1,'grpc_chttp2_list_remove_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fremove_5fwritable_5fstream',['grpc_chttp2_list_remove_writable_stream',['../internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0',1,'grpc_chttp2_list_remove_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a789d5bcd10c0f1c7ad2fc32190fd87a0',1,'grpc_chttp2_list_remove_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fwaiting_5ffor_5fconcurrency',['GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwritable',['GRPC_CHTTP2_LIST_WRITABLE',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwriting',['GRPC_CHTTP2_LIST_WRITING',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwritten',['GRPC_CHTTP2_LIST_WRITTEN',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673',1,'internal.h']]],
+ ['grpc_5fchttp2_5fmax_5fhpack_5ftable_5fsize',['GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE',['../hpack__table_8h.html#a376305051742470529655dacf911329e',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fmax_5fin_5fprefix',['GRPC_CHTTP2_MAX_IN_PREFIX',['../varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd',1,'varint.h']]],
+ ['grpc_5fchttp2_5fmax_5fpayload_5flength',['GRPC_CHTTP2_MAX_PAYLOAD_LENGTH',['../frame_8h.html#a461cf678ffd9272c8a10f133c058124e',1,'frame.h']]],
+ ['grpc_5fchttp2_5fmax_5ftable_5fcount',['GRPC_CHTTP2_MAX_TABLE_COUNT',['../hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fno_5ferror',['GRPC_CHTTP2_NO_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fnum_5falpn_5fversions',['grpc_chttp2_num_alpn_versions',['../alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5',1,'grpc_chttp2_num_alpn_versions(void):&#160;alpn.c'],['../alpn_8c.html#aa7e91d317127b4a8a8a1cbb6acc942f5',1,'grpc_chttp2_num_alpn_versions(void):&#160;alpn.c']]],
+ ['grpc_5fchttp2_5fnum_5fhuffsyms',['GRPC_CHTTP2_NUM_HUFFSYMS',['../huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb',1,'huffsyms.h']]],
+ ['grpc_5fchttp2_5fnum_5fsettings',['GRPC_CHTTP2_NUM_SETTINGS',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5foutstanding_5fping',['grpc_chttp2_outstanding_ping',['../structgrpc__chttp2__outstanding__ping.html',1,'grpc_chttp2_outstanding_ping'],['../internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591',1,'grpc_chttp2_outstanding_ping():&#160;internal.h']]],
+ ['grpc_5fchttp2_5fparse_5ferror',['grpc_chttp2_parse_error',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35',1,'frame.h']]],
+ ['grpc_5fchttp2_5fparse_5fok',['GRPC_CHTTP2_PARSE_OK',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931',1,'frame.h']]],
+ ['grpc_5fchttp2_5fparsing_5faccept_5fstream',['grpc_chttp2_parsing_accept_stream',['../internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847',1,'grpc_chttp2_parsing_accept_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a25a39d1d95e7140c1ae8f765ffd92847',1,'grpc_chttp2_parsing_accept_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fparsing_5fbecome_5fskip_5fparser',['grpc_chttp2_parsing_become_skip_parser',['../internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60',1,'grpc_chttp2_parsing_become_skip_parser(grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c'],['../parsing_8c.html#ad6a13571d6666f45a64c8e0f6b234e60',1,'grpc_chttp2_parsing_become_skip_parser(grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fparsing_5flookup_5fstream',['grpc_chttp2_parsing_lookup_stream',['../internal_8h.html#ae19b5968ebea2a077650652f1a3af46d',1,'grpc_chttp2_parsing_lookup_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#ae19b5968ebea2a077650652f1a3af46d',1,'grpc_chttp2_parsing_lookup_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fperform_5fread',['grpc_chttp2_perform_read',['../internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f',1,'grpc_chttp2_perform_read(grpc_chttp2_transport_parsing *transport_parsing, gpr_slice slice):&#160;parsing.c'],['../parsing_8c.html#abeaab2fead1bddefe92af0bc61a3a33f',1,'grpc_chttp2_perform_read(grpc_chttp2_transport_parsing *transport_parsing, gpr_slice slice):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fperform_5fwrites',['grpc_chttp2_perform_writes',['../internal_8h.html#a8fa6e3087336e9d487f3987148cc3930',1,'grpc_chttp2_perform_writes(grpc_chttp2_transport_writing *transport_writing, grpc_endpoint *endpoint):&#160;writing.c'],['../writing_8c.html#a8fa6e3087336e9d487f3987148cc3930',1,'grpc_chttp2_perform_writes(grpc_chttp2_transport_writing *transport_writing, grpc_endpoint *endpoint):&#160;writing.c']]],
+ ['grpc_5fchttp2_5fping_5fcreate',['grpc_chttp2_ping_create',['../frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3',1,'grpc_chttp2_ping_create(gpr_uint8 ack, gpr_uint8 *opaque_8bytes):&#160;frame_ping.c'],['../frame__ping_8c.html#a80bb3f2ba166dcbd164aa04e680c58e3',1,'grpc_chttp2_ping_create(gpr_uint8 ack, gpr_uint8 *opaque_8bytes):&#160;frame_ping.c']]],
+ ['grpc_5fchttp2_5fping_5fparser',['grpc_chttp2_ping_parser',['../structgrpc__chttp2__ping__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fping_5fparser_5fbegin_5fframe',['grpc_chttp2_ping_parser_begin_frame',['../frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7',1,'grpc_chttp2_ping_parser_begin_frame(grpc_chttp2_ping_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_ping.c'],['../frame__ping_8c.html#a76f66f3bbe53a20610183253d30c57f7',1,'grpc_chttp2_ping_parser_begin_frame(grpc_chttp2_ping_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_ping.c']]],
+ ['grpc_5fchttp2_5fping_5fparser_5fparse',['grpc_chttp2_ping_parser_parse',['../frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042',1,'grpc_chttp2_ping_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_ping.c'],['../frame__ping_8c.html#ace393509f26406ff6bdc9e60e7534042',1,'grpc_chttp2_ping_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_ping.c']]],
+ ['grpc_5fchttp2_5fpreencode',['grpc_chttp2_preencode',['../stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022',1,'grpc_chttp2_preencode(grpc_stream_op *inops, size_t *inops_count, gpr_uint32 max_flow_controlled_bytes, grpc_stream_op_buffer *outops):&#160;stream_encoder.c'],['../stream__encoder_8c.html#a3ee751a56974f45d33d89ce7f02cf022',1,'grpc_chttp2_preencode(grpc_stream_op *inops, size_t *inops_count, gpr_uint32 max_flow_controlled_bytes, grpc_stream_op_buffer *outops):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fprepare_5fto_5fread',['grpc_chttp2_prepare_to_read',['../internal_8h.html#ae444a83dc73e9a658e7df625a04b101a',1,'grpc_chttp2_prepare_to_read(grpc_chttp2_transport_global *global, grpc_chttp2_transport_parsing *parsing):&#160;parsing.c'],['../parsing_8c.html#ae010263eae7de4e41a74679b11579825',1,'grpc_chttp2_prepare_to_read(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fprotocol_5ferror',['GRPC_CHTTP2_PROTOCOL_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fpublish_5freads',['grpc_chttp2_publish_reads',['../internal_8h.html#a4d137f455d722521fd7dab4fd13e1697',1,'grpc_chttp2_publish_reads(grpc_chttp2_transport_global *global, grpc_chttp2_transport_parsing *parsing):&#160;parsing.c'],['../parsing_8c.html#aba67e2ed1d9d5ac25c0d5b2ea31e8137',1,'grpc_chttp2_publish_reads(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5frefused_5fstream',['GRPC_CHTTP2_REFUSED_STREAM',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fregister_5fstream',['grpc_chttp2_register_stream',['../internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e',1,'grpc_chttp2_register_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s):&#160;stream_lists.c'],['../stream__lists_8c.html#accb6dbbacb57c3f9860e6ec6eca2390e',1,'grpc_chttp2_register_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fcreate',['grpc_chttp2_rst_stream_create',['../frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687',1,'grpc_chttp2_rst_stream_create(gpr_uint32 stream_id, gpr_uint32 code):&#160;frame_rst_stream.c'],['../frame__rst__stream_8c.html#a6a627690f79faf403072532d19a08895',1,'grpc_chttp2_rst_stream_create(gpr_uint32 id, gpr_uint32 code):&#160;frame_rst_stream.c']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fparser',['grpc_chttp2_rst_stream_parser',['../structgrpc__chttp2__rst__stream__parser.html',1,'']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fparser_5fbegin_5fframe',['grpc_chttp2_rst_stream_parser_begin_frame',['../frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e',1,'grpc_chttp2_rst_stream_parser_begin_frame(grpc_chttp2_rst_stream_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_rst_stream.c'],['../frame__rst__stream_8c.html#a3138dce884dfcb8c9653de757261d16e',1,'grpc_chttp2_rst_stream_parser_begin_frame(grpc_chttp2_rst_stream_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_rst_stream.c']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fparser_5fparse',['grpc_chttp2_rst_stream_parser_parse',['../frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc',1,'grpc_chttp2_rst_stream_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_rst_stream.c'],['../frame__rst__stream_8c.html#ad89852ed41fa9b715fb86ab6193160fc',1,'grpc_chttp2_rst_stream_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_rst_stream.c']]],
+ ['grpc_5fchttp2_5fschedule_5fclosure',['grpc_chttp2_schedule_closure',['../internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d',1,'grpc_chttp2_schedule_closure(grpc_chttp2_transport_global *transport_global, grpc_iomgr_closure *closure, int success):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a6f8b16bb6048f85107966a4be9ff4a4d',1,'grpc_chttp2_schedule_closure(grpc_chttp2_transport_global *transport_global, grpc_iomgr_closure *closure, int success):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fsend_5fclosed',['grpc_chttp2_send_closed',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9',1,'internal.h']]],
+ ['grpc_5fchttp2_5fsetting_5fid',['grpc_chttp2_setting_id',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsetting_5fparameters',['grpc_chttp2_setting_parameters',['../structgrpc__chttp2__setting__parameters.html',1,'']]],
+ ['grpc_5fchttp2_5fsetting_5fset',['grpc_chttp2_setting_set',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad',1,'internal.h']]],
+ ['grpc_5fchttp2_5fsettings_5fack_5fcreate',['grpc_chttp2_settings_ack_create',['../frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954',1,'grpc_chttp2_settings_ack_create(void):&#160;frame_settings.c'],['../frame__settings_8c.html#aa1382503cac023cb2cbf516427ec7954',1,'grpc_chttp2_settings_ack_create(void):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fcreate',['grpc_chttp2_settings_create',['../frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a',1,'grpc_chttp2_settings_create(gpr_uint32 *old, const gpr_uint32 *new, gpr_uint32 force_mask, size_t count):&#160;frame_settings.c'],['../frame__settings_8c.html#aa7db515ebcf9a8add8ade457502d065a',1,'grpc_chttp2_settings_create(gpr_uint32 *old, const gpr_uint32 *new, gpr_uint32 force_mask, size_t count):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fenable_5fpush',['GRPC_CHTTP2_SETTINGS_ENABLE_PUSH',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fheader_5ftable_5fsize',['GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5finitial_5fwindow_5fsize',['GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fmax_5fconcurrent_5fstreams',['GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fmax_5fframe_5fsize',['GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fmax_5fheader_5flist_5fsize',['GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fparameters',['grpc_chttp2_settings_parameters',['../frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37',1,'grpc_chttp2_settings_parameters():&#160;frame_settings.c'],['../frame__settings_8c.html#a61e84df9b71280ea1a733437d9de8f37',1,'grpc_chttp2_settings_parameters():&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fparse_5fstate',['grpc_chttp2_settings_parse_state',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fparser',['grpc_chttp2_settings_parser',['../structgrpc__chttp2__settings__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fsettings_5fparser_5fbegin_5fframe',['grpc_chttp2_settings_parser_begin_frame',['../frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf',1,'grpc_chttp2_settings_parser_begin_frame(grpc_chttp2_settings_parser *parser, gpr_uint32 length, gpr_uint8 flags, gpr_uint32 *settings):&#160;frame_settings.c'],['../frame__settings_8c.html#a8ad385f78097ad98242ae5a8b4bc9ccf',1,'grpc_chttp2_settings_parser_begin_frame(grpc_chttp2_settings_parser *parser, gpr_uint32 length, gpr_uint8 flags, gpr_uint32 *settings):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fparser_5fparse',['grpc_chttp2_settings_parser_parse',['../frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544',1,'grpc_chttp2_settings_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_settings.c'],['../frame__settings_8c.html#a24ea784f4fb455974f9b4e5d66ee1416',1,'grpc_chttp2_settings_parser_parse(void *p, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5ftimeout',['GRPC_CHTTP2_SETTINGS_TIMEOUT',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fsps_5fid0',['GRPC_CHTTP2_SPS_ID0',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fid1',['GRPC_CHTTP2_SPS_ID1',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval0',['GRPC_CHTTP2_SPS_VAL0',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval1',['GRPC_CHTTP2_SPS_VAL1',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval2',['GRPC_CHTTP2_SPS_VAL2',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval3',['GRPC_CHTTP2_SPS_VAL3',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fstream',['grpc_chttp2_stream',['../structgrpc__chttp2__stream.html',1,'grpc_chttp2_stream'],['../internal_8h.html#a50089f57f93d9eb16569dd3b63f879d1',1,'grpc_chttp2_stream():&#160;internal.h']]],
+ ['grpc_5fchttp2_5fstream_5fclosed',['GRPC_CHTTP2_STREAM_CLOSED',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fstream_5ferror',['GRPC_CHTTP2_STREAM_ERROR',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4',1,'frame.h']]],
+ ['grpc_5fchttp2_5fstream_5fglobal',['grpc_chttp2_stream_global',['../structgrpc__chttp2__stream__global.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5flink',['grpc_chttp2_stream_link',['../structgrpc__chttp2__stream__link.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5flist',['grpc_chttp2_stream_list',['../structgrpc__chttp2__stream__list.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5flist_5fid',['grpc_chttp2_stream_list_id',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539',1,'internal.h']]],
+ ['grpc_5fchttp2_5fstream_5fmap',['grpc_chttp2_stream_map',['../structgrpc__chttp2__stream__map.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fadd',['grpc_chttp2_stream_map_add',['../stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560',1,'grpc_chttp2_stream_map_add(grpc_chttp2_stream_map *map, gpr_uint32 key, void *value):&#160;stream_map.c'],['../stream__map_8c.html#a45ba47442f3bc9d3b6c6841a6f855560',1,'grpc_chttp2_stream_map_add(grpc_chttp2_stream_map *map, gpr_uint32 key, void *value):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fdelete',['grpc_chttp2_stream_map_delete',['../stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e',1,'grpc_chttp2_stream_map_delete(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c'],['../stream__map_8c.html#ab2236a03f8efe26f8a1a3818bed7844e',1,'grpc_chttp2_stream_map_delete(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fdestroy',['grpc_chttp2_stream_map_destroy',['../stream__map_8h.html#ad002379073f1a7c545a186fa0498f077',1,'grpc_chttp2_stream_map_destroy(grpc_chttp2_stream_map *map):&#160;stream_map.c'],['../stream__map_8c.html#ad002379073f1a7c545a186fa0498f077',1,'grpc_chttp2_stream_map_destroy(grpc_chttp2_stream_map *map):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5ffind',['grpc_chttp2_stream_map_find',['../stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4',1,'grpc_chttp2_stream_map_find(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c'],['../stream__map_8c.html#abdc9ffa6b3f22fc039ab6457a18e3fd4',1,'grpc_chttp2_stream_map_find(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5ffor_5feach',['grpc_chttp2_stream_map_for_each',['../stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3',1,'grpc_chttp2_stream_map_for_each(grpc_chttp2_stream_map *map, void(*f)(void *user_data, gpr_uint32 key, void *value), void *user_data):&#160;stream_map.c'],['../stream__map_8c.html#a113657d2ad2cdffe3d9d00fe30996aa3',1,'grpc_chttp2_stream_map_for_each(grpc_chttp2_stream_map *map, void(*f)(void *user_data, gpr_uint32 key, void *value), void *user_data):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5finit',['grpc_chttp2_stream_map_init',['../stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d',1,'grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map, size_t initial_capacity):&#160;stream_map.c'],['../stream__map_8c.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d',1,'grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map, size_t initial_capacity):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fmove_5finto',['grpc_chttp2_stream_map_move_into',['../stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9',1,'grpc_chttp2_stream_map_move_into(grpc_chttp2_stream_map *src, grpc_chttp2_stream_map *dst):&#160;stream_map.c'],['../stream__map_8c.html#ac8399a7345ae2a716a1eb7594d6d0aa9',1,'grpc_chttp2_stream_map_move_into(grpc_chttp2_stream_map *src, grpc_chttp2_stream_map *dst):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fsize',['grpc_chttp2_stream_map_size',['../stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85',1,'grpc_chttp2_stream_map_size(grpc_chttp2_stream_map *map):&#160;stream_map.c'],['../stream__map_8c.html#a9f3f7360b053c5507b8bd792ba7e9e85',1,'grpc_chttp2_stream_map_size(grpc_chttp2_stream_map *map):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fparsing',['grpc_chttp2_stream_parsing',['../structgrpc__chttp2__stream__parsing.html',1,'grpc_chttp2_stream_parsing'],['../frame_8h.html#a67486ee57e3d27c619df98c80420f421',1,'grpc_chttp2_stream_parsing():&#160;frame.h']]],
+ ['grpc_5fchttp2_5fstream_5fstate',['grpc_chttp2_stream_state',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fstream_5fwriting',['grpc_chttp2_stream_writing',['../structgrpc__chttp2__stream__writing.html',1,'']]],
+ ['grpc_5fchttp2_5fterminate_5fwriting',['grpc_chttp2_terminate_writing',['../internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c',1,'grpc_chttp2_terminate_writing(grpc_chttp2_transport_writing *transport_writing, int success):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a83baade3ee315270b6d34fc6fbecb30c',1,'grpc_chttp2_terminate_writing(grpc_chttp2_transport_writing *transport_writing, int success):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5ftimeout_5fencode_5fmin_5fbufsize',['GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE',['../timeout__encoding_8h.html#a774d4de6aaa65433d6a318f611c00939',1,'timeout_encoding.h']]],
+ ['grpc_5fchttp2_5ftransport',['grpc_chttp2_transport',['../structgrpc__chttp2__transport.html',1,'grpc_chttp2_transport'],['../internal_8h.html#a83a9a1c265dc0fede61598c7cd1aaec2',1,'grpc_chttp2_transport():&#160;internal.h']]],
+ ['grpc_5fchttp2_5ftransport_5fglobal',['grpc_chttp2_transport_global',['../structgrpc__chttp2__transport__global.html',1,'']]],
+ ['grpc_5fchttp2_5ftransport_5fparsing',['grpc_chttp2_transport_parsing',['../structgrpc__chttp2__transport__parsing.html',1,'grpc_chttp2_transport_parsing'],['../frame_8h.html#a736ee44646a381e8119085a7803c20bc',1,'grpc_chttp2_transport_parsing():&#160;frame.h']]],
+ ['grpc_5fchttp2_5ftransport_5fstart_5freading',['grpc_chttp2_transport_start_reading',['../chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d',1,'grpc_chttp2_transport_start_reading(grpc_transport *transport, gpr_slice *slices, size_t nslices):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a73a9f03068253da126388dd890f1ee7d',1,'grpc_chttp2_transport_start_reading(grpc_transport *transport, gpr_slice *slices, size_t nslices):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5ftransport_5fwriting',['grpc_chttp2_transport_writing',['../structgrpc__chttp2__transport__writing.html',1,'']]],
+ ['grpc_5fchttp2_5funlocking_5fcheck_5fwrites',['grpc_chttp2_unlocking_check_writes',['../internal_8h.html#a154399c46a1f7b901491acb4c04d19d3',1,'grpc_chttp2_unlocking_check_writes(grpc_chttp2_transport_global *global, grpc_chttp2_transport_writing *writing):&#160;writing.c'],['../writing_8c.html#a309a5e92de22678f146956743d86f18a',1,'grpc_chttp2_unlocking_check_writes(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing):&#160;writing.c']]],
+ ['grpc_5fchttp2_5funregister_5fstream',['grpc_chttp2_unregister_stream',['../internal_8h.html#a558d8331836125098834d28a94e39bcc',1,'grpc_chttp2_unregister_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s) GRPC_MUST_USE_RESULT:&#160;stream_lists.c'],['../stream__lists_8c.html#a9a096df2132a082f0fcd5b1f8010bf84',1,'grpc_chttp2_unregister_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fvarint_5flength',['GRPC_CHTTP2_VARINT_LENGTH',['../varint_8h.html#af09078f363c97757f6e7bfa3953cb93d',1,'varint.h']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fcreate',['grpc_chttp2_window_update_create',['../frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0',1,'grpc_chttp2_window_update_create(gpr_uint32 id, gpr_uint32 window_delta):&#160;frame_window_update.c'],['../frame__window__update_8c.html#a66b55a7299f42a5862cdd349afc6d6ac',1,'grpc_chttp2_window_update_create(gpr_uint32 id, gpr_uint32 window_update):&#160;frame_window_update.c']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fparser',['grpc_chttp2_window_update_parser',['../structgrpc__chttp2__window__update__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fparser_5fbegin_5fframe',['grpc_chttp2_window_update_parser_begin_frame',['../frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8',1,'grpc_chttp2_window_update_parser_begin_frame(grpc_chttp2_window_update_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_window_update.c'],['../frame__window__update_8c.html#ad675abd4715d42665d37f606447dcde8',1,'grpc_chttp2_window_update_parser_begin_frame(grpc_chttp2_window_update_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_window_update.c']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fparser_5fparse',['grpc_chttp2_window_update_parser_parse',['../frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a',1,'grpc_chttp2_window_update_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_window_update.c'],['../frame__window__update_8c.html#ab1c1b5d960c0ed5cfff799476b4e425a',1,'grpc_chttp2_window_update_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_window_update.c']]],
+ ['grpc_5fchttp2_5fwrite_5fstate',['grpc_chttp2_write_state',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc',1,'internal.h']]],
+ ['grpc_5fchttp2_5fwrite_5fvarint',['GRPC_CHTTP2_WRITE_VARINT',['../varint_8h.html#a6f5350a7ba20095c1c903463e74b8e54',1,'varint.h']]],
+ ['grpc_5fclient_5fauth_5ffilter',['grpc_client_auth_filter',['../auth__filters_8h.html#ab5f3c640585f742a46197f407218c194',1,'grpc_client_auth_filter():&#160;client_auth_filter.c'],['../client__auth__filter_8c.html#ab5f3c640585f742a46197f407218c194',1,'grpc_client_auth_filter():&#160;client_auth_filter.c']]],
+ ['grpc_5fclient_5fcensus_5ffilter',['grpc_client_census_filter',['../census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4',1,'census_filter.h']]],
+ ['grpc_5fclient_5fchannel_5fadd_5finterested_5fparty',['grpc_client_channel_add_interested_party',['../client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee',1,'grpc_client_channel_add_interested_party(grpc_channel_element *channel, grpc_pollset *pollset):&#160;client_channel.c'],['../client__channel_8c.html#a7b288cd209db3fac0c4cd5d4f8fbf3b3',1,'grpc_client_channel_add_interested_party(grpc_channel_element *elem, grpc_pollset *pollset):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fcheck_5fconnectivity_5fstate',['grpc_client_channel_check_connectivity_state',['../client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6',1,'grpc_client_channel_check_connectivity_state(grpc_channel_element *elem, int try_to_connect):&#160;client_channel.c'],['../client__channel_8c.html#ae257a5817fa8e50df430d4a2132deed6',1,'grpc_client_channel_check_connectivity_state(grpc_channel_element *elem, int try_to_connect):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fdel_5finterested_5fparty',['grpc_client_channel_del_interested_party',['../client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d',1,'grpc_client_channel_del_interested_party(grpc_channel_element *channel, grpc_pollset *pollset):&#160;client_channel.c'],['../client__channel_8c.html#a36a91904b5c5cce4a334a9e055b35f78',1,'grpc_client_channel_del_interested_party(grpc_channel_element *elem, grpc_pollset *pollset):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5ffilter',['grpc_client_channel_filter',['../client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1',1,'grpc_client_channel_filter():&#160;client_channel.c'],['../client__channel_8c.html#a8c2292b3b1d26b9c4c296c106bfa96b1',1,'grpc_client_channel_filter():&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fget_5fconnecting_5fpollset_5fset',['grpc_client_channel_get_connecting_pollset_set',['../client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad',1,'grpc_client_channel_get_connecting_pollset_set(grpc_channel_element *elem):&#160;client_channel.c'],['../client__channel_8c.html#ab6ddde66c53ca2fec899def7d72234ad',1,'grpc_client_channel_get_connecting_pollset_set(grpc_channel_element *elem):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fset_5fresolver',['grpc_client_channel_set_resolver',['../client__channel_8h.html#a86757e52c8e3f20d553f999c62589993',1,'grpc_client_channel_set_resolver(grpc_channel_stack *channel_stack, grpc_resolver *resolver):&#160;client_channel.c'],['../client__channel_8c.html#a86757e52c8e3f20d553f999c62589993',1,'grpc_client_channel_set_resolver(grpc_channel_stack *channel_stack, grpc_resolver *resolver):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fwatch_5fconnectivity_5fstate',['grpc_client_channel_watch_connectivity_state',['../client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c',1,'grpc_client_channel_watch_connectivity_state(grpc_channel_element *elem, grpc_connectivity_state *state, grpc_iomgr_closure *on_complete):&#160;client_channel.c'],['../client__channel_8c.html#a037d0d7720ae9a68669ad9552f7ee69c',1,'grpc_client_channel_watch_connectivity_state(grpc_channel_element *elem, grpc_connectivity_state *state, grpc_iomgr_closure *on_complete):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fconfig',['grpc_client_config',['../structgrpc__client__config.html',1,'grpc_client_config'],['../client__config_8h.html#a5c92ac9b2893cfe73b5be84ddc10367c',1,'grpc_client_config():&#160;client_config.h']]],
+ ['grpc_5fclient_5fconfig_5fcreate',['grpc_client_config_create',['../client__config_8h.html#a165901d77b066794c0822a683d167359',1,'grpc_client_config_create():&#160;client_config.c'],['../client__config_8c.html#a165901d77b066794c0822a683d167359',1,'grpc_client_config_create():&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5fget_5flb_5fpolicy',['grpc_client_config_get_lb_policy',['../client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e',1,'grpc_client_config_get_lb_policy(grpc_client_config *client_config):&#160;client_config.c'],['../client__config_8c.html#aa6642aab990240a61c9ecafa3dfb55e1',1,'grpc_client_config_get_lb_policy(grpc_client_config *c):&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5fref',['grpc_client_config_ref',['../client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86',1,'grpc_client_config_ref(grpc_client_config *client_config):&#160;client_config.c'],['../client__config_8c.html#aa0b099847f86ea9e0da873f49b92f554',1,'grpc_client_config_ref(grpc_client_config *c):&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5fset_5flb_5fpolicy',['grpc_client_config_set_lb_policy',['../client__config_8h.html#a01f90473256a8c714ba043c03ef2acac',1,'grpc_client_config_set_lb_policy(grpc_client_config *client_config, grpc_lb_policy *lb_policy):&#160;client_config.c'],['../client__config_8c.html#a807baa44b3464dc0c5870184619d6c35',1,'grpc_client_config_set_lb_policy(grpc_client_config *c, grpc_lb_policy *lb_policy):&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5funref',['grpc_client_config_unref',['../client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978',1,'grpc_client_config_unref(grpc_client_config *client_config):&#160;client_config.c'],['../client__config_8c.html#ad8d9107bdf0a780e914dccd4fd57cb35',1,'grpc_client_config_unref(grpc_client_config *c):&#160;client_config.c']]],
+ ['grpc_5fclient_5fsecurity_5fcontext',['grpc_client_security_context',['../structgrpc__client__security__context.html',1,'']]],
+ ['grpc_5fclient_5fsecurity_5fcontext_5fcreate',['grpc_client_security_context_create',['../security__context_8h.html#a7ca11372b407a42724f5d13e36409c03',1,'grpc_client_security_context_create(void):&#160;security_context.c'],['../security__context_8c.html#a7ca11372b407a42724f5d13e36409c03',1,'grpc_client_security_context_create(void):&#160;security_context.c']]],
+ ['grpc_5fclient_5fsecurity_5fcontext_5fdestroy',['grpc_client_security_context_destroy',['../security__context_8h.html#a794b8453091b440bafd21e00cf0f7236',1,'grpc_client_security_context_destroy(void *ctx):&#160;security_context.c'],['../security__context_8c.html#a794b8453091b440bafd21e00cf0f7236',1,'grpc_client_security_context_destroy(void *ctx):&#160;security_context.c']]],
+ ['grpc_5fcompletion_5fqueue',['grpc_completion_queue',['../structgrpc__completion__queue.html',1,'grpc_completion_queue'],['../grpc_8h.html#a895faab0e6035445750e43482651ba2f',1,'grpc_completion_queue():&#160;grpc.h']]],
+ ['grpc_5fcompletion_5fqueue_5fcreate',['grpc_completion_queue_create',['../grpc_8h.html#a9f69c76c26125e6581491864a06ea44a',1,'grpc_completion_queue_create(void):&#160;completion_queue.c'],['../completion__queue_8c.html#a9f69c76c26125e6581491864a06ea44a',1,'grpc_completion_queue_create(void):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fdestroy',['grpc_completion_queue_destroy',['../grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e',1,'grpc_completion_queue_destroy(grpc_completion_queue *cq):&#160;completion_queue.c'],['../completion__queue_8c.html#a1d73d7983af3030ee119b768095e9627',1,'grpc_completion_queue_destroy(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fnext',['grpc_completion_queue_next',['../grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587',1,'grpc_completion_queue_next(grpc_completion_queue *cq, gpr_timespec deadline):&#160;completion_queue.c'],['../completion__queue_8c.html#ac9b582acb0fc4994ccdbf39d40ee3766',1,'grpc_completion_queue_next(grpc_completion_queue *cc, gpr_timespec deadline):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fpluck',['grpc_completion_queue_pluck',['../grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee',1,'grpc_completion_queue_pluck(grpc_completion_queue *cq, void *tag, gpr_timespec deadline):&#160;completion_queue.c'],['../completion__queue_8c.html#ab63b4e63ae13faa3e6786f131a46b5dd',1,'grpc_completion_queue_pluck(grpc_completion_queue *cc, void *tag, gpr_timespec deadline):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fshutdown',['grpc_completion_queue_shutdown',['../grpc_8h.html#a4051b4036c5132f02064430f67420ecd',1,'grpc_completion_queue_shutdown(grpc_completion_queue *cq):&#160;completion_queue.c'],['../completion__queue_8c.html#a7a7c60f847e798025d83e2d8ff9b1778',1,'grpc_completion_queue_shutdown(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5ftype',['grpc_completion_type',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87',1,'grpc_completion_type():&#160;grpc.h'],['../grpc_8h.html#a70454b2958c92c1cd8feeaa45f157b74',1,'grpc_completion_type():&#160;grpc.h']]],
+ ['grpc_5fcomposite_5fcredentials',['grpc_composite_credentials',['../structgrpc__composite__credentials.html',1,'']]],
+ ['grpc_5fcomposite_5fcredentials_5fcreate',['grpc_composite_credentials_create',['../grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7',1,'grpc_composite_credentials_create(grpc_credentials *creds1, grpc_credentials *creds2):&#160;credentials.c'],['../credentials_8c.html#a4f65f01fb23e963cc88bcdfbede70da7',1,'grpc_composite_credentials_create(grpc_credentials *creds1, grpc_credentials *creds2):&#160;credentials.c']]],
+ ['grpc_5fcomposite_5fcredentials_5fget_5fcredentials',['grpc_composite_credentials_get_credentials',['../credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67',1,'grpc_composite_credentials_get_credentials(grpc_credentials *composite_creds):&#160;credentials.c'],['../credentials_8c.html#ac3ea491e3e847e603c0da420375b6e60',1,'grpc_composite_credentials_get_credentials(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcomposite_5fcredentials_5fmetadata_5fcontext',['grpc_composite_credentials_metadata_context',['../structgrpc__composite__credentials__metadata__context.html',1,'']]],
+ ['grpc_5fcompress_5falgorithms_5fcount',['GRPC_COMPRESS_ALGORITHMS_COUNT',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d',1,'compression.h']]],
+ ['grpc_5fcompress_5fdeflate',['GRPC_COMPRESS_DEFLATE',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913',1,'compression.h']]],
+ ['grpc_5fcompress_5ffilter',['grpc_compress_filter',['../compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88',1,'grpc_compress_filter():&#160;compress_filter.c'],['../compress__filter_8c.html#a6e0ba3e22587af99125faa43ee943c88',1,'grpc_compress_filter():&#160;compress_filter.c']]],
+ ['grpc_5fcompress_5fgzip',['GRPC_COMPRESS_GZIP',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fcount',['GRPC_COMPRESS_LEVEL_COUNT',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fhigh',['GRPC_COMPRESS_LEVEL_HIGH',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5flow',['GRPC_COMPRESS_LEVEL_LOW',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fmed',['GRPC_COMPRESS_LEVEL_MED',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fnone',['GRPC_COMPRESS_LEVEL_NONE',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c',1,'compression.h']]],
+ ['grpc_5fcompress_5fnone',['GRPC_COMPRESS_NONE',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8',1,'compression.h']]],
+ ['grpc_5fcompress_5frequest_5falgorithm_5fkey',['GRPC_COMPRESS_REQUEST_ALGORITHM_KEY',['../compress__filter_8h.html#a501a03bf06f05a5d19c3e2c3b8143124',1,'compress_filter.h']]],
+ ['grpc_5fcompression_5falgorithm',['grpc_compression_algorithm',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9',1,'compression.h']]],
+ ['grpc_5fcompression_5falgorithm_5farg',['GRPC_COMPRESSION_ALGORITHM_ARG',['../compression_8h.html#a9340488e193921e62bb1f240f9016a9b',1,'compression.h']]],
+ ['grpc_5fcompression_5falgorithm_5ffor_5flevel',['grpc_compression_algorithm_for_level',['../compression_8h.html#a382cce802b53a6f85deb706caf1dccd6',1,'grpc_compression_algorithm_for_level(grpc_compression_level level):&#160;algorithm.c'],['../algorithm_8c.html#a382cce802b53a6f85deb706caf1dccd6',1,'grpc_compression_algorithm_for_level(grpc_compression_level level):&#160;algorithm.c']]],
+ ['grpc_5fcompression_5falgorithm_5fname',['grpc_compression_algorithm_name',['../compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14',1,'grpc_compression_algorithm_name(grpc_compression_algorithm algorithm, char **name):&#160;algorithm.c'],['../algorithm_8c.html#adce0341ab8fd560dc39e9e96daf7cb14',1,'grpc_compression_algorithm_name(grpc_compression_algorithm algorithm, char **name):&#160;algorithm.c']]],
+ ['grpc_5fcompression_5falgorithm_5fparse',['grpc_compression_algorithm_parse',['../compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397',1,'grpc_compression_algorithm_parse(const char *name, grpc_compression_algorithm *algorithm):&#160;algorithm.c'],['../algorithm_8c.html#a996f65ae42d05dd7ef9da9c6d6586397',1,'grpc_compression_algorithm_parse(const char *name, grpc_compression_algorithm *algorithm):&#160;algorithm.c']]],
+ ['grpc_5fcompression_5falgorithm_5fstring',['grpc_compression_algorithm_string',['../structgrpc__channel.html#afd8f60fef22e201f1e1ba3b00f285602',1,'grpc_channel']]],
+ ['grpc_5fcompression_5flevel',['grpc_compression_level',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7',1,'compression.h']]],
+ ['grpc_5fcompression_5flevel_5ffor_5falgorithm',['grpc_compression_level_for_algorithm',['../compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba',1,'grpc_compression_level_for_algorithm(grpc_compression_algorithm algorithm):&#160;algorithm.c'],['../algorithm_8c.html#ace80040d9c2a916ddd4d2f2d2ec44dba',1,'grpc_compression_level_for_algorithm(grpc_compression_algorithm algorithm):&#160;algorithm.c']]],
+ ['grpc_5fcompute_5fengine_5fcredentials_5fcreate',['grpc_compute_engine_credentials_create',['../grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95',1,'grpc_compute_engine_credentials_create(void):&#160;credentials.c'],['../credentials_8c.html#a3beb3fe683139856e1a13c27d760eb95',1,'grpc_compute_engine_credentials_create(void):&#160;credentials.c']]],
+ ['grpc_5fcompute_5fengine_5fdetection_5fhost',['GRPC_COMPUTE_ENGINE_DETECTION_HOST',['../google__default__credentials_8c.html#a4c79e7c2c581744d4fcb3518b2fccf39',1,'google_default_credentials.c']]],
+ ['grpc_5fcompute_5fengine_5fmetadata_5fhost',['GRPC_COMPUTE_ENGINE_METADATA_HOST',['../credentials_8h.html#af2ca22068add36d00ce70643802ff647',1,'credentials.h']]],
+ ['grpc_5fcompute_5fengine_5fmetadata_5ftoken_5fpath',['GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH',['../credentials_8h.html#aca8e8738c2c829c3cf48f49454f7188f',1,'credentials.h']]],
+ ['grpc_5fconnect_5fin_5fargs',['grpc_connect_in_args',['../structgrpc__connect__in__args.html',1,'']]],
+ ['grpc_5fconnect_5fout_5fargs',['grpc_connect_out_args',['../structgrpc__connect__out__args.html',1,'']]],
+ ['grpc_5fconnected_5fchannel_5fbind_5ftransport',['grpc_connected_channel_bind_transport',['../connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9',1,'grpc_connected_channel_bind_transport(grpc_channel_stack *channel_stack, grpc_transport *transport):&#160;connected_channel.c'],['../connected__channel_8c.html#a5be096b4cce2c5c6b51727866723e5b9',1,'grpc_connected_channel_bind_transport(grpc_channel_stack *channel_stack, grpc_transport *transport):&#160;connected_channel.c']]],
+ ['grpc_5fconnected_5fchannel_5ffilter',['grpc_connected_channel_filter',['../connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39',1,'grpc_connected_channel_filter():&#160;connected_channel.c'],['../connected__channel_8c.html#a30c8116a24cf1e555af53c1296d10b39',1,'grpc_connected_channel_filter():&#160;connected_channel.c']]],
+ ['grpc_5fconnectivity_5fstate',['grpc_connectivity_state',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2',1,'grpc.h']]],
+ ['grpc_5fconnectivity_5fstate_5fcheck',['grpc_connectivity_state_check',['../connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c',1,'grpc_connectivity_state_check(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c'],['../connectivity__state_8c.html#a7de513064c1e6d041b5c03611a21784c',1,'grpc_connectivity_state_check(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fdestroy',['grpc_connectivity_state_destroy',['../connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591',1,'grpc_connectivity_state_destroy(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c'],['../connectivity__state_8c.html#aa8e03f103b290be8de8041a63e469591',1,'grpc_connectivity_state_destroy(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5finit',['grpc_connectivity_state_init',['../connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8',1,'grpc_connectivity_state_init(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state init_state, const char *name):&#160;connectivity_state.c'],['../connectivity__state_8c.html#ab6dd4577019442e4d2bfab318d0a66a8',1,'grpc_connectivity_state_init(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state init_state, const char *name):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fname',['grpc_connectivity_state_name',['../connectivity__state_8c.html#a90cae61aab329c583da43141f8057b36',1,'connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fnotify_5fon_5fstate_5fchange',['grpc_connectivity_state_notify_on_state_change',['../connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827',1,'grpc_connectivity_state_notify_on_state_change(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state *current, grpc_iomgr_closure *notify):&#160;connectivity_state.c'],['../connectivity__state_8c.html#aef05f23287d0e2ab2e469e7113d01827',1,'grpc_connectivity_state_notify_on_state_change(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state *current, grpc_iomgr_closure *notify):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fset',['grpc_connectivity_state_set',['../connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c',1,'grpc_connectivity_state_set(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, const char *reason):&#160;connectivity_state.c'],['../connectivity__state_8c.html#aafe2517530b344f8e062bbef25b8895c',1,'grpc_connectivity_state_set(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, const char *reason):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fset_5fwith_5fscheduler',['grpc_connectivity_state_set_with_scheduler',['../connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7',1,'grpc_connectivity_state_set_with_scheduler(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, void(*scheduler)(void *arg, grpc_iomgr_closure *closure), void *arg, const char *reason):&#160;connectivity_state.c'],['../connectivity__state_8c.html#ae542578d2026b84ff6d0403809e67ad7',1,'grpc_connectivity_state_set_with_scheduler(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, void(*scheduler)(void *arg, grpc_iomgr_closure *closure), void *arg, const char *reason):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5ftrace',['grpc_connectivity_state_trace',['../connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c',1,'grpc_connectivity_state_trace():&#160;connectivity_state.c'],['../connectivity__state_8c.html#aae556e492df3eb9d23c5bc5728b6662c',1,'grpc_connectivity_state_trace():&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5ftracker',['grpc_connectivity_state_tracker',['../structgrpc__connectivity__state__tracker.html',1,'']]],
+ ['grpc_5fconnectivity_5fstate_5fwatcher',['grpc_connectivity_state_watcher',['../structgrpc__connectivity__state__watcher.html',1,'grpc_connectivity_state_watcher'],['../connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a',1,'grpc_connectivity_state_watcher():&#160;connectivity_state.h']]],
+ ['grpc_5fconnector',['grpc_connector',['../structgrpc__connector.html',1,'grpc_connector'],['../connector_8h.html#aae174ab59659a89b5e73c565023961bb',1,'grpc_connector():&#160;connector.h']]],
+ ['grpc_5fconnector_5fconnect',['grpc_connector_connect',['../connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e',1,'grpc_connector_connect(grpc_connector *connector, const grpc_connect_in_args *in_args, grpc_connect_out_args *out_args, grpc_iomgr_closure *notify):&#160;connector.c'],['../connector_8c.html#ae43acb2d650fdc8023d69a4a39781d4e',1,'grpc_connector_connect(grpc_connector *connector, const grpc_connect_in_args *in_args, grpc_connect_out_args *out_args, grpc_iomgr_closure *notify):&#160;connector.c']]],
+ ['grpc_5fconnector_5fref',['grpc_connector_ref',['../connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46',1,'grpc_connector_ref(grpc_connector *connector):&#160;connector.c'],['../connector_8c.html#a32f21c6a46c13ba6cc697cf94c45ca46',1,'grpc_connector_ref(grpc_connector *connector):&#160;connector.c']]],
+ ['grpc_5fconnector_5funref',['grpc_connector_unref',['../connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6',1,'grpc_connector_unref(grpc_connector *connector):&#160;connector.c'],['../connector_8c.html#ab65e217852a93e4a8281e7003d72bcf6',1,'grpc_connector_unref(grpc_connector *connector):&#160;connector.c']]],
+ ['grpc_5fconnector_5fvtable',['grpc_connector_vtable',['../structgrpc__connector__vtable.html',1,'grpc_connector_vtable'],['../connector_8h.html#add8d7e9bf9a65c5580489f9af7951bec',1,'grpc_connector_vtable():&#160;connector.h']]],
+ ['grpc_5fcontext_2ec',['grpc_context.c',['../grpc__context_8c.html',1,'']]],
+ ['grpc_5fcontext_5fcount',['GRPC_CONTEXT_COUNT',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7',1,'context.h']]],
+ ['grpc_5fcontext_5findex',['grpc_context_index',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff',1,'context.h']]],
+ ['grpc_5fcontext_5fsecurity',['GRPC_CONTEXT_SECURITY',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b',1,'context.h']]],
+ ['grpc_5fcontext_5ftracing',['GRPC_CONTEXT_TRACING',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80',1,'context.h']]],
+ ['grpc_5fcq_5fbegin_5fop',['grpc_cq_begin_op',['../completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776',1,'grpc_cq_begin_op(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#af0798635c22a4eaa66ed25c310b3a776',1,'grpc_cq_begin_op(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fcompletion',['grpc_cq_completion',['../structgrpc__cq__completion.html',1,'grpc_cq_completion'],['../completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014',1,'grpc_cq_completion():&#160;completion_queue.h']]],
+ ['grpc_5fcq_5fend_5fop',['grpc_cq_end_op',['../completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e',1,'grpc_cq_end_op(grpc_completion_queue *cc, void *tag, int success, void(*done)(void *done_arg, grpc_cq_completion *storage), void *done_arg, grpc_cq_completion *storage):&#160;completion_queue.c'],['../completion__queue_8c.html#a2752dafd9e9e02bbd253578fc58b0a7e',1,'grpc_cq_end_op(grpc_completion_queue *cc, void *tag, int success, void(*done)(void *done_arg, grpc_cq_completion *storage), void *done_arg, grpc_cq_completion *storage):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fhack_5fspin_5fpollset',['grpc_cq_hack_spin_pollset',['../completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64',1,'grpc_cq_hack_spin_pollset(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#af56ef17bad0397c6f1305be433aeeb64',1,'grpc_cq_hack_spin_pollset(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5finternal_5fref',['grpc_cq_internal_ref',['../completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02',1,'grpc_cq_internal_ref(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02',1,'grpc_cq_internal_ref(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8h.html#abb132fe2e37bc87bfcc83eb3cd8d3101',1,'GRPC_CQ_INTERNAL_REF():&#160;completion_queue.h']]],
+ ['grpc_5fcq_5finternal_5funref',['grpc_cq_internal_unref',['../completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e',1,'grpc_cq_internal_unref(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e',1,'grpc_cq_internal_unref(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8h.html#aaceb3ef8959e5c43f6954c19a1975f63',1,'GRPC_CQ_INTERNAL_UNREF():&#160;completion_queue.h']]],
+ ['grpc_5fcq_5fis_5fserver_5fcq',['grpc_cq_is_server_cq',['../completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf',1,'grpc_cq_is_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#a02173d1bf8e55f6903d24c20107d8dbf',1,'grpc_cq_is_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fmark_5fserver_5fcq',['grpc_cq_mark_server_cq',['../completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d',1,'grpc_cq_mark_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#afbe8f768af201e16309e240ae155ee3d',1,'grpc_cq_mark_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fpollset',['grpc_cq_pollset',['../completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813',1,'grpc_cq_pollset(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#a0ebca6cf60ce9cc92b9bfa9200fab813',1,'grpc_cq_pollset(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcreate_5fchttp2_5ftransport',['grpc_create_chttp2_transport',['../chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01',1,'grpc_create_chttp2_transport(const grpc_channel_args *channel_args, grpc_endpoint *ep, grpc_mdctx *metadata_context, int is_client):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a03cebc42bd75ab90ce0f9d3c8bc526a8',1,'grpc_create_chttp2_transport(const grpc_channel_args *channel_args, grpc_endpoint *ep, grpc_mdctx *mdctx, int is_client):&#160;chttp2_transport.c']]],
+ ['grpc_5fcreate_5fdualstack_5fsocket',['grpc_create_dualstack_socket',['../socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6',1,'socket_utils_posix.h']]],
+ ['grpc_5fcreate_5fpick_5ffirst_5flb_5fpolicy',['grpc_create_pick_first_lb_policy',['../pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e',1,'grpc_create_pick_first_lb_policy(grpc_subchannel **subchannels, size_t num_subchannels):&#160;pick_first.c'],['../pick__first_8c.html#a2ef6310260146caa4cf56acddbb4343e',1,'grpc_create_pick_first_lb_policy(grpc_subchannel **subchannels, size_t num_subchannels):&#160;pick_first.c']]],
+ ['grpc_5fcredentials',['grpc_credentials',['../structgrpc__credentials.html',1,'grpc_credentials'],['../grpc__security_8h.html#a17768c857575e4500cdd12bb94d3f33e',1,'grpc_credentials():&#160;grpc_security.h']]],
+ ['grpc_5fcredentials_5farray',['grpc_credentials_array',['../structgrpc__credentials__array.html',1,'']]],
+ ['grpc_5fcredentials_5fcontains_5ftype',['grpc_credentials_contains_type',['../credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1',1,'grpc_credentials_contains_type(grpc_credentials *creds, const char *type, grpc_credentials **composite_creds):&#160;credentials.c'],['../credentials_8c.html#a4a6be957afa38741405a5a41cdd752e1',1,'grpc_credentials_contains_type(grpc_credentials *creds, const char *type, grpc_credentials **composite_creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fcreate_5fsecurity_5fconnector',['grpc_credentials_create_security_connector',['../credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759',1,'grpc_credentials_create_security_connector(grpc_credentials *creds, const char *target, const grpc_channel_args *args, grpc_credentials *request_metadata_creds, grpc_channel_security_connector **sc, grpc_channel_args **new_args):&#160;credentials.c'],['../credentials_8c.html#af26c4ee0ed97f2e88958c54ba22d5759',1,'grpc_credentials_create_security_connector(grpc_credentials *creds, const char *target, const grpc_channel_args *args, grpc_credentials *request_metadata_creds, grpc_channel_security_connector **sc, grpc_channel_args **new_args):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5ferror',['GRPC_CREDENTIALS_ERROR',['../credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a',1,'credentials.h']]],
+ ['grpc_5fcredentials_5fget_5frequest_5fmetadata',['grpc_credentials_get_request_metadata',['../credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc',1,'grpc_credentials_get_request_metadata(grpc_credentials *creds, grpc_pollset *pollset, const char *service_url, grpc_credentials_metadata_cb cb, void *user_data):&#160;credentials.c'],['../credentials_8c.html#afe8d4191ee0f0f67684fd2575173cabc',1,'grpc_credentials_get_request_metadata(grpc_credentials *creds, grpc_pollset *pollset, const char *service_url, grpc_credentials_metadata_cb cb, void *user_data):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fhas_5frequest_5fmetadata',['grpc_credentials_has_request_metadata',['../credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a',1,'grpc_credentials_has_request_metadata(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#ad44c9cce8c086f8c083e5d5006e3310a',1,'grpc_credentials_has_request_metadata(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fhas_5frequest_5fmetadata_5fonly',['grpc_credentials_has_request_metadata_only',['../credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a',1,'grpc_credentials_has_request_metadata_only(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a726f818ebdd9e781b090cf7d27347b7a',1,'grpc_credentials_has_request_metadata_only(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fmd',['grpc_credentials_md',['../structgrpc__credentials__md.html',1,'']]],
+ ['grpc_5fcredentials_5fmd_5fstore',['grpc_credentials_md_store',['../structgrpc__credentials__md__store.html',1,'']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fadd',['grpc_credentials_md_store_add',['../credentials_8h.html#a3676b161f50d5b36989af2624565596b',1,'grpc_credentials_md_store_add(grpc_credentials_md_store *store, gpr_slice key, gpr_slice value):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#a3676b161f50d5b36989af2624565596b',1,'grpc_credentials_md_store_add(grpc_credentials_md_store *store, gpr_slice key, gpr_slice value):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fadd_5fcstrings',['grpc_credentials_md_store_add_cstrings',['../credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4',1,'grpc_credentials_md_store_add_cstrings(grpc_credentials_md_store *store, const char *key, const char *value):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#a51ccf8c724a8477d5efcf0e3f73ef3a4',1,'grpc_credentials_md_store_add_cstrings(grpc_credentials_md_store *store, const char *key, const char *value):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fcreate',['grpc_credentials_md_store_create',['../credentials_8h.html#aee28492ddb70e47b0778fc928be9159b',1,'grpc_credentials_md_store_create(size_t initial_capacity):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#aee28492ddb70e47b0778fc928be9159b',1,'grpc_credentials_md_store_create(size_t initial_capacity):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fref',['grpc_credentials_md_store_ref',['../credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73',1,'grpc_credentials_md_store_ref(grpc_credentials_md_store *store):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#a5535f991ceb2b2160aee414cf013ed73',1,'grpc_credentials_md_store_ref(grpc_credentials_md_store *store):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5funref',['grpc_credentials_md_store_unref',['../credentials_8h.html#afc507497ef8b5dda7074b63babaac366',1,'grpc_credentials_md_store_unref(grpc_credentials_md_store *store):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#afc507497ef8b5dda7074b63babaac366',1,'grpc_credentials_md_store_unref(grpc_credentials_md_store *store):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmetadata_5fcb',['grpc_credentials_metadata_cb',['../credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2',1,'credentials.h']]],
+ ['grpc_5fcredentials_5fmetadata_5frequest',['grpc_credentials_metadata_request',['../structgrpc__credentials__metadata__request.html',1,'grpc_credentials_metadata_request'],['../credentials_8h.html#ad254566b74763fc0ae17e07b230c862b',1,'grpc_credentials_metadata_request():&#160;credentials.h']]],
+ ['grpc_5fcredentials_5fok',['GRPC_CREDENTIALS_OK',['../credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15',1,'credentials.h']]],
+ ['grpc_5fcredentials_5fref',['grpc_credentials_ref',['../credentials_8h.html#a62061acac11e854a58c5faca6956e609',1,'grpc_credentials_ref(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a62061acac11e854a58c5faca6956e609',1,'grpc_credentials_ref(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5frelease',['grpc_credentials_release',['../grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440',1,'grpc_credentials_release(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a6c01e107d41e964458fdf701b8b81440',1,'grpc_credentials_release(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fstatus',['grpc_credentials_status',['../credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fcomposite',['GRPC_CREDENTIALS_TYPE_COMPOSITE',['../credentials_8h.html#a0712aea16b41a6d8c65dafcd9d12f599',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5ffake_5ftransport_5fsecurity',['GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY',['../credentials_8h.html#a30ae5fa2e94aeeca90b31d0fd7c416d4',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fiam',['GRPC_CREDENTIALS_TYPE_IAM',['../credentials_8h.html#a2921973fe6094cad4b3aa94b20d8e254',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fjwt',['GRPC_CREDENTIALS_TYPE_JWT',['../credentials_8h.html#a94b9c6715bdb2a6469fe0db959358d2c',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5foauth2',['GRPC_CREDENTIALS_TYPE_OAUTH2',['../credentials_8h.html#ad1d383b3414af259ebc165ac21febd04',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fssl',['GRPC_CREDENTIALS_TYPE_SSL',['../credentials_8h.html#ae74910f24a7fe0d54c326a1ed9e5e127',1,'credentials.h']]],
+ ['grpc_5fcredentials_5funref',['grpc_credentials_unref',['../credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56',1,'grpc_credentials_unref(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a63d4aa3f072736ba5eb168e12c306e56',1,'grpc_credentials_unref(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fvtable',['grpc_credentials_vtable',['../structgrpc__credentials__vtable.html',1,'']]],
+ ['grpc_5fdefault_5fssl_5froots_5ffile_5fpath_5fenv_5fvar',['GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR',['../grpc__security_8h.html#a48565da473b7c82fa2453798f620fd59',1,'grpc_security.h']]],
+ ['grpc_5fdns_5fresolver_5ffactory_5fcreate',['grpc_dns_resolver_factory_create',['../dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a',1,'grpc_dns_resolver_factory_create(void):&#160;dns_resolver.c'],['../dns__resolver_8c.html#a932c66ec39e987fb2cd076869334f871',1,'grpc_dns_resolver_factory_create():&#160;dns_resolver.c']]],
+ ['grpc_5fdont_5fsend_5fclosed',['GRPC_DONT_SEND_CLOSED',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c',1,'internal.h']]],
+ ['grpc_5fdsmode_5fdualstack',['GRPC_DSMODE_DUALSTACK',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635',1,'socket_utils_posix.h']]],
+ ['grpc_5fdsmode_5fipv4',['GRPC_DSMODE_IPV4',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8',1,'socket_utils_posix.h']]],
+ ['grpc_5fdsmode_5fipv6',['GRPC_DSMODE_IPV6',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3',1,'socket_utils_posix.h']]],
+ ['grpc_5fdsmode_5fnone',['GRPC_DSMODE_NONE',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858',1,'socket_utils_posix.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f0',['GRPC_DTS_CLIENT_PREFIX_0',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f1',['GRPC_DTS_CLIENT_PREFIX_1',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f10',['GRPC_DTS_CLIENT_PREFIX_10',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f11',['GRPC_DTS_CLIENT_PREFIX_11',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f12',['GRPC_DTS_CLIENT_PREFIX_12',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f13',['GRPC_DTS_CLIENT_PREFIX_13',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f14',['GRPC_DTS_CLIENT_PREFIX_14',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f15',['GRPC_DTS_CLIENT_PREFIX_15',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f16',['GRPC_DTS_CLIENT_PREFIX_16',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f17',['GRPC_DTS_CLIENT_PREFIX_17',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f18',['GRPC_DTS_CLIENT_PREFIX_18',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f19',['GRPC_DTS_CLIENT_PREFIX_19',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f2',['GRPC_DTS_CLIENT_PREFIX_2',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f20',['GRPC_DTS_CLIENT_PREFIX_20',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f21',['GRPC_DTS_CLIENT_PREFIX_21',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f22',['GRPC_DTS_CLIENT_PREFIX_22',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f23',['GRPC_DTS_CLIENT_PREFIX_23',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f3',['GRPC_DTS_CLIENT_PREFIX_3',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f4',['GRPC_DTS_CLIENT_PREFIX_4',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f5',['GRPC_DTS_CLIENT_PREFIX_5',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f6',['GRPC_DTS_CLIENT_PREFIX_6',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f7',['GRPC_DTS_CLIENT_PREFIX_7',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f8',['GRPC_DTS_CLIENT_PREFIX_8',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f9',['GRPC_DTS_CLIENT_PREFIX_9',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f0',['GRPC_DTS_FH_0',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f1',['GRPC_DTS_FH_1',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f2',['GRPC_DTS_FH_2',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f3',['GRPC_DTS_FH_3',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f4',['GRPC_DTS_FH_4',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f5',['GRPC_DTS_FH_5',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f6',['GRPC_DTS_FH_6',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f7',['GRPC_DTS_FH_7',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f8',['GRPC_DTS_FH_8',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a',1,'internal.h']]],
+ ['grpc_5fdts_5fframe',['GRPC_DTS_FRAME',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586',1,'internal.h']]],
+ ['grpc_5fdualstack_5fmode',['grpc_dualstack_mode',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264',1,'grpc_dualstack_mode():&#160;socket_utils_posix.h'],['../socket__utils__posix_8h.html#a0d07cbe9b082267d5436905dedf86b91',1,'grpc_dualstack_mode():&#160;socket_utils_posix.h']]],
+ ['grpc_5fendpoint',['grpc_endpoint',['../structgrpc__endpoint.html',1,'grpc_endpoint'],['../endpoint_8h.html#ab0f168d17277b4b5a4d7842eec6ea3ea',1,'grpc_endpoint():&#160;endpoint.h']]],
+ ['grpc_5fendpoint_5fadd_5fto_5fpollset',['grpc_endpoint_add_to_pollset',['../endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6',1,'grpc_endpoint_add_to_pollset(grpc_endpoint *ep, grpc_pollset *pollset):&#160;endpoint.c'],['../endpoint_8c.html#afe30ad16c4df2a5c80b9e73d2bce80e6',1,'grpc_endpoint_add_to_pollset(grpc_endpoint *ep, grpc_pollset *pollset):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fadd_5fto_5fpollset_5fset',['grpc_endpoint_add_to_pollset_set',['../endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900',1,'grpc_endpoint_add_to_pollset_set(grpc_endpoint *ep, grpc_pollset_set *pollset_set):&#160;endpoint.c'],['../endpoint_8c.html#a7da8b1657895a121a59458dbdeb0e900',1,'grpc_endpoint_add_to_pollset_set(grpc_endpoint *ep, grpc_pollset_set *pollset_set):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fcb_5feof',['GRPC_ENDPOINT_CB_EOF',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5ferror',['GRPC_ENDPOINT_CB_ERROR',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5fok',['GRPC_ENDPOINT_CB_OK',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5fshutdown',['GRPC_ENDPOINT_CB_SHUTDOWN',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5fstatus',['grpc_endpoint_cb_status',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae',1,'grpc_endpoint_cb_status():&#160;endpoint.h'],['../endpoint_8h.html#ae601d949fd51e619ee5312bc2d733236',1,'grpc_endpoint_cb_status():&#160;endpoint.h']]],
+ ['grpc_5fendpoint_5fdestroy',['grpc_endpoint_destroy',['../endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd',1,'grpc_endpoint_destroy(grpc_endpoint *ep):&#160;endpoint.c'],['../endpoint_8c.html#a5b4b5f0b352955ec4f060c6b443408bd',1,'grpc_endpoint_destroy(grpc_endpoint *ep):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fget_5fpeer',['grpc_endpoint_get_peer',['../endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338',1,'grpc_endpoint_get_peer(grpc_endpoint *ep):&#160;endpoint.c'],['../endpoint_8c.html#a21e5c205829aaf48ae7d26b32fa00338',1,'grpc_endpoint_get_peer(grpc_endpoint *ep):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fnotify_5fon_5fread',['grpc_endpoint_notify_on_read',['../endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be',1,'grpc_endpoint_notify_on_read(grpc_endpoint *ep, grpc_endpoint_read_cb cb, void *user_data):&#160;endpoint.c'],['../endpoint_8c.html#abead7bb222b6e3f5a7004c8fb12821be',1,'grpc_endpoint_notify_on_read(grpc_endpoint *ep, grpc_endpoint_read_cb cb, void *user_data):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fpair',['grpc_endpoint_pair',['../structgrpc__endpoint__pair.html',1,'']]],
+ ['grpc_5fendpoint_5fread_5fcb',['grpc_endpoint_read_cb',['../endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fshutdown',['grpc_endpoint_shutdown',['../endpoint_8h.html#a7fca699259b75cf0f685227a363765fa',1,'grpc_endpoint_shutdown(grpc_endpoint *ep):&#160;endpoint.c'],['../endpoint_8c.html#a7fca699259b75cf0f685227a363765fa',1,'grpc_endpoint_shutdown(grpc_endpoint *ep):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fvtable',['grpc_endpoint_vtable',['../structgrpc__endpoint__vtable.html',1,'grpc_endpoint_vtable'],['../endpoint_8h.html#accd077025fc138a98e048238d2efe1b9',1,'grpc_endpoint_vtable():&#160;endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite',['grpc_endpoint_write',['../endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0',1,'grpc_endpoint_write(grpc_endpoint *ep, gpr_slice *slices, size_t nslices, grpc_endpoint_write_cb cb, void *user_data):&#160;endpoint.c'],['../endpoint_8c.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0',1,'grpc_endpoint_write(grpc_endpoint *ep, gpr_slice *slices, size_t nslices, grpc_endpoint_write_cb cb, void *user_data):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fwrite_5fcb',['grpc_endpoint_write_cb',['../endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fdone',['GRPC_ENDPOINT_WRITE_DONE',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5ferror',['GRPC_ENDPOINT_WRITE_ERROR',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fpending',['GRPC_ENDPOINT_WRITE_PENDING',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fstatus',['grpc_endpoint_write_status',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902',1,'grpc_endpoint_write_status():&#160;endpoint.h'],['../endpoint_8h.html#ae5e35fd14127beb3af459a22d81ac1fd',1,'grpc_endpoint_write_status():&#160;endpoint.h']]],
+ ['grpc_5fevent',['grpc_event',['../structgrpc__event.html',1,'grpc_event'],['../grpc_8h.html#a07990645ca218f6965fd83edf3f421b7',1,'grpc_event():&#160;grpc.h']]],
+ ['grpc_5fevent_5fstring',['grpc_event_string',['../event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313',1,'grpc_event_string(grpc_event *ev):&#160;event_string.c'],['../event__string_8c.html#a8dc67a225f744d4d0ee592faf2bd4313',1,'grpc_event_string(grpc_event *ev):&#160;event_string.c']]],
+ ['grpc_5ffake_5fchannel_5fsecurity_5fconnector',['grpc_fake_channel_security_connector',['../structgrpc__fake__channel__security__connector.html',1,'']]],
+ ['grpc_5ffake_5fchannel_5fsecurity_5fconnector_5fcreate',['grpc_fake_channel_security_connector_create',['../security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12',1,'grpc_fake_channel_security_connector_create(grpc_credentials *request_metadata_creds, int call_host_check_is_async):&#160;security_connector.c'],['../security__connector_8c.html#abe2c43cab618ad3b036645d9aa506f12',1,'grpc_fake_channel_security_connector_create(grpc_credentials *request_metadata_creds, int call_host_check_is_async):&#160;security_connector.c']]],
+ ['grpc_5ffake_5foauth2_5fcredentials',['grpc_fake_oauth2_credentials',['../structgrpc__fake__oauth2__credentials.html',1,'']]],
+ ['grpc_5ffake_5foauth2_5fcredentials_5fcreate',['grpc_fake_oauth2_credentials_create',['../credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc',1,'grpc_fake_oauth2_credentials_create(const char *token_md_value, int is_async):&#160;credentials.c'],['../credentials_8c.html#ac749a71cdf28ebdc69d25cde612b22cc',1,'grpc_fake_oauth2_credentials_create(const char *token_md_value, int is_async):&#160;credentials.c']]],
+ ['grpc_5ffake_5fsecurity_5furl_5fscheme',['GRPC_FAKE_SECURITY_URL_SCHEME',['../security__connector_8h.html#aac2af4901dde1db04846ccc7bde22272',1,'security_connector.h']]],
+ ['grpc_5ffake_5fserver_5fsecurity_5fconnector_5fcreate',['grpc_fake_server_security_connector_create',['../security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417',1,'grpc_fake_server_security_connector_create(void):&#160;security_connector.c'],['../security__connector_8c.html#a45a42c3c0b40593ac1b8025ba1875417',1,'grpc_fake_server_security_connector_create(void):&#160;security_connector.c']]],
+ ['grpc_5ffake_5ftransport_5fsecurity_5fcredentials_5fcreate',['grpc_fake_transport_security_credentials_create',['../credentials_8h.html#ab970b1925f494cb159a29a404f23d157',1,'grpc_fake_transport_security_credentials_create(void):&#160;credentials.c'],['../credentials_8c.html#ab970b1925f494cb159a29a404f23d157',1,'grpc_fake_transport_security_credentials_create(void):&#160;credentials.c']]],
+ ['grpc_5ffake_5ftransport_5fsecurity_5fserver_5fcredentials_5fcreate',['grpc_fake_transport_security_server_credentials_create',['../credentials_8h.html#a60f9433cc38460bb83da148eff9475ae',1,'grpc_fake_transport_security_server_credentials_create(void):&#160;credentials.c'],['../credentials_8c.html#a60f9433cc38460bb83da148eff9475ae',1,'grpc_fake_transport_security_server_credentials_create(void):&#160;credentials.c']]],
+ ['grpc_5ffake_5ftransport_5fsecurity_5ftype',['GRPC_FAKE_TRANSPORT_SECURITY_TYPE',['../credentials_8h.html#a2f398e72138c69b2928abb30e54ce4ce',1,'credentials.h']]],
+ ['grpc_5ffd',['grpc_fd',['../structgrpc__fd.html',1,'grpc_fd'],['../fd__posix_8h.html#a9f8a2791dbd9811a996395c3b466509d',1,'grpc_fd():&#160;fd_posix.h']]],
+ ['grpc_5ffd_5fbecome_5freadable',['grpc_fd_become_readable',['../fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fbecome_5fwritable',['grpc_fd_become_writable',['../fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fbegin_5fpoll',['grpc_fd_begin_poll',['../fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fcreate',['grpc_fd_create',['../fd__posix_8h.html#a6752527e24586c370a8305916cb35dde',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fend_5fpoll',['grpc_fd_end_poll',['../fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fglobal_5finit',['grpc_fd_global_init',['../fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fglobal_5fshutdown',['grpc_fd_global_shutdown',['../fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fis_5forphaned',['grpc_fd_is_orphaned',['../fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fnotify_5fon_5fread',['grpc_fd_notify_on_read',['../fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fnotify_5fon_5fwrite',['grpc_fd_notify_on_write',['../fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac',1,'fd_posix.h']]],
+ ['grpc_5ffd_5forphan',['grpc_fd_orphan',['../fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fref',['GRPC_FD_REF',['../fd__posix_8h.html#a4ad3cc6c9405aa0f94d03257238fe297',1,'GRPC_FD_REF():&#160;fd_posix.h'],['../fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3',1,'grpc_fd_ref(grpc_fd *fd):&#160;fd_posix.h']]],
+ ['grpc_5ffd_5fshutdown',['grpc_fd_shutdown',['../fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad',1,'fd_posix.h']]],
+ ['grpc_5ffd_5funref',['grpc_fd_unref',['../fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0',1,'grpc_fd_unref(grpc_fd *fd):&#160;fd_posix.h'],['../fd__posix_8h.html#a3672f89aa33819921430074f7eb96267',1,'GRPC_FD_UNREF():&#160;fd_posix.h']]],
+ ['grpc_5ffd_5fwatcher',['grpc_fd_watcher',['../structgrpc__fd__watcher.html',1,'grpc_fd_watcher'],['../fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233',1,'grpc_fd_watcher():&#160;fd_posix.h']]],
+ ['grpc_5ffetch_5foauth2_5ffunc',['grpc_fetch_oauth2_func',['../credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d',1,'credentials.h']]],
+ ['grpc_5ffind_5fsecurity_5fconnector_5fin_5fargs',['grpc_find_security_connector_in_args',['../security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c',1,'grpc_find_security_connector_in_args(const grpc_channel_args *args):&#160;security_connector.c'],['../security__connector_8c.html#a7db9da4604178cb7e640e744da4b733c',1,'grpc_find_security_connector_in_args(const grpc_channel_args *args):&#160;security_connector.c']]],
+ ['grpc_5fflowctl_5ftrace',['grpc_flowctl_trace',['../internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8',1,'grpc_flowctl_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8',1,'grpc_flowctl_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#afd0f83d780e8ddeac885163c45aab0a8',1,'grpc_flowctl_trace():&#160;chttp2_transport.c']]],
+ ['grpc_5fflush_5fcached_5fgoogle_5fdefault_5fcredentials',['grpc_flush_cached_google_default_credentials',['../credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a',1,'grpc_flush_cached_google_default_credentials(void):&#160;google_default_credentials.c'],['../google__default__credentials_8c.html#a7e3aec152312d2b66ccd3b232317b10a',1,'grpc_flush_cached_google_default_credentials(void):&#160;google_default_credentials.c']]],
+ ['grpc_5fforbid_5fdualstack_5fsockets_5ffor_5ftesting',['grpc_forbid_dualstack_sockets_for_testing',['../socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757',1,'socket_utils_posix.h']]],
+ ['grpc_5fget_5fdefault_5fssl_5froots',['grpc_get_default_ssl_roots',['../security__connector_8h.html#a341f454443268ca27e5cc01219b93fef',1,'grpc_get_default_ssl_roots(const unsigned char **pem_root_certs):&#160;security_connector.c'],['../security__connector_8c.html#a341f454443268ca27e5cc01219b93fef',1,'grpc_get_default_ssl_roots(const unsigned char **pem_root_certs):&#160;security_connector.c']]],
+ ['grpc_5fget_5fwell_5fknown_5fgoogle_5fcredentials_5ffile_5fpath',['grpc_get_well_known_google_credentials_file_path',['../credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716',1,'credentials.h']]],
+ ['grpc_5fgoogle_5fcloud_5fsdk_5fconfig_5fdirectory',['GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY',['../credentials_8h.html#ac6142eafe5116c797b860449a2fbb7bf',1,'credentials.h']]],
+ ['grpc_5fgoogle_5fcredentials_5fenv_5fvar',['GRPC_GOOGLE_CREDENTIALS_ENV_VAR',['../grpc__security_8h.html#a3874f70577fc9fe15fd2c4ce68a36ecd',1,'grpc_security.h']]],
+ ['grpc_5fgoogle_5fdefault_5fcredentials_5fcreate',['grpc_google_default_credentials_create',['../grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170',1,'grpc_google_default_credentials_create(void):&#160;google_default_credentials.c'],['../google__default__credentials_8c.html#a5e3fb8f208c302245a1392c7ef16d170',1,'grpc_google_default_credentials_create(void):&#160;google_default_credentials.c']]],
+ ['grpc_5fgoogle_5foauth2_5fservice_5fhost',['GRPC_GOOGLE_OAUTH2_SERVICE_HOST',['../credentials_8h.html#a61dc5d4843d2e4b26aa48694efd08cd3',1,'credentials.h']]],
+ ['grpc_5fgoogle_5foauth2_5fservice_5ftoken_5fpath',['GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH',['../credentials_8h.html#aa9cf32ba20b7ce3e171c87ab1c08b20c',1,'credentials.h']]],
+ ['grpc_5fgoogle_5fservice_5faccounts_5femail_5fdomain',['GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN',['../jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73',1,'jwt_verifier.h']]],
+ ['grpc_5fgoogle_5fservice_5faccounts_5fkey_5furl_5fprefix',['GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX',['../jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98',1,'jwt_verifier.h']]],
+ ['grpc_5fgoogle_5fwell_5fknown_5fcredentials_5ffile',['GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE',['../credentials_8h.html#a95d64473b3915a6a65e99ac283326e78',1,'credentials.h']]],
+ ['grpc_5fhttp_5fclient_5ffilter',['grpc_http_client_filter',['../http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324',1,'grpc_http_client_filter():&#160;http_client_filter.c'],['../http__client__filter_8c.html#a0c9d14fbc933d24f599b259ccfea9324',1,'grpc_http_client_filter():&#160;http_client_filter.c']]],
+ ['grpc_5fhttp_5fserver_5ffilter',['grpc_http_server_filter',['../http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503',1,'grpc_http_server_filter():&#160;http_server_filter.c'],['../http__server__filter_8c.html#af08554bdf22a17e82db905b74a959503',1,'grpc_http_server_filter():&#160;http_server_filter.c']]],
+ ['grpc_5fhttp_5ftrace',['grpc_http_trace',['../internal_8h.html#a6bb76c8188f883af2fb738233abdeea0',1,'grpc_http_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0',1,'grpc_http_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a6bb76c8188f883af2fb738233abdeea0',1,'grpc_http_trace():&#160;chttp2_transport.c']]],
+ ['grpc_5fhttpcli_5fbody',['GRPC_HTTPCLI_BODY',['../parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0',1,'parser.h']]],
+ ['grpc_5fhttpcli_5fcontext',['grpc_httpcli_context',['../structgrpc__httpcli__context.html',1,'grpc_httpcli_context'],['../httpcli_8h.html#aacb6a69953113d6b548366871b884345',1,'grpc_httpcli_context():&#160;httpcli.h']]],
+ ['grpc_5fhttpcli_5fcontext_5fdestroy',['grpc_httpcli_context_destroy',['../httpcli_8h.html#a6d47084af44bf387790281f288f78d7b',1,'grpc_httpcli_context_destroy(grpc_httpcli_context *context):&#160;httpcli.c'],['../httpcli_8c.html#a6d47084af44bf387790281f288f78d7b',1,'grpc_httpcli_context_destroy(grpc_httpcli_context *context):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fcontext_5finit',['grpc_httpcli_context_init',['../httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b',1,'grpc_httpcli_context_init(grpc_httpcli_context *context):&#160;httpcli.c'],['../httpcli_8c.html#accc8da3837feac14f5f0b64e4cff8d1b',1,'grpc_httpcli_context_init(grpc_httpcli_context *context):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fformat_5fget_5frequest',['grpc_httpcli_format_get_request',['../format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2',1,'grpc_httpcli_format_get_request(const grpc_httpcli_request *request):&#160;format_request.c'],['../format__request_8c.html#a0fa0de242d866bb79b5ad39f3c46eae2',1,'grpc_httpcli_format_get_request(const grpc_httpcli_request *request):&#160;format_request.c']]],
+ ['grpc_5fhttpcli_5fformat_5fpost_5frequest',['grpc_httpcli_format_post_request',['../format__request_8h.html#ae6a0298e2b174b65c5571622d3908501',1,'grpc_httpcli_format_post_request(const grpc_httpcli_request *request, const char *body_bytes, size_t body_size):&#160;format_request.c'],['../format__request_8c.html#ae6a0298e2b174b65c5571622d3908501',1,'grpc_httpcli_format_post_request(const grpc_httpcli_request *request, const char *body_bytes, size_t body_size):&#160;format_request.c']]],
+ ['grpc_5fhttpcli_5fget',['grpc_httpcli_get',['../httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da',1,'grpc_httpcli_get(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c'],['../httpcli_8c.html#a594371d2c96d499a5a3bcccb27ece0da',1,'grpc_httpcli_get(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fget_5foverride',['grpc_httpcli_get_override',['../httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fheader',['grpc_httpcli_header',['../structgrpc__httpcli__header.html',1,'grpc_httpcli_header'],['../httpcli_8h.html#a3b84c74398894ce993b1e32daf468575',1,'grpc_httpcli_header():&#160;httpcli.h']]],
+ ['grpc_5fhttpcli_5fheaders',['GRPC_HTTPCLI_HEADERS',['../parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8',1,'parser.h']]],
+ ['grpc_5fhttpcli_5finitial_5fresponse',['GRPC_HTTPCLI_INITIAL_RESPONSE',['../parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a',1,'parser.h']]],
+ ['grpc_5fhttpcli_5fmax_5fheader_5flength',['GRPC_HTTPCLI_MAX_HEADER_LENGTH',['../httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fparser',['grpc_httpcli_parser',['../structgrpc__httpcli__parser.html',1,'']]],
+ ['grpc_5fhttpcli_5fparser_5fdestroy',['grpc_httpcli_parser_destroy',['../parser_8h.html#a947eefc20a5245e155e1bb55380c8344',1,'grpc_httpcli_parser_destroy(grpc_httpcli_parser *parser):&#160;parser.c'],['../parser_8c.html#a947eefc20a5245e155e1bb55380c8344',1,'grpc_httpcli_parser_destroy(grpc_httpcli_parser *parser):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5feof',['grpc_httpcli_parser_eof',['../parser_8h.html#a3ad859c8c3267265dba030d1d7597df8',1,'grpc_httpcli_parser_eof(grpc_httpcli_parser *parser):&#160;parser.c'],['../parser_8c.html#a3ad859c8c3267265dba030d1d7597df8',1,'grpc_httpcli_parser_eof(grpc_httpcli_parser *parser):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5finit',['grpc_httpcli_parser_init',['../parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9',1,'grpc_httpcli_parser_init(grpc_httpcli_parser *parser):&#160;parser.c'],['../parser_8c.html#a5801c0439a5dff17a1ddc7f22bdf7ec9',1,'grpc_httpcli_parser_init(grpc_httpcli_parser *parser):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5fparse',['grpc_httpcli_parser_parse',['../parser_8h.html#a24a1909825c06938a465e40295464cd0',1,'grpc_httpcli_parser_parse(grpc_httpcli_parser *parser, gpr_slice slice):&#160;parser.c'],['../parser_8c.html#a24a1909825c06938a465e40295464cd0',1,'grpc_httpcli_parser_parse(grpc_httpcli_parser *parser, gpr_slice slice):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5fstate',['grpc_httpcli_parser_state',['../parser_8h.html#a664db6149875c333b0a568ef8711e257',1,'parser.h']]],
+ ['grpc_5fhttpcli_5fpost',['grpc_httpcli_post',['../httpcli_8h.html#a96f034743193848e966d61192e406c70',1,'grpc_httpcli_post(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, const char *body_bytes, size_t body_size, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c'],['../httpcli_8c.html#a96f034743193848e966d61192e406c70',1,'grpc_httpcli_post(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, const char *body_bytes, size_t body_size, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fpost_5foverride',['grpc_httpcli_post_override',['../httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5frequest',['grpc_httpcli_request',['../structgrpc__httpcli__request.html',1,'grpc_httpcli_request'],['../httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79',1,'grpc_httpcli_request():&#160;httpcli.h']]],
+ ['grpc_5fhttpcli_5fresponse',['grpc_httpcli_response',['../structgrpc__httpcli__response.html',1,'grpc_httpcli_response'],['../httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0',1,'grpc_httpcli_response():&#160;httpcli.h']]],
+ ['grpc_5fhttpcli_5fresponse_5fcb',['grpc_httpcli_response_cb',['../httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fset_5foverride',['grpc_httpcli_set_override',['../httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce',1,'grpc_httpcli_set_override(grpc_httpcli_get_override get, grpc_httpcli_post_override post):&#160;httpcli.c'],['../httpcli_8c.html#a15ab7c87e0d5e42341c9652d5045d8ce',1,'grpc_httpcli_set_override(grpc_httpcli_get_override get, grpc_httpcli_post_override post):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fssl_5fchannel_5fsecurity_5fconnector',['grpc_httpcli_ssl_channel_security_connector',['../structgrpc__httpcli__ssl__channel__security__connector.html',1,'']]],
+ ['grpc_5fhttpcli_5fssl_5fchannel_5fsecurity_5fconnector_5fcreate',['grpc_httpcli_ssl_channel_security_connector_create',['../httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de',1,'grpc_httpcli_ssl_channel_security_connector_create(const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, grpc_channel_security_connector **sc):&#160;httpcli_security_connector.c'],['../httpcli__security__connector_8c.html#a2738fc49f8c3103a4e43ef68cd9b15de',1,'grpc_httpcli_ssl_channel_security_connector_create(const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, grpc_channel_security_connector **sc):&#160;httpcli_security_connector.c']]],
+ ['grpc_5fhttpcli_5fuser_5fagent',['GRPC_HTTPCLI_USER_AGENT',['../httpcli_8h.html#aad8b996f269fd3671a7c6fa829bdec95',1,'httpcli.h']]],
+ ['grpc_5fiam_5fauthority_5fselector_5fmetadata_5fkey',['GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY',['../credentials_8h.html#ada8ea1fc7b28fb63283af76ad27761dd',1,'credentials.h']]],
+ ['grpc_5fiam_5fauthorization_5ftoken_5fmetadata_5fkey',['GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY',['../credentials_8h.html#ac952f285c5ca94edcff909e37ae68402',1,'credentials.h']]],
+ ['grpc_5fiam_5fcredentials',['grpc_iam_credentials',['../structgrpc__iam__credentials.html',1,'']]],
+ ['grpc_5fiam_5fcredentials_5fcreate',['grpc_iam_credentials_create',['../grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3',1,'grpc_iam_credentials_create(const char *authorization_token, const char *authority_selector):&#160;credentials.c'],['../credentials_8c.html#ad16075798f906b98e0fb3e3018f22ae0',1,'grpc_iam_credentials_create(const char *token, const char *authority_selector):&#160;credentials.c']]],
+ ['grpc_5fincoming_5fmetadata_5fbuffer_5fmove_5fto_5freferencing_5fsopb',['grpc_incoming_metadata_buffer_move_to_referencing_sopb',['../incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0',1,'grpc_incoming_metadata_buffer_move_to_referencing_sopb(grpc_chttp2_incoming_metadata_buffer *src, grpc_chttp2_incoming_metadata_buffer *dst, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a0a6bd4407d08e21bc48a6f9cd7167cd0',1,'grpc_incoming_metadata_buffer_move_to_referencing_sopb(grpc_chttp2_incoming_metadata_buffer *src, grpc_chttp2_incoming_metadata_buffer *dst, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c']]],
+ ['grpc_5finit',['grpc_init',['../grpc_8h.html#aa78606c93951c49eadd8d83d739798d6',1,'grpc_init(void):&#160;init.c'],['../init_8c.html#aa78606c93951c49eadd8d83d739798d6',1,'grpc_init(void):&#160;init.c']]],
+ ['grpc_5finitial_5fhandshake_5fbuffer_5fsize',['GRPC_INITIAL_HANDSHAKE_BUFFER_SIZE',['../secure__transport__setup_8c.html#a7faeebb3ced4358f4e7db1428923b013',1,'secure_transport_setup.c']]],
+ ['grpc_5finsecure_5fchannel_5fcreate',['grpc_insecure_channel_create',['../grpc_8h.html#aa710e7e68b23098900f924cf69797496',1,'grpc_insecure_channel_create(const char *target, const grpc_channel_args *args):&#160;channel_create.c'],['../channel__create_8c.html#aa710e7e68b23098900f924cf69797496',1,'grpc_insecure_channel_create(const char *target, const grpc_channel_args *args):&#160;channel_create.c']]],
+ ['grpc_5fiocp_5fadd_5fsocket',['grpc_iocp_add_socket',['../iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5finit',['grpc_iocp_init',['../iocp__windows_8h.html#a74907d635ceee6adf285291336d18807',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5fkick',['grpc_iocp_kick',['../iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5fshutdown',['grpc_iocp_shutdown',['../iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5fsocket_5forphan',['grpc_iocp_socket_orphan',['../iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac',1,'iocp_windows.h']]],
+ ['grpc_5fiomgr_5fadd_5fcallback',['grpc_iomgr_add_callback',['../iomgr_8h.html#a95b724dc6bbd9b75694251713db00619',1,'grpc_iomgr_add_callback(grpc_iomgr_closure *closure):&#160;iomgr.c'],['../iomgr_8c.html#a95b724dc6bbd9b75694251713db00619',1,'grpc_iomgr_add_callback(grpc_iomgr_closure *closure):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fadd_5fdelayed_5fcallback',['grpc_iomgr_add_delayed_callback',['../iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b',1,'grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *iocb, int success):&#160;iomgr.c'],['../iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b',1,'grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *iocb, int success):&#160;iomgr.c'],['../iomgr_8c.html#a4d3b9286cc4434fad35b6017f6222431',1,'grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *closure, int success):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fcb_5ffunc',['grpc_iomgr_cb_func',['../iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3',1,'iomgr.h']]],
+ ['grpc_5fiomgr_5fclosure',['grpc_iomgr_closure',['../structgrpc__iomgr__closure.html',1,'grpc_iomgr_closure'],['../iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87',1,'grpc_iomgr_closure():&#160;iomgr.h']]],
+ ['grpc_5fiomgr_5fclosure_5finit',['grpc_iomgr_closure_init',['../iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83',1,'grpc_iomgr_closure_init(grpc_iomgr_closure *closure, grpc_iomgr_cb_func cb, void *cb_arg):&#160;iomgr.c'],['../iomgr_8c.html#ac8b4ae11b78ccbded903c14f69aa7a83',1,'grpc_iomgr_closure_init(grpc_iomgr_closure *closure, grpc_iomgr_cb_func cb, void *cb_arg):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fcreate_5fendpoint_5fpair',['grpc_iomgr_create_endpoint_pair',['../endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a',1,'endpoint_pair.h']]],
+ ['grpc_5fiomgr_5finit',['grpc_iomgr_init',['../iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504',1,'grpc_iomgr_init(void):&#160;iomgr.c'],['../iomgr_8c.html#a2e26e83c3a2591cbc127dbbc50f5c504',1,'grpc_iomgr_init(void):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fobject',['grpc_iomgr_object',['../structgrpc__iomgr__object.html',1,'grpc_iomgr_object'],['../iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814',1,'grpc_iomgr_object():&#160;iomgr_internal.h']]],
+ ['grpc_5fiomgr_5fplatform_5finit',['grpc_iomgr_platform_init',['../iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e',1,'iomgr_internal.h']]],
+ ['grpc_5fiomgr_5fplatform_5fshutdown',['grpc_iomgr_platform_shutdown',['../iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624',1,'iomgr_internal.h']]],
+ ['grpc_5fiomgr_5fregister_5fobject',['grpc_iomgr_register_object',['../iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e',1,'grpc_iomgr_register_object(grpc_iomgr_object *obj, const char *name):&#160;iomgr.c'],['../iomgr_8c.html#a19ac63e9dff7d1543b1a3e556525773e',1,'grpc_iomgr_register_object(grpc_iomgr_object *obj, const char *name):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fshutdown',['grpc_iomgr_shutdown',['../iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25',1,'grpc_iomgr_shutdown(void):&#160;iomgr.c'],['../iomgr_8c.html#a466909d4101b063c991bbb39ee38ae25',1,'grpc_iomgr_shutdown(void):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5funregister_5fobject',['grpc_iomgr_unregister_object',['../iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a',1,'grpc_iomgr_unregister_object(grpc_iomgr_object *obj):&#160;iomgr.c'],['../iomgr_8c.html#a82cf3ac6566867546afabf5f08f4aa8a',1,'grpc_iomgr_unregister_object(grpc_iomgr_object *obj):&#160;iomgr.c']]],
+ ['grpc_5fioreq',['grpc_ioreq',['../structgrpc__ioreq.html',1,'']]],
+ ['grpc_5fioreq_5fcompletion_5ffunc',['grpc_ioreq_completion_func',['../call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b',1,'call.h']]],
+ ['grpc_5fioreq_5fdata',['grpc_ioreq_data',['../uniongrpc__ioreq__data.html',1,'']]],
+ ['grpc_5fioreq_5fop',['grpc_ioreq_op',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077',1,'call.h']]],
+ ['grpc_5fioreq_5fop_5fcount',['GRPC_IOREQ_OP_COUNT',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fclose',['GRPC_IOREQ_RECV_CLOSE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5finitial_5fmetadata',['GRPC_IOREQ_RECV_INITIAL_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fmessage',['GRPC_IOREQ_RECV_MESSAGE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fstatus',['GRPC_IOREQ_RECV_STATUS',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fstatus_5fdetails',['GRPC_IOREQ_RECV_STATUS_DETAILS',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5ftrailing_5fmetadata',['GRPC_IOREQ_RECV_TRAILING_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5fclose',['GRPC_IOREQ_SEND_CLOSE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5finitial_5fmetadata',['GRPC_IOREQ_SEND_INITIAL_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5fmessage',['GRPC_IOREQ_SEND_MESSAGE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5fstatus',['GRPC_IOREQ_SEND_STATUS',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5ftrailing_5fmetadata',['GRPC_IOREQ_SEND_TRAILING_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522',1,'call.h']]],
+ ['grpc_5fipv4_5fresolver_5ffactory_5fcreate',['grpc_ipv4_resolver_factory_create',['../sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa',1,'grpc_ipv4_resolver_factory_create(void):&#160;sockaddr_resolver.c'],['../sockaddr__resolver_8c.html#abc4c6c8581ef4f8dc5cf8ec5c79383a1',1,'grpc_ipv4_resolver_factory_create():&#160;sockaddr_resolver.c']]],
+ ['grpc_5fipv6_5floopback_5favailable',['grpc_ipv6_loopback_available',['../socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563',1,'socket_utils_posix.h']]],
+ ['grpc_5fipv6_5fresolver_5ffactory_5fcreate',['grpc_ipv6_resolver_factory_create',['../sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2',1,'grpc_ipv6_resolver_factory_create(void):&#160;sockaddr_resolver.c'],['../sockaddr__resolver_8c.html#ad0f24d3cf0da9c53e628da5f60cab92d',1,'grpc_ipv6_resolver_factory_create():&#160;sockaddr_resolver.c']]],
+ ['grpc_5fis_5fbinary_5fheader',['grpc_is_binary_header',['../bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e',1,'grpc_is_binary_header(const char *key, size_t length):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a6ce0fde0cf6e820ca0c95dae4653039e',1,'grpc_is_binary_header(const char *key, size_t length):&#160;bin_encoder.c']]],
+ ['grpc_5fis_5finitialized',['grpc_is_initialized',['../init_8h.html#a9e672384642d6dc0e98df16188beba55',1,'grpc_is_initialized(void):&#160;init.c'],['../init_8c.html#a9e672384642d6dc0e98df16188beba55',1,'grpc_is_initialized(void):&#160;init.c']]],
+ ['grpc_5fjson',['grpc_json',['../structgrpc__json.html',1,'grpc_json'],['../json_8h.html#ae8825a1aedd3c601c1db76275b0091eb',1,'grpc_json():&#160;json.h']]],
+ ['grpc_5fjson_5farray',['GRPC_JSON_ARRAY',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877',1,'json_common.h']]],
+ ['grpc_5fjson_5fcreate',['grpc_json_create',['../json_8h.html#a479fecc70a15ea64d52485891615669f',1,'grpc_json_create(grpc_json_type type):&#160;json.c'],['../json_8c.html#a479fecc70a15ea64d52485891615669f',1,'grpc_json_create(grpc_json_type type):&#160;json.c']]],
+ ['grpc_5fjson_5fdestroy',['grpc_json_destroy',['../json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3',1,'grpc_json_destroy(grpc_json *json):&#160;json.c'],['../json_8c.html#a93347bf054f40cd67dd9a1d46e830ed3',1,'grpc_json_destroy(grpc_json *json):&#160;json.c']]],
+ ['grpc_5fjson_5fdone',['GRPC_JSON_DONE',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7',1,'json_reader.h']]],
+ ['grpc_5fjson_5fdump_5fto_5fstring',['grpc_json_dump_to_string',['../json_8h.html#a4d51e00e1deba5579a221647ced4cd71',1,'grpc_json_dump_to_string(grpc_json *json, int indent):&#160;json_string.c'],['../json__string_8c.html#a4d51e00e1deba5579a221647ced4cd71',1,'grpc_json_dump_to_string(grpc_json *json, int indent):&#160;json_string.c']]],
+ ['grpc_5fjson_5feagain',['GRPC_JSON_EAGAIN',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0',1,'json_reader.h']]],
+ ['grpc_5fjson_5ffalse',['GRPC_JSON_FALSE',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe',1,'json_common.h']]],
+ ['grpc_5fjson_5finternal_5ferror',['GRPC_JSON_INTERNAL_ERROR',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8',1,'json_reader.h']]],
+ ['grpc_5fjson_5fnull',['GRPC_JSON_NULL',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880',1,'json_common.h']]],
+ ['grpc_5fjson_5fnumber',['GRPC_JSON_NUMBER',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44',1,'json_common.h']]],
+ ['grpc_5fjson_5fobject',['GRPC_JSON_OBJECT',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1',1,'json_common.h']]],
+ ['grpc_5fjson_5fparse_5ferror',['GRPC_JSON_PARSE_ERROR',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c',1,'json_reader.h']]],
+ ['grpc_5fjson_5fparse_5fstring',['grpc_json_parse_string',['../json_8h.html#ad66397af23c3f5377035d9fc74e4f401',1,'grpc_json_parse_string(char *input):&#160;json_string.c'],['../json__string_8c.html#ad66397af23c3f5377035d9fc74e4f401',1,'grpc_json_parse_string(char *input):&#160;json_string.c']]],
+ ['grpc_5fjson_5fparse_5fstring_5fwith_5flen',['grpc_json_parse_string_with_len',['../json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6',1,'grpc_json_parse_string_with_len(char *input, size_t size):&#160;json_string.c'],['../json__string_8c.html#ac0d745ec903ab5f5759ebf3bc245b5c6',1,'grpc_json_parse_string_with_len(char *input, size_t size):&#160;json_string.c']]],
+ ['grpc_5fjson_5fread_5fchar_5feagain',['GRPC_JSON_READ_CHAR_EAGAIN',['../json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5fchar_5feof',['GRPC_JSON_READ_CHAR_EOF',['../json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5fchar_5ferror',['GRPC_JSON_READ_CHAR_ERROR',['../json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5ferror',['GRPC_JSON_READ_ERROR',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc',1,'json_reader.h']]],
+ ['grpc_5fjson_5freader',['grpc_json_reader',['../structgrpc__json__reader.html',1,'grpc_json_reader'],['../json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929',1,'grpc_json_reader():&#160;json_reader.h']]],
+ ['grpc_5fjson_5freader_5finit',['grpc_json_reader_init',['../json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b',1,'grpc_json_reader_init(grpc_json_reader *reader, grpc_json_reader_vtable *vtable, void *userdata):&#160;json_reader.c'],['../json__reader_8c.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b',1,'grpc_json_reader_init(grpc_json_reader *reader, grpc_json_reader_vtable *vtable, void *userdata):&#160;json_reader.c']]],
+ ['grpc_5fjson_5freader_5fis_5fcomplete',['grpc_json_reader_is_complete',['../json__reader_8h.html#aca35ff1405586201c145f8411ce4f611',1,'grpc_json_reader_is_complete(grpc_json_reader *reader):&#160;json_reader.c'],['../json__reader_8c.html#aca35ff1405586201c145f8411ce4f611',1,'grpc_json_reader_is_complete(grpc_json_reader *reader):&#160;json_reader.c']]],
+ ['grpc_5fjson_5freader_5frun',['grpc_json_reader_run',['../json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb',1,'grpc_json_reader_run(grpc_json_reader *reader):&#160;json_reader.c'],['../json__reader_8c.html#a369a903219dd343358dad9e4cc67cedb',1,'grpc_json_reader_run(grpc_json_reader *reader):&#160;json_reader.c']]],
+ ['grpc_5fjson_5freader_5fstate',['grpc_json_reader_state',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3',1,'json_reader.h']]],
+ ['grpc_5fjson_5freader_5fstatus',['grpc_json_reader_status',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24',1,'json_reader.h']]],
+ ['grpc_5fjson_5freader_5fvtable',['grpc_json_reader_vtable',['../structgrpc__json__reader__vtable.html',1,'grpc_json_reader_vtable'],['../json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2',1,'grpc_json_reader_vtable():&#160;json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fend',['GRPC_JSON_STATE_END',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fobject_5fkey_5fbegin',['GRPC_JSON_STATE_OBJECT_KEY_BEGIN',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fobject_5fkey_5fend',['GRPC_JSON_STATE_OBJECT_KEY_END',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fobject_5fkey_5fstring',['GRPC_JSON_STATE_OBJECT_KEY_STRING',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape',['GRPC_JSON_STATE_STRING_ESCAPE',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu1',['GRPC_JSON_STATE_STRING_ESCAPE_U1',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu2',['GRPC_JSON_STATE_STRING_ESCAPE_U2',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu3',['GRPC_JSON_STATE_STRING_ESCAPE_U3',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu4',['GRPC_JSON_STATE_STRING_ESCAPE_U4',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fbegin',['GRPC_JSON_STATE_VALUE_BEGIN',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fend',['GRPC_JSON_STATE_VALUE_END',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fa',['GRPC_JSON_STATE_VALUE_FALSE_A',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fe',['GRPC_JSON_STATE_VALUE_FALSE_E',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fl',['GRPC_JSON_STATE_VALUE_FALSE_L',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fs',['GRPC_JSON_STATE_VALUE_FALSE_S',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnull_5fl1',['GRPC_JSON_STATE_VALUE_NULL_L1',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnull_5fl2',['GRPC_JSON_STATE_VALUE_NULL_L2',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnull_5fu',['GRPC_JSON_STATE_VALUE_NULL_U',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber',['GRPC_JSON_STATE_VALUE_NUMBER',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fdot',['GRPC_JSON_STATE_VALUE_NUMBER_DOT',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fe',['GRPC_JSON_STATE_VALUE_NUMBER_E',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fepm',['GRPC_JSON_STATE_VALUE_NUMBER_EPM',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fwith_5fdecimal',['GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fzero',['GRPC_JSON_STATE_VALUE_NUMBER_ZERO',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fstring',['GRPC_JSON_STATE_VALUE_STRING',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ftrue_5fe',['GRPC_JSON_STATE_VALUE_TRUE_E',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ftrue_5fr',['GRPC_JSON_STATE_VALUE_TRUE_R',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ftrue_5fu',['GRPC_JSON_STATE_VALUE_TRUE_U',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstring',['GRPC_JSON_STRING',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79',1,'json_common.h']]],
+ ['grpc_5fjson_5ftop_5flevel',['GRPC_JSON_TOP_LEVEL',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63',1,'json_common.h']]],
+ ['grpc_5fjson_5ftrue',['GRPC_JSON_TRUE',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b',1,'json_common.h']]],
+ ['grpc_5fjson_5ftype',['grpc_json_type',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2',1,'json_common.h']]],
+ ['grpc_5fjson_5fwriter',['grpc_json_writer',['../structgrpc__json__writer.html',1,'grpc_json_writer'],['../json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9',1,'grpc_json_writer():&#160;json_writer.h']]],
+ ['grpc_5fjson_5fwriter_5fcontainer_5fbegins',['grpc_json_writer_container_begins',['../json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae',1,'grpc_json_writer_container_begins(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c'],['../json__writer_8c.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae',1,'grpc_json_writer_container_begins(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fcontainer_5fends',['grpc_json_writer_container_ends',['../json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e',1,'grpc_json_writer_container_ends(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c'],['../json__writer_8c.html#a8ec853f6ef8940debf36820f6329427e',1,'grpc_json_writer_container_ends(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5finit',['grpc_json_writer_init',['../json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637',1,'grpc_json_writer_init(grpc_json_writer *writer, int indent, grpc_json_writer_vtable *vtable, void *userdata):&#160;json_writer.c'],['../json__writer_8c.html#a9c57757dbd540d5c31db7dbb35274637',1,'grpc_json_writer_init(grpc_json_writer *writer, int indent, grpc_json_writer_vtable *vtable, void *userdata):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fobject_5fkey',['grpc_json_writer_object_key',['../json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47',1,'grpc_json_writer_object_key(grpc_json_writer *writer, const char *string):&#160;json_writer.c'],['../json__writer_8c.html#ae009eea3f345ef9ab454876f81f1ab47',1,'grpc_json_writer_object_key(grpc_json_writer *writer, const char *string):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvalue_5fraw',['grpc_json_writer_value_raw',['../json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747',1,'grpc_json_writer_value_raw(grpc_json_writer *writer, const char *string):&#160;json_writer.c'],['../json__writer_8c.html#afac9ce564b4c11e3ea35082de3bd1747',1,'grpc_json_writer_value_raw(grpc_json_writer *writer, const char *string):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvalue_5fraw_5fwith_5flen',['grpc_json_writer_value_raw_with_len',['../json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5',1,'grpc_json_writer_value_raw_with_len(grpc_json_writer *writer, const char *string, size_t len):&#160;json_writer.c'],['../json__writer_8c.html#a2b88eb7fd1bd939146e86c5b212d8cb5',1,'grpc_json_writer_value_raw_with_len(grpc_json_writer *writer, const char *string, size_t len):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvalue_5fstring',['grpc_json_writer_value_string',['../json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0',1,'grpc_json_writer_value_string(grpc_json_writer *writer, const char *string):&#160;json_writer.c'],['../json__writer_8c.html#aa7e5a12ffddc0cc95bff06c1879a64e0',1,'grpc_json_writer_value_string(grpc_json_writer *writer, const char *string):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvtable',['grpc_json_writer_vtable',['../structgrpc__json__writer__vtable.html',1,'grpc_json_writer_vtable'],['../json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51',1,'grpc_json_writer_vtable():&#160;json_writer.h']]],
+ ['grpc_5fjwt_5fclaims',['grpc_jwt_claims',['../structgrpc__jwt__claims.html',1,'grpc_jwt_claims'],['../jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4',1,'grpc_jwt_claims():&#160;jwt_verifier.h']]],
+ ['grpc_5fjwt_5fclaims_5faudience',['grpc_jwt_claims_audience',['../jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f',1,'grpc_jwt_claims_audience(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a19e8de86ed8bb8461969cd07624cb06f',1,'grpc_jwt_claims_audience(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fcheck',['grpc_jwt_claims_check',['../jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a',1,'grpc_jwt_claims_check(const grpc_jwt_claims *claims, const char *audience):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a956a1fe237276fbed03e5caee7360c6a',1,'grpc_jwt_claims_check(const grpc_jwt_claims *claims, const char *audience):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fdestroy',['grpc_jwt_claims_destroy',['../jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316',1,'grpc_jwt_claims_destroy(grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#aa69d0e75df7133ebfda05f50303f8316',1,'grpc_jwt_claims_destroy(grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fexpires_5fat',['grpc_jwt_claims_expires_at',['../jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4',1,'grpc_jwt_claims_expires_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ab9759b63895dde79be0715b0369cd0c4',1,'grpc_jwt_claims_expires_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5ffrom_5fjson',['grpc_jwt_claims_from_json',['../jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8',1,'grpc_jwt_claims_from_json(grpc_json *json, gpr_slice buffer):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8',1,'grpc_jwt_claims_from_json(grpc_json *json, gpr_slice buffer):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fid',['grpc_jwt_claims_id',['../jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54',1,'grpc_jwt_claims_id(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a319d836355e40efba372f9baf09bbd54',1,'grpc_jwt_claims_id(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fissued_5fat',['grpc_jwt_claims_issued_at',['../jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f',1,'grpc_jwt_claims_issued_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a58838743f413ceebbf5b4afd77d7ab7f',1,'grpc_jwt_claims_issued_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fissuer',['grpc_jwt_claims_issuer',['../jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6',1,'grpc_jwt_claims_issuer(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a61a1d74e9b150c1a7dccf259d84e8da6',1,'grpc_jwt_claims_issuer(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fjson',['grpc_jwt_claims_json',['../jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656',1,'grpc_jwt_claims_json(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a4eb1db0055c2992691e1c3e92d65a656',1,'grpc_jwt_claims_json(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fnot_5fbefore',['grpc_jwt_claims_not_before',['../jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499',1,'grpc_jwt_claims_not_before(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a1904f0f6a28c8b14a486c932e5db1499',1,'grpc_jwt_claims_not_before(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fsubject',['grpc_jwt_claims_subject',['../jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6',1,'grpc_jwt_claims_subject(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ac77af641794a3449e94d7d7cb48a50c6',1,'grpc_jwt_claims_subject(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fencode_5fand_5fsign',['grpc_jwt_encode_and_sign',['../json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f',1,'grpc_jwt_encode_and_sign(const grpc_auth_json_key *json_key, const char *audience, gpr_timespec token_lifetime, const char *scope):&#160;json_token.c'],['../json__token_8c.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f',1,'grpc_jwt_encode_and_sign(const grpc_auth_json_key *json_key, const char *audience, gpr_timespec token_lifetime, const char *scope):&#160;json_token.c']]],
+ ['grpc_5fjwt_5fencode_5fand_5fsign_5foverride',['grpc_jwt_encode_and_sign_override',['../json__token_8h.html#acf73be11be357bfd35a30b845e26118f',1,'json_token.h']]],
+ ['grpc_5fjwt_5fencode_5fand_5fsign_5fset_5foverride',['grpc_jwt_encode_and_sign_set_override',['../json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c',1,'grpc_jwt_encode_and_sign_set_override(grpc_jwt_encode_and_sign_override func):&#160;json_token.c'],['../json__token_8c.html#a58f70df2a4a2e8c9bc4f91a85202ce9c',1,'grpc_jwt_encode_and_sign_set_override(grpc_jwt_encode_and_sign_override func):&#160;json_token.c']]],
+ ['grpc_5fjwt_5foauth2_5faudience',['GRPC_JWT_OAUTH2_AUDIENCE',['../json__token_8h.html#aa786d993b153687864544b028ab81d57',1,'json_token.h']]],
+ ['grpc_5fjwt_5frsa_5fsha256_5falgorithm',['GRPC_JWT_RSA_SHA256_ALGORITHM',['../json__token_8c.html#a152047e25145985b1aec6a0945d09553',1,'json_token.c']]],
+ ['grpc_5fjwt_5ftype',['GRPC_JWT_TYPE',['../json__token_8c.html#a6ee6f733ee72e89c478c9041176a3836',1,'json_token.c']]],
+ ['grpc_5fjwt_5fverification_5fdone_5fcb',['grpc_jwt_verification_done_cb',['../jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier',['grpc_jwt_verifier',['../structgrpc__jwt__verifier.html',1,'grpc_jwt_verifier'],['../jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0',1,'grpc_jwt_verifier():&#160;jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fbad_5faudience',['GRPC_JWT_VERIFIER_BAD_AUDIENCE',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fbad_5fformat',['GRPC_JWT_VERIFIER_BAD_FORMAT',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fbad_5fsignature',['GRPC_JWT_VERIFIER_BAD_SIGNATURE',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fclock_5fskew',['grpc_jwt_verifier_clock_skew',['../jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7',1,'grpc_jwt_verifier_clock_skew():&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a7d1ae2ff5b43188c302d75bb3ed761f7',1,'grpc_jwt_verifier_clock_skew():&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fcreate',['grpc_jwt_verifier_create',['../jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811',1,'grpc_jwt_verifier_create(const grpc_jwt_verifier_email_domain_key_url_mapping *mappings, size_t num_mappings):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#acf8e8c06616b9d3006333f63c708a811',1,'grpc_jwt_verifier_create(const grpc_jwt_verifier_email_domain_key_url_mapping *mappings, size_t num_mappings):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fdestroy',['grpc_jwt_verifier_destroy',['../jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398',1,'grpc_jwt_verifier_destroy(grpc_jwt_verifier *verifier):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a44bac1b48da3adf4d7858f2b40121bab',1,'grpc_jwt_verifier_destroy(grpc_jwt_verifier *v):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5femail_5fdomain_5fkey_5furl_5fmapping',['grpc_jwt_verifier_email_domain_key_url_mapping',['../structgrpc__jwt__verifier__email__domain__key__url__mapping.html',1,'']]],
+ ['grpc_5fjwt_5fverifier_5fgeneric_5ferror',['GRPC_JWT_VERIFIER_GENERIC_ERROR',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fkey_5fretrieval_5ferror',['GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fmax_5fdelay',['grpc_jwt_verifier_max_delay',['../jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282',1,'grpc_jwt_verifier_max_delay():&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ab4a9cfed667421b6a1393e52d073a282',1,'grpc_jwt_verifier_max_delay():&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fok',['GRPC_JWT_VERIFIER_OK',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fstatus',['grpc_jwt_verifier_status',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fstatus_5fto_5fstring',['grpc_jwt_verifier_status_to_string',['../jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3',1,'grpc_jwt_verifier_status_to_string(grpc_jwt_verifier_status status):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a2aad6c48023145f901a39b5b9ef6b6d3',1,'grpc_jwt_verifier_status_to_string(grpc_jwt_verifier_status status):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5ftime_5fconstraint_5ffailure',['GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fverify',['grpc_jwt_verifier_verify',['../jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d',1,'grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, grpc_jwt_verification_done_cb cb, void *user_data):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ac9960f7842a141d85b0bb38dd231900d',1,'grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, grpc_jwt_verification_done_cb cb, void *user_data):&#160;jwt_verifier.c']]],
+ ['grpc_5fkick_5fdrain',['grpc_kick_drain',['../pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c',1,'pollset_posix.h']]],
+ ['grpc_5fkick_5ffd_5finfo',['grpc_kick_fd_info',['../structgrpc__kick__fd__info.html',1,'grpc_kick_fd_info'],['../pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5',1,'grpc_kick_fd_info():&#160;pollset_kick_posix.h']]],
+ ['grpc_5fkick_5fpoller',['grpc_kick_poller',['../alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f',1,'grpc_kick_poller(void):&#160;iomgr.c'],['../iomgr_8c.html#aac483dfd6e19fa9df68620e7f7a0697f',1,'grpc_kick_poller(void):&#160;iomgr.c']]],
+ ['grpc_5fkick_5fread_5ffd',['grpc_kick_read_fd',['../pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b',1,'pollset_posix.h']]],
+ ['grpc_5flame_5fclient_5fchannel_5fcreate',['grpc_lame_client_channel_create',['../grpc_8h.html#acd59697f4b8bedea662939da3668ab9b',1,'grpc_lame_client_channel_create(const char *target):&#160;lame_client.c'],['../lame__client_8c.html#acd59697f4b8bedea662939da3668ab9b',1,'grpc_lame_client_channel_create(const char *target):&#160;lame_client.c']]],
+ ['grpc_5flb_5fcompletion',['grpc_lb_completion',['../lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5',1,'lb_policy.h']]],
+ ['grpc_5flb_5fpolicy',['grpc_lb_policy',['../structgrpc__lb__policy.html',1,'grpc_lb_policy'],['../lb__policy_8h.html#aa2bf7da355b0faa3fe532f83899e3e2c',1,'grpc_lb_policy():&#160;lb_policy.h']]],
+ ['grpc_5flb_5fpolicy_5fbroadcast',['grpc_lb_policy_broadcast',['../lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a',1,'grpc_lb_policy_broadcast(grpc_lb_policy *policy, grpc_transport_op *op):&#160;lb_policy.c'],['../lb__policy_8c.html#a1d03d2f71dda12c97863cf387559e47a',1,'grpc_lb_policy_broadcast(grpc_lb_policy *policy, grpc_transport_op *op):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fcheck_5fconnectivity',['grpc_lb_policy_check_connectivity',['../lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8',1,'grpc_lb_policy_check_connectivity(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#a115550f997d572ed49c8906c2cb347b8',1,'grpc_lb_policy_check_connectivity(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fexit_5fidle',['grpc_lb_policy_exit_idle',['../lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88',1,'grpc_lb_policy_exit_idle(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#a163a863a51690daa93984d7b7bd0ac88',1,'grpc_lb_policy_exit_idle(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5finit',['grpc_lb_policy_init',['../lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50',1,'grpc_lb_policy_init(grpc_lb_policy *policy, const grpc_lb_policy_vtable *vtable):&#160;lb_policy.c'],['../lb__policy_8c.html#aa20fbb7fdf68dadcae6aaba3e227ac50',1,'grpc_lb_policy_init(grpc_lb_policy *policy, const grpc_lb_policy_vtable *vtable):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fnotify_5fon_5fstate_5fchange',['grpc_lb_policy_notify_on_state_change',['../lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790',1,'grpc_lb_policy_notify_on_state_change(grpc_lb_policy *policy, grpc_connectivity_state *state, grpc_iomgr_closure *closure):&#160;lb_policy.c'],['../lb__policy_8c.html#a246a7f5b971f672fa6a8dba8d7264790',1,'grpc_lb_policy_notify_on_state_change(grpc_lb_policy *policy, grpc_connectivity_state *state, grpc_iomgr_closure *closure):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fpick',['grpc_lb_policy_pick',['../lb__policy_8h.html#a31611c6d703434b360e90062a28e5140',1,'grpc_lb_policy_pick(grpc_lb_policy *policy, grpc_pollset *pollset, grpc_metadata_batch *initial_metadata, grpc_subchannel **target, grpc_iomgr_closure *on_complete):&#160;lb_policy.c'],['../lb__policy_8c.html#a31611c6d703434b360e90062a28e5140',1,'grpc_lb_policy_pick(grpc_lb_policy *policy, grpc_pollset *pollset, grpc_metadata_batch *initial_metadata, grpc_subchannel **target, grpc_iomgr_closure *on_complete):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fref',['GRPC_LB_POLICY_REF',['../lb__policy_8h.html#aee5c1071728e588a3875f2338d4a5526',1,'GRPC_LB_POLICY_REF():&#160;lb_policy.h'],['../lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f',1,'grpc_lb_policy_ref(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f',1,'grpc_lb_policy_ref(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fshutdown',['grpc_lb_policy_shutdown',['../lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991',1,'grpc_lb_policy_shutdown(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#a1eb8d912c3d82fa0f444fe9cf4bd6991',1,'grpc_lb_policy_shutdown(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5funref',['GRPC_LB_POLICY_UNREF',['../lb__policy_8h.html#a376467589c9ff6e1d597ae21b44295c9',1,'GRPC_LB_POLICY_UNREF():&#160;lb_policy.h'],['../lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942',1,'grpc_lb_policy_unref(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942',1,'grpc_lb_policy_unref(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fvtable',['grpc_lb_policy_vtable',['../structgrpc__lb__policy__vtable.html',1,'grpc_lb_policy_vtable'],['../lb__policy_8h.html#a3319e96c3d9a520883e74ddf112f7fd2',1,'grpc_lb_policy_vtable():&#160;lb_policy.h']]],
+ ['grpc_5flinked_5fmdelem',['grpc_linked_mdelem',['../structgrpc__linked__mdelem.html',1,'grpc_linked_mdelem'],['../stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2',1,'grpc_linked_mdelem():&#160;stream_op.h']]],
+ ['grpc_5flocal_5fsettings',['GRPC_LOCAL_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0',1,'internal.h']]],
+ ['grpc_5fmax_5fauth_5ftoken_5flifetime',['grpc_max_auth_token_lifetime',['../grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772',1,'grpc_max_auth_token_lifetime():&#160;json_token.c'],['../json__token_8c.html#a6112c5b60b1c0197531f80fdc56f7772',1,'grpc_max_auth_token_lifetime():&#160;json_token.c']]],
+ ['grpc_5fmax_5fsockaddr_5fsize',['GRPC_MAX_SOCKADDR_SIZE',['../resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6',1,'resolve_address.h']]],
+ ['grpc_5fmaybe_5fcall_5fdelayed_5fcallbacks',['grpc_maybe_call_delayed_callbacks',['../iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f',1,'grpc_maybe_call_delayed_callbacks(gpr_mu *drop_mu, int success):&#160;iomgr.c'],['../iomgr_8c.html#ae4e69eb5e3c51e00c2983df24c3c8c9f',1,'grpc_maybe_call_delayed_callbacks(gpr_mu *drop_mu, int success):&#160;iomgr.c']]],
+ ['grpc_5fmdctx',['grpc_mdctx',['../structgrpc__mdctx.html',1,'grpc_mdctx'],['../metadata_8h.html#a3d670d2ea84f975e9ff4758ceaf0742d',1,'grpc_mdctx():&#160;metadata.h']]],
+ ['grpc_5fmdctx_5fcreate',['grpc_mdctx_create',['../metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649',1,'grpc_mdctx_create(void):&#160;metadata.c'],['../metadata_8c.html#a207b09a54f3c57a90b5b44868fbf5649',1,'grpc_mdctx_create(void):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fcreate_5fwith_5fseed',['grpc_mdctx_create_with_seed',['../metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3',1,'grpc_mdctx_create_with_seed(gpr_uint32 seed):&#160;metadata.c'],['../metadata_8c.html#a29700f3749eea2c96f7bae1d57f8f7e3',1,'grpc_mdctx_create_with_seed(gpr_uint32 seed):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fget_5fmdtab_5fcapacity_5ftest_5fonly',['grpc_mdctx_get_mdtab_capacity_test_only',['../metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36',1,'grpc_mdctx_get_mdtab_capacity_test_only(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#a655a0f22cc71643674124ced4ce5018d',1,'grpc_mdctx_get_mdtab_capacity_test_only(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fget_5fmdtab_5fcount_5ftest_5fonly',['grpc_mdctx_get_mdtab_count_test_only',['../metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92',1,'grpc_mdctx_get_mdtab_count_test_only(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#aba47aef8a83c845dd6ec3dc366fcfdab',1,'grpc_mdctx_get_mdtab_count_test_only(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fget_5fmdtab_5ffree_5ftest_5fonly',['grpc_mdctx_get_mdtab_free_test_only',['../metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17',1,'grpc_mdctx_get_mdtab_free_test_only(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#a8a7b1b8046529252525680692d7dd68a',1,'grpc_mdctx_get_mdtab_free_test_only(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5flock',['grpc_mdctx_lock',['../metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331',1,'grpc_mdctx_lock(grpc_mdctx *ctx):&#160;metadata.c'],['../metadata_8c.html#a390eb255a6d72a8ea84ac8ad3cbeb331',1,'grpc_mdctx_lock(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5flocked_5fmdelem_5funref',['GRPC_MDCTX_LOCKED_MDELEM_UNREF',['../metadata_8h.html#af96c346c98e982e5c0086467dd11e714',1,'GRPC_MDCTX_LOCKED_MDELEM_UNREF():&#160;metadata.h'],['../metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01',1,'grpc_mdctx_locked_mdelem_unref(grpc_mdctx *ctx, grpc_mdelem *elem):&#160;metadata.c'],['../metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739',1,'grpc_mdctx_locked_mdelem_unref(grpc_mdctx *ctx, grpc_mdelem *gmd):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fref',['grpc_mdctx_ref',['../metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da',1,'grpc_mdctx_ref(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#a0293b53029721bf7013af7466efbd324',1,'grpc_mdctx_ref(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5funlock',['grpc_mdctx_unlock',['../metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b',1,'grpc_mdctx_unlock(grpc_mdctx *ctx):&#160;metadata.c'],['../metadata_8c.html#a033690c1ac25d72fdc5e56e9f5d9e97b',1,'grpc_mdctx_unlock(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5funref',['grpc_mdctx_unref',['../metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3',1,'grpc_mdctx_unref(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#ae80c7476ff57db4121dc9d8fef9e5670',1,'grpc_mdctx_unref(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdelem',['grpc_mdelem',['../structgrpc__mdelem.html',1,'grpc_mdelem'],['../metadata_8h.html#a90dde22c13b91f78568735a7f666992e',1,'grpc_mdelem():&#160;metadata.h']]],
+ ['grpc_5fmdelem_5ffrom_5fmetadata_5fstrings',['grpc_mdelem_from_metadata_strings',['../metadata_8h.html#a969845603738428cf18a9a090896e152',1,'grpc_mdelem_from_metadata_strings(grpc_mdctx *ctx, grpc_mdstr *key, grpc_mdstr *value):&#160;metadata.c'],['../metadata_8c.html#afc5656c1cd10a6f2e7cebebff10c25a4',1,'grpc_mdelem_from_metadata_strings(grpc_mdctx *ctx, grpc_mdstr *mkey, grpc_mdstr *mvalue):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fslices',['grpc_mdelem_from_slices',['../metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2',1,'grpc_mdelem_from_slices(grpc_mdctx *ctx, gpr_slice key, gpr_slice value):&#160;metadata.c'],['../metadata_8c.html#a5b5ad2d68dd8c76345170f5f732b8fa2',1,'grpc_mdelem_from_slices(grpc_mdctx *ctx, gpr_slice key, gpr_slice value):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fstring_5fand_5fbuffer',['grpc_mdelem_from_string_and_buffer',['../metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13',1,'grpc_mdelem_from_string_and_buffer(grpc_mdctx *ctx, const char *key, const gpr_uint8 *value, size_t value_length, int canonicalize_key):&#160;metadata.c'],['../metadata_8c.html#a748c6028cdc4cd0fd8d98c3a7f79ed13',1,'grpc_mdelem_from_string_and_buffer(grpc_mdctx *ctx, const char *key, const gpr_uint8 *value, size_t value_length, int canonicalize_key):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fstrings',['grpc_mdelem_from_strings',['../metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8',1,'grpc_mdelem_from_strings(grpc_mdctx *ctx, const char *key, const char *value):&#160;metadata.c'],['../metadata_8c.html#a6535f623fc2bd818158d96f6a37f73c8',1,'grpc_mdelem_from_strings(grpc_mdctx *ctx, const char *key, const char *value):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5fget_5fuser_5fdata',['grpc_mdelem_get_user_data',['../metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9',1,'grpc_mdelem_get_user_data(grpc_mdelem *md, void(*if_destroy_func)(void *)):&#160;metadata.c'],['../metadata_8c.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9',1,'grpc_mdelem_get_user_data(grpc_mdelem *md, void(*if_destroy_func)(void *)):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5flist',['grpc_mdelem_list',['../structgrpc__mdelem__list.html',1,'grpc_mdelem_list'],['../stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2',1,'grpc_mdelem_list():&#160;stream_op.h']]],
+ ['grpc_5fmdelem_5fref',['grpc_mdelem_ref',['../metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615',1,'grpc_mdelem_ref(grpc_mdelem *md):&#160;metadata.c'],['../metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2',1,'grpc_mdelem_ref(grpc_mdelem *gmd):&#160;metadata.c'],['../metadata_8h.html#af5a6d4b7c327b66f0902c683ab007618',1,'GRPC_MDELEM_REF():&#160;metadata.h']]],
+ ['grpc_5fmdelem_5fset_5fuser_5fdata',['grpc_mdelem_set_user_data',['../metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e',1,'grpc_mdelem_set_user_data(grpc_mdelem *md, void(*destroy_func)(void *), void *user_data):&#160;metadata.c'],['../metadata_8c.html#a6d0f62841408f1a89773aa4ef54dcf0e',1,'grpc_mdelem_set_user_data(grpc_mdelem *md, void(*destroy_func)(void *), void *user_data):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5funref',['grpc_mdelem_unref',['../metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc',1,'grpc_mdelem_unref(grpc_mdelem *md):&#160;metadata.c'],['../metadata_8c.html#a51228fa7618a8f6503e605709d893a25',1,'grpc_mdelem_unref(grpc_mdelem *gmd):&#160;metadata.c'],['../metadata_8h.html#ab01db7c946e0962da8888f19cb870afb',1,'GRPC_MDELEM_UNREF():&#160;metadata.h']]],
+ ['grpc_5fmdstr',['grpc_mdstr',['../structgrpc__mdstr.html',1,'grpc_mdstr'],['../metadata_8h.html#a37a4eca36e6506776f4c60c598dd01f5',1,'grpc_mdstr():&#160;metadata.h']]],
+ ['grpc_5fmdstr_5fas_5fbase64_5fencoded_5fand_5fhuffman_5fcompressed',['grpc_mdstr_as_base64_encoded_and_huffman_compressed',['../metadata_8h.html#a314273fea07852ac80ea184100398c11',1,'grpc_mdstr_as_base64_encoded_and_huffman_compressed(grpc_mdstr *str):&#160;metadata.c'],['../metadata_8c.html#a0bc211dd30038c1366a614647abdcf08',1,'grpc_mdstr_as_base64_encoded_and_huffman_compressed(grpc_mdstr *gs):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fas_5fc_5fstring',['grpc_mdstr_as_c_string',['../metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895',1,'grpc_mdstr_as_c_string(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#aacbae6a08b63835ec31fcddb556aa895',1,'grpc_mdstr_as_c_string(grpc_mdstr *s):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5ffrom_5fbuffer',['grpc_mdstr_from_buffer',['../metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db',1,'grpc_mdstr_from_buffer(grpc_mdctx *ctx, const gpr_uint8 *str, size_t length):&#160;metadata.c'],['../metadata_8c.html#a357ead79c52ee284bb190bae970d8457',1,'grpc_mdstr_from_buffer(grpc_mdctx *ctx, const gpr_uint8 *buf, size_t length):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5ffrom_5fslice',['grpc_mdstr_from_slice',['../metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43',1,'grpc_mdstr_from_slice(grpc_mdctx *ctx, gpr_slice slice):&#160;metadata.c'],['../metadata_8c.html#a4eccbbb62d87a131d2eb3367fd2c4c43',1,'grpc_mdstr_from_slice(grpc_mdctx *ctx, gpr_slice slice):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5ffrom_5fstring',['grpc_mdstr_from_string',['../metadata_8h.html#af961acf0149066abf14c01f56a3e2b55',1,'grpc_mdstr_from_string(grpc_mdctx *ctx, const char *str, int perform_key_canonicalization):&#160;metadata.c'],['../metadata_8c.html#a30a9ea36693c48da5072719f6ae7de6d',1,'grpc_mdstr_from_string(grpc_mdctx *ctx, const char *str, int canonicalize_key):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fis_5fbin_5fsuffixed',['grpc_mdstr_is_bin_suffixed',['../metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74',1,'grpc_mdstr_is_bin_suffixed(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#ad34887fb9c6733916ac87b8fde793e74',1,'grpc_mdstr_is_bin_suffixed(grpc_mdstr *s):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fis_5flegal_5fheader',['grpc_mdstr_is_legal_header',['../metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5',1,'grpc_mdstr_is_legal_header(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#a427ad60503ae8ce87bcfa0aa09fe99a5',1,'grpc_mdstr_is_legal_header(grpc_mdstr *s):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fkv_5fhash',['GRPC_MDSTR_KV_HASH',['../metadata_8h.html#a385838d339c97b956529499c1da41e1f',1,'metadata.h']]],
+ ['grpc_5fmdstr_5fref',['GRPC_MDSTR_REF',['../metadata_8h.html#ab07dbb900f15b2fe28ea24451c5cfa3d',1,'GRPC_MDSTR_REF():&#160;metadata.h'],['../metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf',1,'grpc_mdstr_ref(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#a85a25deeeea31c616e326b765043b9c9',1,'grpc_mdstr_ref(grpc_mdstr *gs):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5funref',['GRPC_MDSTR_UNREF',['../metadata_8h.html#ab6dceed9dacb076aa33c15323f6e823c',1,'GRPC_MDSTR_UNREF():&#160;metadata.h'],['../metadata_8h.html#a6ba2e968699daaddaad9b48b78779465',1,'grpc_mdstr_unref(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3',1,'grpc_mdstr_unref(grpc_mdstr *gs):&#160;metadata.c']]],
+ ['grpc_5fmessage_5fstring',['grpc_message_string',['../structgrpc__channel.html#aa00f6e53c4b732654311f194aa2f3957',1,'grpc_channel']]],
+ ['grpc_5fmetadata',['grpc_metadata',['../structgrpc__metadata.html',1,'grpc_metadata'],['../grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b',1,'grpc_metadata():&#160;grpc.h']]],
+ ['grpc_5fmetadata_5farray',['grpc_metadata_array',['../structgrpc__metadata__array.html',1,'']]],
+ ['grpc_5fmetadata_5farray_5fdestroy',['grpc_metadata_array_destroy',['../grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44',1,'grpc_metadata_array_destroy(grpc_metadata_array *array):&#160;metadata_array.c'],['../metadata__array_8c.html#aad125726d8b689cc5fc1a0444c91ed44',1,'grpc_metadata_array_destroy(grpc_metadata_array *array):&#160;metadata_array.c']]],
+ ['grpc_5fmetadata_5farray_5finit',['grpc_metadata_array_init',['../grpc_8h.html#a52cfda44034115720a0e88037dedbfb5',1,'grpc_metadata_array_init(grpc_metadata_array *array):&#160;metadata_array.c'],['../metadata__array_8c.html#a52cfda44034115720a0e88037dedbfb5',1,'grpc_metadata_array_init(grpc_metadata_array *array):&#160;metadata_array.c']]],
+ ['grpc_5fmetadata_5fbatch',['grpc_metadata_batch',['../structgrpc__metadata__batch.html',1,'grpc_metadata_batch'],['../stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410',1,'grpc_metadata_batch():&#160;stream_op.h']]],
+ ['grpc_5fmetadata_5fbatch_5fadd_5fhead',['grpc_metadata_batch_add_head',['../stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003',1,'grpc_metadata_batch_add_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c'],['../stream__op_8c.html#a845453663a8db6cd2624ed92d63b2003',1,'grpc_metadata_batch_add_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fadd_5ftail',['grpc_metadata_batch_add_tail',['../stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01',1,'grpc_metadata_batch_add_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c'],['../stream__op_8c.html#a31f318cbb2f1fdb6372fdc4891e74d01',1,'grpc_metadata_batch_add_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fassert_5fok',['grpc_metadata_batch_assert_ok',['../stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a',1,'grpc_metadata_batch_assert_ok(grpc_metadata_batch *comd):&#160;stream_op.c'],['../stream__op_8c.html#a5107cb817e5019fc9f9e7fdd99e54c0e',1,'grpc_metadata_batch_assert_ok(grpc_metadata_batch *batch):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fdestroy',['grpc_metadata_batch_destroy',['../stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08',1,'grpc_metadata_batch_destroy(grpc_metadata_batch *batch):&#160;stream_op.c'],['../stream__op_8c.html#afc4867b9d7a952f003c5494120b59c08',1,'grpc_metadata_batch_destroy(grpc_metadata_batch *batch):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5ffilter',['grpc_metadata_batch_filter',['../stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf',1,'grpc_metadata_batch_filter(grpc_metadata_batch *batch, grpc_mdelem *(*filter)(void *user_data, grpc_mdelem *elem), void *user_data):&#160;stream_op.c'],['../stream__op_8c.html#a754411d9f54fc8762416abf0c148afcf',1,'grpc_metadata_batch_filter(grpc_metadata_batch *batch, grpc_mdelem *(*filter)(void *user_data, grpc_mdelem *elem), void *user_data):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5finit',['grpc_metadata_batch_init',['../stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770',1,'grpc_metadata_batch_init(grpc_metadata_batch *batch):&#160;stream_op.c'],['../stream__op_8c.html#a56d5ee4a6e415827935accfe449dc770',1,'grpc_metadata_batch_init(grpc_metadata_batch *batch):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5flink_5fhead',['grpc_metadata_batch_link_head',['../stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b',1,'grpc_metadata_batch_link_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c'],['../stream__op_8c.html#a8c6af9205b51577ab879b07d9954d32b',1,'grpc_metadata_batch_link_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5flink_5ftail',['grpc_metadata_batch_link_tail',['../stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e',1,'grpc_metadata_batch_link_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c'],['../stream__op_8c.html#a6a07ac989d86142e60bd17525f7f509e',1,'grpc_metadata_batch_link_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fmerge',['grpc_metadata_batch_merge',['../stream__op_8h.html#adf6ee05d9443f295076015da3428f12a',1,'grpc_metadata_batch_merge(grpc_metadata_batch *target, grpc_metadata_batch *add):&#160;stream_op.c'],['../stream__op_8c.html#adf6ee05d9443f295076015da3428f12a',1,'grpc_metadata_batch_merge(grpc_metadata_batch *target, grpc_metadata_batch *add):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fmove',['grpc_metadata_batch_move',['../stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e',1,'grpc_metadata_batch_move(grpc_metadata_batch *dst, grpc_metadata_batch *src):&#160;stream_op.c'],['../stream__op_8c.html#a719845dfd6b62fb62a75d9776396154e',1,'grpc_metadata_batch_move(grpc_metadata_batch *dst, grpc_metadata_batch *src):&#160;stream_op.c']]],
+ ['grpc_5fmsg_5fcompress',['grpc_msg_compress',['../message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd',1,'grpc_msg_compress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c'],['../message__compress_8c.html#ad77078989bef6661528ca2e22223d8cd',1,'grpc_msg_compress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c']]],
+ ['grpc_5fmsg_5fdecompress',['grpc_msg_decompress',['../message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0',1,'grpc_msg_decompress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c'],['../message__compress_8c.html#a3453eb197bbea1ad5dbc57561d9352f0',1,'grpc_msg_decompress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c']]],
+ ['grpc_5fmust_5fuse_5fresult',['GRPC_MUST_USE_RESULT',['../port__platform_8h.html#aef49047a3be38448a61332117b306686',1,'port_platform.h']]],
+ ['grpc_5fno_5fop',['GRPC_NO_OP',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c',1,'stream_op.h']]],
+ ['grpc_5fno_5fop_5ffilter',['grpc_no_op_filter',['../noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87',1,'grpc_no_op_filter():&#160;noop_filter.c'],['../noop__filter_8c.html#afe35aa05a877e7cbc5a42c9aa0574e87',1,'grpc_no_op_filter():&#160;noop_filter.c']]],
+ ['grpc_5fnum_5fsetting_5fsets',['GRPC_NUM_SETTING_SETS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641',1,'internal.h']]],
+ ['grpc_5foauth2_5ftoken_5ffetcher_5fcredentials',['grpc_oauth2_token_fetcher_credentials',['../structgrpc__oauth2__token__fetcher__credentials.html',1,'']]],
+ ['grpc_5foauth2_5ftoken_5ffetcher_5fcredentials_5fparse_5fserver_5fresponse',['grpc_oauth2_token_fetcher_credentials_parse_server_response',['../credentials_8h.html#af0dac46697efd780811863ee13c73fbd',1,'grpc_oauth2_token_fetcher_credentials_parse_server_response(const struct grpc_httpcli_response *response, grpc_credentials_md_store **token_md, gpr_timespec *token_lifetime):&#160;credentials.h'],['../credentials_8c.html#a642f68664ea54ce67c7f752c33e01877',1,'grpc_oauth2_token_fetcher_credentials_parse_server_response(const grpc_httpcli_response *response, grpc_credentials_md_store **token_md, gpr_timespec *token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fop',['grpc_op',['../structgrpc__op.html',1,'grpc_op'],['../grpc_8h.html#a6556a58ca45ad5132b89c770cf875215',1,'grpc_op():&#160;grpc.h']]],
+ ['grpc_5fop_5fbegin_5fmessage',['GRPC_OP_BEGIN_MESSAGE',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31',1,'stream_op.h']]],
+ ['grpc_5fop_5fcomplete',['GRPC_OP_COMPLETE',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297',1,'grpc.h']]],
+ ['grpc_5fop_5fmetadata',['GRPC_OP_METADATA',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317',1,'stream_op.h']]],
+ ['grpc_5fop_5frecv_5fclose_5fon_5fserver',['GRPC_OP_RECV_CLOSE_ON_SERVER',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6',1,'grpc.h']]],
+ ['grpc_5fop_5frecv_5finitial_5fmetadata',['GRPC_OP_RECV_INITIAL_METADATA',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078',1,'grpc.h']]],
+ ['grpc_5fop_5frecv_5fmessage',['GRPC_OP_RECV_MESSAGE',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5',1,'grpc.h']]],
+ ['grpc_5fop_5frecv_5fstatus_5fon_5fclient',['GRPC_OP_RECV_STATUS_ON_CLIENT',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5fclose_5ffrom_5fclient',['GRPC_OP_SEND_CLOSE_FROM_CLIENT',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5finitial_5fmetadata',['GRPC_OP_SEND_INITIAL_METADATA',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5fmessage',['GRPC_OP_SEND_MESSAGE',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5fstatus_5ffrom_5fserver',['GRPC_OP_SEND_STATUS_FROM_SERVER',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64',1,'grpc.h']]],
+ ['grpc_5fop_5fslice',['GRPC_OP_SLICE',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6',1,'stream_op.h']]],
+ ['grpc_5fop_5fstring',['grpc_op_string',['../call__log__batch_8c.html#a20665cb5606e67c3748f0df7c3f93998',1,'call_log_batch.c']]],
+ ['grpc_5fop_5ftype',['grpc_op_type',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a',1,'grpc.h']]],
+ ['grpc_5fopenid_5fconfig_5furl_5fsuffix',['GRPC_OPENID_CONFIG_URL_SUFFIX',['../jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef',1,'jwt_verifier.h']]],
+ ['grpc_5fpeer_5fsettings',['GRPC_PEER_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572',1,'internal.h']]],
+ ['grpc_5fpipe_5fwakeup_5ffd_5fvtable',['grpc_pipe_wakeup_fd_vtable',['../wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882',1,'wakeup_fd_pipe.h']]],
+ ['grpc_5fplatform_5fbecome_5fmultipoller',['grpc_platform_become_multipoller',['../pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a',1,'pollset_posix.h']]],
+ ['grpc_5fplatform_5fbecome_5fmultipoller_5ftype',['grpc_platform_become_multipoller_type',['../pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd',1,'pollset_posix.h']]],
+ ['grpc_5fpoll_5fbecome_5fmultipoller',['grpc_poll_become_multipoller',['../pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102',1,'pollset_posix.h']]],
+ ['grpc_5fpoll_5fdeadline_5fto_5fmillis_5ftimeout',['grpc_poll_deadline_to_millis_timeout',['../pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0',1,'pollset_posix.h']]],
+ ['grpc_5fpollset',['grpc_pollset',['../structgrpc__pollset.html',1,'grpc_pollset'],['../pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad',1,'grpc_pollset():&#160;pollset_posix.h'],['../pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad',1,'grpc_pollset():&#160;pollset_windows.h']]],
+ ['grpc_5fpollset_5fadd_5ffd',['grpc_pollset_add_fd',['../pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fdel_5ffd',['grpc_pollset_del_fd',['../pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fdestroy',['grpc_pollset_destroy',['../pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f',1,'pollset.h']]],
+ ['grpc_5fpollset_5fforce_5fkick',['grpc_pollset_force_kick',['../pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fglobal_5finit',['grpc_pollset_global_init',['../iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a',1,'iomgr_posix.h']]],
+ ['grpc_5fpollset_5fglobal_5fshutdown',['grpc_pollset_global_shutdown',['../iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688',1,'iomgr_posix.h']]],
+ ['grpc_5fpollset_5finit',['grpc_pollset_init',['../pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b',1,'pollset.h']]],
+ ['grpc_5fpollset_5fkick',['grpc_pollset_kick',['../pollset_8h.html#a395a3872723c67d877799cdc79ae7f48',1,'pollset.h']]],
+ ['grpc_5fpollset_5fkick_5fconsume',['grpc_pollset_kick_consume',['../pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fdestroy',['grpc_pollset_kick_destroy',['../pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fget_5ffd',['GRPC_POLLSET_KICK_GET_FD',['../pollset__kick__posix_8h.html#a595cfb6b4cc1f48dbd015821541df959',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fglobal_5fdestroy',['grpc_pollset_kick_global_destroy',['../pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fglobal_5finit',['grpc_pollset_kick_global_init',['../pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fglobal_5finit_5ffallback_5ffd',['grpc_pollset_kick_global_init_fallback_fd',['../pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5finit',['grpc_pollset_kick_init',['../pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fkick',['grpc_pollset_kick_kick',['../pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fpost_5fpoll',['grpc_pollset_kick_post_poll',['../pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fpre_5fpoll',['grpc_pollset_kick_pre_poll',['../pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fstate',['grpc_pollset_kick_state',['../structgrpc__pollset__kick__state.html',1,'grpc_pollset_kick_state'],['../pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1',1,'grpc_pollset_kick_state():&#160;pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fmu',['GRPC_POLLSET_MU',['../pollset__posix_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f',1,'GRPC_POLLSET_MU():&#160;pollset_posix.h'],['../pollset__windows_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f',1,'GRPC_POLLSET_MU():&#160;pollset_windows.h']]],
+ ['grpc_5fpollset_5fset',['grpc_pollset_set',['../structgrpc__pollset__set.html',1,'grpc_pollset_set'],['../pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7',1,'grpc_pollset_set():&#160;pollset_set_posix.h'],['../pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7',1,'grpc_pollset_set():&#160;pollset_set_windows.h']]],
+ ['grpc_5fpollset_5fset_5fadd_5ffd',['grpc_pollset_set_add_fd',['../pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c',1,'pollset_set_posix.h']]],
+ ['grpc_5fpollset_5fset_5fadd_5fpollset',['grpc_pollset_set_add_pollset',['../pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fset_5fdel_5ffd',['grpc_pollset_set_del_fd',['../pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414',1,'pollset_set_posix.h']]],
+ ['grpc_5fpollset_5fset_5fdel_5fpollset',['grpc_pollset_set_del_pollset',['../pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fset_5fdestroy',['grpc_pollset_set_destroy',['../pollset__set_8h.html#af4b47eef823139b714d759e49495fafd',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fset_5finit',['grpc_pollset_set_init',['../pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fshutdown',['grpc_pollset_shutdown',['../pollset_8h.html#a85616767facacdf95dfc4fe564352e87',1,'pollset.h']]],
+ ['grpc_5fpollset_5fvtable',['grpc_pollset_vtable',['../structgrpc__pollset__vtable.html',1,'grpc_pollset_vtable'],['../pollset__posix_8h.html#a93b9c2aef29b7ffe733779b8d4c32db1',1,'grpc_pollset_vtable():&#160;pollset_posix.h']]],
+ ['grpc_5fpollset_5fwork',['grpc_pollset_work',['../pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd',1,'pollset.h']]],
+ ['grpc_5fprecise_5fclock',['grpc_precise_clock',['../structgrpc__precise__clock.html',1,'grpc_precise_clock'],['../timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2',1,'grpc_precise_clock():&#160;timers_preciseclock.h']]],
+ ['grpc_5fprecise_5fclock_5fformat',['GRPC_PRECISE_CLOCK_FORMAT',['../timers__preciseclock_8h.html#a8cbb7d29a1f4fcded6337c7d9c61598d',1,'timers_preciseclock.h']]],
+ ['grpc_5fprecise_5fclock_5fprintf_5fargs',['GRPC_PRECISE_CLOCK_PRINTF_ARGS',['../timers__preciseclock_8h.html#ad8cb0fe2236a54829f5c38cd508305c5',1,'timers_preciseclock.h']]],
+ ['grpc_5fprofiling_5ftags',['grpc_profiling_tags',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3',1,'timers.h']]],
+ ['grpc_5fptag_5fcall_5fon_5fdone_5frecv',['GRPC_PTAG_CALL_ON_DONE_RECV',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a',1,'timers.h']]],
+ ['grpc_5fptag_5fcpp_5fcall_5fcreated',['GRPC_PTAG_CPP_CALL_CREATED',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61',1,'timers.h']]],
+ ['grpc_5fptag_5fcpp_5fperform_5fops',['GRPC_PTAG_CPP_PERFORM_OPS',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e',1,'timers.h']]],
+ ['grpc_5fptag_5fhandle_5fread',['GRPC_PTAG_HANDLE_READ',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129',1,'timers.h']]],
+ ['grpc_5fptag_5fhttp2_5funlock',['GRPC_PTAG_HTTP2_UNLOCK',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d',1,'timers.h']]],
+ ['grpc_5fptag_5fhttp2_5funlock_5fcleanup',['GRPC_PTAG_HTTP2_UNLOCK_CLEANUP',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a',1,'timers.h']]],
+ ['grpc_5fptag_5fignore_5fthreshold',['GRPC_PTAG_IGNORE_THRESHOLD',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392',1,'timers.h']]],
+ ['grpc_5fptag_5fother_5fbase',['GRPC_PTAG_OTHER_BASE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b',1,'timers.h']]],
+ ['grpc_5fptag_5fpoll_5ffinished',['GRPC_PTAG_POLL_FINISHED',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627',1,'timers.h']]],
+ ['grpc_5fptag_5fproto_5fdeserialize',['GRPC_PTAG_PROTO_DESERIALIZE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b',1,'timers.h']]],
+ ['grpc_5fptag_5fproto_5fserialize',['GRPC_PTAG_PROTO_SERIALIZE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8',1,'timers.h']]],
+ ['grpc_5fptag_5frecvmsg',['GRPC_PTAG_RECVMSG',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77',1,'timers.h']]],
+ ['grpc_5fptag_5fsendmsg',['GRPC_PTAG_SENDMSG',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472',1,'timers.h']]],
+ ['grpc_5fptag_5ftcp_5fcb_5fwrite',['GRPC_PTAG_TCP_CB_WRITE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1',1,'timers.h']]],
+ ['grpc_5fptag_5ftcp_5fwrite',['GRPC_PTAG_TCP_WRITE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f',1,'timers.h']]],
+ ['grpc_5fqueue_5fshutdown',['GRPC_QUEUE_SHUTDOWN',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5',1,'grpc.h']]],
+ ['grpc_5fqueue_5ftimeout',['GRPC_QUEUE_TIMEOUT',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6',1,'grpc.h']]],
+ ['grpc_5fraw_5fbyte_5fbuffer_5fcreate',['grpc_raw_byte_buffer_create',['../byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618',1,'grpc_raw_byte_buffer_create(gpr_slice *slices, size_t nslices):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a1aaaa0d8a1609166e0b0bb2b42332618',1,'grpc_raw_byte_buffer_create(gpr_slice *slices, size_t nslices):&#160;byte_buffer.c']]],
+ ['grpc_5fraw_5fbyte_5fbuffer_5ffrom_5freader',['grpc_raw_byte_buffer_from_reader',['../byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df',1,'grpc_raw_byte_buffer_from_reader(grpc_byte_buffer_reader *reader):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a9b4f877e32f45e0e704970e89582e0df',1,'grpc_raw_byte_buffer_from_reader(grpc_byte_buffer_reader *reader):&#160;byte_buffer.c']]],
+ ['grpc_5fraw_5fcompressed_5fbyte_5fbuffer_5fcreate',['grpc_raw_compressed_byte_buffer_create',['../byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b',1,'grpc_raw_compressed_byte_buffer_create(gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression):&#160;byte_buffer.c'],['../byte__buffer_8c.html#af9801acc1dbfd02b2c51ed9d504cd12b',1,'grpc_raw_compressed_byte_buffer_create(gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression):&#160;byte_buffer.c']]],
+ ['grpc_5frefresh_5ftoken_5fcredentials',['grpc_refresh_token_credentials',['../structgrpc__refresh__token__credentials.html',1,'']]],
+ ['grpc_5frefresh_5ftoken_5fcredentials_5fcreate',['grpc_refresh_token_credentials_create',['../grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2',1,'grpc_refresh_token_credentials_create(const char *json_refresh_token):&#160;credentials.c'],['../credentials_8c.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2',1,'grpc_refresh_token_credentials_create(const char *json_refresh_token):&#160;credentials.c']]],
+ ['grpc_5frefresh_5ftoken_5fcredentials_5fcreate_5ffrom_5fauth_5frefresh_5ftoken',['grpc_refresh_token_credentials_create_from_auth_refresh_token',['../credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d',1,'grpc_refresh_token_credentials_create_from_auth_refresh_token(grpc_auth_refresh_token token):&#160;credentials.c'],['../credentials_8c.html#a0effe35d7112502e48014662eb7015cf',1,'grpc_refresh_token_credentials_create_from_auth_refresh_token(grpc_auth_refresh_token refresh_token):&#160;credentials.c']]],
+ ['grpc_5frefresh_5ftoken_5fpost_5fbody_5fformat_5fstring',['GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING',['../credentials_8h.html#adeaf95d65b517e001c71d1fb5e47c97a',1,'credentials.h']]],
+ ['grpc_5fregister_5fresolver_5ftype',['grpc_register_resolver_type',['../resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7',1,'grpc_register_resolver_type(const char *scheme, grpc_resolver_factory *factory):&#160;resolver_registry.c'],['../resolver__registry_8c.html#a563d9d398ed1757d9c5f78ae2ec7b9d7',1,'grpc_register_resolver_type(const char *scheme, grpc_resolver_factory *factory):&#160;resolver_registry.c']]],
+ ['grpc_5fregister_5ftracer',['grpc_register_tracer',['../trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db',1,'grpc_register_tracer(const char *name, int *flag):&#160;trace.c'],['../trace_8c.html#a082b7bb1ebe733f60bf2db0c7cd7b0db',1,'grpc_register_tracer(const char *name, int *flag):&#160;trace.c']]],
+ ['grpc_5fresolve_5faddress',['grpc_resolve_address',['../resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea',1,'resolve_address.h']]],
+ ['grpc_5fresolve_5fcb',['grpc_resolve_cb',['../resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0',1,'resolve_address.h']]],
+ ['grpc_5fresolved_5faddress',['grpc_resolved_address',['../structgrpc__resolved__address.html',1,'']]],
+ ['grpc_5fresolved_5faddresses',['grpc_resolved_addresses',['../structgrpc__resolved__addresses.html',1,'']]],
+ ['grpc_5fresolved_5faddresses_5fdestroy',['grpc_resolved_addresses_destroy',['../resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c',1,'resolve_address.h']]],
+ ['grpc_5fresolver',['grpc_resolver',['../structgrpc__resolver.html',1,'grpc_resolver'],['../resolver_8h.html#ab98013b9b8e8c28771dc39013667f2b3',1,'grpc_resolver():&#160;resolver.h']]],
+ ['grpc_5fresolver_5fchannel_5fsaw_5ferror',['grpc_resolver_channel_saw_error',['../resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e',1,'grpc_resolver_channel_saw_error(grpc_resolver *resolver, struct sockaddr *failing_address, int failing_address_len):&#160;resolver.c'],['../resolver_8c.html#a118536c3b62613e957e10ce9cb602e6e',1,'grpc_resolver_channel_saw_error(grpc_resolver *resolver, struct sockaddr *failing_address, int failing_address_len):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fcreate',['grpc_resolver_create',['../resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0',1,'grpc_resolver_create(const char *name, grpc_subchannel_factory *subchannel_factory):&#160;resolver_registry.c'],['../resolver__registry_8c.html#a42ba392534ac248b5a4ac1f87cd9b3b0',1,'grpc_resolver_create(const char *name, grpc_subchannel_factory *subchannel_factory):&#160;resolver_registry.c']]],
+ ['grpc_5fresolver_5ffactory',['grpc_resolver_factory',['../structgrpc__resolver__factory.html',1,'grpc_resolver_factory'],['../resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2',1,'grpc_resolver_factory():&#160;resolver_factory.h']]],
+ ['grpc_5fresolver_5ffactory_5fcreate_5fresolver',['grpc_resolver_factory_create_resolver',['../resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d',1,'grpc_resolver_factory_create_resolver(grpc_resolver_factory *factory, grpc_uri *uri, grpc_subchannel_factory *subchannel_factory):&#160;resolver_factory.c'],['../resolver__factory_8c.html#a27c578ca66348965f7d3810d0c6fc65d',1,'grpc_resolver_factory_create_resolver(grpc_resolver_factory *factory, grpc_uri *uri, grpc_subchannel_factory *subchannel_factory):&#160;resolver_factory.c']]],
+ ['grpc_5fresolver_5ffactory_5fref',['grpc_resolver_factory_ref',['../resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba',1,'grpc_resolver_factory_ref(grpc_resolver_factory *resolver):&#160;resolver_factory.c'],['../resolver__factory_8c.html#ad5938bfb397011e5e7f4f8d048102e9c',1,'grpc_resolver_factory_ref(grpc_resolver_factory *factory):&#160;resolver_factory.c']]],
+ ['grpc_5fresolver_5ffactory_5funref',['grpc_resolver_factory_unref',['../resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f',1,'grpc_resolver_factory_unref(grpc_resolver_factory *resolver):&#160;resolver_factory.c'],['../resolver__factory_8c.html#aff39a6960a452dbc2537ad83b3cefe84',1,'grpc_resolver_factory_unref(grpc_resolver_factory *factory):&#160;resolver_factory.c']]],
+ ['grpc_5fresolver_5ffactory_5fvtable',['grpc_resolver_factory_vtable',['../structgrpc__resolver__factory__vtable.html',1,'grpc_resolver_factory_vtable'],['../resolver__factory_8h.html#abf04e4004b01653a0274a3a0d175ab1b',1,'grpc_resolver_factory_vtable():&#160;resolver_factory.h']]],
+ ['grpc_5fresolver_5finit',['grpc_resolver_init',['../resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4',1,'grpc_resolver_init(grpc_resolver *resolver, const grpc_resolver_vtable *vtable):&#160;resolver.c'],['../resolver_8c.html#ac806a2edf4f2073529eec1319db9fde4',1,'grpc_resolver_init(grpc_resolver *resolver, const grpc_resolver_vtable *vtable):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fnext',['grpc_resolver_next',['../resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729',1,'grpc_resolver_next(grpc_resolver *resolver, grpc_client_config **target_config, grpc_iomgr_closure *on_complete):&#160;resolver.c'],['../resolver_8c.html#ac5ef07f9efdd2a39f2239207cc060729',1,'grpc_resolver_next(grpc_resolver *resolver, grpc_client_config **target_config, grpc_iomgr_closure *on_complete):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fref',['GRPC_RESOLVER_REF',['../resolver_8h.html#a98d15570db72446a0c175bc3ad316db9',1,'GRPC_RESOLVER_REF():&#160;resolver.h'],['../resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211',1,'grpc_resolver_ref(grpc_resolver *policy):&#160;resolver.c'],['../resolver_8c.html#a364d687b496e862cd5830d3aed899f4f',1,'grpc_resolver_ref(grpc_resolver *resolver):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fregistry_5finit',['grpc_resolver_registry_init',['../resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0',1,'grpc_resolver_registry_init(const char *default_prefix):&#160;resolver_registry.c'],['../resolver__registry_8c.html#ac7c093f883b89670df4f0e6a42a9a77c',1,'grpc_resolver_registry_init(const char *default_resolver_scheme):&#160;resolver_registry.c']]],
+ ['grpc_5fresolver_5fregistry_5fshutdown',['grpc_resolver_registry_shutdown',['../resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6',1,'grpc_resolver_registry_shutdown(void):&#160;resolver_registry.c'],['../resolver__registry_8c.html#a7e9178815fe26123c9413514e1212ca6',1,'grpc_resolver_registry_shutdown(void):&#160;resolver_registry.c']]],
+ ['grpc_5fresolver_5fshutdown',['grpc_resolver_shutdown',['../resolver_8h.html#ae7b200016c3489c0bb3de525198b435b',1,'grpc_resolver_shutdown(grpc_resolver *resolver):&#160;resolver.c'],['../resolver_8c.html#ae7b200016c3489c0bb3de525198b435b',1,'grpc_resolver_shutdown(grpc_resolver *resolver):&#160;resolver.c']]],
+ ['grpc_5fresolver_5funref',['GRPC_RESOLVER_UNREF',['../resolver_8h.html#a54ccbaf14bf8c38ad785e95d705bfe4d',1,'GRPC_RESOLVER_UNREF():&#160;resolver.h'],['../resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d',1,'grpc_resolver_unref(grpc_resolver *policy):&#160;resolver.c'],['../resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9',1,'grpc_resolver_unref(grpc_resolver *resolver):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fvtable',['grpc_resolver_vtable',['../structgrpc__resolver__vtable.html',1,'grpc_resolver_vtable'],['../resolver_8h.html#aa9af03422b3cea75b4dae7725beab911',1,'grpc_resolver_vtable():&#160;resolver.h']]],
+ ['grpc_5fscheme',['grpc_scheme',['../structchannel__data.html#a24aa2dd2d7925c382b290e2417efabc7',1,'channel_data']]],
+ ['grpc_5fsecure_5fchannel_5fcreate',['grpc_secure_channel_create',['../grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4',1,'grpc_secure_channel_create(grpc_credentials *creds, const char *target, const grpc_channel_args *args):&#160;secure_channel_create.c'],['../secure__channel__create_8c.html#a4d63d4cac74652ec3fac7782acb4a2d4',1,'grpc_secure_channel_create(grpc_credentials *creds, const char *target, const grpc_channel_args *args):&#160;secure_channel_create.c']]],
+ ['grpc_5fsecure_5fendpoint_5fcreate',['grpc_secure_endpoint_create',['../secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66',1,'grpc_secure_endpoint_create(struct tsi_frame_protector *protector, grpc_endpoint *to_wrap, gpr_slice *leftover_slices, size_t leftover_nslices):&#160;secure_endpoint.c'],['../secure__endpoint_8c.html#a76ef547d32b0955572a841108518e611',1,'grpc_secure_endpoint_create(struct tsi_frame_protector *protector, grpc_endpoint *transport, gpr_slice *leftover_slices, size_t leftover_nslices):&#160;secure_endpoint.c']]],
+ ['grpc_5fsecure_5ftoken_5frefresh_5fthreshold_5fsecs',['GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS',['../credentials_8h.html#a63b03c9e9e071d5b7f2276c0ae196aeb',1,'credentials.h']]],
+ ['grpc_5fsecure_5ftransport_5fsetup',['grpc_secure_transport_setup',['../structgrpc__secure__transport__setup.html',1,'']]],
+ ['grpc_5fsecure_5ftransport_5fsetup_5fdone_5fcb',['grpc_secure_transport_setup_done_cb',['../secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8',1,'secure_transport_setup.h']]],
+ ['grpc_5fsecurity_2eh',['grpc_security.h',['../grpc__security_8h.html',1,'']]],
+ ['grpc_5fsecurity_5fcheck_5fcb',['grpc_security_check_cb',['../security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector',['grpc_security_connector',['../structgrpc__security__connector.html',1,'grpc_security_connector'],['../security__connector_8h.html#a243897cc56b3cff21887ba4c53e52539',1,'grpc_security_connector():&#160;security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector_5farg',['GRPC_SECURITY_CONNECTOR_ARG',['../security__connector_8h.html#a047c420294c8769e4512f17d0573e353',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector_5fcheck_5fpeer',['grpc_security_connector_check_peer',['../security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94',1,'grpc_security_connector_check_peer(grpc_security_connector *sc, tsi_peer peer, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c'],['../security__connector_8c.html#aac9a5d6c38755b24c7170789056dec94',1,'grpc_security_connector_check_peer(grpc_security_connector *sc, tsi_peer peer, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5fcreate_5fhandshaker',['grpc_security_connector_create_handshaker',['../security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde',1,'grpc_security_connector_create_handshaker(grpc_security_connector *sc, tsi_handshaker **handshaker):&#160;security_connector.c'],['../security__connector_8c.html#af81a7b903de0636a73b0e852b36a7fde',1,'grpc_security_connector_create_handshaker(grpc_security_connector *sc, tsi_handshaker **handshaker):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5ffrom_5farg',['grpc_security_connector_from_arg',['../security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca',1,'grpc_security_connector_from_arg(const grpc_arg *arg):&#160;security_connector.c'],['../security__connector_8c.html#aa427ef1fd3d8e58437215f4da2fd87ca',1,'grpc_security_connector_from_arg(const grpc_arg *arg):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5fref',['grpc_security_connector_ref',['../security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4',1,'grpc_security_connector_ref(grpc_security_connector *policy):&#160;security_connector.c'],['../security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127',1,'grpc_security_connector_ref(grpc_security_connector *sc):&#160;security_connector.c'],['../security__connector_8h.html#a5bb32899b45edd908bb61e45db59c460',1,'GRPC_SECURITY_CONNECTOR_REF():&#160;security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector_5fto_5farg',['grpc_security_connector_to_arg',['../security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a',1,'grpc_security_connector_to_arg(grpc_security_connector *sc):&#160;security_connector.c'],['../security__connector_8c.html#ab609527dad74bcc51e4b8b17b8f47c8a',1,'grpc_security_connector_to_arg(grpc_security_connector *sc):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5funref',['GRPC_SECURITY_CONNECTOR_UNREF',['../security__connector_8h.html#a1950bc24ce082a50d66b0cd505c069ee',1,'GRPC_SECURITY_CONNECTOR_UNREF():&#160;security_connector.h'],['../security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e',1,'grpc_security_connector_unref(grpc_security_connector *policy):&#160;security_connector.c'],['../security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359',1,'grpc_security_connector_unref(grpc_security_connector *sc):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5fvtable',['grpc_security_connector_vtable',['../structgrpc__security__connector__vtable.html',1,'']]],
+ ['grpc_5fsecurity_5ferror',['GRPC_SECURITY_ERROR',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fok',['GRPC_SECURITY_OK',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fpending',['GRPC_SECURITY_PENDING',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fpre_5finit',['grpc_security_pre_init',['../init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7',1,'grpc_security_pre_init(void):&#160;init_secure.c'],['../init__secure_8c.html#a7cfa0e02a966bf937b5d69e10fad2ef7',1,'grpc_security_pre_init(void):&#160;init_secure.c']]],
+ ['grpc_5fsecurity_5fstatus',['grpc_security_status',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9',1,'security_connector.h']]],
+ ['grpc_5fsend_5fclosed',['GRPC_SEND_CLOSED',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02',1,'internal.h']]],
+ ['grpc_5fsend_5fclosed_5fwith_5frst_5fstream',['GRPC_SEND_CLOSED_WITH_RST_STREAM',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508',1,'internal.h']]],
+ ['grpc_5fsent_5fsettings',['GRPC_SENT_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5',1,'internal.h']]],
+ ['grpc_5fserver',['grpc_server',['../structgrpc__server.html',1,'grpc_server'],['../grpc_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8',1,'grpc_server():&#160;grpc.h']]],
+ ['grpc_5fserver_5fadd_5fhttp2_5fport',['grpc_server_add_http2_port',['../grpc_8h.html#a48cab64480658b97a775b2c7837456f9',1,'grpc_server_add_http2_port(grpc_server *server, const char *addr):&#160;server_chttp2.c'],['../server__chttp2_8c.html#a48cab64480658b97a775b2c7837456f9',1,'grpc_server_add_http2_port(grpc_server *server, const char *addr):&#160;server_chttp2.c']]],
+ ['grpc_5fserver_5fadd_5flistener',['grpc_server_add_listener',['../server_8h.html#afba4e38403fa34a317c44de9bae41105',1,'grpc_server_add_listener(grpc_server *server, void *listener, void(*start)(grpc_server *server, void *arg, grpc_pollset **pollsets, size_t npollsets), void(*destroy)(grpc_server *server, void *arg)):&#160;server.h'],['../server_8c.html#a777b461e0fd2a56acd35caf54f3d88e6',1,'grpc_server_add_listener(grpc_server *server, void *arg, void(*start)(grpc_server *server, void *arg, grpc_pollset **pollsets, size_t pollset_count), void(*destroy)(grpc_server *server, void *arg)):&#160;server.c']]],
+ ['grpc_5fserver_5fadd_5fsecure_5fhttp2_5fport',['grpc_server_add_secure_http2_port',['../grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59',1,'grpc_server_add_secure_http2_port(grpc_server *server, const char *addr, grpc_server_credentials *creds):&#160;server_secure_chttp2.c'],['../server__secure__chttp2_8c.html#a5d0db200d00b62b79138472dc9b1fe59',1,'grpc_server_add_secure_http2_port(grpc_server *server, const char *addr, grpc_server_credentials *creds):&#160;server_secure_chttp2.c']]],
+ ['grpc_5fserver_5fauth_5ffilter',['grpc_server_auth_filter',['../auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae',1,'grpc_server_auth_filter():&#160;server_auth_filter.c'],['../server__auth__filter_8c.html#a2041d6372525de50a18f156d1b94cfae',1,'grpc_server_auth_filter():&#160;server_auth_filter.c']]],
+ ['grpc_5fserver_5fcancel_5fall_5fcalls',['grpc_server_cancel_all_calls',['../grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803',1,'grpc_server_cancel_all_calls(grpc_server *server):&#160;server.c'],['../server_8c.html#ac5c1e4f3e270a7afbc39403fff0dc803',1,'grpc_server_cancel_all_calls(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5fcensus_5ffilter',['grpc_server_census_filter',['../census__filter_8h.html#a710f293782b7b759efd8bf5acd011963',1,'census_filter.h']]],
+ ['grpc_5fserver_5fcreate',['grpc_server_create',['../grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4',1,'grpc_server_create(const grpc_channel_args *args):&#160;server_create.c'],['../server__create_8c.html#a4036710ea12eccabbbbf050d6bad4cd4',1,'grpc_server_create(const grpc_channel_args *args):&#160;server_create.c']]],
+ ['grpc_5fserver_5fcreate_5ffrom_5ffilters',['grpc_server_create_from_filters',['../server_8h.html#a870e9abac807e8ba2578df7d9526f8c0',1,'grpc_server_create_from_filters(const grpc_channel_filter **filters, size_t filter_count, const grpc_channel_args *args):&#160;server.c'],['../server_8c.html#a870e9abac807e8ba2578df7d9526f8c0',1,'grpc_server_create_from_filters(const grpc_channel_filter **filters, size_t filter_count, const grpc_channel_args *args):&#160;server.c']]],
+ ['grpc_5fserver_5fcredentials',['grpc_server_credentials',['../structgrpc__server__credentials.html',1,'grpc_server_credentials'],['../grpc__security_8h.html#aa724192e56fdc03827846f16752deccc',1,'grpc_server_credentials():&#160;grpc_security.h']]],
+ ['grpc_5fserver_5fcredentials_5fcreate_5fsecurity_5fconnector',['grpc_server_credentials_create_security_connector',['../credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a',1,'grpc_server_credentials_create_security_connector(grpc_server_credentials *creds, grpc_security_connector **sc):&#160;credentials.c'],['../credentials_8c.html#acc8fc30e87ddec6ff87dd6676215755a',1,'grpc_server_credentials_create_security_connector(grpc_server_credentials *creds, grpc_security_connector **sc):&#160;credentials.c']]],
+ ['grpc_5fserver_5fcredentials_5frelease',['grpc_server_credentials_release',['../grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea',1,'grpc_server_credentials_release(grpc_server_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a6e9f9320f4f8d2d534d04ed642f032ea',1,'grpc_server_credentials_release(grpc_server_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fserver_5fcredentials_5fvtable',['grpc_server_credentials_vtable',['../structgrpc__server__credentials__vtable.html',1,'']]],
+ ['grpc_5fserver_5fdestroy',['grpc_server_destroy',['../grpc_8h.html#a34cba45da7c32a21ac82305d670e4620',1,'grpc_server_destroy(grpc_server *server):&#160;server.c'],['../server_8c.html#a34cba45da7c32a21ac82305d670e4620',1,'grpc_server_destroy(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5fget_5fchannel_5fargs',['grpc_server_get_channel_args',['../server_8h.html#a263c42634aa706458d691565943c6cae',1,'grpc_server_get_channel_args(grpc_server *server):&#160;server.c'],['../server_8c.html#a263c42634aa706458d691565943c6cae',1,'grpc_server_get_channel_args(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5fhas_5fopen_5fconnections',['grpc_server_has_open_connections',['../server_8h.html#a28a4697b500cd4867a9f6731c8e58a94',1,'grpc_server_has_open_connections(grpc_server *server):&#160;server.c'],['../server_8c.html#a28a4697b500cd4867a9f6731c8e58a94',1,'grpc_server_has_open_connections(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5flistener_5fdestroy_5fdone',['grpc_server_listener_destroy_done',['../server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9',1,'grpc_server_listener_destroy_done(void *server):&#160;server.c'],['../server_8c.html#a57b25ccc5ec64affd1ade91554a81092',1,'grpc_server_listener_destroy_done(void *s):&#160;server.c']]],
+ ['grpc_5fserver_5flog_5frequest_5fcall',['grpc_server_log_request_call',['../call_8h.html#a731e08efd7f3cab089d2239f0ed931d5',1,'grpc_server_log_request_call(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;call_log_batch.c'],['../call__log__batch_8c.html#a731e08efd7f3cab089d2239f0ed931d5',1,'grpc_server_log_request_call(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;call_log_batch.c'],['../call_8h.html#a2248e590ae0f4d7aba76fbf76110db6c',1,'GRPC_SERVER_LOG_REQUEST_CALL():&#160;call.h']]],
+ ['grpc_5fserver_5flog_5fshutdown',['GRPC_SERVER_LOG_SHUTDOWN',['../call_8h.html#a0b82c07496b462c41ce400559c5219e7',1,'GRPC_SERVER_LOG_SHUTDOWN():&#160;call.h'],['../call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89',1,'grpc_server_log_shutdown(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;call_log_batch.c'],['../call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89',1,'grpc_server_log_shutdown(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;call_log_batch.c']]],
+ ['grpc_5fserver_5fregister_5fcompletion_5fqueue',['grpc_server_register_completion_queue',['../grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb',1,'grpc_server_register_completion_queue(grpc_server *server, grpc_completion_queue *cq):&#160;server.c'],['../server_8c.html#ac174712f87fdae4b5757a1370e2a31cb',1,'grpc_server_register_completion_queue(grpc_server *server, grpc_completion_queue *cq):&#160;server.c']]],
+ ['grpc_5fserver_5fregister_5fmethod',['grpc_server_register_method',['../grpc_8h.html#a283062a2209f464f234b0e645c6fffb2',1,'grpc_server_register_method(grpc_server *server, const char *method, const char *host):&#160;server.c'],['../server_8c.html#a283062a2209f464f234b0e645c6fffb2',1,'grpc_server_register_method(grpc_server *server, const char *method, const char *host):&#160;server.c']]],
+ ['grpc_5fserver_5frequest_5fcall',['grpc_server_request_call',['../grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257',1,'grpc_server_request_call(grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *request_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new):&#160;server.c'],['../server_8c.html#a419670c3509bc3c67c1344be3a1c4dbf',1,'grpc_server_request_call(grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;server.c']]],
+ ['grpc_5fserver_5frequest_5fregistered_5fcall',['grpc_server_request_registered_call',['../grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de',1,'grpc_server_request_registered_call(grpc_server *server, void *registered_method, grpc_call **call, gpr_timespec *deadline, grpc_metadata_array *request_metadata, grpc_byte_buffer **optional_payload, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new):&#160;server.c'],['../server_8c.html#a82bc2345fb113c461e255364d8d192b5',1,'grpc_server_request_registered_call(grpc_server *server, void *rm, grpc_call **call, gpr_timespec *deadline, grpc_metadata_array *initial_metadata, grpc_byte_buffer **optional_payload, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;server.c']]],
+ ['grpc_5fserver_5fsecure_5fstate',['grpc_server_secure_state',['../structgrpc__server__secure__state.html',1,'grpc_server_secure_state'],['../server__secure__chttp2_8c.html#a5867481af652d517f32b61834205f2b0',1,'grpc_server_secure_state():&#160;server_secure_chttp2.c']]],
+ ['grpc_5fserver_5fsecurity_5fcontext',['grpc_server_security_context',['../structgrpc__server__security__context.html',1,'']]],
+ ['grpc_5fserver_5fsecurity_5fcontext_5fcreate',['grpc_server_security_context_create',['../security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a',1,'grpc_server_security_context_create(void):&#160;security_context.c'],['../security__context_8c.html#afa8c88dfb1be5add6af3143eeb76460a',1,'grpc_server_security_context_create(void):&#160;security_context.c']]],
+ ['grpc_5fserver_5fsecurity_5fcontext_5fdestroy',['grpc_server_security_context_destroy',['../security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a',1,'grpc_server_security_context_destroy(void *ctx):&#160;security_context.c'],['../security__context_8c.html#a86caf02cd607c3ff6f1e6657ffa5c17a',1,'grpc_server_security_context_destroy(void *ctx):&#160;security_context.c']]],
+ ['grpc_5fserver_5fsetup_5ftransport',['grpc_server_setup_transport',['../server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc',1,'grpc_server_setup_transport(grpc_server *server, grpc_transport *transport, grpc_channel_filter const **extra_filters, size_t num_extra_filters, grpc_mdctx *mdctx, const grpc_channel_args *args):&#160;server.c'],['../server_8c.html#a26fd88680fa7949f4af879acdc249d8d',1,'grpc_server_setup_transport(grpc_server *s, grpc_transport *transport, grpc_channel_filter const **extra_filters, size_t num_extra_filters, grpc_mdctx *mdctx, const grpc_channel_args *args):&#160;server.c']]],
+ ['grpc_5fserver_5fshutdown_5fand_5fnotify',['grpc_server_shutdown_and_notify',['../grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7',1,'grpc_server_shutdown_and_notify(grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;server.c'],['../server_8c.html#a56fffa23c1c4bab9a469e2ac607b6db7',1,'grpc_server_shutdown_and_notify(grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;server.c']]],
+ ['grpc_5fserver_5fstart',['grpc_server_start',['../grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e',1,'grpc_server_start(grpc_server *server):&#160;server.c'],['../server_8c.html#ac5010d26419e14f5a9ab2fa86a4f7d1e',1,'grpc_server_start(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fservice_5faccount_5fcredentials',['grpc_service_account_credentials',['../structgrpc__service__account__credentials.html',1,'']]],
+ ['grpc_5fservice_5faccount_5fcredentials_5fcreate',['grpc_service_account_credentials_create',['../grpc__security_8h.html#a15aa83608fad085b6244de659d322b27',1,'grpc_service_account_credentials_create(const char *json_key, const char *scope, gpr_timespec token_lifetime):&#160;credentials.c'],['../credentials_8c.html#a15aa83608fad085b6244de659d322b27',1,'grpc_service_account_credentials_create(const char *json_key, const char *scope, gpr_timespec token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fservice_5faccount_5fjwt_5faccess_5fcredentials',['grpc_service_account_jwt_access_credentials',['../structgrpc__service__account__jwt__access__credentials.html',1,'']]],
+ ['grpc_5fservice_5faccount_5fjwt_5faccess_5fcredentials_5fcreate',['grpc_service_account_jwt_access_credentials_create',['../grpc__security_8h.html#af26993774cc991debd61e4a84ed49187',1,'grpc_service_account_jwt_access_credentials_create(const char *json_key, gpr_timespec token_lifetime):&#160;credentials.c'],['../credentials_8c.html#af26993774cc991debd61e4a84ed49187',1,'grpc_service_account_jwt_access_credentials_create(const char *json_key, gpr_timespec token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fservice_5faccount_5fjwt_5faccess_5fcredentials_5fcreate_5ffrom_5fauth_5fjson_5fkey',['grpc_service_account_jwt_access_credentials_create_from_auth_json_key',['../credentials_8h.html#a26715660e319377bdfc4f2476ff35505',1,'grpc_service_account_jwt_access_credentials_create_from_auth_json_key(grpc_auth_json_key key, gpr_timespec token_lifetime):&#160;credentials.c'],['../credentials_8c.html#a26715660e319377bdfc4f2476ff35505',1,'grpc_service_account_jwt_access_credentials_create_from_auth_json_key(grpc_auth_json_key key, gpr_timespec token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fservice_5faccount_5fpost_5fbody_5fprefix',['GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX',['../credentials_8h.html#a5c5761f3829eca7ec24d5aa68272cad2',1,'credentials.h']]],
+ ['grpc_5fset_5fsocket_5fcloexec',['grpc_set_socket_cloexec',['../socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5flow_5flatency',['grpc_set_socket_low_latency',['../socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5fno_5fsigpipe_5fif_5fpossible',['grpc_set_socket_no_sigpipe_if_possible',['../socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5fnonblocking',['grpc_set_socket_nonblocking',['../socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5freuse_5faddr',['grpc_set_socket_reuse_addr',['../socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79',1,'socket_utils_posix.h']]],
+ ['grpc_5fsetup_5fsecure_5ftransport',['grpc_setup_secure_transport',['../secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8',1,'grpc_setup_secure_transport(grpc_security_connector *connector, grpc_endpoint *nonsecure_endpoint, grpc_secure_transport_setup_done_cb cb, void *user_data):&#160;secure_transport_setup.c'],['../secure__transport__setup_8c.html#abf337cd72839248e089c1646f8fa7bc8',1,'grpc_setup_secure_transport(grpc_security_connector *connector, grpc_endpoint *nonsecure_endpoint, grpc_secure_transport_setup_done_cb cb, void *user_data):&#160;secure_transport_setup.c']]],
+ ['grpc_5fshutdown',['grpc_shutdown',['../grpc_8h.html#af1130720e50ffedd0bb065c84843b032',1,'grpc_shutdown(void):&#160;init.c'],['../init_8c.html#af1130720e50ffedd0bb065c84843b032',1,'grpc_shutdown(void):&#160;init.c']]],
+ ['grpc_5fslice_5fbuffer_5finline_5felements',['GRPC_SLICE_BUFFER_INLINE_ELEMENTS',['../slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809',1,'slice_buffer.h']]],
+ ['grpc_5fsockaddr_5fget_5fport',['grpc_sockaddr_get_port',['../sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da',1,'grpc_sockaddr_get_port(const struct sockaddr *addr):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a9b9c605d240e9358a23f29c4cf07b1da',1,'grpc_sockaddr_get_port(const struct sockaddr *addr):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fis_5fv4mapped',['grpc_sockaddr_is_v4mapped',['../sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce',1,'grpc_sockaddr_is_v4mapped(const struct sockaddr *addr, struct sockaddr_in *addr4_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a97d452690214de3809f667f95dda80ce',1,'grpc_sockaddr_is_v4mapped(const struct sockaddr *addr, struct sockaddr_in *addr4_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fis_5fwildcard',['grpc_sockaddr_is_wildcard',['../sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2',1,'grpc_sockaddr_is_wildcard(const struct sockaddr *addr, int *port_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#aed4ad468c36fc0a4531025c5fa2185a2',1,'grpc_sockaddr_is_wildcard(const struct sockaddr *addr, int *port_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fmake_5fwildcard4',['grpc_sockaddr_make_wildcard4',['../sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e',1,'grpc_sockaddr_make_wildcard4(int port, struct sockaddr_in *wild_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a89be072619a282936b8c1f99c5af254e',1,'grpc_sockaddr_make_wildcard4(int port, struct sockaddr_in *wild_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fmake_5fwildcard6',['grpc_sockaddr_make_wildcard6',['../sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8',1,'grpc_sockaddr_make_wildcard6(int port, struct sockaddr_in6 *wild_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a1a8a1c666324ed6d23077a0dd77bd2b8',1,'grpc_sockaddr_make_wildcard6(int port, struct sockaddr_in6 *wild_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fmake_5fwildcards',['grpc_sockaddr_make_wildcards',['../sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721',1,'grpc_sockaddr_make_wildcards(int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a3cb44f54c6743ff32dc31147ca6a6721',1,'grpc_sockaddr_make_wildcards(int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fset_5fport',['grpc_sockaddr_set_port',['../sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d',1,'grpc_sockaddr_set_port(const struct sockaddr *addr, int port):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#ad73cd02c052e82778b7df5378ded462d',1,'grpc_sockaddr_set_port(const struct sockaddr *addr, int port):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fto_5fstring',['grpc_sockaddr_to_string',['../sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464',1,'grpc_sockaddr_to_string(char **out, const struct sockaddr *addr, int normalize):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a400a51bd46384a6e0b28136274765464',1,'grpc_sockaddr_to_string(char **out, const struct sockaddr *addr, int normalize):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fto_5furi',['grpc_sockaddr_to_uri',['../sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91',1,'grpc_sockaddr_to_uri(const struct sockaddr *addr):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a8545a440d2d91365d75ed87720891a91',1,'grpc_sockaddr_to_uri(const struct sockaddr *addr):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fto_5fv4mapped',['grpc_sockaddr_to_v4mapped',['../sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79',1,'grpc_sockaddr_to_v4mapped(const struct sockaddr *addr, struct sockaddr_in6 *addr6_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a606efe4550fb7947fb36ff6a0231ac79',1,'grpc_sockaddr_to_v4mapped(const struct sockaddr *addr, struct sockaddr_in6 *addr6_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsocket_5fnotify_5fon_5fread',['grpc_socket_notify_on_read',['../iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00',1,'iocp_windows.h']]],
+ ['grpc_5fsocket_5fnotify_5fon_5fwrite',['grpc_socket_notify_on_write',['../iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38',1,'iocp_windows.h']]],
+ ['grpc_5fsopb_5fadd_5fbegin_5fmessage',['grpc_sopb_add_begin_message',['../stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9',1,'grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length, gpr_uint32 flags):&#160;stream_op.c'],['../stream__op_8c.html#a6b1565cc1ec9aba1eef5c21318e088b9',1,'grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length, gpr_uint32 flags):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fadd_5fmetadata',['grpc_sopb_add_metadata',['../stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb',1,'grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_metadata_batch metadata):&#160;stream_op.c'],['../stream__op_8c.html#aea2cbf38a752864f62dc8d2cdc58a50a',1,'grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_metadata_batch b):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fadd_5fno_5fop',['grpc_sopb_add_no_op',['../stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850',1,'grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#abe45d7a6778fc0e248e490dfb635d850',1,'grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fadd_5fslice',['grpc_sopb_add_slice',['../stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69',1,'grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice):&#160;stream_op.c'],['../stream__op_8c.html#aa2a412545fb6bb4055f3437f1d261f69',1,'grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fappend',['grpc_sopb_append',['../stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818',1,'grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops, size_t nops):&#160;stream_op.c'],['../stream__op_8c.html#a55100e31b3cc23733ba42bb5e2f38818',1,'grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops, size_t nops):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fdestroy',['grpc_sopb_destroy',['../stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1',1,'grpc_sopb_destroy(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#aef34bb8bc5d02c10304fa93de76604d1',1,'grpc_sopb_destroy(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5finit',['grpc_sopb_init',['../stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935',1,'grpc_sopb_init(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#ac06c5c016030ab760ce1c190ea9c0935',1,'grpc_sopb_init(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5finline_5felements',['GRPC_SOPB_INLINE_ELEMENTS',['../stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca',1,'stream_op.h']]],
+ ['grpc_5fsopb_5fmove_5fto',['grpc_sopb_move_to',['../stream__op_8h.html#abf812a361634fee304b636fccde7c934',1,'grpc_sopb_move_to(grpc_stream_op_buffer *src, grpc_stream_op_buffer *dst):&#160;stream_op.c'],['../stream__op_8c.html#abf812a361634fee304b636fccde7c934',1,'grpc_sopb_move_to(grpc_stream_op_buffer *src, grpc_stream_op_buffer *dst):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5freset',['grpc_sopb_reset',['../stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e',1,'grpc_sopb_reset(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e',1,'grpc_sopb_reset(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fstring',['grpc_sopb_string',['../stream__op_8h.html#a225a70176577da4097ecad0b8c647fee',1,'grpc_sopb_string(grpc_stream_op_buffer *sopb):&#160;transport_op_string.c'],['../transport__op__string_8c.html#a225a70176577da4097ecad0b8c647fee',1,'grpc_sopb_string(grpc_stream_op_buffer *sopb):&#160;transport_op_string.c']]],
+ ['grpc_5fsopb_5fswap',['grpc_sopb_swap',['../stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb',1,'grpc_sopb_swap(grpc_stream_op_buffer *a, grpc_stream_op_buffer *b):&#160;stream_op.c'],['../stream__op_8c.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb',1,'grpc_sopb_swap(grpc_stream_op_buffer *a, grpc_stream_op_buffer *b):&#160;stream_op.c']]],
+ ['grpc_5fspecialized_5fwakeup_5ffd_5fvtable',['grpc_specialized_wakeup_fd_vtable',['../wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fssl_5fchannel_5fsecurity_5fconnector',['grpc_ssl_channel_security_connector',['../structgrpc__ssl__channel__security__connector.html',1,'']]],
+ ['grpc_5fssl_5fchannel_5fsecurity_5fconnector_5fcreate',['grpc_ssl_channel_security_connector_create',['../security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d',1,'grpc_ssl_channel_security_connector_create(grpc_credentials *request_metadata_creds, const grpc_ssl_config *config, const char *target_name, const char *overridden_target_name, grpc_channel_security_connector **sc):&#160;security_connector.c'],['../security__connector_8c.html#a6db43510beb4d3953f572cbe203c164d',1,'grpc_ssl_channel_security_connector_create(grpc_credentials *request_metadata_creds, const grpc_ssl_config *config, const char *target_name, const char *overridden_target_name, grpc_channel_security_connector **sc):&#160;security_connector.c']]],
+ ['grpc_5fssl_5fcipher_5fsuites',['GRPC_SSL_CIPHER_SUITES',['../security__connector_8c.html#ab67f630ea3179d8d418fddcdc0deef5c',1,'security_connector.c']]],
+ ['grpc_5fssl_5fconfig',['grpc_ssl_config',['../structgrpc__ssl__config.html',1,'']]],
+ ['grpc_5fssl_5fcredentials',['grpc_ssl_credentials',['../structgrpc__ssl__credentials.html',1,'']]],
+ ['grpc_5fssl_5fcredentials_5fcreate',['grpc_ssl_credentials_create',['../grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e',1,'grpc_ssl_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pair):&#160;credentials.c'],['../credentials_8c.html#a0d627ca897718091e4ceca5dce3ef10e',1,'grpc_ssl_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pair):&#160;credentials.c']]],
+ ['grpc_5fssl_5fpem_5fkey_5fcert_5fpair',['grpc_ssl_pem_key_cert_pair',['../structgrpc__ssl__pem__key__cert__pair.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fconfig',['grpc_ssl_server_config',['../structgrpc__ssl__server__config.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fcredentials',['grpc_ssl_server_credentials',['../structgrpc__ssl__server__credentials.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fcredentials_5fcreate',['grpc_ssl_server_credentials_create',['../grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9',1,'grpc_ssl_server_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth):&#160;credentials.c'],['../credentials_8c.html#a3382907a4689c034a6f55bab4d5135b9',1,'grpc_ssl_server_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth):&#160;credentials.c']]],
+ ['grpc_5fssl_5fserver_5fsecurity_5fconnector',['grpc_ssl_server_security_connector',['../structgrpc__ssl__server__security__connector.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fsecurity_5fconnector_5fcreate',['grpc_ssl_server_security_connector_create',['../security__connector_8h.html#af0fc288920d58432af4285ec56251248',1,'grpc_ssl_server_security_connector_create(const grpc_ssl_server_config *config, grpc_security_connector **sc):&#160;security_connector.c'],['../security__connector_8c.html#af0fc288920d58432af4285ec56251248',1,'grpc_ssl_server_security_connector_create(const grpc_ssl_server_config *config, grpc_security_connector **sc):&#160;security_connector.c']]],
+ ['grpc_5fssl_5ftarget_5fname_5foverride_5farg',['GRPC_SSL_TARGET_NAME_OVERRIDE_ARG',['../grpc__security_8h.html#a218bf55b665134a11baf07ada5980825',1,'grpc_security.h']]],
+ ['grpc_5fssl_5ftransport_5fsecurity_5ftype',['GRPC_SSL_TRANSPORT_SECURITY_TYPE',['../grpc__security_8h.html#a35a35c597b7090b8ac7e2d854c9bcc7a',1,'grpc_security.h']]],
+ ['grpc_5fssl_5furl_5fscheme',['GRPC_SSL_URL_SCHEME',['../security__connector_8h.html#a9e0af76d139286bef4c720bde3a7a6c0',1,'security_connector.h']]],
+ ['grpc_5fstatus_5f_5fdo_5fnot_5fuse',['GRPC_STATUS__DO_NOT_USE',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96',1,'status.h']]],
+ ['grpc_5fstatus_5faborted',['GRPC_STATUS_ABORTED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9',1,'status.h']]],
+ ['grpc_5fstatus_5falready_5fexists',['GRPC_STATUS_ALREADY_EXISTS',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b',1,'status.h']]],
+ ['grpc_5fstatus_5fcancelled',['GRPC_STATUS_CANCELLED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038',1,'status.h']]],
+ ['grpc_5fstatus_5fcode',['grpc_status_code',['../status_8h.html#a35ab2a68917eb836de84cb23253108eb',1,'status.h']]],
+ ['grpc_5fstatus_5fdata_5floss',['GRPC_STATUS_DATA_LOSS',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7',1,'status.h']]],
+ ['grpc_5fstatus_5fdeadline_5fexceeded',['GRPC_STATUS_DEADLINE_EXCEEDED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208',1,'status.h']]],
+ ['grpc_5fstatus_5felem',['grpc_status_elem',['../structgrpc__channel.html#ad50abb90c5f7ef77e51f8387b06451f9',1,'grpc_channel']]],
+ ['grpc_5fstatus_5ffailed_5fprecondition',['GRPC_STATUS_FAILED_PRECONDITION',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f',1,'status.h']]],
+ ['grpc_5fstatus_5finternal',['GRPC_STATUS_INTERNAL',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520',1,'status.h']]],
+ ['grpc_5fstatus_5finvalid_5fargument',['GRPC_STATUS_INVALID_ARGUMENT',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731',1,'status.h']]],
+ ['grpc_5fstatus_5fnot_5ffound',['GRPC_STATUS_NOT_FOUND',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2',1,'status.h']]],
+ ['grpc_5fstatus_5fok',['GRPC_STATUS_OK',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201',1,'status.h']]],
+ ['grpc_5fstatus_5fout_5fof_5frange',['GRPC_STATUS_OUT_OF_RANGE',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b',1,'status.h']]],
+ ['grpc_5fstatus_5fpermission_5fdenied',['GRPC_STATUS_PERMISSION_DENIED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4',1,'status.h']]],
+ ['grpc_5fstatus_5fresource_5fexhausted',['GRPC_STATUS_RESOURCE_EXHAUSTED',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9',1,'status.h']]],
+ ['grpc_5fstatus_5fstring',['grpc_status_string',['../structgrpc__channel.html#a4b3d99e4664ffe3399d29f61f7063600',1,'grpc_channel']]],
+ ['grpc_5fstatus_5funauthenticated',['GRPC_STATUS_UNAUTHENTICATED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb',1,'status.h']]],
+ ['grpc_5fstatus_5funavailable',['GRPC_STATUS_UNAVAILABLE',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79',1,'status.h']]],
+ ['grpc_5fstatus_5funimplemented',['GRPC_STATUS_UNIMPLEMENTED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2',1,'status.h']]],
+ ['grpc_5fstatus_5funknown',['GRPC_STATUS_UNKNOWN',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08',1,'status.h']]],
+ ['grpc_5fstream',['grpc_stream',['../transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449',1,'transport.h']]],
+ ['grpc_5fstream_5fclosed',['GRPC_STREAM_CLOSED',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362',1,'transport.h']]],
+ ['grpc_5fstream_5fop',['grpc_stream_op',['../structgrpc__stream__op.html',1,'grpc_stream_op'],['../stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127',1,'grpc_stream_op():&#160;stream_op.h']]],
+ ['grpc_5fstream_5fop_5fbuffer',['grpc_stream_op_buffer',['../structgrpc__stream__op__buffer.html',1,'grpc_stream_op_buffer'],['../stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5',1,'grpc_stream_op_buffer():&#160;stream_op.h']]],
+ ['grpc_5fstream_5fop_5fcode',['grpc_stream_op_code',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804',1,'grpc_stream_op_code():&#160;stream_op.h'],['../stream__op_8h.html#aae7f77961eb1741340666865ab0c5fc7',1,'grpc_stream_op_code():&#160;stream_op.h']]],
+ ['grpc_5fstream_5fopen',['GRPC_STREAM_OPEN',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76',1,'transport.h']]],
+ ['grpc_5fstream_5fops_5funref_5fowned_5fobjects',['grpc_stream_ops_unref_owned_objects',['../stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d',1,'grpc_stream_ops_unref_owned_objects(grpc_stream_op *ops, size_t nops):&#160;stream_op.c'],['../stream__op_8c.html#af06b21376669ed6bf358f50a57e02d9d',1,'grpc_stream_ops_unref_owned_objects(grpc_stream_op *ops, size_t nops):&#160;stream_op.c']]],
+ ['grpc_5fstream_5frecv_5fclosed',['GRPC_STREAM_RECV_CLOSED',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7',1,'transport.h']]],
+ ['grpc_5fstream_5fsend_5fclosed',['GRPC_STREAM_SEND_CLOSED',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a',1,'transport.h']]],
+ ['grpc_5fstream_5fstate',['grpc_stream_state',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b',1,'grpc_stream_state():&#160;transport.h'],['../transport_8h.html#ad2bffd8c4adc3f1131752a17710d8477',1,'grpc_stream_state():&#160;transport.h']]],
+ ['grpc_5fsubchannel',['grpc_subchannel',['../structgrpc__subchannel.html',1,'grpc_subchannel'],['../subchannel_8h.html#a6d36bd247fd79f7c8a2788d04f622a06',1,'grpc_subchannel():&#160;subchannel.h']]],
+ ['grpc_5fsubchannel_5fadd_5finterested_5fparty',['grpc_subchannel_add_interested_party',['../subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579',1,'grpc_subchannel_add_interested_party(grpc_subchannel *channel, grpc_pollset *pollset):&#160;subchannel.c'],['../subchannel_8c.html#ad64aa215ea81487204c6598b4f1572ae',1,'grpc_subchannel_add_interested_party(grpc_subchannel *c, grpc_pollset *pollset):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fargs',['grpc_subchannel_args',['../structgrpc__subchannel__args.html',1,'grpc_subchannel_args'],['../subchannel_8h.html#a1ef8f51fcaea0bb29010f164b4429a55',1,'grpc_subchannel_args():&#160;subchannel.h']]],
+ ['grpc_5fsubchannel_5fcall',['grpc_subchannel_call',['../structgrpc__subchannel__call.html',1,'grpc_subchannel_call'],['../subchannel_8h.html#a007a93252a4a76631336ab840c18ee7d',1,'grpc_subchannel_call():&#160;subchannel.h']]],
+ ['grpc_5fsubchannel_5fcall_5fget_5fpeer',['grpc_subchannel_call_get_peer',['../subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616',1,'grpc_subchannel_call_get_peer(grpc_subchannel_call *subchannel_call):&#160;subchannel.c'],['../subchannel_8c.html#a552e894b75a9a67f00e4ae312a94cc00',1,'grpc_subchannel_call_get_peer(grpc_subchannel_call *call):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcall_5fprocess_5fop',['grpc_subchannel_call_process_op',['../subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad',1,'grpc_subchannel_call_process_op(grpc_subchannel_call *subchannel_call, grpc_transport_stream_op *op):&#160;subchannel.c'],['../subchannel_8c.html#a0128c4e7cd5939061ea02780e5fa33ae',1,'grpc_subchannel_call_process_op(grpc_subchannel_call *call, grpc_transport_stream_op *op):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcall_5fref',['grpc_subchannel_call_ref',['../subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93',1,'grpc_subchannel_call_ref(grpc_subchannel_call *call):&#160;subchannel.h'],['../subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067',1,'grpc_subchannel_call_ref(grpc_subchannel_call *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c'],['../subchannel_8h.html#aa0f8df565952fc5504c9658b426c64a7',1,'GRPC_SUBCHANNEL_CALL_REF():&#160;subchannel.h']]],
+ ['grpc_5fsubchannel_5fcall_5funref',['grpc_subchannel_call_unref',['../subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53',1,'grpc_subchannel_call_unref(grpc_subchannel_call *call):&#160;subchannel.h'],['../subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060',1,'grpc_subchannel_call_unref(grpc_subchannel_call *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c'],['../subchannel_8h.html#a5d26bb43a6c7a1d40d130c7dd08b4ca8',1,'GRPC_SUBCHANNEL_CALL_UNREF():&#160;subchannel.h']]],
+ ['grpc_5fsubchannel_5fcheck_5fconnectivity',['grpc_subchannel_check_connectivity',['../subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709',1,'grpc_subchannel_check_connectivity(grpc_subchannel *channel):&#160;subchannel.c'],['../subchannel_8c.html#a92711f9b7c8df9415249685a9c91f2c9',1,'grpc_subchannel_check_connectivity(grpc_subchannel *c):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcreate',['grpc_subchannel_create',['../subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8',1,'grpc_subchannel_create(grpc_connector *connector, grpc_subchannel_args *args):&#160;subchannel.c'],['../subchannel_8c.html#a5220a721bb5ad91bffbddd12045efff8',1,'grpc_subchannel_create(grpc_connector *connector, grpc_subchannel_args *args):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcreate_5fcall',['grpc_subchannel_create_call',['../subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d',1,'grpc_subchannel_create_call(grpc_subchannel *subchannel, grpc_pollset *pollset, grpc_subchannel_call **target, grpc_iomgr_closure *notify):&#160;subchannel.c'],['../subchannel_8c.html#aa6b5c676351c4f7f33b903549edab3b7',1,'grpc_subchannel_create_call(grpc_subchannel *c, grpc_pollset *pollset, grpc_subchannel_call **target, grpc_iomgr_closure *notify):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fdel_5finterested_5fparty',['grpc_subchannel_del_interested_party',['../subchannel_8h.html#aa8ea5c658e34de467db80c269231e676',1,'grpc_subchannel_del_interested_party(grpc_subchannel *channel, grpc_pollset *pollset):&#160;subchannel.c'],['../subchannel_8c.html#a72bfe59d8ad11465896034281729279b',1,'grpc_subchannel_del_interested_party(grpc_subchannel *c, grpc_pollset *pollset):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5ffactory',['grpc_subchannel_factory',['../structgrpc__subchannel__factory.html',1,'grpc_subchannel_factory'],['../subchannel__factory_8h.html#a0881f059aa8f26e71eb479eed9d06785',1,'grpc_subchannel_factory():&#160;subchannel_factory.h']]],
+ ['grpc_5fsubchannel_5ffactory_5fadd_5fchannel_5farg',['grpc_subchannel_factory_add_channel_arg',['../add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34',1,'grpc_subchannel_factory_add_channel_arg(grpc_subchannel_factory *input, const grpc_arg *arg):&#160;add_channel_arg.c'],['../add__channel__arg_8c.html#aec70a5daa15f33d18edc47ebc0270c34',1,'grpc_subchannel_factory_add_channel_arg(grpc_subchannel_factory *input, const grpc_arg *arg):&#160;add_channel_arg.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fcreate_5fsubchannel',['grpc_subchannel_factory_create_subchannel',['../subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20',1,'grpc_subchannel_factory_create_subchannel(grpc_subchannel_factory *factory, grpc_subchannel_args *args):&#160;subchannel_factory.c'],['../subchannel__factory_8c.html#a50ecfa3c06af1f867684d3c238cedf20',1,'grpc_subchannel_factory_create_subchannel(grpc_subchannel_factory *factory, grpc_subchannel_args *args):&#160;subchannel_factory.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fmerge_5fchannel_5fargs',['grpc_subchannel_factory_merge_channel_args',['../merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0',1,'grpc_subchannel_factory_merge_channel_args(grpc_subchannel_factory *input, const grpc_channel_args *args):&#160;merge_channel_args.c'],['../merge__channel__args_8c.html#a4dc574355128feee36ad9500f9ae8cc0',1,'grpc_subchannel_factory_merge_channel_args(grpc_subchannel_factory *input, const grpc_channel_args *args):&#160;merge_channel_args.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fref',['grpc_subchannel_factory_ref',['../subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84',1,'grpc_subchannel_factory_ref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c'],['../subchannel__factory_8c.html#a6486ef54aa6fe37d4fe5b7c53aed9a84',1,'grpc_subchannel_factory_ref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c']]],
+ ['grpc_5fsubchannel_5ffactory_5funref',['grpc_subchannel_factory_unref',['../subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82',1,'grpc_subchannel_factory_unref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c'],['../subchannel__factory_8c.html#ac502341f23676007c8ccd5338f942e82',1,'grpc_subchannel_factory_unref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fvtable',['grpc_subchannel_factory_vtable',['../structgrpc__subchannel__factory__vtable.html',1,'grpc_subchannel_factory_vtable'],['../subchannel__factory_8h.html#a032cc20ff8747dbc985aa2b85b8f7abf',1,'grpc_subchannel_factory_vtable():&#160;subchannel_factory.h']]],
+ ['grpc_5fsubchannel_5finitial_5fconnect_5fbackoff_5fseconds',['GRPC_SUBCHANNEL_INITIAL_CONNECT_BACKOFF_SECONDS',['../subchannel_8c.html#ab2916ffabb6e97931795c0cb17d5b1a0',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5fmin_5fconnect_5ftimeout_5fseconds',['GRPC_SUBCHANNEL_MIN_CONNECT_TIMEOUT_SECONDS',['../subchannel_8c.html#a4a297a5d3477460e802c804a945cfb4e',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5fnotify_5fon_5fstate_5fchange',['grpc_subchannel_notify_on_state_change',['../subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776',1,'grpc_subchannel_notify_on_state_change(grpc_subchannel *channel, grpc_connectivity_state *state, grpc_iomgr_closure *notify):&#160;subchannel.c'],['../subchannel_8c.html#ac2e59a5c3a44ba0827b27ccba866389b',1,'grpc_subchannel_notify_on_state_change(grpc_subchannel *c, grpc_connectivity_state *state, grpc_iomgr_closure *notify):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fprocess_5ftransport_5fop',['grpc_subchannel_process_transport_op',['../subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1',1,'grpc_subchannel_process_transport_op(grpc_subchannel *subchannel, grpc_transport_op *op):&#160;subchannel.c'],['../subchannel_8c.html#a9b95251da4779ae913c33f380a1c33c4',1,'grpc_subchannel_process_transport_op(grpc_subchannel *c, grpc_transport_op *op):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5freconnect_5fbackoff_5fmultiplier',['GRPC_SUBCHANNEL_RECONNECT_BACKOFF_MULTIPLIER',['../subchannel_8c.html#ad1761b478eb46b24379e6d5a9edd30af',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5freconnect_5fjitter',['GRPC_SUBCHANNEL_RECONNECT_JITTER',['../subchannel_8c.html#a9775a74d61f54cd0537630b9b7118802',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5freconnect_5fmax_5fbackoff_5fseconds',['GRPC_SUBCHANNEL_RECONNECT_MAX_BACKOFF_SECONDS',['../subchannel_8c.html#ad021f6795743d8163fff68703ffb663b',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5fref',['GRPC_SUBCHANNEL_REF',['../subchannel_8h.html#a7a3f5a07d6d6ca7864d0b571a2675d15',1,'GRPC_SUBCHANNEL_REF():&#160;subchannel.h'],['../subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4',1,'grpc_subchannel_ref(grpc_subchannel *channel):&#160;subchannel.h'],['../subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323',1,'grpc_subchannel_ref(grpc_subchannel *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fref_5fextra_5fargs',['GRPC_SUBCHANNEL_REF_EXTRA_ARGS',['../subchannel_8h.html#aabb025f64b5de653dc110d17add28e74',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5funref',['grpc_subchannel_unref',['../subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59',1,'grpc_subchannel_unref(grpc_subchannel *channel):&#160;subchannel.h'],['../subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f',1,'grpc_subchannel_unref(grpc_subchannel *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c'],['../subchannel_8h.html#accf1481a1fe9acf1537f665705a60d4c',1,'GRPC_SUBCHANNEL_UNREF():&#160;subchannel.h']]],
+ ['grpc_5fsurface_5ftrace',['grpc_surface_trace',['../surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5',1,'grpc_surface_trace():&#160;surface_trace.c'],['../surface__trace_8c.html#aa4f3485a1e8307d80c59a22e5b20f7a5',1,'grpc_surface_trace():&#160;surface_trace.c']]],
+ ['grpc_5fsurface_5ftrace_5freturned_5fevent',['GRPC_SURFACE_TRACE_RETURNED_EVENT',['../surface__trace_8h.html#ab6bd5be00afe2369bd1b63e13ab6197d',1,'surface_trace.h']]],
+ ['grpc_5ftcp_5fclient_5fconnect',['grpc_tcp_client_connect',['../tcp__client_8h.html#a086207583509b040c4fff779333468cd',1,'tcp_client.h']]],
+ ['grpc_5ftcp_5fcreate',['grpc_tcp_create',['../tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05',1,'grpc_tcp_create(grpc_fd *fd, size_t read_slice_size, const char *peer_string):&#160;tcp_posix.h'],['../tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483',1,'grpc_tcp_create(grpc_winsocket *socket, char *peer_string):&#160;tcp_windows.h']]],
+ ['grpc_5ftcp_5fdefault_5fread_5fslice_5fsize',['GRPC_TCP_DEFAULT_READ_SLICE_SIZE',['../tcp__posix_8h.html#a1f91c3aec64a436d29051c8d415b1053',1,'tcp_posix.h']]],
+ ['grpc_5ftcp_5fprepare_5fsocket',['grpc_tcp_prepare_socket',['../tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c',1,'tcp_windows.h']]],
+ ['grpc_5ftcp_5fserver',['grpc_tcp_server',['../tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fadd_5fport',['grpc_tcp_server_add_port',['../tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fcb',['grpc_tcp_server_cb',['../tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fcreate',['grpc_tcp_server_create',['../tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fdestroy',['grpc_tcp_server_destroy',['../tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fget_5ffd',['grpc_tcp_server_get_fd',['../tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fstart',['grpc_tcp_server_start',['../tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5ftrace',['grpc_tcp_trace',['../tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb',1,'tcp_posix.h']]],
+ ['grpc_5ftime_5faveraged_5fstats',['grpc_time_averaged_stats',['../structgrpc__time__averaged__stats.html',1,'']]],
+ ['grpc_5ftime_5faveraged_5fstats_5fadd_5fsample',['grpc_time_averaged_stats_add_sample',['../time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d',1,'grpc_time_averaged_stats_add_sample(grpc_time_averaged_stats *stats, double value):&#160;time_averaged_stats.c'],['../time__averaged__stats_8c.html#a3fc252070ff8ec7010c74774a042e54d',1,'grpc_time_averaged_stats_add_sample(grpc_time_averaged_stats *stats, double value):&#160;time_averaged_stats.c']]],
+ ['grpc_5ftime_5faveraged_5fstats_5finit',['grpc_time_averaged_stats_init',['../time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb',1,'grpc_time_averaged_stats_init(grpc_time_averaged_stats *stats, double init_avg, double regress_weight, double persistence_factor):&#160;time_averaged_stats.c'],['../time__averaged__stats_8c.html#a9b6a0cb59dc0a3c179ae425525dcb4eb',1,'grpc_time_averaged_stats_init(grpc_time_averaged_stats *stats, double init_avg, double regress_weight, double persistence_factor):&#160;time_averaged_stats.c']]],
+ ['grpc_5ftime_5faveraged_5fstats_5fupdate_5faverage',['grpc_time_averaged_stats_update_average',['../time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26',1,'grpc_time_averaged_stats_update_average(grpc_time_averaged_stats *stats):&#160;time_averaged_stats.c'],['../time__averaged__stats_8c.html#a811009e64ef5f5b88021d5aa08ceaf26',1,'grpc_time_averaged_stats_update_average(grpc_time_averaged_stats *stats):&#160;time_averaged_stats.c']]],
+ ['grpc_5ftimer_5fadd_5fimportant_5fmark',['grpc_timer_add_important_mark',['../timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744',1,'timers.h']]],
+ ['grpc_5ftimer_5fadd_5fmark',['grpc_timer_add_mark',['../timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746',1,'timers.h']]],
+ ['grpc_5ftimer_5fbegin',['grpc_timer_begin',['../timers_8h.html#a9ad8a62da486b38462306e41127231ea',1,'grpc_timer_begin(int tag, const char *tagstr, void *id, const char *file, int line):&#160;timers.h'],['../timers_8h.html#abf4cfef22d1c79525994ba224ac13dba',1,'GRPC_TIMER_BEGIN():&#160;timers.h']]],
+ ['grpc_5ftimer_5fend',['grpc_timer_end',['../timers_8h.html#a810b9be124a21ed5c4066f2e74112e74',1,'grpc_timer_end(int tag, const char *tagstr, void *id, const char *file, int line):&#160;timers.h'],['../timers_8h.html#ada806da3afa32376e244dfeb65ec467b',1,'GRPC_TIMER_END():&#160;timers.h']]],
+ ['grpc_5ftimer_5fimportant_5fmark',['GRPC_TIMER_IMPORTANT_MARK',['../timers_8h.html#a4de2bf5918f608b72f3c426e4a43e7c8',1,'timers.h']]],
+ ['grpc_5ftimer_5fmark',['GRPC_TIMER_MARK',['../timers_8h.html#acafc06612d7b046547ed80c18d519608',1,'timers.h']]],
+ ['grpc_5ftimers_5fglobal_5fdestroy',['grpc_timers_global_destroy',['../timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13',1,'grpc_timers_global_destroy(void):&#160;basic_timers.c'],['../basic__timers_8c.html#a3464d3fdd0cc9ab2543195d5ee3fec13',1,'grpc_timers_global_destroy(void):&#160;basic_timers.c']]],
+ ['grpc_5ftimers_5fglobal_5finit',['grpc_timers_global_init',['../timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac',1,'grpc_timers_global_init(void):&#160;basic_timers.c'],['../basic__timers_8c.html#ac34b4d619b9ed067e02e037b21a6feac',1,'grpc_timers_global_init(void):&#160;basic_timers.c']]],
+ ['grpc_5ftrace_5fbatch',['grpc_trace_batch',['../call_8h.html#a9fa9c0e067be7cfea08021b019544382',1,'grpc_trace_batch():&#160;call_log_batch.c'],['../call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382',1,'grpc_trace_batch():&#160;call_log_batch.c']]],
+ ['grpc_5ftrace_5fchannel',['grpc_trace_channel',['../channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4',1,'grpc_trace_channel():&#160;channel_stack.c'],['../channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4',1,'grpc_trace_channel():&#160;channel_stack.c']]],
+ ['grpc_5ftrace_5fsecure_5fendpoint',['grpc_trace_secure_endpoint',['../secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd',1,'grpc_trace_secure_endpoint():&#160;secure_endpoint.c'],['../secure__endpoint_8c.html#a7778bdc8c40adac0dc536fe255b75fbd',1,'grpc_trace_secure_endpoint():&#160;secure_endpoint.c']]],
+ ['grpc_5ftracer_5finit',['grpc_tracer_init',['../trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2',1,'grpc_tracer_init(const char *env_var_name):&#160;trace.c'],['../trace_8c.html#a6875f9ce4490e731d36e872ab1b7d580',1,'grpc_tracer_init(const char *env_var):&#160;trace.c']]],
+ ['grpc_5ftracer_5fset_5fenabled',['grpc_tracer_set_enabled',['../grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350',1,'grpc_tracer_set_enabled(const char *name, int enabled):&#160;trace.c'],['../trace_8c.html#ae6984d3f0c3b9bc9a47859fd4dddc350',1,'grpc_tracer_set_enabled(const char *name, int enabled):&#160;trace.c']]],
+ ['grpc_5ftracer_5fshutdown',['grpc_tracer_shutdown',['../trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2',1,'grpc_tracer_shutdown(void):&#160;trace.c'],['../trace_8c.html#ad5ced3b2457db3a480e13e6e268543d2',1,'grpc_tracer_shutdown(void):&#160;trace.c']]],
+ ['grpc_5ftransport',['grpc_transport',['../structgrpc__transport.html',1,'grpc_transport'],['../transport_8h.html#a7ba3f709ee3b451e434c67acf7fb7451',1,'grpc_transport():&#160;transport.h']]],
+ ['grpc_5ftransport_5fclose',['grpc_transport_close',['../transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e',1,'transport.h']]],
+ ['grpc_5ftransport_5fdestroy',['grpc_transport_destroy',['../transport_8h.html#adb3ef83552276a5161ff6733f8455ae1',1,'grpc_transport_destroy(grpc_transport *transport):&#160;transport.c'],['../transport_8c.html#adb3ef83552276a5161ff6733f8455ae1',1,'grpc_transport_destroy(grpc_transport *transport):&#160;transport.c']]],
+ ['grpc_5ftransport_5fdestroy_5fstream',['grpc_transport_destroy_stream',['../transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af',1,'grpc_transport_destroy_stream(grpc_transport *transport, grpc_stream *stream):&#160;transport.c'],['../transport_8c.html#a21223037b0bc6a92a9e058e20be1b0af',1,'grpc_transport_destroy_stream(grpc_transport *transport, grpc_stream *stream):&#160;transport.c']]],
+ ['grpc_5ftransport_5fget_5fpeer',['grpc_transport_get_peer',['../transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e',1,'grpc_transport_get_peer(grpc_transport *transport):&#160;transport.c'],['../transport_8c.html#ac32bf69379cb94e6f951a4ec45a6157e',1,'grpc_transport_get_peer(grpc_transport *transport):&#160;transport.c']]],
+ ['grpc_5ftransport_5fgoaway',['grpc_transport_goaway',['../transport_8h.html#aea30a551f2d7a27edd9ddc9441523818',1,'transport.h']]],
+ ['grpc_5ftransport_5finit_5fstream',['grpc_transport_init_stream',['../transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc',1,'grpc_transport_init_stream(grpc_transport *transport, grpc_stream *stream, const void *server_data, grpc_transport_stream_op *initial_op):&#160;transport.c'],['../transport_8c.html#aba013c9e53a24f223283fc78cb6ca6cc',1,'grpc_transport_init_stream(grpc_transport *transport, grpc_stream *stream, const void *server_data, grpc_transport_stream_op *initial_op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fop',['grpc_transport_op',['../structgrpc__transport__op.html',1,'grpc_transport_op'],['../transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf',1,'grpc_transport_op():&#160;transport.h']]],
+ ['grpc_5ftransport_5fperform_5fop',['grpc_transport_perform_op',['../transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3',1,'grpc_transport_perform_op(grpc_transport *transport, grpc_transport_op *op):&#160;transport.c'],['../transport_8c.html#ae52662de3568a1d961e60e83d28e2dc3',1,'grpc_transport_perform_op(grpc_transport *transport, grpc_transport_op *op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fperform_5fstream_5fop',['grpc_transport_perform_stream_op',['../transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b',1,'grpc_transport_perform_stream_op(grpc_transport *transport, grpc_stream *stream, grpc_transport_stream_op *op):&#160;transport.c'],['../transport_8c.html#a81c2ae26b7109481d4538b48c15d5b1b',1,'grpc_transport_perform_stream_op(grpc_transport *transport, grpc_stream *stream, grpc_transport_stream_op *op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fping',['grpc_transport_ping',['../transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc',1,'transport.h']]],
+ ['grpc_5ftransport_5fsecurity_5ftype_5fproperty_5fname',['GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME',['../grpc__security_8h.html#aff82fdff9e7c40c4dd4bdc650e38e25a',1,'grpc_security.h']]],
+ ['grpc_5ftransport_5fstream_5fop',['grpc_transport_stream_op',['../structgrpc__transport__stream__op.html',1,'grpc_transport_stream_op'],['../transport_8h.html#a425321242c0f56ca08e74a4afcbdd017',1,'grpc_transport_stream_op():&#160;transport.h']]],
+ ['grpc_5ftransport_5fstream_5fop_5fadd_5fcancellation',['grpc_transport_stream_op_add_cancellation',['../transport_8h.html#ad1deb9664db9760e156951542378fe11',1,'grpc_transport_stream_op_add_cancellation(grpc_transport_stream_op *op, grpc_status_code status, grpc_mdstr *message):&#160;transport.c'],['../transport_8c.html#ad1deb9664db9760e156951542378fe11',1,'grpc_transport_stream_op_add_cancellation(grpc_transport_stream_op *op, grpc_status_code status, grpc_mdstr *message):&#160;transport.c']]],
+ ['grpc_5ftransport_5fstream_5fop_5ffinish_5fwith_5ffailure',['grpc_transport_stream_op_finish_with_failure',['../transport_8h.html#ac5aa9757a292d71026279316979b8e40',1,'grpc_transport_stream_op_finish_with_failure(grpc_transport_stream_op *op):&#160;transport.c'],['../transport_8c.html#ac5aa9757a292d71026279316979b8e40',1,'grpc_transport_stream_op_finish_with_failure(grpc_transport_stream_op *op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fstream_5fop_5fstring',['grpc_transport_stream_op_string',['../transport_8h.html#a058362edba570c120d125091b3c006d2',1,'grpc_transport_stream_op_string(grpc_transport_stream_op *op):&#160;transport_op_string.c'],['../transport__op__string_8c.html#a058362edba570c120d125091b3c006d2',1,'grpc_transport_stream_op_string(grpc_transport_stream_op *op):&#160;transport_op_string.c']]],
+ ['grpc_5ftransport_5fstream_5fsize',['grpc_transport_stream_size',['../transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d',1,'grpc_transport_stream_size(grpc_transport *transport):&#160;transport.c'],['../transport_8c.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d',1,'grpc_transport_stream_size(grpc_transport *transport):&#160;transport.c']]],
+ ['grpc_5ftransport_5fvtable',['grpc_transport_vtable',['../structgrpc__transport__vtable.html',1,'grpc_transport_vtable'],['../transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed',1,'grpc_transport_vtable():&#160;transport_impl.h']]],
+ ['grpc_5furi',['grpc_uri',['../structgrpc__uri.html',1,'']]],
+ ['grpc_5furi_5fdestroy',['grpc_uri_destroy',['../uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1',1,'grpc_uri_destroy(grpc_uri *uri):&#160;uri_parser.c'],['../uri__parser_8c.html#af4744a0a3c814548dbbecb79c4620ac1',1,'grpc_uri_destroy(grpc_uri *uri):&#160;uri_parser.c']]],
+ ['grpc_5furi_5fparse',['grpc_uri_parse',['../uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d',1,'grpc_uri_parse(const char *uri_text, int suppress_errors):&#160;uri_parser.c'],['../uri__parser_8c.html#aef57f54325374603bb0510e8b8b5976d',1,'grpc_uri_parse(const char *uri_text, int suppress_errors):&#160;uri_parser.c']]],
+ ['grpc_5fversion_5fstring',['grpc_version_string',['../grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51',1,'grpc_version_string(void):&#160;version.c'],['../version_8c.html#a250ca547d790874bd7b5ceec25f18c51',1,'grpc_version_string(void):&#160;version.c']]],
+ ['grpc_5fwakeup_5ffd_5fconsume_5fwakeup',['grpc_wakeup_fd_consume_wakeup',['../wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fcreate',['grpc_wakeup_fd_create',['../wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fdestroy',['grpc_wakeup_fd_destroy',['../wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fget_5fread_5ffd',['GRPC_WAKEUP_FD_GET_READ_FD',['../wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fglobal_5fdestroy',['grpc_wakeup_fd_global_destroy',['../wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fglobal_5finit',['grpc_wakeup_fd_global_init',['../wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fglobal_5finit_5fforce_5ffallback',['grpc_wakeup_fd_global_init_force_fallback',['../wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5finfo',['grpc_wakeup_fd_info',['../structgrpc__wakeup__fd__info.html',1,'grpc_wakeup_fd_info'],['../wakeup__fd__posix_8h.html#a5b7e6c1bff52dd231ecb17a6716c3815',1,'grpc_wakeup_fd_info():&#160;wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fvtable',['grpc_wakeup_fd_vtable',['../structgrpc__wakeup__fd__vtable.html',1,'grpc_wakeup_fd_vtable'],['../wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e',1,'grpc_wakeup_fd_vtable():&#160;wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fwakeup',['grpc_wakeup_fd_wakeup',['../wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwinsocket',['grpc_winsocket',['../structgrpc__winsocket.html',1,'grpc_winsocket'],['../socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a',1,'grpc_winsocket():&#160;socket_windows.h']]],
+ ['grpc_5fwinsocket_5fcallback_5finfo',['grpc_winsocket_callback_info',['../structgrpc__winsocket__callback__info.html',1,'grpc_winsocket_callback_info'],['../socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc',1,'grpc_winsocket_callback_info():&#160;socket_windows.h']]],
+ ['grpc_5fwinsocket_5fcreate',['grpc_winsocket_create',['../socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5fdestroy',['grpc_winsocket_destroy',['../socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5forphan',['grpc_winsocket_orphan',['../socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5fshutdown',['grpc_winsocket_shutdown',['../socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395',1,'socket_windows.h']]],
+ ['grpc_5fwrite_5fbuffer_5fhint',['GRPC_WRITE_BUFFER_HINT',['../grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0',1,'grpc.h']]],
+ ['grpc_5fwrite_5finternal_5fcompress',['GRPC_WRITE_INTERNAL_COMPRESS',['../stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35',1,'stream_op.h']]],
+ ['grpc_5fwrite_5finternal_5fused_5fmask',['GRPC_WRITE_INTERNAL_USED_MASK',['../stream__op_8h.html#a7acab698fedc01eca6138c3e30056ff1',1,'stream_op.h']]],
+ ['grpc_5fwrite_5fno_5fcompress',['GRPC_WRITE_NO_COMPRESS',['../grpc_8h.html#ae09000181671f031ed0e319ed557da4e',1,'grpc.h']]],
+ ['grpc_5fwrite_5fstate_5fopen',['GRPC_WRITE_STATE_OPEN',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883',1,'internal.h']]],
+ ['grpc_5fwrite_5fstate_5fqueued_5fclose',['GRPC_WRITE_STATE_QUEUED_CLOSE',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633',1,'internal.h']]],
+ ['grpc_5fwrite_5fstate_5fsent_5fclose',['GRPC_WRITE_STATE_SENT_CLOSE',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693',1,'internal.h']]],
+ ['grpc_5fwrite_5fused_5fmask',['GRPC_WRITE_USED_MASK',['../grpc_8h.html#a3317259e1098b2b6f49982d6997bbf6a',1,'grpc.h']]],
+ ['grpc_5fx509_5fcn_5fproperty_5fname',['GRPC_X509_CN_PROPERTY_NAME',['../grpc__security_8h.html#afee5e0fade6e0af1954529f1f08afe0c',1,'grpc_security.h']]],
+ ['grpc_5fx509_5fsan_5fproperty_5fname',['GRPC_X509_SAN_PROPERTY_NAME',['../grpc__security_8h.html#a1412421653b7999544296f56025a0f36',1,'grpc_security.h']]],
+ ['grpc_20core',['GRPC Core',['../index.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_8.html b/doc/ref/core.internal/html/search/all_8.html
new file mode 100644
index 0000000000..0179bdd463
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_8.js b/doc/ref/core.internal/html/search/all_8.js
new file mode 100644
index 0000000000..4d9b82c29f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_8.js
@@ -0,0 +1,65 @@
+var searchData=
+[
+ ['handshake_5fbuffer',['handshake_buffer',['../structgrpc__secure__transport__setup.html#a4ac21c122779d771e91d59bc1c74a723',1,'grpc_secure_transport_setup']]],
+ ['handshake_5fbuffer_5fsize',['handshake_buffer_size',['../structgrpc__secure__transport__setup.html#a0edef695f006557a299ea4384f3a5438',1,'grpc_secure_transport_setup']]],
+ ['handshaker',['handshaker',['../structgrpc__secure__transport__setup.html#acb477ffb68f62bc22048abef085575c3',1,'grpc_secure_transport_setup']]],
+ ['handshaker_5ffactory',['handshaker_factory',['../structgrpc__httpcli__ssl__channel__security__connector.html#a4ec68b3563b321823c2386381727b9c6',1,'grpc_httpcli_ssl_channel_security_connector::handshaker_factory()'],['../structgrpc__ssl__channel__security__connector.html#aea121da234d473666c85221663f00241',1,'grpc_ssl_channel_security_connector::handshaker_factory()'],['../structgrpc__ssl__server__security__connector.html#aa18f372b18a7dc70e96cc6cf751d58e3',1,'grpc_ssl_server_security_connector::handshaker_factory()']]],
+ ['handshaking_5ftcp_5fendpoints',['handshaking_tcp_endpoints',['../structgrpc__server__secure__state.html#acba74fb1730945adb6b8d60421321b26',1,'grpc_server_secure_state']]],
+ ['has_5fbase64_5fand_5fhuffman_5fencoded',['has_base64_and_huffman_encoded',['../structinternal__string.html#ad30156b9bc8f7fc9c60b09e3dcaef00a',1,'internal_string']]],
+ ['has_5fcompression_5falgorithm',['has_compression_algorithm',['../structcall__data.html#a69baa5f9149f7edadc3c8e5fc2c82aa8',1,'call_data']]],
+ ['has_5fpending_5fiocp',['has_pending_iocp',['../structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294',1,'grpc_winsocket_callback_info']]],
+ ['has_5frequest_5fmetadata',['has_request_metadata',['../structgrpc__credentials__vtable.html#acd487d7cf9dab42866c366a212ef4b15',1,'grpc_credentials_vtable']]],
+ ['has_5frequest_5fmetadata_5fonly',['has_request_metadata_only',['../structgrpc__credentials__vtable.html#a2028660c297e6e08be99e09f068921e7',1,'grpc_credentials_vtable']]],
+ ['has_5fvalue',['has_value',['../structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7',1,'grpc_chttp2_hptbl_find_result']]],
+ ['hash',['hash',['../structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d',1,'grpc_mdstr::hash()'],['../structinternal__string.html#abc9b5ed558b39ad7c3265964778b3b98',1,'internal_string::hash()']]],
+ ['hash_5ffragment_5f1',['HASH_FRAGMENT_1',['../stream__encoder_8c.html#a0551b7ff01539c9139e682053301b58b',1,'stream_encoder.c']]],
+ ['hash_5ffragment_5f2',['HASH_FRAGMENT_2',['../stream__encoder_8c.html#a00bb8310d47f7c0b6d5b9e86fdfbc043',1,'stream_encoder.c']]],
+ ['hash_5ffragment_5f3',['HASH_FRAGMENT_3',['../stream__encoder_8c.html#ac6a3339f7cdc67827f51d6f7162271fa',1,'stream_encoder.c']]],
+ ['hash_5ffragment_5f4',['HASH_FRAGMENT_4',['../stream__encoder_8c.html#a1aa06e441caa39deff8ee0dddaa18916',1,'stream_encoder.c']]],
+ ['hash_5fseed',['hash_seed',['../structgrpc__mdctx.html#a7ac9fbdc8d9e07461ae46e89de5dec68',1,'grpc_mdctx']]],
+ ['have_5falarm',['have_alarm',['../structgrpc__subchannel.html#a04c16f8c09717fcda07708f4d2924e30',1,'grpc_subchannel::have_alarm()'],['../structgrpc__call.html#a8ef6ebfaceedd93d50960c7e11a279b2',1,'grpc_call::have_alarm()']]],
+ ['have_5fread_5fbyte',['have_read_byte',['../structinternal__request.html#aff291a650e0020e9a09beb9cc64298f9',1,'internal_request']]],
+ ['hc_5fon_5frecv',['hc_on_recv',['../structcall__data.html#ab0f1ff70c9a8a72f5eb2e778fe709baf',1,'call_data']]],
+ ['hdr_5fcapacity',['hdr_capacity',['../structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77',1,'grpc_httpcli_parser']]],
+ ['hdr_5fcount',['hdr_count',['../structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0',1,'grpc_httpcli_request::hdr_count()'],['../structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e',1,'grpc_httpcli_response::hdr_count()']]],
+ ['hdrs',['hdrs',['../structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6',1,'grpc_httpcli_request::hdrs()'],['../structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d',1,'grpc_httpcli_response::hdrs()']]],
+ ['head',['head',['../structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73',1,'grpc_chttp2_stream_list::head()'],['../structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a',1,'grpc_mdelem_list::head()'],['../structgpr__stack__lockfree.html#a63a10f40dc93803a1d97846f659860eb',1,'gpr_stack_lockfree::head()']]],
+ ['header',['header',['../structverifier__cb__ctx.html#a300805c3f085e1a830e26030a0c823ad',1,'verifier_cb_ctx::header()'],['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa2e57918a09d25b07a664e505d50a97f6',1,'HEADER():&#160;stream_encoder.c']]],
+ ['header_5feof',['header_eof',['../structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50',1,'grpc_chttp2_transport_parsing']]],
+ ['header_5fidx',['header_idx',['../structframer__state.html#a8f1aacf4453938a5e335e77c6d775dc1',1,'framer_state']]],
+ ['heap',['heap',['../structshard__type.html#ae212a2061cff7c73ff1c208174272070',1,'shard_type']]],
+ ['heap_5findex',['heap_index',['../structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b',1,'grpc_alarm']]],
+ ['help',['help',['../structarg.html#a7c3bb14ce3710281f4f5c511961823df',1,'arg']]],
+ ['histogram_2ec',['histogram.c',['../histogram_8c.html',1,'']]],
+ ['histogram_2eh',['histogram.h',['../histogram_8h.html',1,'']]],
+ ['host',['host',['../structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631',1,'grpc_call_details::host()'],['../structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d',1,'grpc_httpcli_request::host()'],['../structinternal__request.html#ab545c1a0948fde5ebcf3a38e4bb2e976',1,'internal_request::host()'],['../structcall__data.html#a5b3ab9bd0e3c549bf9ad739f0011b995',1,'call_data::host()'],['../structchannel__registered__method.html#a6f9cc4376a5b8955a060f089720f2e9d',1,'channel_registered_method::host()'],['../structregistered__method.html#ac8947363747871cca9a921739b686545',1,'registered_method::host()']]],
+ ['host_5fcapacity',['host_capacity',['../structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1',1,'grpc_call_details']]],
+ ['host_5fkey',['host_key',['../structchannel__data.html#acf1f4e1f7664686d2c41072763080cf6',1,'channel_data']]],
+ ['host_5fport_2ec',['host_port.c',['../host__port_8c.html',1,'']]],
+ ['host_5fport_2eh',['host_port.h',['../host__port_8h.html',1,'']]],
+ ['hpack_5fcompressor',['hpack_compressor',['../structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460',1,'grpc_chttp2_transport_writing']]],
+ ['hpack_5fparser',['hpack_parser',['../structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d',1,'grpc_chttp2_transport_parsing']]],
+ ['hpack_5fparser_2ec',['hpack_parser.c',['../hpack__parser_8c.html',1,'']]],
+ ['hpack_5fparser_2eh',['hpack_parser.h',['../hpack__parser_8h.html',1,'']]],
+ ['hpack_5ftable_2ec',['hpack_table.c',['../hpack__table_8c.html',1,'']]],
+ ['hpack_5ftable_2eh',['hpack_table.h',['../hpack__table_8h.html',1,'']]],
+ ['hs_5fon_5frecv',['hs_on_recv',['../structcall__data.html#a449389cf74cdadc8a00b52990c7052d5',1,'call_data']]],
+ ['http2_5ferrors_2eh',['http2_errors.h',['../http2__errors_8h.html',1,'']]],
+ ['http_5fclient_5ffilter_2ec',['http_client_filter.c',['../http__client__filter_8c.html',1,'']]],
+ ['http_5fclient_5ffilter_2eh',['http_client_filter.h',['../http__client__filter_8h.html',1,'']]],
+ ['http_5fctx',['http_ctx',['../structgrpc__jwt__verifier.html#a0dbb6661ebad9689425e9a3e24c67a3d',1,'grpc_jwt_verifier']]],
+ ['http_5fscheme',['http_scheme',['../structchannel__data.html#a76cf628a9f2165700655595e349dc71c',1,'channel_data']]],
+ ['http_5fserver_5ffilter_2ec',['http_server_filter.c',['../http__server__filter_8c.html',1,'']]],
+ ['http_5fserver_5ffilter_2eh',['http_server_filter.h',['../http__server__filter_8h.html',1,'']]],
+ ['httpcli_2ec',['httpcli.c',['../httpcli_8c.html',1,'']]],
+ ['httpcli_2eh',['httpcli.h',['../httpcli_8h.html',1,'']]],
+ ['httpcli_5fcontext',['httpcli_context',['../structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8',1,'grpc_oauth2_token_fetcher_credentials']]],
+ ['httpcli_5fsecurity_5fconnector_2ec',['httpcli_security_connector.c',['../httpcli__security__connector_8c.html',1,'']]],
+ ['httpcli_5fsecurity_5fconnector_2eh',['httpcli_security_connector.h',['../httpcli__security__connector_8h.html',1,'']]],
+ ['https_5fscheme',['https_scheme',['../structchannel__data.html#a64d3d8ab7ed7ca08eb8e1e1823051d97',1,'channel_data']]],
+ ['huff',['huff',['../structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5',1,'grpc_chttp2_hpack_parser']]],
+ ['huff_5fout',['huff_out',['../structhuff__out.html',1,'']]],
+ ['huff_5fstate',['huff_state',['../structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c',1,'grpc_chttp2_hpack_parser']]],
+ ['huffsyms_2ec',['huffsyms.c',['../huffsyms_8c.html',1,'']]],
+ ['huffsyms_2eh',['huffsyms.h',['../huffsyms_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_9.html b/doc/ref/core.internal/html/search/all_9.html
new file mode 100644
index 0000000000..cd46d44056
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_9.js b/doc/ref/core.internal/html/search/all_9.js
new file mode 100644
index 0000000000..be42a96bcc
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_9.js
@@ -0,0 +1,94 @@
+var searchData=
+[
+ ['iam_5fmd',['iam_md',['../structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8',1,'grpc_iam_credentials']]],
+ ['iat',['iat',['../structgrpc__jwt__claims.html#a4f50dadfd0a2d3493065b5b4faf84fef',1,'grpc_jwt_claims']]],
+ ['id',['id',['../structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3',1,'census_stat::id()'],['../structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745',1,'grpc_chttp2_settings_parser::id()'],['../structgrpc__chttp2__outstanding__ping.html#a3cf40734ac72489211630654aaa02bd9',1,'grpc_chttp2_outstanding_ping::id()'],['../structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4',1,'grpc_chttp2_stream_global::id()'],['../structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832',1,'grpc_chttp2_stream_writing::id()'],['../structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83',1,'grpc_chttp2_stream_parsing::id()']]],
+ ['illegal',['ILLEGAL',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a64b291c78f4399005e7e6d35274ac792',1,'hpack_parser.c']]],
+ ['in_5farray',['in_array',['../structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438',1,'grpc_json_reader']]],
+ ['in_5fflight_5fcbs',['in_flight_cbs',['../structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2',1,'grpc_pollset']]],
+ ['in_5fobject',['in_object',['../structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6',1,'grpc_json_reader']]],
+ ['in_5fstream_5fmap',['in_stream_map',['../structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4',1,'grpc_chttp2_stream_global']]],
+ ['inactive_5fwatcher_5froot',['inactive_watcher_root',['../structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8',1,'grpc_fd']]],
+ ['included',['included',['../structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95',1,'grpc_chttp2_stream']]],
+ ['incoming',['incoming',['../structtsi__fake__handshaker.html#a88e5531bc9e28f480211209fe0d68e14',1,'tsi_fake_handshaker']]],
+ ['incoming_5fconfiguration',['incoming_configuration',['../structchannel__data.html#a2b20db607d1a87fa17b260cac4a121f0',1,'channel_data']]],
+ ['incoming_5fframe_5fflags',['incoming_frame_flags',['../structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fframe_5fsize',['incoming_frame_size',['../structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fframe_5ftype',['incoming_frame_type',['../structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fmessage',['incoming_message',['../structgrpc__call.html#a98eafd66de3d31324c7a9c113dfb9a56',1,'grpc_call']]],
+ ['incoming_5fmessage_5fflags',['incoming_message_flags',['../structgrpc__call.html#a4c3b082e465f93d090d6f523e197b43a',1,'grpc_call']]],
+ ['incoming_5fmessage_5flength',['incoming_message_length',['../structgrpc__call.html#a51fb682fa9024d09b2e137edb2fc13d0',1,'grpc_call']]],
+ ['incoming_5fmetadata',['incoming_metadata',['../structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5',1,'grpc_chttp2_stream_global::incoming_metadata()'],['../structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc',1,'grpc_chttp2_stream_parsing::incoming_metadata()']]],
+ ['incoming_5fmetadata_2ec',['incoming_metadata.c',['../incoming__metadata_8c.html',1,'']]],
+ ['incoming_5fmetadata_2eh',['incoming_metadata.h',['../incoming__metadata_8h.html',1,'']]],
+ ['incoming_5fqueue',['incoming_queue',['../structgrpc__call.html#ae217707d3befc054ac994f12de9e10bb',1,'grpc_call']]],
+ ['incoming_5fsettings',['incoming_settings',['../structgrpc__chttp2__settings__parser.html#a4b6b73681cb815b663dda8008ff3d519',1,'grpc_chttp2_settings_parser']]],
+ ['incoming_5fsopb',['incoming_sopb',['../structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c',1,'grpc_chttp2_data_parser::incoming_sopb()'],['../structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e',1,'grpc_chttp2_stream_global::incoming_sopb()']]],
+ ['incoming_5fstream',['incoming_stream',['../structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fstream_5fid',['incoming_stream_id',['../structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fwindow',['incoming_window',['../structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3',1,'grpc_chttp2_transport_global::incoming_window()'],['../structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498',1,'grpc_chttp2_transport_parsing::incoming_window()'],['../structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363',1,'grpc_chttp2_stream_global::incoming_window()'],['../structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622',1,'grpc_chttp2_stream_parsing::incoming_window()']]],
+ ['incoming_5fwindow_5fdelta',['incoming_window_delta',['../structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9',1,'grpc_chttp2_transport_parsing::incoming_window_delta()'],['../structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed',1,'grpc_chttp2_stream_parsing::incoming_window_delta()']]],
+ ['indent',['indent',['../structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de',1,'grpc_json_writer']]],
+ ['index',['index',['../structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6',1,'grpc_auth_property_iterator::index()'],['../structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb',1,'grpc_byte_buffer_reader::index()'],['../structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef',1,'grpc_chttp2_hpack_parser::index()'],['../structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea',1,'grpc_chttp2_hptbl_find_result::index()'],['../structlockfree__node__contents.html#a928cde9bc69482abb79427725c16b8f7',1,'lockfree_node_contents::index()']]],
+ ['indexed_5ffield',['INDEXED_FIELD',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acf55dbd5b43747a8de2b3475e776b2a9',1,'hpack_parser.c']]],
+ ['indexed_5ffield_5fx',['INDEXED_FIELD_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab2d9a731d5c6871093edecbab8ec1b8a',1,'hpack_parser.c']]],
+ ['indices_5felems',['indices_elems',['../structgrpc__chttp2__hpack__compressor.html#ae15305b7ada7f6b084088b9ab64240a1',1,'grpc_chttp2_hpack_compressor']]],
+ ['indices_5fkeys',['indices_keys',['../structgrpc__chttp2__hpack__compressor.html#abd71f91eced6cc4bfdef970d00bbe808',1,'grpc_chttp2_hpack_compressor']]],
+ ['init_2ec',['init.c',['../init_8c.html',1,'']]],
+ ['init_2eh',['init.h',['../init_8h.html',1,'']]],
+ ['init_5favg',['init_avg',['../structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224',1,'grpc_time_averaged_stats']]],
+ ['init_5fcall_5felem',['init_call_elem',['../structgrpc__channel__filter.html#aea34a13bc660ba869d4c18ed6cd21c2b',1,'grpc_channel_filter']]],
+ ['init_5fchannel_5felem',['init_channel_elem',['../structgrpc__channel__filter.html#a7171b1634e5a7d42880f68ae1a4f875a',1,'grpc_channel_filter']]],
+ ['init_5fsecure_2ec',['init_secure.c',['../init__secure_8c.html',1,'']]],
+ ['init_5fstream',['init_stream',['../structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f',1,'grpc_transport_vtable']]],
+ ['initial_5fmdtab_5fcapacity',['INITIAL_MDTAB_CAPACITY',['../metadata_8c.html#a79df755ba4db91d4b3ab5d375eb18364',1,'metadata.c']]],
+ ['initial_5fmetadata',['initial_metadata',['../structrequested__call.html#a813caeee0e35952179d319607847c7b7',1,'requested_call']]],
+ ['initial_5fstrtab_5fcapacity',['INITIAL_STRTAB_CAPACITY',['../metadata_8c.html#a6e712d615b691c6a9f5daf410b8850ad',1,'metadata.c']]],
+ ['initial_5fwindow_5fupdate',['initial_window_update',['../structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c',1,'grpc_chttp2_transport_parsing']]],
+ ['initialize_2ec',['initialize.c',['../initialize_8c.html',1,'']]],
+ ['inlined',['inlined',['../structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28',1,'gpr_slice::inlined()'],['../structgpr__slice__buffer.html#adb678a23dc27e50c478bc48d365420e2',1,'gpr_slice_buffer::inlined()']]],
+ ['inlined_5fops',['inlined_ops',['../structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301',1,'grpc_stream_op_buffer']]],
+ ['inner',['inner',['../structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805',1,'grpc_composite_credentials']]],
+ ['input',['input',['../structjson__reader__userdata.html#abccbf0e7d9695f00948288df13ba4c7e',1,'json_reader_userdata']]],
+ ['input_5fbuffer',['input_buffer',['../structsecure__endpoint.html#abc32a14befcf93c3a16dcb9e8fa66ef4',1,'secure_endpoint']]],
+ ['integer',['integer',['../structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554',1,'grpc_arg']]],
+ ['interested_5fparties',['interested_parties',['../structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac',1,'grpc_connect_in_args']]],
+ ['internal_2eh',['internal.h',['../internal_8h.html',1,'']]],
+ ['internal_5fdata',['internal_data',['../structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553',1,'grpc_metadata']]],
+ ['internal_5fmetadata',['internal_metadata',['../structinternal__metadata.html',1,'internal_metadata'],['../metadata_8c.html#a5de9c52bec44c8dd9a46d9575c4336ed',1,'internal_metadata():&#160;metadata.c']]],
+ ['internal_5frefcount',['internal_refcount',['../structgrpc__call.html#a8aedf0fd044d8d985172fd02293ed55d',1,'grpc_call::internal_refcount()'],['../structgrpc__server.html#ab5c3bf8e55920a90654d31c6a0836e93',1,'grpc_server::internal_refcount()']]],
+ ['internal_5frequest',['internal_request',['../structinternal__request.html',1,'']]],
+ ['internal_5fstring',['internal_string',['../structinternal__string.html',1,'internal_string'],['../metadata_8c.html#ac4804488e22d084fbaf91101dab8c1ee',1,'internal_string():&#160;metadata.c']]],
+ ['internal_5fstring_5fref',['INTERNAL_STRING_REF',['../metadata_8c.html#a83513324a061c9ec72f186425ccdb78b',1,'metadata.c']]],
+ ['internal_5fstring_5funref',['INTERNAL_STRING_UNREF',['../metadata_8c.html#a54692508d43c5445088e92d06a5665db',1,'metadata.c']]],
+ ['into_5fssl',['into_ssl',['../structtsi__ssl__handshaker.html#a6d79399d2bf72081032843d9800dcaa6',1,'tsi_ssl_handshaker::into_ssl()'],['../structtsi__ssl__frame__protector.html#ac1162fd08a5da7a1c5f142251beb9934',1,'tsi_ssl_frame_protector::into_ssl()']]],
+ ['invalid_5fentry_5findex',['INVALID_ENTRY_INDEX',['../stack__lockfree_8c.html#a6c03a49143863f3e267ce5a21ac6121c',1,'stack_lockfree.c']]],
+ ['invalid_5fheap_5findex',['INVALID_HEAP_INDEX',['../alarm_8c.html#ab10c095adee8fff29f7d8e4209b70c66',1,'alarm.c']]],
+ ['invalid_5fvalue_5fbehavior',['invalid_value_behavior',['../structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df',1,'grpc_chttp2_setting_parameters']]],
+ ['iocp_5fwindows_2ec',['iocp_windows.c',['../iocp__windows_8c.html',1,'']]],
+ ['iocp_5fwindows_2eh',['iocp_windows.h',['../iocp__windows_8h.html',1,'']]],
+ ['iomgr_2ec',['iomgr.c',['../iomgr_8c.html',1,'']]],
+ ['iomgr_2eh',['iomgr.h',['../iomgr_8h.html',1,'']]],
+ ['iomgr_5finternal_2eh',['iomgr_internal.h',['../iomgr__internal_8h.html',1,'']]],
+ ['iomgr_5fobj',['iomgr_obj',['../structinternal__request.html#a16edaecfecf5937255d86d07ab3be4d0',1,'internal_request']]],
+ ['iomgr_5fobject',['iomgr_object',['../structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc',1,'grpc_fd::iomgr_object()'],['../structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6',1,'grpc_winsocket::iomgr_object()']]],
+ ['iomgr_5fposix_2ec',['iomgr_posix.c',['../iomgr__posix_8c.html',1,'']]],
+ ['iomgr_5fposix_2eh',['iomgr_posix.h',['../iomgr__posix_8h.html',1,'']]],
+ ['iomgr_5fwindows_2ec',['iomgr_windows.c',['../iomgr__windows_8c.html',1,'']]],
+ ['is_5fack',['is_ack',['../structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c',1,'grpc_chttp2_ping_parser::is_ack()'],['../structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec',1,'grpc_chttp2_settings_parser::is_ack()']]],
+ ['is_5fasync',['is_async',['../structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806',1,'grpc_fake_oauth2_credentials']]],
+ ['is_5fbinary_5fheader',['is_binary_header',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35ee',1,'hpack_parser.c']]],
+ ['is_5fboundary',['is_boundary',['../structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec',1,'grpc_chttp2_hpack_parser']]],
+ ['is_5fclient',['is_client',['../structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e',1,'grpc_chttp2_transport_global::is_client()'],['../structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57',1,'grpc_chttp2_transport_writing::is_client()'],['../structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58',1,'grpc_chttp2_transport_parsing::is_client()'],['../structtsi__fake__handshaker.html#ab3817b146f5d0d09232581e33bfd50f0',1,'tsi_fake_handshaker::is_client()'],['../structgrpc__call.html#a5a4810b490545e9b18b488bef197314f',1,'grpc_call::is_client()'],['../structgrpc__channel.html#a4bfedb17fb28f088111e21abd9c2c4cc',1,'grpc_channel::is_client()']]],
+ ['is_5fclient_5fside',['is_client_side',['../structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd',1,'grpc_security_connector']]],
+ ['is_5fconnection_5fupdate',['is_connection_update',['../structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca',1,'grpc_chttp2_window_update_parser']]],
+ ['is_5fdone',['is_done',['../structcompute__engine__detector.html#a1b82128e01e4041639ff7e3f5286207d',1,'compute_engine_detector']]],
+ ['is_5feof',['is_eof',['../structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b',1,'grpc_chttp2_hpack_parser']]],
+ ['is_5fframe_5fcompressed',['is_frame_compressed',['../structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7',1,'grpc_chttp2_data_parser']]],
+ ['is_5flast_5fframe',['is_last_frame',['../structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e',1,'grpc_chttp2_data_parser']]],
+ ['is_5flast_5fsend',['is_last_send',['../structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f',1,'grpc_transport_stream_op']]],
+ ['is_5fserver_5fcq',['is_server_cq',['../structgrpc__completion__queue.html#a495f730490aa5625bb7ce2604ee8e6d7',1,'grpc_completion_queue']]],
+ ['is_5fset',['is_set',['../structreceived__status.html#a39555cb7bcc2ccf18854bd73136c9c03',1,'received_status']]],
+ ['is_5fshutdown',['is_shutdown',['../structgrpc__server__secure__state.html#aea11767a6c8e97a44574e8e3a368deec',1,'grpc_server_secure_state']]],
+ ['iss',['iss',['../structgrpc__jwt__claims.html#a69f31f01a0d1cac4f79f0a46ed4e6593',1,'grpc_jwt_claims']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_a.html b/doc/ref/core.internal/html/search/all_a.html
new file mode 100644
index 0000000000..eab655301b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_a.js b/doc/ref/core.internal/html/search/all_a.js
new file mode 100644
index 0000000000..332e6806df
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_a.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+ ['jose_5fheader',['jose_header',['../structjose__header.html',1,'']]],
+ ['json',['json',['../structgrpc__jwt__claims.html#add6f381accf815cd0b7385fded17fae5',1,'grpc_jwt_claims']]],
+ ['json_2ec',['json.c',['../json_8c.html',1,'']]],
+ ['json_2eh',['json.h',['../json_8h.html',1,'']]],
+ ['json_5fcommon_2eh',['json_common.h',['../json__common_8h.html',1,'']]],
+ ['json_5freader_2ec',['json_reader.c',['../json__reader_8c.html',1,'']]],
+ ['json_5freader_2eh',['json_reader.h',['../json__reader_8h.html',1,'']]],
+ ['json_5freader_5fuserdata',['json_reader_userdata',['../structjson__reader__userdata.html',1,'']]],
+ ['json_5fstring_2ec',['json_string.c',['../json__string_8c.html',1,'']]],
+ ['json_5ftoken_2ec',['json_token.c',['../json__token_8c.html',1,'']]],
+ ['json_5ftoken_2eh',['json_token.h',['../json__token_8h.html',1,'']]],
+ ['json_5fwriter_2ec',['json_writer.c',['../json__writer_8c.html',1,'']]],
+ ['json_5fwriter_2eh',['json_writer.h',['../json__writer_8h.html',1,'']]],
+ ['json_5fwriter_5fuserdata',['json_writer_userdata',['../structjson__writer__userdata.html',1,'']]],
+ ['jti',['jti',['../structgrpc__jwt__claims.html#abf5af69634298aaeeae5a0a2e6ef60f9',1,'grpc_jwt_claims']]],
+ ['jwt_5fexpiration',['jwt_expiration',['../structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a',1,'grpc_service_account_jwt_access_credentials']]],
+ ['jwt_5flifetime',['jwt_lifetime',['../structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126',1,'grpc_service_account_jwt_access_credentials']]],
+ ['jwt_5fmd',['jwt_md',['../structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533',1,'grpc_service_account_jwt_access_credentials']]],
+ ['jwt_5fverifier_2ec',['jwt_verifier.c',['../jwt__verifier_8c.html',1,'']]],
+ ['jwt_5fverifier_2eh',['jwt_verifier.h',['../jwt__verifier_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_b.html b/doc/ref/core.internal/html/search/all_b.html
new file mode 100644
index 0000000000..a2c161e0bd
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_b.js b/doc/ref/core.internal/html/search/all_b.js
new file mode 100644
index 0000000000..4db97b4ca6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_b.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['key',['key',['../structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968',1,'grpc_arg::key()'],['../structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7',1,'grpc_metadata::key()'],['../structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e',1,'grpc_httpcli_header::key()'],['../structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53',1,'grpc_credentials_md::key()'],['../structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32',1,'grpc_service_account_jwt_access_credentials::key()'],['../structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd',1,'grpc_service_account_credentials::key()'],['../structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6',1,'grpc_json::key()'],['../structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10',1,'grpc_chttp2_hpack_parser::key()'],['../structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94',1,'grpc_mdelem::key()'],['../structjson__reader__userdata.html#ac7750253670b78b205a06c2e371ac418',1,'json_reader_userdata::key()'],['../structinternal__metadata.html#a1ef3f9e31e4380c0ec8fce01714c0fa3',1,'internal_metadata::key()'],['../structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece',1,'gpr_pthread_thread_local::key()'],['../hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542',1,'key():&#160;hpack_table.c']]],
+ ['key_5furl_5fprefix',['key_url_prefix',['../structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec',1,'grpc_jwt_verifier_email_domain_key_url_mapping::key_url_prefix()'],['../structemail__key__mapping.html#a0c0fa6aa94861adf3c6a4f5f9579d37a',1,'email_key_mapping::key_url_prefix()']]],
+ ['keys',['keys',['../structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6',1,'grpc_chttp2_stream_map']]],
+ ['kick',['kick',['../structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc',1,'grpc_pollset_vtable']]],
+ ['kick_5fstate',['kick_state',['../structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f',1,'grpc_pollset']]],
+ ['kicked',['kicked',['../structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8',1,'grpc_pollset_kick_state']]],
+ ['kid',['kid',['../structjose__header.html#ae38087aaf6d4e0670bb5deda4375f719',1,'jose_header']]],
+ ['kill_5fzombie_5fclosure',['kill_zombie_closure',['../structcall__data.html#a2a1ef01585059d467002ce70f6fa03d1',1,'call_data']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_c.html b/doc/ref/core.internal/html/search/all_c.html
new file mode 100644
index 0000000000..bdd3ee2c50
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_c.js b/doc/ref/core.internal/html/search/all_c.js
new file mode 100644
index 0000000000..5e0f9f1af1
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_c.js
@@ -0,0 +1,46 @@
+var searchData=
+[
+ ['lame_5fclient_2ec',['lame_client.c',['../lame__client_8c.html',1,'']]],
+ ['last_5fent',['last_ent',['../structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b',1,'grpc_chttp2_hptbl']]],
+ ['last_5fincoming_5fstream_5fid',['last_incoming_stream_id',['../structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362',1,'grpc_chttp2_transport_global::last_incoming_stream_id()'],['../structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542',1,'grpc_chttp2_transport_parsing::last_incoming_stream_id()']]],
+ ['last_5fsend_5fcontains',['last_send_contains',['../structgrpc__call.html#a4428a5f3615eb7ed703cb5650c379225',1,'grpc_call']]],
+ ['last_5fshutdown_5fmessage_5ftime',['last_shutdown_message_time',['../structgrpc__server.html#aba4f032ca63d1a654bd2a7776dfb6b6f',1,'grpc_server']]],
+ ['last_5fstream_5fid',['last_stream_id',['../structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be',1,'grpc_chttp2_goaway_parser']]],
+ ['last_5fwas_5fheader',['last_was_header',['../structframer__state.html#a81d1d4409a7212a9da08212e55772b20',1,'framer_state']]],
+ ['lb_5fpolicy',['lb_policy',['../structchannel__data.html#a3cbf28a9634e67af5aea0af6363e4d94',1,'channel_data::lb_policy()'],['../structlb__policy__connectivity__watcher.html#a2e56bc230933c8ee0f5dbacf58e1805c',1,'lb_policy_connectivity_watcher::lb_policy()'],['../structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9',1,'grpc_client_config::lb_policy()']]],
+ ['lb_5fpolicy_2ec',['lb_policy.c',['../lb__policy_8c.html',1,'']]],
+ ['lb_5fpolicy_2eh',['lb_policy.h',['../lb__policy_8h.html',1,'']]],
+ ['lb_5fpolicy_5fconnectivity_5fwatcher',['lb_policy_connectivity_watcher',['../structlb__policy__connectivity__watcher.html',1,'']]],
+ ['lb_5fpolicy_5ffactory',['lb_policy_factory',['../structdns__resolver.html#a9e7953dbbac44c59c5f8d2946e4295f7',1,'dns_resolver::lb_policy_factory()'],['../structsockaddr__resolver.html#a3d3d40590716456f336738170ad3f3e8',1,'sockaddr_resolver::lb_policy_factory()']]],
+ ['left_5fovers',['left_overs',['../structgrpc__secure__transport__setup.html#ac057ddae29de167423a28ff357acab20',1,'grpc_secure_transport_setup']]],
+ ['leftover_5fbytes',['leftover_bytes',['../structsecure__endpoint.html#a46eca04c2167e2d459c0a7aab630bf8a',1,'secure_endpoint']]],
+ ['len',['len',['../structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56',1,'grpc_resolved_address']]],
+ ['length',['length',['../structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7',1,'tsi_peer_property::length()'],['../structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5',1,'grpc_chttp2_hpack_parser_string::length()'],['../structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88',1,'grpc_chttp2_huffsym::length()'],['../structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0',1,'grpc_begin_message::length()'],['../structb64__huff__sym.html#a32397c9284689efd11eb89236d8d69e2',1,'b64_huff_sym::length()'],['../structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5',1,'gpr_slice::length()'],['../structgpr__slice.html#acd3242f89b2999d12788e65337662cf3',1,'gpr_slice::length()'],['../structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3',1,'gpr_slice_buffer::length()'],['../structdump__out.html#ae5a2d8bf503113afc8d2da2cb36d70ad',1,'dump_out::length()']]],
+ ['line',['line',['../structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb',1,'gpr_log_func_args']]],
+ ['links',['links',['../structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624',1,'grpc_chttp2_stream']]],
+ ['list',['list',['../structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d',1,'grpc_metadata_batch::list()'],['../structshard__type.html#a9e5f5db6f2eb96346ad17f43f731b31f',1,'shard_type::list()']]],
+ ['listener',['listener',['../structlistener.html',1,'listener'],['../server_8c.html#a0a81ac863a31441ba5e8e2fc6be04f2c',1,'listener():&#160;server.c']]],
+ ['listeners',['listeners',['../structgrpc__server.html#a8034614967f908b2de453975996bdb7f',1,'grpc_server']]],
+ ['listeners_5fdestroyed',['listeners_destroyed',['../structgrpc__server.html#aa36374d7075e4d6af2c2c2cb8dc26552',1,'grpc_server']]],
+ ['lists',['lists',['../structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a',1,'grpc_chttp2_transport']]],
+ ['lithdr_5fincidx',['LITHDR_INCIDX',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ad521ba7e26b2f29b70f24ebe99a7b6d4',1,'hpack_parser.c']]],
+ ['lithdr_5fincidx_5fv',['LITHDR_INCIDX_V',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acc616dbc2d6e6d99eb2879bc55a85e8c',1,'hpack_parser.c']]],
+ ['lithdr_5fincidx_5fx',['LITHDR_INCIDX_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918abc7a5a868dc1b4304662225ded589449',1,'hpack_parser.c']]],
+ ['lithdr_5fnotidx',['LITHDR_NOTIDX',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a21b8279ee1879c395b696774c516b925',1,'hpack_parser.c']]],
+ ['lithdr_5fnotidx_5fv',['LITHDR_NOTIDX_V',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9108c78104ce0a038a1ee76f9d56ebb4',1,'hpack_parser.c']]],
+ ['lithdr_5fnotidx_5fx',['LITHDR_NOTIDX_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a17dbb369763076fa7714c613ca4778b4',1,'hpack_parser.c']]],
+ ['lithdr_5fnvridx',['LITHDR_NVRIDX',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918aa4c98da3a42fad37a7eaaa74e76590e2',1,'hpack_parser.c']]],
+ ['lithdr_5fnvridx_5fv',['LITHDR_NVRIDX_V',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab3fbe40c948e7abb4b587700f295c508',1,'hpack_parser.c']]],
+ ['lithdr_5fnvridx_5fx',['LITHDR_NVRIDX_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9e86cc54448658713f683983a377d364',1,'hpack_parser.c']]],
+ ['locked',['locked',['../structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342',1,'gpr_mu']]],
+ ['lockfree_5fnode',['lockfree_node',['../unionlockfree__node.html',1,'lockfree_node'],['../stack__lockfree_8c.html#a64e6ad783031985682ffda6b0c912bb6',1,'lockfree_node():&#160;stack_lockfree.c']]],
+ ['lockfree_5fnode_5fcontents',['lockfree_node_contents',['../structlockfree__node__contents.html',1,'']]],
+ ['log_2ec',['log.c',['../log_8c.html',1,'']]],
+ ['log_2eh',['log.h',['../log_8h.html',1,'']]],
+ ['log2_5fnum_5fshards',['LOG2_NUM_SHARDS',['../alarm_8c.html#ae48da0bb5039d191e6de667c888624c1',1,'alarm.c']]],
+ ['log_5fandroid_2ec',['log_android.c',['../log__android_8c.html',1,'']]],
+ ['log_5flinux_2ec',['log_linux.c',['../log__linux_8c.html',1,'']]],
+ ['log_5fposix_2ec',['log_posix.c',['../log__posix_8c.html',1,'']]],
+ ['log_5fwin32_2ec',['log_win32.c',['../log__win32_8c.html',1,'']]],
+ ['log_5fwin32_2eh',['log_win32.h',['../log__win32_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_d.html b/doc/ref/core.internal/html/search/all_d.html
new file mode 100644
index 0000000000..d51093367e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_d.js b/doc/ref/core.internal/html/search/all_d.js
new file mode 100644
index 0000000000..0b9f38fd77
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_d.js
@@ -0,0 +1,70 @@
+var searchData=
+[
+ ['malloc_5frefcount',['malloc_refcount',['../structmalloc__refcount.html',1,'']]],
+ ['mappings',['mappings',['../structgrpc__jwt__verifier.html#a1d15c7406be10b7fc86775320b2afac4',1,'grpc_jwt_verifier']]],
+ ['master',['master',['../structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275',1,'grpc_subchannel_args::master()'],['../structsubchannel__factory.html#ab7945d086262563fdde51b250893e428',1,'subchannel_factory::master()'],['../structchannel__data.html#a185d2abf35cf1fbdaa13b4fb097bda5e',1,'channel_data::master()'],['../structgrpc__subchannel.html#a7662fa59b78e15ce10c272651e82b70d',1,'grpc_subchannel::master()']]],
+ ['masters',['masters',['../structgrpc__call.html#a6a0e7c0825db8dc7561af44663cbd75d',1,'grpc_call']]],
+ ['max_5falarms_5fper_5fcheck',['MAX_ALARMS_PER_CHECK',['../alarm_8c.html#a035d5ac078d2c49bd8bc08a56eaeb7bb',1,'alarm.c']]],
+ ['max_5fbuffer_5flength',['MAX_BUFFER_LENGTH',['../connected__channel_8c.html#aa8a8ed5c9e057542ff818fde39a94f07',1,'connected_channel.c']]],
+ ['max_5fbytes',['max_bytes',['../structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b',1,'grpc_chttp2_hptbl']]],
+ ['max_5fclient_5fstream_5fid',['MAX_CLIENT_STREAM_ID',['../chttp2__transport_8c.html#afdde497df8d499ae838ff389ab262ab5',1,'chttp2_transport.c']]],
+ ['max_5fconcurrent_5fcompletions',['MAX_CONCURRENT_COMPLETIONS',['../call_8c.html#adc0473bd2ea598bc8b0d09c6f43b3a89',1,'call.c']]],
+ ['max_5fcredentials_5fmetadata_5fcount',['MAX_CREDENTIALS_METADATA_COUNT',['../client__auth__filter_8c.html#a0e5b323dfbc6ab0f070bf6c5a2a9be55',1,'client_auth_filter.c']]],
+ ['max_5fdecoder_5fspace_5fusage',['MAX_DECODER_SPACE_USAGE',['../stream__encoder_8c.html#a7216827b7f9b1ea6a0b108518cde0a7a',1,'stream_encoder.c']]],
+ ['max_5ffilters',['MAX_FILTERS',['../secure__channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2',1,'MAX_FILTERS():&#160;secure_channel_create.c'],['../channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2',1,'MAX_FILTERS():&#160;channel_create.c']]],
+ ['max_5fframe_5fsize',['max_frame_size',['../structtsi__fake__frame__protector.html#a03f274c6362a35ad486d91fdac777816',1,'tsi_fake_frame_protector']]],
+ ['max_5fmessage_5flength',['max_message_length',['../structgrpc__channel.html#af25859261f7e57e5c5f2bbafda64dbf1',1,'grpc_channel']]],
+ ['max_5fpossible',['max_possible',['../structgpr__histogram.html#af94ad5cd243aff89bbe7b0a9918dab77',1,'gpr_histogram']]],
+ ['max_5fqueue_5fwindow_5fduration',['MAX_QUEUE_WINDOW_DURATION',['../alarm_8c.html#aa7820b33745be59861679298b76d9a95',1,'alarm.c']]],
+ ['max_5frecv_5fbytes',['max_recv_bytes',['../structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7',1,'grpc_chttp2_stream_global::max_recv_bytes()'],['../structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b',1,'grpc_transport_stream_op::max_recv_bytes()']]],
+ ['max_5frequested_5fcalls',['max_requested_calls',['../structgrpc__server.html#aaaa9b2a91b6e3edd7ebb0b194110f403',1,'grpc_server']]],
+ ['max_5fresolvers',['MAX_RESOLVERS',['../resolver__registry_8c.html#af575a6a4adada94cfdb731c84e327ed2',1,'resolver_registry.c']]],
+ ['max_5fseen',['max_seen',['../structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1',1,'gpr_histogram']]],
+ ['max_5fsend_5finitial_5fmetadata_5fcount',['MAX_SEND_INITIAL_METADATA_COUNT',['../call_8c.html#ab0c91da8d11c6964aded3fbecff4a15c',1,'call.c']]],
+ ['max_5ftbl_5fsize',['MAX_TBL_SIZE',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a01c9e4f4b7e8c618841fab7c6fab28d8',1,'hpack_parser.c']]],
+ ['max_5ftbl_5fsize_5fx',['MAX_TBL_SIZE_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918adb841f9eb9a97d6b2cbcdbc72ecceca4',1,'hpack_parser.c']]],
+ ['max_5fvalue',['max_value',['../structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001',1,'grpc_chttp2_setting_parameters']]],
+ ['max_5fwindow',['MAX_WINDOW',['../chttp2__transport_8c.html#a33445af5cbee6560efd1a891e4c01067',1,'chttp2_transport.c']]],
+ ['maybe_5fwork',['maybe_work',['../structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f',1,'grpc_pollset_vtable']]],
+ ['md',['md',['../structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715',1,'grpc_linked_mdelem']]],
+ ['md_5fctx',['md_ctx',['../structchannel__data.html#ad12b240dea3a1193fa08327ef1e4553e',1,'channel_data']]],
+ ['md_5felems',['md_elems',['../structgrpc__composite__credentials__metadata__context.html#a5102b59e552251b072c0ac96020b43ea',1,'grpc_composite_credentials_metadata_context']]],
+ ['md_5flinks',['md_links',['../structcall__data.html#a0cb931b8950cc5841edf1156ca861600',1,'call_data']]],
+ ['mdctx',['mdctx',['../structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477',1,'grpc_subchannel_args::mdctx()'],['../structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b',1,'grpc_chttp2_hptbl::mdctx()'],['../structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c',1,'grpc_chttp2_hpack_compressor::mdctx()'],['../structsubchannel__factory.html#a920af9d40dedd8ba5eb2f64648eb5008',1,'subchannel_factory::mdctx()'],['../structchannel__data.html#a8ccd22d950d3fda54a0f338d55d1f813',1,'channel_data::mdctx()'],['../structgrpc__subchannel.html#a2e2040552b5320c9a91a6e080760f96a',1,'grpc_subchannel::mdctx()']]],
+ ['mdelem_5fcompression_5falgorithms',['mdelem_compression_algorithms',['../structchannel__data.html#a4af222359dc97dc96780402413bb015d',1,'channel_data']]],
+ ['mdstr_5foutgoing_5fcompression_5falgorithm_5fkey',['mdstr_outgoing_compression_algorithm_key',['../structchannel__data.html#aeb493774aec5abf500f8ef36b99553d6',1,'channel_data']]],
+ ['mdstr_5frequest_5fcompression_5falgorithm_5fkey',['mdstr_request_compression_algorithm_key',['../structchannel__data.html#a9c1ff3982fc4510f367df5a35960abcb',1,'channel_data']]],
+ ['mdtab',['mdtab',['../structgrpc__mdctx.html#adff99895d519ab72b9c66a23de57156c',1,'grpc_mdctx']]],
+ ['mdtab_5fcapacity',['mdtab_capacity',['../structgrpc__mdctx.html#ab79559486a14c29803dd0f6464afe2df',1,'grpc_mdctx']]],
+ ['mdtab_5fcount',['mdtab_count',['../structgrpc__mdctx.html#af513520e504950d327e9a41cb1781779',1,'grpc_mdctx']]],
+ ['mdtab_5ffree',['mdtab_free',['../structgrpc__mdctx.html#a42820dc23bdea76b0d2a7e7db3d64131',1,'grpc_mdctx']]],
+ ['mem_5fused',['mem_used',['../structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878',1,'grpc_chttp2_hptbl']]],
+ ['merge_5fargs',['merge_args',['../structsubchannel__factory.html#a0538fbb1dc64ec4ab487326b64792bde',1,'subchannel_factory::merge_args()'],['../structmerge__args__factory.html#a973c42ea64bda49e62c9648f1d9eb919',1,'merge_args_factory::merge_args()']]],
+ ['merge_5fargs_5ffactory',['merge_args_factory',['../structmerge__args__factory.html',1,'']]],
+ ['merge_5fchannel_5fargs_2ec',['merge_channel_args.c',['../merge__channel__args_8c.html',1,'']]],
+ ['merge_5fchannel_5fargs_2eh',['merge_channel_args.h',['../merge__channel__args_8h.html',1,'']]],
+ ['message',['message',['../structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b',1,'gpr_log_func_args']]],
+ ['message_5fcompress_2ec',['message_compress.c',['../message__compress_8c.html',1,'']]],
+ ['message_5fcompress_2eh',['message_compress.h',['../message__compress_8h.html',1,'']]],
+ ['metadata',['metadata',['../structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe',1,'grpc_metadata_array::metadata()'],['../structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079',1,'grpc_op::metadata()'],['../uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968',1,'grpc_ioreq_data::metadata()'],['../structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464',1,'grpc_stream_op::metadata()']]],
+ ['metadata_2ec',['metadata.c',['../metadata_8c.html',1,'']]],
+ ['metadata_2eh',['metadata.h',['../metadata_8h.html',1,'']]],
+ ['metadata_5farray_2ec',['metadata_array.c',['../metadata__array_8c.html',1,'']]],
+ ['metadata_5fcontext',['metadata_context',['../structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e',1,'grpc_connect_in_args::metadata_context()'],['../structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2',1,'grpc_chttp2_transport::metadata_context()'],['../structgrpc__call.html#a1fcf672edf744df8c192aba2da0da3f2',1,'grpc_call::metadata_context()'],['../structgrpc__channel.html#a715d3ad3606de80c57ea96570e364ec8',1,'grpc_channel::metadata_context()']]],
+ ['method',['method',['../structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5',1,'grpc_call_details::method()'],['../structcall__data.html#a7d9cd71936be176040c5f69a78d695b0',1,'call_data::method()'],['../structcall__data.html#a296c3fce88125964cfc50c927249bc4a',1,'call_data::method()'],['../structchannel__data.html#a78079d15b762dcc791e6e996951d9f6a',1,'channel_data::method()'],['../structchannel__registered__method.html#a7d2b4e40ba59b8b98e1b06b94f7345f1',1,'channel_registered_method::method()'],['../structregistered__method.html#a84540106ff6f3763d9ada701667cf77d',1,'registered_method::method()']]],
+ ['method_5fcapacity',['method_capacity',['../structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0',1,'grpc_call_details']]],
+ ['method_5fpost',['method_post',['../structchannel__data.html#a05461a751cad059d57ccd5ed3c698fd7',1,'channel_data']]],
+ ['min_5fdeadline',['min_deadline',['../structshard__type.html#a16cac3c86f6ac95b49f7a8b703dc4f07',1,'shard_type']]],
+ ['min_5fqueue_5fwindow_5fduration',['MIN_QUEUE_WINDOW_DURATION',['../alarm_8c.html#a1998a9b10fbd17ad50ff85991aeaa645',1,'alarm.c']]],
+ ['min_5fseen',['min_seen',['../structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf',1,'gpr_histogram']]],
+ ['min_5fvalue',['min_value',['../structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82',1,'grpc_chttp2_setting_parameters']]],
+ ['mu',['mu',['../structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45',1,'grpc_oauth2_token_fetcher_credentials::mu()'],['../structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a',1,'grpc_pollset_kick_state::mu()'],['../structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924',1,'grpc_pollset::mu()'],['../structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703',1,'grpc_pollset_set::mu()'],['../structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e',1,'grpc_chttp2_transport::mu()'],['../structgrpc__server__secure__state.html#a6572a200d1489334fa4af215ccffa717',1,'grpc_server_secure_state::mu()'],['../structpick__first__lb__policy.html#a5bc2719af90ffde998983bdeeacfd764',1,'pick_first_lb_policy::mu()'],['../structdns__resolver.html#aa1661d76a33a19a305d5edb1b354ce8a',1,'dns_resolver::mu()'],['../structsockaddr__resolver.html#a9ac37ca23a45425c9af702236f53c81d',1,'sockaddr_resolver::mu()'],['../structgrpc__subchannel.html#a020e44ce2c4d73d26c63a4ec9f2f3e14',1,'grpc_subchannel::mu()'],['../structshard__type.html#ae0271c419d83a06ab69fe48ce3e3196b',1,'shard_type::mu()'],['../structgrpc__call.html#a0641698dba5cf939dbc61e2a6019199c',1,'grpc_call::mu()'],['../structstate__watcher.html#a39ac8f332dc6a1b6a9bf0815b6912327',1,'state_watcher::mu()'],['../structgrpc__mdctx.html#a3c1051440f8ce4c48c38a08f5a478c4e',1,'grpc_mdctx::mu()'],['../structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282',1,'gpr_cancellable_list_::mu()'],['../structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f',1,'gpr_cancellable::mu()']]],
+ ['mu_5fcall',['mu_call',['../structgrpc__server.html#a4d89504a094de15aa4a208c0159d904b',1,'grpc_server']]],
+ ['mu_5fconfig',['mu_config',['../structchannel__data.html#a925aa059f74c20ba06718d45b78382af',1,'channel_data']]],
+ ['mu_5fglobal',['mu_global',['../structgrpc__server.html#a2f291ce57ed6540efe5c99e607be3a27',1,'grpc_server']]],
+ ['mu_5fstate',['mu_state',['../structcall__data.html#aa671a127b29c32228f221a6121515a64',1,'call_data']]],
+ ['mu_5fuser_5fdata',['mu_user_data',['../structinternal__metadata.html#a04fa79f6da10ebdc3c337277b0997657',1,'internal_metadata']]],
+ ['multiplier',['multiplier',['../structgpr__histogram.html#aa3b6846c10a297bf1a9706ab348ffead',1,'gpr_histogram']]],
+ ['murmur_5fhash_2ec',['murmur_hash.c',['../murmur__hash_8c.html',1,'']]],
+ ['murmur_5fhash_2eh',['murmur_hash.h',['../murmur__hash_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_e.html b/doc/ref/core.internal/html/search/all_e.html
new file mode 100644
index 0000000000..3cda0172ed
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_e.js b/doc/ref/core.internal/html/search/all_e.js
new file mode 100644
index 0000000000..b5a9a0bd09
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_e.js
@@ -0,0 +1,42 @@
+var searchData=
+[
+ ['naddrs',['naddrs',['../structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8',1,'grpc_resolved_addresses']]],
+ ['name',['name',['../structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7',1,'grpc_auth_property_iterator::name()'],['../structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27',1,'grpc_auth_property::name()'],['../structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67',1,'tsi_peer_property::name()'],['../structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6',1,'grpc_channel_filter::name()'],['../structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf',1,'grpc_iomgr_object::name()'],['../structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f',1,'grpc_chttp2_setting_parameters::name()'],['../structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8',1,'grpc_connectivity_state_tracker::name()'],['../structdns__resolver.html#a5670dbafe81b9e38af022bd5cf907fa3',1,'dns_resolver::name()'],['../structtracer.html#a08a3bb14c306ce7394df6a5bb56e6eb3',1,'tracer::name()'],['../structarg.html#a19d6eebdcc5e2c4679c5f77760adb5dc',1,'arg::name()']]],
+ ['nbf',['nbf',['../structgrpc__jwt__claims.html#a294f9a7e9e2cc0820c469b7b340c980a',1,'grpc_jwt_claims']]],
+ ['need_5fmask',['need_mask',['../structreqinfo__master.html#af1092f7b58950276ec6b35da0f7e1fd5',1,'reqinfo_master']]],
+ ['needs_5fdraining',['needs_draining',['../structtsi__fake__frame.html#a5c19114ec65853283cf5234b8bef611b',1,'tsi_fake_frame']]],
+ ['needs_5fincoming_5fmessage',['needs_incoming_message',['../structtsi__fake__handshaker.html#a5b5522b09970836d1867fc4c08411c91',1,'tsi_fake_handshaker']]],
+ ['new_5fslice_5frefcount',['new_slice_refcount',['../structnew__slice__refcount.html',1,'new_slice_refcount'],['../slice_8c.html#a58022d982381d1f2d8125f9f24e2e1ae',1,'new_slice_refcount():&#160;slice.c']]],
+ ['new_5fstream_5fmap',['new_stream_map',['../structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca',1,'grpc_chttp2_transport']]],
+ ['new_5fwith_5flen_5fslice_5frefcount',['new_with_len_slice_refcount',['../structnew__with__len__slice__refcount.html',1,'new_with_len_slice_refcount'],['../slice_8c.html#a07dd4d3601f8c54de26721289ba4d822',1,'new_with_len_slice_refcount():&#160;slice.c']]],
+ ['next',['next',['../structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0',1,'grpc_resolver_vtable::next()'],['../structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab',1,'grpc_alarm::next()'],['../structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae',1,'grpc_fd_watcher::next()'],['../structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef',1,'grpc_iomgr_closure::next()'],['../structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c',1,'grpc_iomgr_object::next()'],['../structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f',1,'grpc_kick_fd_info::next()'],['../structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2',1,'grpc_json::next()'],['../structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948',1,'grpc_cq_completion::next()'],['../structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de',1,'grpc_chttp2_stream_link::next()'],['../structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f',1,'grpc_chttp2_outstanding_ping::next()'],['../structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388',1,'grpc_connectivity_state_watcher::next()'],['../structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef',1,'grpc_linked_mdelem::next()'],['../structtcp__endpoint__list.html#aaeb000e9fe236631fc1355b657a9e1fe',1,'tcp_endpoint_list::next()'],['../structpending__pick.html#abecbb432724c24c523d0cfda19f7b1c1',1,'pending_pick::next()'],['../structwaiting__for__connect.html#a62c2a3b3fa576054930f40d722716438',1,'waiting_for_connect::next()'],['../structtracer.html#aec6b92c7c58fec94b57b7a2385c3c3c1',1,'tracer::next()'],['../structregistered__call.html#a81f1e87dddb1f37ff09a9aaa56ca62cd',1,'registered_call::next()'],['../structlistener.html#afd926873c32f6f18eff932b871c7a9d7',1,'listener::next()'],['../structcall__link.html#a61d52b76dfba4d08d6c453392dea6947',1,'call_link::next()'],['../structchannel__data.html#a7cbc7853658b85e4f62f37a71189a3d7',1,'channel_data::next()'],['../structregistered__method.html#a662f0ff612e8211e1ac2ff2bc7350776',1,'registered_method::next()'],['../structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a',1,'gpr_cancellable_list_::next()'],['../structarg.html#a5e585c92ebdfcf1c6d966d887d07f7ff',1,'arg::next()']]],
+ ['next_5faddress',['next_address',['../structinternal__request.html#a76357b043a6e64d3254650151c2795bb',1,'internal_request']]],
+ ['next_5fattempt',['next_attempt',['../structgrpc__subchannel.html#a6ee4fc265d48aad4c76411a80001ac5c',1,'grpc_subchannel']]],
+ ['next_5fcompletion',['next_completion',['../structdns__resolver.html#a6ed64036e71eb1ee7dc886adb51820d6',1,'dns_resolver::next_completion()'],['../structsockaddr__resolver.html#acd7a423835a4be78a041f895bba3b421',1,'sockaddr_resolver::next_completion()']]],
+ ['next_5fmessage_5fto_5fsend',['next_message_to_send',['../structtsi__fake__handshaker.html#ab343e56591aa9bae847d1af36534ecbe',1,'tsi_fake_handshaker']]],
+ ['next_5fstate',['next_state',['../structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1',1,'grpc_chttp2_hpack_parser']]],
+ ['next_5fstream_5fid',['next_stream_id',['../structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f',1,'grpc_chttp2_transport_global::next_stream_id()'],['../structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9',1,'grpc_chttp2_transport_parsing::next_stream_id()']]],
+ ['none',['NONE',['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fac157bdf0b85a40d2619cbc8bc1ae5fe2',1,'stream_encoder.c']]],
+ ['noop_5ffilter_2ec',['noop_filter.c',['../noop__filter_8c.html',1,'']]],
+ ['noop_5ffilter_2eh',['noop_filter.h',['../noop__filter_8h.html',1,'']]],
+ ['nops',['nops',['../structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b',1,'grpc_stream_op_buffer']]],
+ ['not_5fbinary',['NOT_BINARY',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a36e0cd08af8b9cec8a5ae17c6a5c5124',1,'hpack_parser.c']]],
+ ['not_5fstarted',['NOT_STARTED',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5',1,'server.c']]],
+ ['notify',['notify',['../structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f',1,'grpc_connectivity_state_watcher::notify()'],['../structconnector.html#ae73053d157c31e9015427d56228e7123',1,'connector::notify()'],['../structwaiting__for__connect.html#a8e497a44e87d2780b2f7dbd2dd006526',1,'waiting_for_connect::notify()']]],
+ ['notify_5fon_5fread',['notify_on_read',['../structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2',1,'grpc_endpoint_vtable']]],
+ ['notify_5fon_5fstate_5fchange',['notify_on_state_change',['../structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed',1,'grpc_lb_policy_vtable']]],
+ ['num_5fargs',['num_args',['../structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde',1,'grpc_channel_args']]],
+ ['num_5fbuckets',['num_buckets',['../structgpr__histogram.html#a039f2094c3aea146aaf6a9a75bc5ab12',1,'gpr_histogram']]],
+ ['num_5fcached_5fstatus_5felems',['NUM_CACHED_STATUS_ELEMS',['../channel_8c.html#a30ddfda40b473a077ff7c70a7687ddb1',1,'channel.c']]],
+ ['num_5fchannels',['num_channels',['../structchannel__broadcaster.html#a0b95a339b9c30a54d2f33b336be1c0c9',1,'channel_broadcaster']]],
+ ['num_5fcompleted_5frequests',['num_completed_requests',['../structgrpc__call.html#ae92d9e5f96d5e80d9c480ab79e051ada',1,'grpc_call']]],
+ ['num_5fcreds',['num_creds',['../structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96',1,'grpc_credentials_array']]],
+ ['num_5fentries',['num_entries',['../structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259',1,'grpc_credentials_md_store']]],
+ ['num_5fents',['num_ents',['../structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1',1,'grpc_chttp2_hptbl']]],
+ ['num_5ffilters',['num_filters',['../structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3',1,'grpc_connect_out_args::num_filters()'],['../structgrpc__subchannel.html#a0d8559ba4069f1940a92d6d58d4f4009',1,'grpc_subchannel::num_filters()']]],
+ ['num_5fkey_5fcert_5fpairs',['num_key_cert_pairs',['../structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c',1,'grpc_ssl_server_config']]],
+ ['num_5fmappings',['num_mappings',['../structgrpc__jwt__verifier.html#a5c116d4a596479e9acb28be8c5adc3b5',1,'grpc_jwt_verifier']]],
+ ['num_5fshards',['NUM_SHARDS',['../alarm_8c.html#abc8b3b06fc834d57a69ca6ed5e3dfe3e',1,'alarm.c']]],
+ ['num_5fshutdown_5ftags',['num_shutdown_tags',['../structgrpc__server.html#afd8d25139f82d26ce567e4a1a786b54b',1,'grpc_server']]],
+ ['num_5fsubchannels',['num_subchannels',['../structpick__first__lb__policy.html#a39415d22c1bb4ace43e7abc6331f08e1',1,'pick_first_lb_policy']]]
+];
diff --git a/doc/ref/core.internal/html/search/all_f.html b/doc/ref/core.internal/html/search/all_f.html
new file mode 100644
index 0000000000..7419b0297e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/all_f.js b/doc/ref/core.internal/html/search/all_f.js
new file mode 100644
index 0000000000..567bfe4873
--- /dev/null
+++ b/doc/ref/core.internal/html/search/all_f.js
@@ -0,0 +1,52 @@
+var searchData=
+[
+ ['obfuscated',['obfuscated',['../structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f',1,'grpc_metadata']]],
+ ['offset',['offset',['../structtsi__fake__frame.html#ab1fe06dcec5ebffc85112c9a726ed3f6',1,'tsi_fake_frame']]],
+ ['on_5fchanged',['on_changed',['../structlb__policy__connectivity__watcher.html#ab9bd1ed9605d5f575ea8e2ce51ed597c',1,'lb_policy_connectivity_watcher']]],
+ ['on_5fcomplete',['on_complete',['../structpending__pick.html#a754316904bce1aec5d5afcc61b2b5abe',1,'pending_pick::on_complete()'],['../structcompleted__request.html#a2abd9edaf87e7b33717d655f9651a26a',1,'completed_request::on_complete()'],['../structreqinfo__master.html#a77f3e6ff12d266f5e2d0b49ed590a344',1,'reqinfo_master::on_complete()'],['../structstate__watcher.html#a3bd085c4cbd7f167fa42b7191f502d39',1,'state_watcher::on_complete()']]],
+ ['on_5fconfig_5fchanged',['on_config_changed',['../structchannel__data.html#a5a8db474fbde3443ad862229ef3be367',1,'channel_data']]],
+ ['on_5fconnectivity_5fstate_5fchange',['on_connectivity_state_change',['../structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953',1,'grpc_transport_op']]],
+ ['on_5fconsumed',['on_consumed',['../structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93',1,'grpc_transport_stream_op::on_consumed()'],['../structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a',1,'grpc_transport_op::on_consumed()']]],
+ ['on_5fdone_5fbind',['on_done_bind',['../structgrpc__call.html#a14ae475238cf1ae8b2d022c7a6b755b7',1,'grpc_call']]],
+ ['on_5fdone_5fclosure',['on_done_closure',['../structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f',1,'grpc_fd']]],
+ ['on_5fdone_5frecv',['on_done_recv',['../structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479',1,'grpc_transport_stream_op::on_done_recv()'],['../structcall__data.html#a3c7f4d12b26ecd073c992c56fa9c098d',1,'call_data::on_done_recv()'],['../structgrpc__call.html#a7397b6f80ed39e5e5b3cf1c68e88e959',1,'grpc_call::on_done_recv()']]],
+ ['on_5fdone_5fsend',['on_done_send',['../structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07',1,'grpc_transport_stream_op::on_done_send()'],['../structgrpc__call.html#a4cef85f8e845ae1f24f043e5d853a843',1,'grpc_call::on_done_send()']]],
+ ['on_5fheader',['on_header',['../structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f',1,'grpc_chttp2_hpack_parser']]],
+ ['on_5fheader_5fuser_5fdata',['on_header_user_data',['../structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b',1,'grpc_chttp2_hpack_parser']]],
+ ['on_5frecv',['on_recv',['../structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c',1,'grpc_chttp2_outstanding_ping']]],
+ ['on_5fresponse',['on_response',['../structinternal__request.html#a4679ca2c4587920feca983ac852ef2b6',1,'internal_request']]],
+ ['on_5fsimulated_5ftoken_5ffetch_5fdone',['on_simulated_token_fetch_done',['../credentials_8c.html#ac8aefd37c9b6f7639d730ea60960a9e7',1,'credentials.c']]],
+ ['on_5fsimulated_5ftoken_5ffetch_5fdone_5fclosure',['on_simulated_token_fetch_done_closure',['../structgrpc__credentials__metadata__request.html#a31c83ca54622158600b17ebcc6047af8',1,'grpc_credentials_metadata_request']]],
+ ['one_5fon_5fadd_5fprobability',['ONE_ON_ADD_PROBABILITY',['../stream__encoder_8c.html#ad7f6bdf9db2a15a5e00cf3a6825d9957',1,'stream_encoder.c']]],
+ ['one_5fon_5flog_5fmultiplier',['one_on_log_multiplier',['../structgpr__histogram.html#a63929f09cc7a7feedf7b1f330b0458c3',1,'gpr_histogram']]],
+ ['op',['op',['../structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115',1,'grpc_op::op()'],['../structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0',1,'grpc_ioreq::op()'],['../structcall__data.html#a0d259211de98a88e11c71fa93abd2877',1,'call_data::op()']]],
+ ['op_5fid',['op_id',['../structcensus__context.html#ab46ba00da079c14fed8259bae560fdac',1,'census_context']]],
+ ['op_5fmd_5fidx',['op_md_idx',['../structcall__data.html#aaa6841afd5ac22f2538e950688f8e67b',1,'call_data']]],
+ ['opaque',['opaque',['../structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154',1,'grpc_winsocket_callback_info']]],
+ ['opaque_5f8bytes',['opaque_8bytes',['../structgrpc__chttp2__ping__parser.html#a338f5adfa9a1236094e16c36c5cd5b4e',1,'grpc_chttp2_ping_parser']]],
+ ['openssl_5fdigest_5ffrom_5falgorithm',['openssl_digest_from_algorithm',['../json__token_8c.html#accf3a429c0f66a88d8df60b6dab3743f',1,'json_token.c']]],
+ ['ops',['ops',['../structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975',1,'grpc_stream_op_buffer']]],
+ ['optional_5fpayload',['optional_payload',['../structrequested__call.html#a5c928486fa8b32b8ff89a672de5b4e2c',1,'requested_call']]],
+ ['orphan',['orphan',['../structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08',1,'grpc_winsocket']]],
+ ['out',['out',['../structhuff__out.html#a2d501bd162d6a335c51b2250e3f1bfef',1,'huff_out']]],
+ ['outbuf',['outbuf',['../structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0',1,'grpc_chttp2_transport_writing']]],
+ ['outgoing',['outgoing',['../structtsi__fake__handshaker.html#aa25567cc12e88a59cbf9ba3b51d90223',1,'tsi_fake_handshaker']]],
+ ['outgoing_5fsopb',['outgoing_sopb',['../structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d',1,'grpc_chttp2_stream_global']]],
+ ['outgoing_5fwindow',['outgoing_window',['../structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7',1,'grpc_chttp2_transport_global::outgoing_window()'],['../structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec',1,'grpc_chttp2_stream_global::outgoing_window()']]],
+ ['outgoing_5fwindow_5fupdate',['outgoing_window_update',['../structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a',1,'grpc_chttp2_transport_parsing::outgoing_window_update()'],['../structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196',1,'grpc_chttp2_stream_parsing::outgoing_window_update()']]],
+ ['output',['output',['../structjson__writer__userdata.html#a1f55aaf048a0ff4414110e154133867d',1,'json_writer_userdata::output()'],['../structframer__state.html#ac6ebee785ebffe4a16a2ccd010ad08d6',1,'framer_state::output()']]],
+ ['output_5fblock_5fsize',['OUTPUT_BLOCK_SIZE',['../message__compress_8c.html#a64fcbb2644c2b3d0dcdc23ac148dd553',1,'message_compress.c']]],
+ ['output_5fbuffer',['output_buffer',['../structsecure__endpoint.html#a901c720fdbd311bbaea1e91b441a0d61',1,'secure_endpoint']]],
+ ['output_5fchar',['output_char',['../structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2',1,'grpc_json_writer_vtable']]],
+ ['output_5flength_5fat_5fstart_5fof_5fframe',['output_length_at_start_of_frame',['../structframer__state.html#a268504b075ec06de3ff0abb7ee7e589b',1,'framer_state']]],
+ ['output_5fstring',['output_string',['../structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e',1,'grpc_json_writer_vtable']]],
+ ['output_5fstring_5fwith_5flen',['output_string_with_len',['../structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd',1,'grpc_json_writer_vtable']]],
+ ['outstanding',['outstanding',['../structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc',1,'grpc_winsocket_callback_info']]],
+ ['outstanding_5fmetadata',['outstanding_metadata',['../structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0',1,'grpc_chttp2_stream_global']]],
+ ['overlapped',['overlapped',['../structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09',1,'grpc_winsocket_callback_info']]],
+ ['overridden_5ftarget_5fname',['overridden_target_name',['../structgrpc__ssl__channel__security__connector.html#aaa9e644fdf517be178f1543922ddbe9a',1,'grpc_ssl_channel_security_connector']]],
+ ['owned_5fmetadata',['owned_metadata',['../structgrpc__call.html#a3d2b2ada096589b52bfafa00be6e25b2',1,'grpc_call']]],
+ ['owned_5fmetadata_5fcapacity',['owned_metadata_capacity',['../structgrpc__call.html#a34cb5caca97e3b28ed0d321d9d38f6c8',1,'grpc_call']]],
+ ['owned_5fmetadata_5fcount',['owned_metadata_count',['../structgrpc__call.html#acc8804b9c6ee72c862e9eba7518a48ee',1,'grpc_call']]],
+ ['owning_5frefs',['owning_refs',['../structgrpc__completion__queue.html#aae47cbaaca85ca3f9e7cb2317709f8e6',1,'grpc_completion_queue']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_0.html b/doc/ref/core.internal/html/search/classes_0.html
new file mode 100644
index 0000000000..fabdc03679
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_0.js b/doc/ref/core.internal/html/search/classes_0.js
new file mode 100644
index 0000000000..2d59ecacb8
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['arg',['arg',['../structarg.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_1.html b/doc/ref/core.internal/html/search/classes_1.html
new file mode 100644
index 0000000000..800b6ae1bf
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_1.js b/doc/ref/core.internal/html/search/classes_1.js
new file mode 100644
index 0000000000..4759534b97
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['b64_5fhuff_5fsym',['b64_huff_sym',['../structb64__huff__sym.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_10.html b/doc/ref/core.internal/html/search/classes_10.html
new file mode 100644
index 0000000000..e03af79468
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_10.js b/doc/ref/core.internal/html/search/classes_10.js
new file mode 100644
index 0000000000..54a3a16849
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_10.js
@@ -0,0 +1,19 @@
+var searchData=
+[
+ ['tcp_5fendpoint_5flist',['tcp_endpoint_list',['../structtcp__endpoint__list.html',1,'']]],
+ ['tracer',['tracer',['../structtracer.html',1,'']]],
+ ['tsi_5ffake_5fframe',['tsi_fake_frame',['../structtsi__fake__frame.html',1,'']]],
+ ['tsi_5ffake_5fframe_5fprotector',['tsi_fake_frame_protector',['../structtsi__fake__frame__protector.html',1,'']]],
+ ['tsi_5ffake_5fhandshaker',['tsi_fake_handshaker',['../structtsi__fake__handshaker.html',1,'']]],
+ ['tsi_5fframe_5fprotector',['tsi_frame_protector',['../structtsi__frame__protector.html',1,'']]],
+ ['tsi_5fframe_5fprotector_5fvtable',['tsi_frame_protector_vtable',['../structtsi__frame__protector__vtable.html',1,'']]],
+ ['tsi_5fhandshaker',['tsi_handshaker',['../structtsi__handshaker.html',1,'']]],
+ ['tsi_5fhandshaker_5fvtable',['tsi_handshaker_vtable',['../structtsi__handshaker__vtable.html',1,'']]],
+ ['tsi_5fpeer',['tsi_peer',['../structtsi__peer.html',1,'']]],
+ ['tsi_5fpeer_5fproperty',['tsi_peer_property',['../structtsi__peer__property.html',1,'']]],
+ ['tsi_5fssl_5fclient_5fhandshaker_5ffactory',['tsi_ssl_client_handshaker_factory',['../structtsi__ssl__client__handshaker__factory.html',1,'']]],
+ ['tsi_5fssl_5fframe_5fprotector',['tsi_ssl_frame_protector',['../structtsi__ssl__frame__protector.html',1,'']]],
+ ['tsi_5fssl_5fhandshaker',['tsi_ssl_handshaker',['../structtsi__ssl__handshaker.html',1,'']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory',['tsi_ssl_handshaker_factory',['../structtsi__ssl__handshaker__factory.html',1,'']]],
+ ['tsi_5fssl_5fserver_5fhandshaker_5ffactory',['tsi_ssl_server_handshaker_factory',['../structtsi__ssl__server__handshaker__factory.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_11.html b/doc/ref/core.internal/html/search/classes_11.html
new file mode 100644
index 0000000000..519b239905
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_11.js b/doc/ref/core.internal/html/search/classes_11.js
new file mode 100644
index 0000000000..ad6dc506db
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_11.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['verifier_5fcb_5fctx',['verifier_cb_ctx',['../structverifier__cb__ctx.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_12.html b/doc/ref/core.internal/html/search/classes_12.html
new file mode 100644
index 0000000000..4240e9f563
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_12.js b/doc/ref/core.internal/html/search/classes_12.js
new file mode 100644
index 0000000000..5967390893
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_12.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['waiting_5fcall',['waiting_call',['../structwaiting__call.html',1,'']]],
+ ['waiting_5ffor_5fconnect',['waiting_for_connect',['../structwaiting__for__connect.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_2.html b/doc/ref/core.internal/html/search/classes_2.html
new file mode 100644
index 0000000000..f65d263c0c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_2.js b/doc/ref/core.internal/html/search/classes_2.js
new file mode 100644
index 0000000000..9291cb79e1
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_2.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['call_5fdata',['call_data',['../structcall__data.html',1,'']]],
+ ['call_5flink',['call_link',['../structcall__link.html',1,'']]],
+ ['census_5fcontext',['census_context',['../structcensus__context.html',1,'']]],
+ ['census_5fstat',['census_stat',['../structcensus__stat.html',1,'']]],
+ ['channel_5fbroadcaster',['channel_broadcaster',['../structchannel__broadcaster.html',1,'']]],
+ ['channel_5fdata',['channel_data',['../structchannel__data.html',1,'']]],
+ ['channel_5fregistered_5fmethod',['channel_registered_method',['../structchannel__registered__method.html',1,'']]],
+ ['completed_5frequest',['completed_request',['../structcompleted__request.html',1,'']]],
+ ['compute_5fengine_5fdetector',['compute_engine_detector',['../structcompute__engine__detector.html',1,'']]],
+ ['connected_5fchannel_5fcall_5fdata',['connected_channel_call_data',['../structconnected__channel__call__data.html',1,'']]],
+ ['connected_5fchannel_5fchannel_5fdata',['connected_channel_channel_data',['../structconnected__channel__channel__data.html',1,'']]],
+ ['connection',['connection',['../structconnection.html',1,'']]],
+ ['connector',['connector',['../structconnector.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_3.html b/doc/ref/core.internal/html/search/classes_3.html
new file mode 100644
index 0000000000..927e837f11
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_3.js b/doc/ref/core.internal/html/search/classes_3.js
new file mode 100644
index 0000000000..4bbc5e1934
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['dns_5fresolver',['dns_resolver',['../structdns__resolver.html',1,'']]],
+ ['dump_5fout',['dump_out',['../structdump__out.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_4.html b/doc/ref/core.internal/html/search/classes_4.html
new file mode 100644
index 0000000000..a447290ed6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_4.js b/doc/ref/core.internal/html/search/classes_4.js
new file mode 100644
index 0000000000..beb2bafd14
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['email_5fkey_5fmapping',['email_key_mapping',['../structemail__key__mapping.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_5.html b/doc/ref/core.internal/html/search/classes_5.html
new file mode 100644
index 0000000000..63484c451e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_5.js b/doc/ref/core.internal/html/search/classes_5.js
new file mode 100644
index 0000000000..72645f424d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['finished_5floose_5fop_5fallocated_5fargs',['finished_loose_op_allocated_args',['../structfinished__loose__op__allocated__args.html',1,'']]],
+ ['framer_5fstate',['framer_state',['../structframer__state.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_6.html b/doc/ref/core.internal/html/search/classes_6.html
new file mode 100644
index 0000000000..f3d70354c6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_6.js b/doc/ref/core.internal/html/search/classes_6.js
new file mode 100644
index 0000000000..1b4a918bcb
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_6.js
@@ -0,0 +1,178 @@
+var searchData=
+[
+ ['gpr_5fcancellable',['gpr_cancellable',['../structgpr__cancellable.html',1,'']]],
+ ['gpr_5fcancellable_5flist_5f',['gpr_cancellable_list_',['../structgpr__cancellable__list__.html',1,'']]],
+ ['gpr_5fcmdline',['gpr_cmdline',['../structgpr__cmdline.html',1,'']]],
+ ['gpr_5fevent',['gpr_event',['../structgpr__event.html',1,'']]],
+ ['gpr_5fgcc_5fthread_5flocal',['gpr_gcc_thread_local',['../structgpr__gcc__thread__local.html',1,'']]],
+ ['gpr_5fhistogram',['gpr_histogram',['../structgpr__histogram.html',1,'']]],
+ ['gpr_5flog_5ffunc_5fargs',['gpr_log_func_args',['../structgpr__log__func__args.html',1,'']]],
+ ['gpr_5fmsvc_5fthread_5flocal',['gpr_msvc_thread_local',['../structgpr__msvc__thread__local.html',1,'']]],
+ ['gpr_5fmu',['gpr_mu',['../structgpr__mu.html',1,'']]],
+ ['gpr_5fpthread_5fthread_5flocal',['gpr_pthread_thread_local',['../structgpr__pthread__thread__local.html',1,'']]],
+ ['gpr_5frefcount',['gpr_refcount',['../structgpr__refcount.html',1,'']]],
+ ['gpr_5fslice',['gpr_slice',['../structgpr__slice.html',1,'']]],
+ ['gpr_5fslice_5fbuffer',['gpr_slice_buffer',['../structgpr__slice__buffer.html',1,'']]],
+ ['gpr_5fslice_5frefcount',['gpr_slice_refcount',['../structgpr__slice__refcount.html',1,'']]],
+ ['gpr_5fstack_5flockfree',['gpr_stack_lockfree',['../structgpr__stack__lockfree.html',1,'']]],
+ ['gpr_5fstats_5fcounter',['gpr_stats_counter',['../structgpr__stats__counter.html',1,'']]],
+ ['gpr_5fstrvec',['gpr_strvec',['../structgpr__strvec.html',1,'']]],
+ ['gpr_5fthd_5foptions',['gpr_thd_options',['../structgpr__thd__options.html',1,'']]],
+ ['gpr_5ftimespec',['gpr_timespec',['../structgpr__timespec.html',1,'']]],
+ ['grpc_5faccess_5ftoken_5fcredentials',['grpc_access_token_credentials',['../structgrpc__access__token__credentials.html',1,'']]],
+ ['grpc_5falarm',['grpc_alarm',['../structgrpc__alarm.html',1,'']]],
+ ['grpc_5falarm_5fheap',['grpc_alarm_heap',['../structgrpc__alarm__heap.html',1,'']]],
+ ['grpc_5farg',['grpc_arg',['../structgrpc__arg.html',1,'']]],
+ ['grpc_5fauth_5fcontext',['grpc_auth_context',['../structgrpc__auth__context.html',1,'']]],
+ ['grpc_5fauth_5fjson_5fkey',['grpc_auth_json_key',['../structgrpc__auth__json__key.html',1,'']]],
+ ['grpc_5fauth_5fproperty',['grpc_auth_property',['../structgrpc__auth__property.html',1,'']]],
+ ['grpc_5fauth_5fproperty_5fiterator',['grpc_auth_property_iterator',['../structgrpc__auth__property__iterator.html',1,'']]],
+ ['grpc_5fauth_5frefresh_5ftoken',['grpc_auth_refresh_token',['../structgrpc__auth__refresh__token.html',1,'']]],
+ ['grpc_5fbbq_5farray',['grpc_bbq_array',['../structgrpc__bbq__array.html',1,'']]],
+ ['grpc_5fbegin_5fmessage',['grpc_begin_message',['../structgrpc__begin__message.html',1,'']]],
+ ['grpc_5fbyte_5fbuffer',['grpc_byte_buffer',['../structgrpc__byte__buffer.html',1,'']]],
+ ['grpc_5fbyte_5fbuffer_5fqueue',['grpc_byte_buffer_queue',['../structgrpc__byte__buffer__queue.html',1,'']]],
+ ['grpc_5fbyte_5fbuffer_5freader',['grpc_byte_buffer_reader',['../structgrpc__byte__buffer__reader.html',1,'']]],
+ ['grpc_5fcall',['grpc_call',['../structgrpc__call.html',1,'']]],
+ ['grpc_5fcall_5fcontext_5felement',['grpc_call_context_element',['../structgrpc__call__context__element.html',1,'']]],
+ ['grpc_5fcall_5fdetails',['grpc_call_details',['../structgrpc__call__details.html',1,'']]],
+ ['grpc_5fcall_5felement',['grpc_call_element',['../structgrpc__call__element.html',1,'']]],
+ ['grpc_5fcall_5fstack',['grpc_call_stack',['../structgrpc__call__stack.html',1,'']]],
+ ['grpc_5fchannel',['grpc_channel',['../structgrpc__channel.html',1,'']]],
+ ['grpc_5fchannel_5fargs',['grpc_channel_args',['../structgrpc__channel__args.html',1,'']]],
+ ['grpc_5fchannel_5felement',['grpc_channel_element',['../structgrpc__channel__element.html',1,'']]],
+ ['grpc_5fchannel_5ffilter',['grpc_channel_filter',['../structgrpc__channel__filter.html',1,'']]],
+ ['grpc_5fchannel_5fsecurity_5fconnector',['grpc_channel_security_connector',['../structgrpc__channel__security__connector.html',1,'']]],
+ ['grpc_5fchannel_5fstack',['grpc_channel_stack',['../structgrpc__channel__stack.html',1,'']]],
+ ['grpc_5fchttp2_5fdata_5fparser',['grpc_chttp2_data_parser',['../structgrpc__chttp2__data__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser',['grpc_chttp2_goaway_parser',['../structgrpc__chttp2__goaway__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fhpack_5fcompressor',['grpc_chttp2_hpack_compressor',['../structgrpc__chttp2__hpack__compressor.html',1,'']]],
+ ['grpc_5fchttp2_5fhpack_5fparser',['grpc_chttp2_hpack_parser',['../structgrpc__chttp2__hpack__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fstring',['grpc_chttp2_hpack_parser_string',['../structgrpc__chttp2__hpack__parser__string.html',1,'']]],
+ ['grpc_5fchttp2_5fhptbl',['grpc_chttp2_hptbl',['../structgrpc__chttp2__hptbl.html',1,'']]],
+ ['grpc_5fchttp2_5fhptbl_5ffind_5fresult',['grpc_chttp2_hptbl_find_result',['../structgrpc__chttp2__hptbl__find__result.html',1,'']]],
+ ['grpc_5fchttp2_5fhuffsym',['grpc_chttp2_huffsym',['../structgrpc__chttp2__huffsym.html',1,'']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer',['grpc_chttp2_incoming_metadata_buffer',['../structgrpc__chttp2__incoming__metadata__buffer.html',1,'']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5flive_5fop_5fbuffer',['grpc_chttp2_incoming_metadata_live_op_buffer',['../structgrpc__chttp2__incoming__metadata__live__op__buffer.html',1,'']]],
+ ['grpc_5fchttp2_5foutstanding_5fping',['grpc_chttp2_outstanding_ping',['../structgrpc__chttp2__outstanding__ping.html',1,'']]],
+ ['grpc_5fchttp2_5fping_5fparser',['grpc_chttp2_ping_parser',['../structgrpc__chttp2__ping__parser.html',1,'']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fparser',['grpc_chttp2_rst_stream_parser',['../structgrpc__chttp2__rst__stream__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fsetting_5fparameters',['grpc_chttp2_setting_parameters',['../structgrpc__chttp2__setting__parameters.html',1,'']]],
+ ['grpc_5fchttp2_5fsettings_5fparser',['grpc_chttp2_settings_parser',['../structgrpc__chttp2__settings__parser.html',1,'']]],
+ ['grpc_5fchttp2_5fstream',['grpc_chttp2_stream',['../structgrpc__chttp2__stream.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5fglobal',['grpc_chttp2_stream_global',['../structgrpc__chttp2__stream__global.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5flink',['grpc_chttp2_stream_link',['../structgrpc__chttp2__stream__link.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5flist',['grpc_chttp2_stream_list',['../structgrpc__chttp2__stream__list.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5fmap',['grpc_chttp2_stream_map',['../structgrpc__chttp2__stream__map.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5fparsing',['grpc_chttp2_stream_parsing',['../structgrpc__chttp2__stream__parsing.html',1,'']]],
+ ['grpc_5fchttp2_5fstream_5fwriting',['grpc_chttp2_stream_writing',['../structgrpc__chttp2__stream__writing.html',1,'']]],
+ ['grpc_5fchttp2_5ftransport',['grpc_chttp2_transport',['../structgrpc__chttp2__transport.html',1,'']]],
+ ['grpc_5fchttp2_5ftransport_5fglobal',['grpc_chttp2_transport_global',['../structgrpc__chttp2__transport__global.html',1,'']]],
+ ['grpc_5fchttp2_5ftransport_5fparsing',['grpc_chttp2_transport_parsing',['../structgrpc__chttp2__transport__parsing.html',1,'']]],
+ ['grpc_5fchttp2_5ftransport_5fwriting',['grpc_chttp2_transport_writing',['../structgrpc__chttp2__transport__writing.html',1,'']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fparser',['grpc_chttp2_window_update_parser',['../structgrpc__chttp2__window__update__parser.html',1,'']]],
+ ['grpc_5fclient_5fconfig',['grpc_client_config',['../structgrpc__client__config.html',1,'']]],
+ ['grpc_5fclient_5fsecurity_5fcontext',['grpc_client_security_context',['../structgrpc__client__security__context.html',1,'']]],
+ ['grpc_5fcompletion_5fqueue',['grpc_completion_queue',['../structgrpc__completion__queue.html',1,'']]],
+ ['grpc_5fcomposite_5fcredentials',['grpc_composite_credentials',['../structgrpc__composite__credentials.html',1,'']]],
+ ['grpc_5fcomposite_5fcredentials_5fmetadata_5fcontext',['grpc_composite_credentials_metadata_context',['../structgrpc__composite__credentials__metadata__context.html',1,'']]],
+ ['grpc_5fconnect_5fin_5fargs',['grpc_connect_in_args',['../structgrpc__connect__in__args.html',1,'']]],
+ ['grpc_5fconnect_5fout_5fargs',['grpc_connect_out_args',['../structgrpc__connect__out__args.html',1,'']]],
+ ['grpc_5fconnectivity_5fstate_5ftracker',['grpc_connectivity_state_tracker',['../structgrpc__connectivity__state__tracker.html',1,'']]],
+ ['grpc_5fconnectivity_5fstate_5fwatcher',['grpc_connectivity_state_watcher',['../structgrpc__connectivity__state__watcher.html',1,'']]],
+ ['grpc_5fconnector',['grpc_connector',['../structgrpc__connector.html',1,'']]],
+ ['grpc_5fconnector_5fvtable',['grpc_connector_vtable',['../structgrpc__connector__vtable.html',1,'']]],
+ ['grpc_5fcq_5fcompletion',['grpc_cq_completion',['../structgrpc__cq__completion.html',1,'']]],
+ ['grpc_5fcredentials',['grpc_credentials',['../structgrpc__credentials.html',1,'']]],
+ ['grpc_5fcredentials_5farray',['grpc_credentials_array',['../structgrpc__credentials__array.html',1,'']]],
+ ['grpc_5fcredentials_5fmd',['grpc_credentials_md',['../structgrpc__credentials__md.html',1,'']]],
+ ['grpc_5fcredentials_5fmd_5fstore',['grpc_credentials_md_store',['../structgrpc__credentials__md__store.html',1,'']]],
+ ['grpc_5fcredentials_5fmetadata_5frequest',['grpc_credentials_metadata_request',['../structgrpc__credentials__metadata__request.html',1,'']]],
+ ['grpc_5fcredentials_5fvtable',['grpc_credentials_vtable',['../structgrpc__credentials__vtable.html',1,'']]],
+ ['grpc_5fendpoint',['grpc_endpoint',['../structgrpc__endpoint.html',1,'']]],
+ ['grpc_5fendpoint_5fpair',['grpc_endpoint_pair',['../structgrpc__endpoint__pair.html',1,'']]],
+ ['grpc_5fendpoint_5fvtable',['grpc_endpoint_vtable',['../structgrpc__endpoint__vtable.html',1,'']]],
+ ['grpc_5fevent',['grpc_event',['../structgrpc__event.html',1,'']]],
+ ['grpc_5ffake_5fchannel_5fsecurity_5fconnector',['grpc_fake_channel_security_connector',['../structgrpc__fake__channel__security__connector.html',1,'']]],
+ ['grpc_5ffake_5foauth2_5fcredentials',['grpc_fake_oauth2_credentials',['../structgrpc__fake__oauth2__credentials.html',1,'']]],
+ ['grpc_5ffd',['grpc_fd',['../structgrpc__fd.html',1,'']]],
+ ['grpc_5ffd_5fwatcher',['grpc_fd_watcher',['../structgrpc__fd__watcher.html',1,'']]],
+ ['grpc_5fhttpcli_5fcontext',['grpc_httpcli_context',['../structgrpc__httpcli__context.html',1,'']]],
+ ['grpc_5fhttpcli_5fheader',['grpc_httpcli_header',['../structgrpc__httpcli__header.html',1,'']]],
+ ['grpc_5fhttpcli_5fparser',['grpc_httpcli_parser',['../structgrpc__httpcli__parser.html',1,'']]],
+ ['grpc_5fhttpcli_5frequest',['grpc_httpcli_request',['../structgrpc__httpcli__request.html',1,'']]],
+ ['grpc_5fhttpcli_5fresponse',['grpc_httpcli_response',['../structgrpc__httpcli__response.html',1,'']]],
+ ['grpc_5fhttpcli_5fssl_5fchannel_5fsecurity_5fconnector',['grpc_httpcli_ssl_channel_security_connector',['../structgrpc__httpcli__ssl__channel__security__connector.html',1,'']]],
+ ['grpc_5fiam_5fcredentials',['grpc_iam_credentials',['../structgrpc__iam__credentials.html',1,'']]],
+ ['grpc_5fiomgr_5fclosure',['grpc_iomgr_closure',['../structgrpc__iomgr__closure.html',1,'']]],
+ ['grpc_5fiomgr_5fobject',['grpc_iomgr_object',['../structgrpc__iomgr__object.html',1,'']]],
+ ['grpc_5fioreq',['grpc_ioreq',['../structgrpc__ioreq.html',1,'']]],
+ ['grpc_5fioreq_5fdata',['grpc_ioreq_data',['../uniongrpc__ioreq__data.html',1,'']]],
+ ['grpc_5fjson',['grpc_json',['../structgrpc__json.html',1,'']]],
+ ['grpc_5fjson_5freader',['grpc_json_reader',['../structgrpc__json__reader.html',1,'']]],
+ ['grpc_5fjson_5freader_5fvtable',['grpc_json_reader_vtable',['../structgrpc__json__reader__vtable.html',1,'']]],
+ ['grpc_5fjson_5fwriter',['grpc_json_writer',['../structgrpc__json__writer.html',1,'']]],
+ ['grpc_5fjson_5fwriter_5fvtable',['grpc_json_writer_vtable',['../structgrpc__json__writer__vtable.html',1,'']]],
+ ['grpc_5fjwt_5fclaims',['grpc_jwt_claims',['../structgrpc__jwt__claims.html',1,'']]],
+ ['grpc_5fjwt_5fverifier',['grpc_jwt_verifier',['../structgrpc__jwt__verifier.html',1,'']]],
+ ['grpc_5fjwt_5fverifier_5femail_5fdomain_5fkey_5furl_5fmapping',['grpc_jwt_verifier_email_domain_key_url_mapping',['../structgrpc__jwt__verifier__email__domain__key__url__mapping.html',1,'']]],
+ ['grpc_5fkick_5ffd_5finfo',['grpc_kick_fd_info',['../structgrpc__kick__fd__info.html',1,'']]],
+ ['grpc_5flb_5fpolicy',['grpc_lb_policy',['../structgrpc__lb__policy.html',1,'']]],
+ ['grpc_5flb_5fpolicy_5fvtable',['grpc_lb_policy_vtable',['../structgrpc__lb__policy__vtable.html',1,'']]],
+ ['grpc_5flinked_5fmdelem',['grpc_linked_mdelem',['../structgrpc__linked__mdelem.html',1,'']]],
+ ['grpc_5fmdctx',['grpc_mdctx',['../structgrpc__mdctx.html',1,'']]],
+ ['grpc_5fmdelem',['grpc_mdelem',['../structgrpc__mdelem.html',1,'']]],
+ ['grpc_5fmdelem_5flist',['grpc_mdelem_list',['../structgrpc__mdelem__list.html',1,'']]],
+ ['grpc_5fmdstr',['grpc_mdstr',['../structgrpc__mdstr.html',1,'']]],
+ ['grpc_5fmetadata',['grpc_metadata',['../structgrpc__metadata.html',1,'']]],
+ ['grpc_5fmetadata_5farray',['grpc_metadata_array',['../structgrpc__metadata__array.html',1,'']]],
+ ['grpc_5fmetadata_5fbatch',['grpc_metadata_batch',['../structgrpc__metadata__batch.html',1,'']]],
+ ['grpc_5foauth2_5ftoken_5ffetcher_5fcredentials',['grpc_oauth2_token_fetcher_credentials',['../structgrpc__oauth2__token__fetcher__credentials.html',1,'']]],
+ ['grpc_5fop',['grpc_op',['../structgrpc__op.html',1,'']]],
+ ['grpc_5fpollset',['grpc_pollset',['../structgrpc__pollset.html',1,'']]],
+ ['grpc_5fpollset_5fkick_5fstate',['grpc_pollset_kick_state',['../structgrpc__pollset__kick__state.html',1,'']]],
+ ['grpc_5fpollset_5fset',['grpc_pollset_set',['../structgrpc__pollset__set.html',1,'']]],
+ ['grpc_5fpollset_5fvtable',['grpc_pollset_vtable',['../structgrpc__pollset__vtable.html',1,'']]],
+ ['grpc_5fprecise_5fclock',['grpc_precise_clock',['../structgrpc__precise__clock.html',1,'']]],
+ ['grpc_5frefresh_5ftoken_5fcredentials',['grpc_refresh_token_credentials',['../structgrpc__refresh__token__credentials.html',1,'']]],
+ ['grpc_5fresolved_5faddress',['grpc_resolved_address',['../structgrpc__resolved__address.html',1,'']]],
+ ['grpc_5fresolved_5faddresses',['grpc_resolved_addresses',['../structgrpc__resolved__addresses.html',1,'']]],
+ ['grpc_5fresolver',['grpc_resolver',['../structgrpc__resolver.html',1,'']]],
+ ['grpc_5fresolver_5ffactory',['grpc_resolver_factory',['../structgrpc__resolver__factory.html',1,'']]],
+ ['grpc_5fresolver_5ffactory_5fvtable',['grpc_resolver_factory_vtable',['../structgrpc__resolver__factory__vtable.html',1,'']]],
+ ['grpc_5fresolver_5fvtable',['grpc_resolver_vtable',['../structgrpc__resolver__vtable.html',1,'']]],
+ ['grpc_5fsecure_5ftransport_5fsetup',['grpc_secure_transport_setup',['../structgrpc__secure__transport__setup.html',1,'']]],
+ ['grpc_5fsecurity_5fconnector',['grpc_security_connector',['../structgrpc__security__connector.html',1,'']]],
+ ['grpc_5fsecurity_5fconnector_5fvtable',['grpc_security_connector_vtable',['../structgrpc__security__connector__vtable.html',1,'']]],
+ ['grpc_5fserver',['grpc_server',['../structgrpc__server.html',1,'']]],
+ ['grpc_5fserver_5fcredentials',['grpc_server_credentials',['../structgrpc__server__credentials.html',1,'']]],
+ ['grpc_5fserver_5fcredentials_5fvtable',['grpc_server_credentials_vtable',['../structgrpc__server__credentials__vtable.html',1,'']]],
+ ['grpc_5fserver_5fsecure_5fstate',['grpc_server_secure_state',['../structgrpc__server__secure__state.html',1,'']]],
+ ['grpc_5fserver_5fsecurity_5fcontext',['grpc_server_security_context',['../structgrpc__server__security__context.html',1,'']]],
+ ['grpc_5fservice_5faccount_5fcredentials',['grpc_service_account_credentials',['../structgrpc__service__account__credentials.html',1,'']]],
+ ['grpc_5fservice_5faccount_5fjwt_5faccess_5fcredentials',['grpc_service_account_jwt_access_credentials',['../structgrpc__service__account__jwt__access__credentials.html',1,'']]],
+ ['grpc_5fssl_5fchannel_5fsecurity_5fconnector',['grpc_ssl_channel_security_connector',['../structgrpc__ssl__channel__security__connector.html',1,'']]],
+ ['grpc_5fssl_5fconfig',['grpc_ssl_config',['../structgrpc__ssl__config.html',1,'']]],
+ ['grpc_5fssl_5fcredentials',['grpc_ssl_credentials',['../structgrpc__ssl__credentials.html',1,'']]],
+ ['grpc_5fssl_5fpem_5fkey_5fcert_5fpair',['grpc_ssl_pem_key_cert_pair',['../structgrpc__ssl__pem__key__cert__pair.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fconfig',['grpc_ssl_server_config',['../structgrpc__ssl__server__config.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fcredentials',['grpc_ssl_server_credentials',['../structgrpc__ssl__server__credentials.html',1,'']]],
+ ['grpc_5fssl_5fserver_5fsecurity_5fconnector',['grpc_ssl_server_security_connector',['../structgrpc__ssl__server__security__connector.html',1,'']]],
+ ['grpc_5fstream_5fop',['grpc_stream_op',['../structgrpc__stream__op.html',1,'']]],
+ ['grpc_5fstream_5fop_5fbuffer',['grpc_stream_op_buffer',['../structgrpc__stream__op__buffer.html',1,'']]],
+ ['grpc_5fsubchannel',['grpc_subchannel',['../structgrpc__subchannel.html',1,'']]],
+ ['grpc_5fsubchannel_5fargs',['grpc_subchannel_args',['../structgrpc__subchannel__args.html',1,'']]],
+ ['grpc_5fsubchannel_5fcall',['grpc_subchannel_call',['../structgrpc__subchannel__call.html',1,'']]],
+ ['grpc_5fsubchannel_5ffactory',['grpc_subchannel_factory',['../structgrpc__subchannel__factory.html',1,'']]],
+ ['grpc_5fsubchannel_5ffactory_5fvtable',['grpc_subchannel_factory_vtable',['../structgrpc__subchannel__factory__vtable.html',1,'']]],
+ ['grpc_5ftime_5faveraged_5fstats',['grpc_time_averaged_stats',['../structgrpc__time__averaged__stats.html',1,'']]],
+ ['grpc_5ftransport',['grpc_transport',['../structgrpc__transport.html',1,'']]],
+ ['grpc_5ftransport_5fop',['grpc_transport_op',['../structgrpc__transport__op.html',1,'']]],
+ ['grpc_5ftransport_5fstream_5fop',['grpc_transport_stream_op',['../structgrpc__transport__stream__op.html',1,'']]],
+ ['grpc_5ftransport_5fvtable',['grpc_transport_vtable',['../structgrpc__transport__vtable.html',1,'']]],
+ ['grpc_5furi',['grpc_uri',['../structgrpc__uri.html',1,'']]],
+ ['grpc_5fwakeup_5ffd_5finfo',['grpc_wakeup_fd_info',['../structgrpc__wakeup__fd__info.html',1,'']]],
+ ['grpc_5fwakeup_5ffd_5fvtable',['grpc_wakeup_fd_vtable',['../structgrpc__wakeup__fd__vtable.html',1,'']]],
+ ['grpc_5fwinsocket',['grpc_winsocket',['../structgrpc__winsocket.html',1,'']]],
+ ['grpc_5fwinsocket_5fcallback_5finfo',['grpc_winsocket_callback_info',['../structgrpc__winsocket__callback__info.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_7.html b/doc/ref/core.internal/html/search/classes_7.html
new file mode 100644
index 0000000000..9e5f5c9861
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_7.js b/doc/ref/core.internal/html/search/classes_7.js
new file mode 100644
index 0000000000..cd4f2d2d6b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['huff_5fout',['huff_out',['../structhuff__out.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_8.html b/doc/ref/core.internal/html/search/classes_8.html
new file mode 100644
index 0000000000..82c35b32ef
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_8.js b/doc/ref/core.internal/html/search/classes_8.js
new file mode 100644
index 0000000000..1b1a8a286c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_8.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['internal_5fmetadata',['internal_metadata',['../structinternal__metadata.html',1,'']]],
+ ['internal_5frequest',['internal_request',['../structinternal__request.html',1,'']]],
+ ['internal_5fstring',['internal_string',['../structinternal__string.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_9.html b/doc/ref/core.internal/html/search/classes_9.html
new file mode 100644
index 0000000000..4e83ac829b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_9.js b/doc/ref/core.internal/html/search/classes_9.js
new file mode 100644
index 0000000000..d939868502
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_9.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['jose_5fheader',['jose_header',['../structjose__header.html',1,'']]],
+ ['json_5freader_5fuserdata',['json_reader_userdata',['../structjson__reader__userdata.html',1,'']]],
+ ['json_5fwriter_5fuserdata',['json_writer_userdata',['../structjson__writer__userdata.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_a.html b/doc/ref/core.internal/html/search/classes_a.html
new file mode 100644
index 0000000000..616feb69a2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_a.js b/doc/ref/core.internal/html/search/classes_a.js
new file mode 100644
index 0000000000..e1a700c185
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_a.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['lb_5fpolicy_5fconnectivity_5fwatcher',['lb_policy_connectivity_watcher',['../structlb__policy__connectivity__watcher.html',1,'']]],
+ ['listener',['listener',['../structlistener.html',1,'']]],
+ ['lockfree_5fnode',['lockfree_node',['../unionlockfree__node.html',1,'']]],
+ ['lockfree_5fnode_5fcontents',['lockfree_node_contents',['../structlockfree__node__contents.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_b.html b/doc/ref/core.internal/html/search/classes_b.html
new file mode 100644
index 0000000000..4461152200
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_b.js b/doc/ref/core.internal/html/search/classes_b.js
new file mode 100644
index 0000000000..cbe773afd2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_b.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['malloc_5frefcount',['malloc_refcount',['../structmalloc__refcount.html',1,'']]],
+ ['merge_5fargs_5ffactory',['merge_args_factory',['../structmerge__args__factory.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_c.html b/doc/ref/core.internal/html/search/classes_c.html
new file mode 100644
index 0000000000..8f92c8632a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_c.js b/doc/ref/core.internal/html/search/classes_c.js
new file mode 100644
index 0000000000..5d8671af68
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_c.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['new_5fslice_5frefcount',['new_slice_refcount',['../structnew__slice__refcount.html',1,'']]],
+ ['new_5fwith_5flen_5fslice_5frefcount',['new_with_len_slice_refcount',['../structnew__with__len__slice__refcount.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_d.html b/doc/ref/core.internal/html/search/classes_d.html
new file mode 100644
index 0000000000..9690cf0bac
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_d.js b/doc/ref/core.internal/html/search/classes_d.js
new file mode 100644
index 0000000000..89a95595d3
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_d.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['pending_5fpick',['pending_pick',['../structpending__pick.html',1,'']]],
+ ['pick_5ffirst_5flb_5fpolicy',['pick_first_lb_policy',['../structpick__first__lb__policy.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_e.html b/doc/ref/core.internal/html/search/classes_e.html
new file mode 100644
index 0000000000..24a3ef3aba
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_e.js b/doc/ref/core.internal/html/search/classes_e.js
new file mode 100644
index 0000000000..5be833a733
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_e.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['received_5fstatus',['received_status',['../structreceived__status.html',1,'']]],
+ ['registered_5fcall',['registered_call',['../structregistered__call.html',1,'']]],
+ ['registered_5fmethod',['registered_method',['../structregistered__method.html',1,'']]],
+ ['registered_5fresolver',['registered_resolver',['../structregistered__resolver.html',1,'']]],
+ ['reqinfo_5fmaster',['reqinfo_master',['../structreqinfo__master.html',1,'']]],
+ ['request_5fkiller',['request_killer',['../structrequest__killer.html',1,'']]],
+ ['request_5fmatcher',['request_matcher',['../structrequest__matcher.html',1,'']]],
+ ['requested_5fcall',['requested_call',['../structrequested__call.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/classes_f.html b/doc/ref/core.internal/html/search/classes_f.html
new file mode 100644
index 0000000000..cee523ad6b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/classes_f.js b/doc/ref/core.internal/html/search/classes_f.js
new file mode 100644
index 0000000000..9d781b2286
--- /dev/null
+++ b/doc/ref/core.internal/html/search/classes_f.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['secure_5fendpoint',['secure_endpoint',['../structsecure__endpoint.html',1,'']]],
+ ['shard_5ftype',['shard_type',['../structshard__type.html',1,'']]],
+ ['shutdown_5fcleanup_5fargs',['shutdown_cleanup_args',['../structshutdown__cleanup__args.html',1,'']]],
+ ['shutdown_5ftag',['shutdown_tag',['../structshutdown__tag.html',1,'']]],
+ ['sockaddr_5fresolver',['sockaddr_resolver',['../structsockaddr__resolver.html',1,'']]],
+ ['state_5fwatcher',['state_watcher',['../structstate__watcher.html',1,'']]],
+ ['subchannel_5ffactory',['subchannel_factory',['../structsubchannel__factory.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/close.png b/doc/ref/core.internal/html/search/close.png
new file mode 100644
index 0000000000..9342d3dfee
--- /dev/null
+++ b/doc/ref/core.internal/html/search/close.png
Binary files differ
diff --git a/doc/ref/core.internal/html/search/defines_0.html b/doc/ref/core.internal/html/search/defines_0.html
new file mode 100644
index 0000000000..c2f0b46cfb
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_0.js b/doc/ref/core.internal/html/search/defines_0.js
new file mode 100644
index 0000000000..aa3146dcea
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_0.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['_5fgnu_5fsource',['_GNU_SOURCE',['../tcp__server__posix_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;tcp_server_posix.c'],['../cpu__linux_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;cpu_linux.c'],['../env__linux_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;env_linux.c'],['../log__linux_8c.html#a369266c24eacffb87046522897a570d5',1,'_GNU_SOURCE():&#160;log_linux.c']]],
+ ['_5fposix_5fsource',['_POSIX_SOURCE',['../log__linux_8c.html#ac3d144aa01e765a1fae62ab5491c7cc1',1,'log_linux.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_1.html b/doc/ref/core.internal/html/search/defines_1.html
new file mode 100644
index 0000000000..9e1d9fa116
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_1.js b/doc/ref/core.internal/html/search/defines_1.js
new file mode 100644
index 0000000000..d35fee329a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['add_5fdeadline_5fscale',['ADD_DEADLINE_SCALE',['../alarm_8c.html#a27a820068e725cd087726fc5d913a5b6',1,'alarm.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_10.html b/doc/ref/core.internal/html/search/defines_10.html
new file mode 100644
index 0000000000..16f2d8297b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_10.js b/doc/ref/core.internal/html/search/defines_10.js
new file mode 100644
index 0000000000..8c3cc2c7d2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_10.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['unbound_5fjson_5fstring_5flength',['UNBOUND_JSON_STRING_LENGTH',['../json__string_8c.html#a1cb2ee1031195d596402be8c2c7e8065',1,'json_string.c']]],
+ ['unref_5flog',['UNREF_LOG',['../subchannel_8c.html#a113001b9e3c0ff95ddc62508d3abddaa',1,'subchannel.c']]],
+ ['unref_5ftransport',['UNREF_TRANSPORT',['../chttp2__transport_8c.html#a2a872dae5a8d3799232cbae46e1ed133',1,'chttp2_transport.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_2.html b/doc/ref/core.internal/html/search/defines_2.html
new file mode 100644
index 0000000000..6ef4b980d7
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_2.js b/doc/ref/core.internal/html/search/defines_2.js
new file mode 100644
index 0000000000..94280dcf7f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_2.js
@@ -0,0 +1,24 @@
+var searchData=
+[
+ ['call_5fdata_5ffrom_5ftransport_5fstream',['CALL_DATA_FROM_TRANSPORT_STREAM',['../connected__channel_8c.html#adc89e1ee71e626f5adc6ceb2de12935a',1,'connected_channel.c']]],
+ ['call_5felem_5ffrom_5fcall',['CALL_ELEM_FROM_CALL',['../call_8c.html#acd274f346b0ea7fc3235481cb7726c25',1,'call.c']]],
+ ['call_5felems_5ffrom_5fstack',['CALL_ELEMS_FROM_STACK',['../channel__stack_8c.html#a604f63dd1fea052b4285b1437c100610',1,'channel_stack.c']]],
+ ['call_5ffrom_5fcall_5fstack',['CALL_FROM_CALL_STACK',['../call_8c.html#a5e0acdef58012600d44f7978256c82d9',1,'call.c']]],
+ ['call_5ffrom_5ftop_5felem',['CALL_FROM_TOP_ELEM',['../call_8c.html#a195c2e9b9e6551cf5973560eec7a97fa',1,'call.c']]],
+ ['call_5fstack_5ffrom_5fcall',['CALL_STACK_FROM_CALL',['../call_8c.html#a25608dcdb8f5bf9b8afc358125b59b5b',1,'call.c']]],
+ ['census_5finvalid_5fstat_5fid',['CENSUS_INVALID_STAT_ID',['../rpc__stat__id_8h.html#a59e5e9d32ec60d7d202ebd834117c7b6',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fclient_5ferrors',['CENSUS_RPC_CLIENT_ERRORS',['../rpc__stat__id_8h.html#ab98fe10ab9da977ff1ab146fb47c25c6',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fclient_5flatency',['CENSUS_RPC_CLIENT_LATENCY',['../rpc__stat__id_8h.html#a18893b8a61bb96d779e5f3e1c6384fe2',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fclient_5frequests',['CENSUS_RPC_CLIENT_REQUESTS',['../rpc__stat__id_8h.html#aeaec3ab6b88faa6f3d17df39886839b4',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fserver_5ferrors',['CENSUS_RPC_SERVER_ERRORS',['../rpc__stat__id_8h.html#a653739d1d6b9c46c169dd40023e883c3',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fserver_5flatency',['CENSUS_RPC_SERVER_LATENCY',['../rpc__stat__id_8h.html#ab30ee75f97d6c9361d8667d62349f49e',1,'rpc_stat_id.h']]],
+ ['census_5frpc_5fserver_5frequests',['CENSUS_RPC_SERVER_REQUESTS',['../rpc__stat__id_8h.html#abdbb1e62656b892c48ef4b5123be59e2',1,'rpc_stat_id.h']]],
+ ['channel_5felems_5ffrom_5fstack',['CHANNEL_ELEMS_FROM_STACK',['../channel__stack_8c.html#ada2431407a0c579217e6b33534dc4b68',1,'channel_stack.c']]],
+ ['channel_5ffrom_5fchannel_5fstack',['CHANNEL_FROM_CHANNEL_STACK',['../channel_8c.html#ae9cf519e646bc07f4b32920f39fba049',1,'channel.c']]],
+ ['channel_5ffrom_5ftop_5felem',['CHANNEL_FROM_TOP_ELEM',['../channel_8c.html#a79c20e305865805bbe3e21adc8da9e72',1,'channel.c']]],
+ ['channel_5fstack_5ffrom_5fchannel',['CHANNEL_STACK_FROM_CHANNEL',['../channel_8c.html#a66dde7aaec84b22bf4ddfa999a2201ed',1,'channel.c']]],
+ ['channel_5fstack_5ffrom_5fconnection',['CHANNEL_STACK_FROM_CONNECTION',['../subchannel_8c.html#a004980d48eea483363d061723e95834e',1,'subchannel.c']]],
+ ['compress_5foffset',['COMPRESS_OFFSET',['../call_8c.html#a94d05fca53ff43502691278ac008b36c',1,'call.c']]],
+ ['connection_5fref_5flocked',['CONNECTION_REF_LOCKED',['../subchannel_8c.html#a5a6df9d57aa14df8c30325f7b403a6ba',1,'subchannel.c']]],
+ ['connection_5funref_5flocked',['CONNECTION_UNREF_LOCKED',['../subchannel_8c.html#a7511e39882d77270a0e73a6ea6bdbf22',1,'subchannel.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_3.html b/doc/ref/core.internal/html/search/defines_3.html
new file mode 100644
index 0000000000..e575d6606f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_3.js b/doc/ref/core.internal/html/search/defines_3.js
new file mode 100644
index 0000000000..b3d9c5cdaa
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_3.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['debug_5fargs',['DEBUG_ARGS',['../metadata_8c.html#a74ccabb9eadfe99a2fa8e5004fdf7cfc',1,'metadata.c']]],
+ ['decl_5ffactory',['DECL_FACTORY',['../sockaddr__resolver_8c.html#ae666b8dfe7a65b7719adcc22034160e6',1,'sockaddr_resolver.c']]],
+ ['default_5fconnection_5fwindow_5ftarget',['DEFAULT_CONNECTION_WINDOW_TARGET',['../chttp2__transport_8c.html#a609f239b676101bc4e1358eeac253916',1,'chttp2_transport.c']]],
+ ['default_5fmax_5fmessage_5flength',['DEFAULT_MAX_MESSAGE_LENGTH',['../channel_8c.html#ac48c5c1b1a6288d82d88bad6aa306d56',1,'channel.c']]],
+ ['default_5fwindow',['DEFAULT_WINDOW',['../chttp2__transport_8c.html#af9edf0dca12d746c6cf6c6852f4398ae',1,'chttp2_transport.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_4.html b/doc/ref/core.internal/html/search/defines_4.html
new file mode 100644
index 0000000000..90e654daf4
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_4.js b/doc/ref/core.internal/html/search/defines_4.js
new file mode 100644
index 0000000000..3eb3485b38
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['entry_5falignment_5fbits',['ENTRY_ALIGNMENT_BITS',['../stack__lockfree_8c.html#a8644da45b827e108bca857053cbf48af',1,'stack_lockfree.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_5.html b/doc/ref/core.internal/html/search/defines_5.html
new file mode 100644
index 0000000000..e02f8a235c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_5.js b/doc/ref/core.internal/html/search/defines_5.js
new file mode 100644
index 0000000000..9f17d881f0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['fmix32',['FMIX32',['../murmur__hash_8c.html#a35851ba6b08c118345278effc46695e6',1,'murmur_hash.c']]],
+ ['fwd_5fdebug_5fargs',['FWD_DEBUG_ARGS',['../metadata_8c.html#a3cfab2da250dee51694faff7226974a6',1,'metadata.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_6.html b/doc/ref/core.internal/html/search/defines_6.html
new file mode 100644
index 0000000000..52aef19bd2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_6.js b/doc/ref/core.internal/html/search/defines_6.js
new file mode 100644
index 0000000000..31c2739e78
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_6.js
@@ -0,0 +1,206 @@
+var searchData=
+[
+ ['getblock32',['GETBLOCK32',['../murmur__hash_8c.html#aaaaac568919d152a24bbff8d8c1bc194',1,'murmur_hash.c']]],
+ ['gpr_5farray_5fsize',['GPR_ARRAY_SIZE',['../useful_8h.html#a0e411d4f81a169c97c319d4e84df5747',1,'useful.h']]],
+ ['gpr_5fassert',['GPR_ASSERT',['../log_8h.html#a6ccf52ff690655cc22cd9d053650876f',1,'log.h']]],
+ ['gpr_5fatm_5facq_5fcas',['gpr_atm_acq_cas',['../atm__gcc__sync_8h.html#a1a90e5777158aaa53624822f1f87dd90',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5facq_5fload',['gpr_atm_acq_load',['../atm__gcc__atomic_8h.html#a44607f95f7ee40eba592c7fe10960a06',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fatm_5fcompile_5fbarrier_5f',['GPR_ATM_COMPILE_BARRIER_',['../atm__gcc__sync_8h.html#a5a1f94112dcd03309d6716d43c8edf3f',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5ffull_5fbarrier',['gpr_atm_full_barrier',['../atm__gcc__atomic_8h.html#a95f86e51ae9a479026bd237cb792193e',1,'gpr_atm_full_barrier():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#a95f86e51ae9a479026bd237cb792193e',1,'gpr_atm_full_barrier():&#160;atm_gcc_sync.h'],['../atm__win32_8h.html#a8e58c94aff5c7161bc3cbfde878dd03d',1,'gpr_atm_full_barrier():&#160;atm_win32.h']]],
+ ['gpr_5fatm_5ffull_5ffetch_5fadd',['gpr_atm_full_fetch_add',['../atm__gcc__atomic_8h.html#abada8771b338845e4c6ef93c8392582c',1,'gpr_atm_full_fetch_add():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#abada8771b338845e4c6ef93c8392582c',1,'gpr_atm_full_fetch_add():&#160;atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fls_5fbarrier_5f',['GPR_ATM_LS_BARRIER_',['../atm__gcc__sync_8h.html#a4ceb46c9b854db0ade8cfe2f37edb878',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5fcas',['gpr_atm_no_barrier_cas',['../atm__gcc__sync_8h.html#ad39536b08912ac4a0770655ed334d260',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5ffetch_5fadd',['gpr_atm_no_barrier_fetch_add',['../atm__gcc__atomic_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c',1,'gpr_atm_no_barrier_fetch_add():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#ae337dc477a6a45ac3d91e41e8f3f2f8c',1,'gpr_atm_no_barrier_fetch_add():&#160;atm_gcc_sync.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5fload',['gpr_atm_no_barrier_load',['../atm__gcc__atomic_8h.html#aa647aa9c97294a6709bbf2ac401cd9a6',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fatm_5fno_5fbarrier_5fstore',['gpr_atm_no_barrier_store',['../atm__gcc__atomic_8h.html#afad47d4c311c5439371fcdd4a0b6794e',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fatm_5frel_5fcas',['gpr_atm_rel_cas',['../atm__gcc__sync_8h.html#ae7c3b215cda868ee9ee778822000c3f2',1,'atm_gcc_sync.h']]],
+ ['gpr_5fatm_5frel_5fstore',['gpr_atm_rel_store',['../atm__gcc__atomic_8h.html#a42e3982d45ae4cec439a12b8fcd618e9',1,'atm_gcc_atomic.h']]],
+ ['gpr_5fbitclear',['GPR_BITCLEAR',['../useful_8h.html#af797bf1803f9809b3ccceaa619078c89',1,'useful.h']]],
+ ['gpr_5fbitcount',['GPR_BITCOUNT',['../useful_8h.html#a8f51444fe97eb3f83184b98035e3357f',1,'useful.h']]],
+ ['gpr_5fbitget',['GPR_BITGET',['../useful_8h.html#a7c54bb2fffdaae24ba38ca5e5c53ab41',1,'useful.h']]],
+ ['gpr_5fbitset',['GPR_BITSET',['../useful_8h.html#a28de4ed955bfc2bff309061b7820a37a',1,'useful.h']]],
+ ['gpr_5fcacheline_5fsize',['GPR_CACHELINE_SIZE',['../port__platform_8h.html#ad9b7cc620233bbab0bc57cfbbe9519ad',1,'port_platform.h']]],
+ ['gpr_5fcacheline_5fsize_5flog',['GPR_CACHELINE_SIZE_LOG',['../port__platform_8h.html#a4e8b19add0d8d0be9464f748be985576',1,'port_platform.h']]],
+ ['gpr_5fclamp',['GPR_CLAMP',['../useful_8h.html#ac974b8c13ee716193e0ee30d9513672c',1,'useful.h']]],
+ ['gpr_5fdebug',['GPR_DEBUG',['../log_8h.html#a3e793245091f13bb7318a18b1166a773',1,'log.h']]],
+ ['gpr_5fdump_5fascii',['GPR_DUMP_ASCII',['../string_8h.html#ac0676a68b67df2660352db8168c6c180',1,'string.h']]],
+ ['gpr_5fdump_5fhex',['GPR_DUMP_HEX',['../string_8h.html#a2d592b56804af1c0d0e5237c37ce0313',1,'string.h']]],
+ ['gpr_5ferror',['GPR_ERROR',['../log_8h.html#a63faedb3eefd93d1c0e79974be80cc36',1,'log.h']]],
+ ['gpr_5fevent_5finit',['GPR_EVENT_INIT',['../sync__generic_8h.html#a6f38fe7692eaa6663c1f79ff5847c050',1,'sync_generic.h']]],
+ ['gpr_5finfo',['GPR_INFO',['../log_8h.html#af0d0d75690f79edc9294498c88f96703',1,'log.h']]],
+ ['gpr_5fint64_5fmax',['GPR_INT64_MAX',['../port__platform_8h.html#aaff7a6a2f0868f8b0648b74828ef0e4f',1,'port_platform.h']]],
+ ['gpr_5finternal_5fhexdigit_5fbitcount',['GPR_INTERNAL_HEXDIGIT_BITCOUNT',['../useful_8h.html#a601e1be692fe7922b52991a5d410b945',1,'useful.h']]],
+ ['gpr_5fltoa_5fmin_5fbufsize',['GPR_LTOA_MIN_BUFSIZE',['../string_8h.html#a21406aaed4e32e895145541eabbad527',1,'string.h']]],
+ ['gpr_5fmax',['GPR_MAX',['../useful_8h.html#af50c518bb1183da84adb7d8a86cd568a',1,'useful.h']]],
+ ['gpr_5fmax_5falignment',['GPR_MAX_ALIGNMENT',['../port__platform_8h.html#a53c934fa255faf3f8c4f028df105c8e2',1,'port_platform.h']]],
+ ['gpr_5fmin',['GPR_MIN',['../useful_8h.html#a298322c952526928cf8dbc7aaba7b84d',1,'useful.h']]],
+ ['gpr_5fms_5fper_5fsec',['GPR_MS_PER_SEC',['../time_8h.html#af2c8091db4e2a3133b93131f64db859e',1,'time.h']]],
+ ['gpr_5fns_5fper_5fms',['GPR_NS_PER_MS',['../time_8h.html#a3c63ee76f91a122abf3a0806b64318eb',1,'time.h']]],
+ ['gpr_5fns_5fper_5fsec',['GPR_NS_PER_SEC',['../time_8h.html#a447d0913b0cfdc943df51585f0e2785e',1,'time.h']]],
+ ['gpr_5fns_5fper_5fus',['GPR_NS_PER_US',['../time_8h.html#adc295bf07c72edae8a2ad49e24da2f32',1,'time.h']]],
+ ['gpr_5fonce_5finit',['GPR_ONCE_INIT',['../sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666',1,'GPR_ONCE_INIT():&#160;sync_posix.h'],['../sync__win32_8h.html#a8edd7eb4f6860a4f79defbad49c35666',1,'GPR_ONCE_INIT():&#160;sync_win32.h']]],
+ ['gpr_5fplatform_5fstring',['GPR_PLATFORM_STRING',['../port__platform_8h.html#a99f34e9b119908109486e91abedc933e',1,'port_platform.h']]],
+ ['gpr_5frotl',['GPR_ROTL',['../useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85',1,'useful.h']]],
+ ['gpr_5frotr',['GPR_ROTR',['../useful_8h.html#a5ff4b278972e799dc134963a0249f316',1,'useful.h']]],
+ ['gpr_5fslice_5fend_5fptr',['GPR_SLICE_END_PTR',['../slice_8h.html#a9b7e9acd0eb92039a9bc897712a62a14',1,'slice.h']]],
+ ['gpr_5fslice_5finlined_5fsize',['GPR_SLICE_INLINED_SIZE',['../slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31',1,'slice.h']]],
+ ['gpr_5fslice_5fis_5fempty',['GPR_SLICE_IS_EMPTY',['../slice_8h.html#ad4fe3efa7a8938045ce79271d79f79ef',1,'slice.h']]],
+ ['gpr_5fslice_5flength',['GPR_SLICE_LENGTH',['../slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb',1,'slice.h']]],
+ ['gpr_5fslice_5fset_5flength',['GPR_SLICE_SET_LENGTH',['../slice_8h.html#a1f5333a1260aef2efe086d4e2188e613',1,'slice.h']]],
+ ['gpr_5fslice_5fstart_5fptr',['GPR_SLICE_START_PTR',['../slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15',1,'slice.h']]],
+ ['gpr_5fstats_5finit',['GPR_STATS_INIT',['../sync__generic_8h.html#ada230498c8e2aca51e9349709e70e1ef',1,'sync_generic.h']]],
+ ['gpr_5fswap',['GPR_SWAP',['../useful_8h.html#a9f884f8218a97ed9739e2dac467f0719',1,'useful.h']]],
+ ['gpr_5ftls_5fdecl',['GPR_TLS_DECL',['../tls__gcc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd',1,'GPR_TLS_DECL():&#160;tls_gcc.h'],['../tls__msvc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd',1,'GPR_TLS_DECL():&#160;tls_msvc.h'],['../tls__pthread_8h.html#ab2c3baa4e4ceb366668aaf51379340fd',1,'GPR_TLS_DECL():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5fdestroy',['gpr_tls_destroy',['../tls__gcc_8h.html#a187108e1078d2ce05388cb17bc59ce74',1,'gpr_tls_destroy():&#160;tls_gcc.h'],['../tls__msvc_8h.html#a187108e1078d2ce05388cb17bc59ce74',1,'gpr_tls_destroy():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a187108e1078d2ce05388cb17bc59ce74',1,'gpr_tls_destroy():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5fget',['gpr_tls_get',['../tls__gcc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3',1,'gpr_tls_get():&#160;tls_gcc.h'],['../tls__msvc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3',1,'gpr_tls_get():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3',1,'gpr_tls_get():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5finit',['gpr_tls_init',['../tls__gcc_8h.html#a43768a42ff705cc028b4a483dc3b65c5',1,'gpr_tls_init():&#160;tls_gcc.h'],['../tls__msvc_8h.html#a43768a42ff705cc028b4a483dc3b65c5',1,'gpr_tls_init():&#160;tls_msvc.h'],['../tls__pthread_8h.html#a43768a42ff705cc028b4a483dc3b65c5',1,'gpr_tls_init():&#160;tls_pthread.h']]],
+ ['gpr_5ftls_5fset',['gpr_tls_set',['../tls__gcc_8h.html#aa8f01b3e40178b80d098650f42c529e7',1,'gpr_tls_set():&#160;tls_gcc.h'],['../tls__msvc_8h.html#aa8f01b3e40178b80d098650f42c529e7',1,'gpr_tls_set():&#160;tls_msvc.h']]],
+ ['gpr_5fus_5fper_5fms',['GPR_US_PER_MS',['../time_8h.html#a33dba9a222266cf2270c9b09c1f64336',1,'time.h']]],
+ ['gpr_5fus_5fper_5fsec',['GPR_US_PER_SEC',['../time_8h.html#a48433e202646afa00d9694585b05b9e3',1,'time.h']]],
+ ['grow',['GROW',['../stream__op_8c.html#a886cd1bc8d999f1eca35adda926045dc',1,'GROW():&#160;stream_op.c'],['../slice__buffer_8c.html#a886cd1bc8d999f1eca35adda926045dc',1,'GROW():&#160;slice_buffer.c']]],
+ ['grpc_5farg_5fdefault_5fauthority',['GRPC_ARG_DEFAULT_AUTHORITY',['../grpc_8h.html#add42f97666fbfc66b7dac253ac3b73ae',1,'grpc.h']]],
+ ['grpc_5farg_5fenable_5fcensus',['GRPC_ARG_ENABLE_CENSUS',['../grpc_8h.html#ae498934a02de89ce29cec570b02a2037',1,'grpc.h']]],
+ ['grpc_5farg_5fhttp2_5finitial_5fsequence_5fnumber',['GRPC_ARG_HTTP2_INITIAL_SEQUENCE_NUMBER',['../grpc_8h.html#aecc45a63163796ca1bc5453938bdfb36',1,'grpc.h']]],
+ ['grpc_5farg_5fhttp2_5fscheme',['GRPC_ARG_HTTP2_SCHEME',['../http__client__filter_8h.html#a7797da9f3f5a1381484b2cabca1920fc',1,'http_client_filter.h']]],
+ ['grpc_5farg_5fmax_5fconcurrent_5fstreams',['GRPC_ARG_MAX_CONCURRENT_STREAMS',['../grpc_8h.html#a5bb9256d0b457cab219f4d9d765148b6',1,'grpc.h']]],
+ ['grpc_5farg_5fmax_5fmessage_5flength',['GRPC_ARG_MAX_MESSAGE_LENGTH',['../grpc_8h.html#a50f37feb7c000a23b3b0edf4c31d4367',1,'grpc.h']]],
+ ['grpc_5farg_5fprimary_5fuser_5fagent_5fstring',['GRPC_ARG_PRIMARY_USER_AGENT_STRING',['../grpc_8h.html#a0732df2d9003e9ee1c01e50e41b5a8e2',1,'grpc.h']]],
+ ['grpc_5farg_5fsecondary_5fuser_5fagent_5fstring',['GRPC_ARG_SECONDARY_USER_AGENT_STRING',['../grpc_8h.html#af47b4048c11e4f8f4162f12c135c2da4',1,'grpc.h']]],
+ ['grpc_5fauth_5fcontext_5fref',['GRPC_AUTH_CONTEXT_REF',['../security__context_8h.html#a3df5d42b28934cbeb932f18d61a8fe77',1,'security_context.h']]],
+ ['grpc_5fauth_5fcontext_5funref',['GRPC_AUTH_CONTEXT_UNREF',['../security__context_8h.html#ae6b74ab5e3a697c5a93529609bdb2668',1,'security_context.h']]],
+ ['grpc_5fauth_5fjson_5ftype_5fauthorized_5fuser',['GRPC_AUTH_JSON_TYPE_AUTHORIZED_USER',['../json__token_8h.html#af371d9efcf5a20784bfeae73e3369fd3',1,'json_token.h']]],
+ ['grpc_5fauth_5fjson_5ftype_5finvalid',['GRPC_AUTH_JSON_TYPE_INVALID',['../json__token_8h.html#af5c8010a33e3a9b7b23f88cc87c1149e',1,'json_token.h']]],
+ ['grpc_5fauth_5fjson_5ftype_5fservice_5faccount',['GRPC_AUTH_JSON_TYPE_SERVICE_ACCOUNT',['../json__token_8h.html#ae7dd581751d41c6ea4d8dd5af295d495',1,'json_token.h']]],
+ ['grpc_5fauthorization_5fmetadata_5fkey',['GRPC_AUTHORIZATION_METADATA_KEY',['../credentials_8h.html#ae5d55c31d952d739f5be7de47ad425a3',1,'credentials.h']]],
+ ['grpc_5fbase64_5fmultiline_5fline_5flen',['GRPC_BASE64_MULTILINE_LINE_LEN',['../base64_8c.html#a044b2c792f69cf3efaad0895e38122a7',1,'base64.c']]],
+ ['grpc_5fbase64_5fmultiline_5fnum_5fblocks',['GRPC_BASE64_MULTILINE_NUM_BLOCKS',['../base64_8c.html#abf98a03e292b4943e5d9df3314a91d2e',1,'base64.c']]],
+ ['grpc_5fbase64_5fpad_5fbyte',['GRPC_BASE64_PAD_BYTE',['../base64_8c.html#a74d467f02f0a2a5e88cc0231ea2d3603',1,'base64.c']]],
+ ['grpc_5fbase64_5fpad_5fchar',['GRPC_BASE64_PAD_CHAR',['../base64_8c.html#a6ccc23e3f23a06fd1e83f07fc80a36f5',1,'base64.c']]],
+ ['grpc_5fcall_5finternal_5fref',['GRPC_CALL_INTERNAL_REF',['../call_8h.html#a8096750f0a0c7cb97a4c38df49242f8b',1,'call.h']]],
+ ['grpc_5fcall_5finternal_5funref',['GRPC_CALL_INTERNAL_UNREF',['../call_8h.html#a88a83bb312e007ce3b253c97a567383b',1,'call.h']]],
+ ['grpc_5fcall_5flog_5fbatch',['GRPC_CALL_LOG_BATCH',['../call_8h.html#afb66440381d35f27f8a59ce496970c8a',1,'call.h']]],
+ ['grpc_5fcall_5flog_5fop',['GRPC_CALL_LOG_OP',['../channel__stack_8h.html#a933b113b310801b8f916dade1569dbc3',1,'channel_stack.h']]],
+ ['grpc_5fchannel_5finternal_5fref',['GRPC_CHANNEL_INTERNAL_REF',['../channel_8h.html#aa19087be931208174c3f30c983b0061c',1,'channel.h']]],
+ ['grpc_5fchannel_5finternal_5funref',['GRPC_CHANNEL_INTERNAL_UNREF',['../channel_8h.html#a8391477c21b23ffe97f2e6327c74e77e',1,'channel.h']]],
+ ['grpc_5fchttp2_5fclient_5fconnect_5fstring',['GRPC_CHTTP2_CLIENT_CONNECT_STRING',['../internal_8h.html#a4c51a6034ac0f34ecffc582732ad68a4',1,'internal.h']]],
+ ['grpc_5fchttp2_5fclient_5fconnect_5fstrlen',['GRPC_CHTTP2_CLIENT_CONNECT_STRLEN',['../internal_8h.html#a5fd119b62e9b3648496dbb7c2f2a0025',1,'internal.h']]],
+ ['grpc_5fchttp2_5fdata_5fflag_5fend_5fheaders',['GRPC_CHTTP2_DATA_FLAG_END_HEADERS',['../frame_8h.html#a9e28337a838f07e06987f344a01f7f0f',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5fflag_5fend_5fstream',['GRPC_CHTTP2_DATA_FLAG_END_STREAM',['../frame_8h.html#aebe712016c70bba5c7fc0cbc7f372681',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5fflag_5fpadded',['GRPC_CHTTP2_DATA_FLAG_PADDED',['../frame_8h.html#ab01d61cf6f1abddae8031ebcf6e34e09',1,'frame.h']]],
+ ['grpc_5fchttp2_5fflag_5fack',['GRPC_CHTTP2_FLAG_ACK',['../frame_8h.html#ae399b812927e4ccfa1836814e719bec6',1,'frame.h']]],
+ ['grpc_5fchttp2_5fflag_5fhas_5fpriority',['GRPC_CHTTP2_FLAG_HAS_PRIORITY',['../frame_8h.html#a8fbbbbd20f7217de2249fb8597b48c36',1,'frame.h']]],
+ ['grpc_5fchttp2_5fflowctl_5ftrace_5fstream',['GRPC_CHTTP2_FLOWCTL_TRACE_STREAM',['../internal_8h.html#a927cb1449b541fcb1812761184135ca1',1,'internal.h']]],
+ ['grpc_5fchttp2_5fflowctl_5ftrace_5ftransport',['GRPC_CHTTP2_FLOWCTL_TRACE_TRANSPORT',['../internal_8h.html#ad6d86669b104a248fbee4d8f63237a06',1,'internal.h']]],
+ ['grpc_5fchttp2_5fframe_5fcontinuation',['GRPC_CHTTP2_FRAME_CONTINUATION',['../frame_8h.html#ae8ffe7f9a02584c5eed5876f6d8e497b',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fdata',['GRPC_CHTTP2_FRAME_DATA',['../frame_8h.html#af475a6ee5b3fc2b9c8b835d927521bee',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fgoaway',['GRPC_CHTTP2_FRAME_GOAWAY',['../frame_8h.html#a624f289bc52602a8c3340ad747075130',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fheader',['GRPC_CHTTP2_FRAME_HEADER',['../frame_8h.html#ab82e94b9ff60e4ef29301db9b4022805',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fping',['GRPC_CHTTP2_FRAME_PING',['../frame_8h.html#a9a92c84ae932e1b9a79af8f099516ece',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5frst_5fstream',['GRPC_CHTTP2_FRAME_RST_STREAM',['../frame_8h.html#a0e6ad3bb0bc03b02cd2791f34014c933',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fsettings',['GRPC_CHTTP2_FRAME_SETTINGS',['../frame_8h.html#aa030a067f1b4cbb8d34c28fbb43e8046',1,'frame.h']]],
+ ['grpc_5fchttp2_5fframe_5fwindow_5fupdate',['GRPC_CHTTP2_FRAME_WINDOW_UPDATE',['../frame_8h.html#ac9af6484a80a10f0213465fa5dc14031',1,'frame.h']]],
+ ['grpc_5fchttp2_5fhpack_5fentry_5foverhead',['GRPC_CHTTP2_HPACK_ENTRY_OVERHEAD',['../hpack__table_8h.html#ad4d722ec8e6df216cfb2c180c6a605b8',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fhpackc_5fmax_5ftable_5felems',['GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS',['../stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4',1,'stream_encoder.h']]],
+ ['grpc_5fchttp2_5fhpackc_5fnum_5ffilters',['GRPC_CHTTP2_HPACKC_NUM_FILTERS',['../stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6',1,'stream_encoder.h']]],
+ ['grpc_5fchttp2_5fhpackc_5fnum_5fvalues',['GRPC_CHTTP2_HPACKC_NUM_VALUES',['../stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f',1,'stream_encoder.h']]],
+ ['grpc_5fchttp2_5fif_5ftracing',['GRPC_CHTTP2_IF_TRACING',['../internal_8h.html#ab4ecd954e779c49a6159f842dc5a2ab4',1,'internal.h']]],
+ ['grpc_5fchttp2_5finitial_5fhpack_5ftable_5fsize',['GRPC_CHTTP2_INITIAL_HPACK_TABLE_SIZE',['../hpack__table_8h.html#aced1f8ce84e3964a961ad9361e0a24aa',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5flast_5fstatic_5fentry',['GRPC_CHTTP2_LAST_STATIC_ENTRY',['../hpack__table_8h.html#ab62c846bb1b82ae0a56b84c746dc83b3',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fmax_5fhpack_5ftable_5fsize',['GRPC_CHTTP2_MAX_HPACK_TABLE_SIZE',['../hpack__table_8h.html#a376305051742470529655dacf911329e',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fmax_5fin_5fprefix',['GRPC_CHTTP2_MAX_IN_PREFIX',['../varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd',1,'varint.h']]],
+ ['grpc_5fchttp2_5fmax_5fpayload_5flength',['GRPC_CHTTP2_MAX_PAYLOAD_LENGTH',['../frame_8h.html#a461cf678ffd9272c8a10f133c058124e',1,'frame.h']]],
+ ['grpc_5fchttp2_5fmax_5ftable_5fcount',['GRPC_CHTTP2_MAX_TABLE_COUNT',['../hpack__table_8h.html#a292186cdaec230cfca45f2b7703d2fb5',1,'hpack_table.h']]],
+ ['grpc_5fchttp2_5fnum_5fhuffsyms',['GRPC_CHTTP2_NUM_HUFFSYMS',['../huffsyms_8h.html#ae3db52e9200db6e4b14b35f5f3d678cb',1,'huffsyms.h']]],
+ ['grpc_5fchttp2_5ftimeout_5fencode_5fmin_5fbufsize',['GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE',['../timeout__encoding_8h.html#a774d4de6aaa65433d6a318f611c00939',1,'timeout_encoding.h']]],
+ ['grpc_5fchttp2_5fvarint_5flength',['GRPC_CHTTP2_VARINT_LENGTH',['../varint_8h.html#af09078f363c97757f6e7bfa3953cb93d',1,'varint.h']]],
+ ['grpc_5fchttp2_5fwrite_5fvarint',['GRPC_CHTTP2_WRITE_VARINT',['../varint_8h.html#a6f5350a7ba20095c1c903463e74b8e54',1,'varint.h']]],
+ ['grpc_5fcompress_5frequest_5falgorithm_5fkey',['GRPC_COMPRESS_REQUEST_ALGORITHM_KEY',['../compress__filter_8h.html#a501a03bf06f05a5d19c3e2c3b8143124',1,'compress_filter.h']]],
+ ['grpc_5fcompression_5falgorithm_5farg',['GRPC_COMPRESSION_ALGORITHM_ARG',['../compression_8h.html#a9340488e193921e62bb1f240f9016a9b',1,'compression.h']]],
+ ['grpc_5fcompute_5fengine_5fdetection_5fhost',['GRPC_COMPUTE_ENGINE_DETECTION_HOST',['../google__default__credentials_8c.html#a4c79e7c2c581744d4fcb3518b2fccf39',1,'google_default_credentials.c']]],
+ ['grpc_5fcompute_5fengine_5fmetadata_5fhost',['GRPC_COMPUTE_ENGINE_METADATA_HOST',['../credentials_8h.html#af2ca22068add36d00ce70643802ff647',1,'credentials.h']]],
+ ['grpc_5fcompute_5fengine_5fmetadata_5ftoken_5fpath',['GRPC_COMPUTE_ENGINE_METADATA_TOKEN_PATH',['../credentials_8h.html#aca8e8738c2c829c3cf48f49454f7188f',1,'credentials.h']]],
+ ['grpc_5fcq_5finternal_5fref',['GRPC_CQ_INTERNAL_REF',['../completion__queue_8h.html#abb132fe2e37bc87bfcc83eb3cd8d3101',1,'completion_queue.h']]],
+ ['grpc_5fcq_5finternal_5funref',['GRPC_CQ_INTERNAL_UNREF',['../completion__queue_8h.html#aaceb3ef8959e5c43f6954c19a1975f63',1,'completion_queue.h']]],
+ ['grpc_5fcredentials_5ftype_5fcomposite',['GRPC_CREDENTIALS_TYPE_COMPOSITE',['../credentials_8h.html#a0712aea16b41a6d8c65dafcd9d12f599',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5ffake_5ftransport_5fsecurity',['GRPC_CREDENTIALS_TYPE_FAKE_TRANSPORT_SECURITY',['../credentials_8h.html#a30ae5fa2e94aeeca90b31d0fd7c416d4',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fiam',['GRPC_CREDENTIALS_TYPE_IAM',['../credentials_8h.html#a2921973fe6094cad4b3aa94b20d8e254',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fjwt',['GRPC_CREDENTIALS_TYPE_JWT',['../credentials_8h.html#a94b9c6715bdb2a6469fe0db959358d2c',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5foauth2',['GRPC_CREDENTIALS_TYPE_OAUTH2',['../credentials_8h.html#ad1d383b3414af259ebc165ac21febd04',1,'credentials.h']]],
+ ['grpc_5fcredentials_5ftype_5fssl',['GRPC_CREDENTIALS_TYPE_SSL',['../credentials_8h.html#ae74910f24a7fe0d54c326a1ed9e5e127',1,'credentials.h']]],
+ ['grpc_5fdefault_5fssl_5froots_5ffile_5fpath_5fenv_5fvar',['GRPC_DEFAULT_SSL_ROOTS_FILE_PATH_ENV_VAR',['../grpc__security_8h.html#a48565da473b7c82fa2453798f620fd59',1,'grpc_security.h']]],
+ ['grpc_5ffake_5fsecurity_5furl_5fscheme',['GRPC_FAKE_SECURITY_URL_SCHEME',['../security__connector_8h.html#aac2af4901dde1db04846ccc7bde22272',1,'security_connector.h']]],
+ ['grpc_5ffake_5ftransport_5fsecurity_5ftype',['GRPC_FAKE_TRANSPORT_SECURITY_TYPE',['../credentials_8h.html#a2f398e72138c69b2928abb30e54ce4ce',1,'credentials.h']]],
+ ['grpc_5ffd_5fref',['GRPC_FD_REF',['../fd__posix_8h.html#a4ad3cc6c9405aa0f94d03257238fe297',1,'fd_posix.h']]],
+ ['grpc_5ffd_5funref',['GRPC_FD_UNREF',['../fd__posix_8h.html#a3672f89aa33819921430074f7eb96267',1,'fd_posix.h']]],
+ ['grpc_5fgoogle_5fcloud_5fsdk_5fconfig_5fdirectory',['GRPC_GOOGLE_CLOUD_SDK_CONFIG_DIRECTORY',['../credentials_8h.html#ac6142eafe5116c797b860449a2fbb7bf',1,'credentials.h']]],
+ ['grpc_5fgoogle_5fcredentials_5fenv_5fvar',['GRPC_GOOGLE_CREDENTIALS_ENV_VAR',['../grpc__security_8h.html#a3874f70577fc9fe15fd2c4ce68a36ecd',1,'grpc_security.h']]],
+ ['grpc_5fgoogle_5foauth2_5fservice_5fhost',['GRPC_GOOGLE_OAUTH2_SERVICE_HOST',['../credentials_8h.html#a61dc5d4843d2e4b26aa48694efd08cd3',1,'credentials.h']]],
+ ['grpc_5fgoogle_5foauth2_5fservice_5ftoken_5fpath',['GRPC_GOOGLE_OAUTH2_SERVICE_TOKEN_PATH',['../credentials_8h.html#aa9cf32ba20b7ce3e171c87ab1c08b20c',1,'credentials.h']]],
+ ['grpc_5fgoogle_5fservice_5faccounts_5femail_5fdomain',['GRPC_GOOGLE_SERVICE_ACCOUNTS_EMAIL_DOMAIN',['../jwt__verifier_8h.html#aea767ba783450fa8bcd54ca9b5321b73',1,'jwt_verifier.h']]],
+ ['grpc_5fgoogle_5fservice_5faccounts_5fkey_5furl_5fprefix',['GRPC_GOOGLE_SERVICE_ACCOUNTS_KEY_URL_PREFIX',['../jwt__verifier_8h.html#a22636d9510845a1cf41ac00d777f4e98',1,'jwt_verifier.h']]],
+ ['grpc_5fgoogle_5fwell_5fknown_5fcredentials_5ffile',['GRPC_GOOGLE_WELL_KNOWN_CREDENTIALS_FILE',['../credentials_8h.html#a95d64473b3915a6a65e99ac283326e78',1,'credentials.h']]],
+ ['grpc_5fhttpcli_5fmax_5fheader_5flength',['GRPC_HTTPCLI_MAX_HEADER_LENGTH',['../httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fuser_5fagent',['GRPC_HTTPCLI_USER_AGENT',['../httpcli_8h.html#aad8b996f269fd3671a7c6fa829bdec95',1,'httpcli.h']]],
+ ['grpc_5fiam_5fauthority_5fselector_5fmetadata_5fkey',['GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY',['../credentials_8h.html#ada8ea1fc7b28fb63283af76ad27761dd',1,'credentials.h']]],
+ ['grpc_5fiam_5fauthorization_5ftoken_5fmetadata_5fkey',['GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY',['../credentials_8h.html#ac952f285c5ca94edcff909e37ae68402',1,'credentials.h']]],
+ ['grpc_5finitial_5fhandshake_5fbuffer_5fsize',['GRPC_INITIAL_HANDSHAKE_BUFFER_SIZE',['../secure__transport__setup_8c.html#a7faeebb3ced4358f4e7db1428923b013',1,'secure_transport_setup.c']]],
+ ['grpc_5fjwt_5foauth2_5faudience',['GRPC_JWT_OAUTH2_AUDIENCE',['../json__token_8h.html#aa786d993b153687864544b028ab81d57',1,'json_token.h']]],
+ ['grpc_5fjwt_5frsa_5fsha256_5falgorithm',['GRPC_JWT_RSA_SHA256_ALGORITHM',['../json__token_8c.html#a152047e25145985b1aec6a0945d09553',1,'json_token.c']]],
+ ['grpc_5fjwt_5ftype',['GRPC_JWT_TYPE',['../json__token_8c.html#a6ee6f733ee72e89c478c9041176a3836',1,'json_token.c']]],
+ ['grpc_5flb_5fpolicy_5fref',['GRPC_LB_POLICY_REF',['../lb__policy_8h.html#aee5c1071728e588a3875f2338d4a5526',1,'lb_policy.h']]],
+ ['grpc_5flb_5fpolicy_5funref',['GRPC_LB_POLICY_UNREF',['../lb__policy_8h.html#a376467589c9ff6e1d597ae21b44295c9',1,'lb_policy.h']]],
+ ['grpc_5fmax_5fsockaddr_5fsize',['GRPC_MAX_SOCKADDR_SIZE',['../resolve__address_8h.html#aa9cd304afa2c2f9757531c4b2a8168b6',1,'resolve_address.h']]],
+ ['grpc_5fmdctx_5flocked_5fmdelem_5funref',['GRPC_MDCTX_LOCKED_MDELEM_UNREF',['../metadata_8h.html#af96c346c98e982e5c0086467dd11e714',1,'metadata.h']]],
+ ['grpc_5fmdelem_5fref',['GRPC_MDELEM_REF',['../metadata_8h.html#af5a6d4b7c327b66f0902c683ab007618',1,'metadata.h']]],
+ ['grpc_5fmdelem_5funref',['GRPC_MDELEM_UNREF',['../metadata_8h.html#ab01db7c946e0962da8888f19cb870afb',1,'metadata.h']]],
+ ['grpc_5fmdstr_5fkv_5fhash',['GRPC_MDSTR_KV_HASH',['../metadata_8h.html#a385838d339c97b956529499c1da41e1f',1,'metadata.h']]],
+ ['grpc_5fmdstr_5fref',['GRPC_MDSTR_REF',['../metadata_8h.html#ab07dbb900f15b2fe28ea24451c5cfa3d',1,'metadata.h']]],
+ ['grpc_5fmdstr_5funref',['GRPC_MDSTR_UNREF',['../metadata_8h.html#ab6dceed9dacb076aa33c15323f6e823c',1,'metadata.h']]],
+ ['grpc_5fmust_5fuse_5fresult',['GRPC_MUST_USE_RESULT',['../port__platform_8h.html#aef49047a3be38448a61332117b306686',1,'port_platform.h']]],
+ ['grpc_5fopenid_5fconfig_5furl_5fsuffix',['GRPC_OPENID_CONFIG_URL_SUFFIX',['../jwt__verifier_8h.html#a869346dd0fc12ac4686cd05eca73d1ef',1,'jwt_verifier.h']]],
+ ['grpc_5fpollset_5fkick_5fget_5ffd',['GRPC_POLLSET_KICK_GET_FD',['../pollset__kick__posix_8h.html#a595cfb6b4cc1f48dbd015821541df959',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fmu',['GRPC_POLLSET_MU',['../pollset__posix_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f',1,'GRPC_POLLSET_MU():&#160;pollset_posix.h'],['../pollset__windows_8h.html#a717ebde9fd8a72d07e06d2255ee7b50f',1,'GRPC_POLLSET_MU():&#160;pollset_windows.h']]],
+ ['grpc_5fprecise_5fclock_5fformat',['GRPC_PRECISE_CLOCK_FORMAT',['../timers__preciseclock_8h.html#a8cbb7d29a1f4fcded6337c7d9c61598d',1,'timers_preciseclock.h']]],
+ ['grpc_5fprecise_5fclock_5fprintf_5fargs',['GRPC_PRECISE_CLOCK_PRINTF_ARGS',['../timers__preciseclock_8h.html#ad8cb0fe2236a54829f5c38cd508305c5',1,'timers_preciseclock.h']]],
+ ['grpc_5frefresh_5ftoken_5fpost_5fbody_5fformat_5fstring',['GRPC_REFRESH_TOKEN_POST_BODY_FORMAT_STRING',['../credentials_8h.html#adeaf95d65b517e001c71d1fb5e47c97a',1,'credentials.h']]],
+ ['grpc_5fresolver_5fref',['GRPC_RESOLVER_REF',['../resolver_8h.html#a98d15570db72446a0c175bc3ad316db9',1,'resolver.h']]],
+ ['grpc_5fresolver_5funref',['GRPC_RESOLVER_UNREF',['../resolver_8h.html#a54ccbaf14bf8c38ad785e95d705bfe4d',1,'resolver.h']]],
+ ['grpc_5fsecure_5ftoken_5frefresh_5fthreshold_5fsecs',['GRPC_SECURE_TOKEN_REFRESH_THRESHOLD_SECS',['../credentials_8h.html#a63b03c9e9e071d5b7f2276c0ae196aeb',1,'credentials.h']]],
+ ['grpc_5fsecurity_5fconnector_5farg',['GRPC_SECURITY_CONNECTOR_ARG',['../security__connector_8h.html#a047c420294c8769e4512f17d0573e353',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector_5fref',['GRPC_SECURITY_CONNECTOR_REF',['../security__connector_8h.html#a5bb32899b45edd908bb61e45db59c460',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector_5funref',['GRPC_SECURITY_CONNECTOR_UNREF',['../security__connector_8h.html#a1950bc24ce082a50d66b0cd505c069ee',1,'security_connector.h']]],
+ ['grpc_5fserver_5flog_5frequest_5fcall',['GRPC_SERVER_LOG_REQUEST_CALL',['../call_8h.html#a2248e590ae0f4d7aba76fbf76110db6c',1,'call.h']]],
+ ['grpc_5fserver_5flog_5fshutdown',['GRPC_SERVER_LOG_SHUTDOWN',['../call_8h.html#a0b82c07496b462c41ce400559c5219e7',1,'call.h']]],
+ ['grpc_5fservice_5faccount_5fpost_5fbody_5fprefix',['GRPC_SERVICE_ACCOUNT_POST_BODY_PREFIX',['../credentials_8h.html#a5c5761f3829eca7ec24d5aa68272cad2',1,'credentials.h']]],
+ ['grpc_5fslice_5fbuffer_5finline_5felements',['GRPC_SLICE_BUFFER_INLINE_ELEMENTS',['../slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809',1,'slice_buffer.h']]],
+ ['grpc_5fsopb_5finline_5felements',['GRPC_SOPB_INLINE_ELEMENTS',['../stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca',1,'stream_op.h']]],
+ ['grpc_5fssl_5fcipher_5fsuites',['GRPC_SSL_CIPHER_SUITES',['../security__connector_8c.html#ab67f630ea3179d8d418fddcdc0deef5c',1,'security_connector.c']]],
+ ['grpc_5fssl_5ftarget_5fname_5foverride_5farg',['GRPC_SSL_TARGET_NAME_OVERRIDE_ARG',['../grpc__security_8h.html#a218bf55b665134a11baf07ada5980825',1,'grpc_security.h']]],
+ ['grpc_5fssl_5ftransport_5fsecurity_5ftype',['GRPC_SSL_TRANSPORT_SECURITY_TYPE',['../grpc__security_8h.html#a35a35c597b7090b8ac7e2d854c9bcc7a',1,'grpc_security.h']]],
+ ['grpc_5fssl_5furl_5fscheme',['GRPC_SSL_URL_SCHEME',['../security__connector_8h.html#a9e0af76d139286bef4c720bde3a7a6c0',1,'security_connector.h']]],
+ ['grpc_5fsubchannel_5fcall_5fref',['GRPC_SUBCHANNEL_CALL_REF',['../subchannel_8h.html#aa0f8df565952fc5504c9658b426c64a7',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5fcall_5funref',['GRPC_SUBCHANNEL_CALL_UNREF',['../subchannel_8h.html#a5d26bb43a6c7a1d40d130c7dd08b4ca8',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5finitial_5fconnect_5fbackoff_5fseconds',['GRPC_SUBCHANNEL_INITIAL_CONNECT_BACKOFF_SECONDS',['../subchannel_8c.html#ab2916ffabb6e97931795c0cb17d5b1a0',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5fmin_5fconnect_5ftimeout_5fseconds',['GRPC_SUBCHANNEL_MIN_CONNECT_TIMEOUT_SECONDS',['../subchannel_8c.html#a4a297a5d3477460e802c804a945cfb4e',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5freconnect_5fbackoff_5fmultiplier',['GRPC_SUBCHANNEL_RECONNECT_BACKOFF_MULTIPLIER',['../subchannel_8c.html#ad1761b478eb46b24379e6d5a9edd30af',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5freconnect_5fjitter',['GRPC_SUBCHANNEL_RECONNECT_JITTER',['../subchannel_8c.html#a9775a74d61f54cd0537630b9b7118802',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5freconnect_5fmax_5fbackoff_5fseconds',['GRPC_SUBCHANNEL_RECONNECT_MAX_BACKOFF_SECONDS',['../subchannel_8c.html#ad021f6795743d8163fff68703ffb663b',1,'subchannel.c']]],
+ ['grpc_5fsubchannel_5fref',['GRPC_SUBCHANNEL_REF',['../subchannel_8h.html#a7a3f5a07d6d6ca7864d0b571a2675d15',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5fref_5fextra_5fargs',['GRPC_SUBCHANNEL_REF_EXTRA_ARGS',['../subchannel_8h.html#aabb025f64b5de653dc110d17add28e74',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5funref',['GRPC_SUBCHANNEL_UNREF',['../subchannel_8h.html#accf1481a1fe9acf1537f665705a60d4c',1,'subchannel.h']]],
+ ['grpc_5fsurface_5ftrace_5freturned_5fevent',['GRPC_SURFACE_TRACE_RETURNED_EVENT',['../surface__trace_8h.html#ab6bd5be00afe2369bd1b63e13ab6197d',1,'surface_trace.h']]],
+ ['grpc_5ftcp_5fdefault_5fread_5fslice_5fsize',['GRPC_TCP_DEFAULT_READ_SLICE_SIZE',['../tcp__posix_8h.html#a1f91c3aec64a436d29051c8d415b1053',1,'tcp_posix.h']]],
+ ['grpc_5ftimer_5fbegin',['GRPC_TIMER_BEGIN',['../timers_8h.html#abf4cfef22d1c79525994ba224ac13dba',1,'timers.h']]],
+ ['grpc_5ftimer_5fend',['GRPC_TIMER_END',['../timers_8h.html#ada806da3afa32376e244dfeb65ec467b',1,'timers.h']]],
+ ['grpc_5ftimer_5fimportant_5fmark',['GRPC_TIMER_IMPORTANT_MARK',['../timers_8h.html#a4de2bf5918f608b72f3c426e4a43e7c8',1,'timers.h']]],
+ ['grpc_5ftimer_5fmark',['GRPC_TIMER_MARK',['../timers_8h.html#acafc06612d7b046547ed80c18d519608',1,'timers.h']]],
+ ['grpc_5ftransport_5fsecurity_5ftype_5fproperty_5fname',['GRPC_TRANSPORT_SECURITY_TYPE_PROPERTY_NAME',['../grpc__security_8h.html#aff82fdff9e7c40c4dd4bdc650e38e25a',1,'grpc_security.h']]],
+ ['grpc_5fwakeup_5ffd_5fget_5fread_5ffd',['GRPC_WAKEUP_FD_GET_READ_FD',['../wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwrite_5fbuffer_5fhint',['GRPC_WRITE_BUFFER_HINT',['../grpc_8h.html#adf29fd8b7df2ecc47d14a7f5a3a079c0',1,'grpc.h']]],
+ ['grpc_5fwrite_5finternal_5fcompress',['GRPC_WRITE_INTERNAL_COMPRESS',['../stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35',1,'stream_op.h']]],
+ ['grpc_5fwrite_5finternal_5fused_5fmask',['GRPC_WRITE_INTERNAL_USED_MASK',['../stream__op_8h.html#a7acab698fedc01eca6138c3e30056ff1',1,'stream_op.h']]],
+ ['grpc_5fwrite_5fno_5fcompress',['GRPC_WRITE_NO_COMPRESS',['../grpc_8h.html#ae09000181671f031ed0e319ed557da4e',1,'grpc.h']]],
+ ['grpc_5fwrite_5fused_5fmask',['GRPC_WRITE_USED_MASK',['../grpc_8h.html#a3317259e1098b2b6f49982d6997bbf6a',1,'grpc.h']]],
+ ['grpc_5fx509_5fcn_5fproperty_5fname',['GRPC_X509_CN_PROPERTY_NAME',['../grpc__security_8h.html#afee5e0fade6e0af1954529f1f08afe0c',1,'grpc_security.h']]],
+ ['grpc_5fx509_5fsan_5fproperty_5fname',['GRPC_X509_SAN_PROPERTY_NAME',['../grpc__security_8h.html#a1412421653b7999544296f56025a0f36',1,'grpc_security.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_7.html b/doc/ref/core.internal/html/search/defines_7.html
new file mode 100644
index 0000000000..1a4527c67b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_7.js b/doc/ref/core.internal/html/search/defines_7.js
new file mode 100644
index 0000000000..5ec13c5096
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_7.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['hash_5ffragment_5f1',['HASH_FRAGMENT_1',['../stream__encoder_8c.html#a0551b7ff01539c9139e682053301b58b',1,'stream_encoder.c']]],
+ ['hash_5ffragment_5f2',['HASH_FRAGMENT_2',['../stream__encoder_8c.html#a00bb8310d47f7c0b6d5b9e86fdfbc043',1,'stream_encoder.c']]],
+ ['hash_5ffragment_5f3',['HASH_FRAGMENT_3',['../stream__encoder_8c.html#ac6a3339f7cdc67827f51d6f7162271fa',1,'stream_encoder.c']]],
+ ['hash_5ffragment_5f4',['HASH_FRAGMENT_4',['../stream__encoder_8c.html#a1aa06e441caa39deff8ee0dddaa18916',1,'stream_encoder.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_8.html b/doc/ref/core.internal/html/search/defines_8.html
new file mode 100644
index 0000000000..66764b7c98
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_8.js b/doc/ref/core.internal/html/search/defines_8.js
new file mode 100644
index 0000000000..3f5643a32f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_8.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['initial_5fmdtab_5fcapacity',['INITIAL_MDTAB_CAPACITY',['../metadata_8c.html#a79df755ba4db91d4b3ab5d375eb18364',1,'metadata.c']]],
+ ['initial_5fstrtab_5fcapacity',['INITIAL_STRTAB_CAPACITY',['../metadata_8c.html#a6e712d615b691c6a9f5daf410b8850ad',1,'metadata.c']]],
+ ['internal_5fstring_5fref',['INTERNAL_STRING_REF',['../metadata_8c.html#a83513324a061c9ec72f186425ccdb78b',1,'metadata.c']]],
+ ['internal_5fstring_5funref',['INTERNAL_STRING_UNREF',['../metadata_8c.html#a54692508d43c5445088e92d06a5665db',1,'metadata.c']]],
+ ['invalid_5fentry_5findex',['INVALID_ENTRY_INDEX',['../stack__lockfree_8c.html#a6c03a49143863f3e267ce5a21ac6121c',1,'stack_lockfree.c']]],
+ ['invalid_5fheap_5findex',['INVALID_HEAP_INDEX',['../alarm_8c.html#ab10c095adee8fff29f7d8e4209b70c66',1,'alarm.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_9.html b/doc/ref/core.internal/html/search/defines_9.html
new file mode 100644
index 0000000000..f6fd78321e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_9.js b/doc/ref/core.internal/html/search/defines_9.js
new file mode 100644
index 0000000000..30d4785dab
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['log2_5fnum_5fshards',['LOG2_NUM_SHARDS',['../alarm_8c.html#ae48da0bb5039d191e6de667c888624c1',1,'alarm.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_a.html b/doc/ref/core.internal/html/search/defines_a.html
new file mode 100644
index 0000000000..c28019f568
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_a.js b/doc/ref/core.internal/html/search/defines_a.js
new file mode 100644
index 0000000000..c24550e6af
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_a.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+ ['max_5falarms_5fper_5fcheck',['MAX_ALARMS_PER_CHECK',['../alarm_8c.html#a035d5ac078d2c49bd8bc08a56eaeb7bb',1,'alarm.c']]],
+ ['max_5fbuffer_5flength',['MAX_BUFFER_LENGTH',['../connected__channel_8c.html#aa8a8ed5c9e057542ff818fde39a94f07',1,'connected_channel.c']]],
+ ['max_5fclient_5fstream_5fid',['MAX_CLIENT_STREAM_ID',['../chttp2__transport_8c.html#afdde497df8d499ae838ff389ab262ab5',1,'chttp2_transport.c']]],
+ ['max_5fconcurrent_5fcompletions',['MAX_CONCURRENT_COMPLETIONS',['../call_8c.html#adc0473bd2ea598bc8b0d09c6f43b3a89',1,'call.c']]],
+ ['max_5fcredentials_5fmetadata_5fcount',['MAX_CREDENTIALS_METADATA_COUNT',['../client__auth__filter_8c.html#a0e5b323dfbc6ab0f070bf6c5a2a9be55',1,'client_auth_filter.c']]],
+ ['max_5fdecoder_5fspace_5fusage',['MAX_DECODER_SPACE_USAGE',['../stream__encoder_8c.html#a7216827b7f9b1ea6a0b108518cde0a7a',1,'stream_encoder.c']]],
+ ['max_5ffilters',['MAX_FILTERS',['../secure__channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2',1,'MAX_FILTERS():&#160;secure_channel_create.c'],['../channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2',1,'MAX_FILTERS():&#160;channel_create.c']]],
+ ['max_5fqueue_5fwindow_5fduration',['MAX_QUEUE_WINDOW_DURATION',['../alarm_8c.html#aa7820b33745be59861679298b76d9a95',1,'alarm.c']]],
+ ['max_5fresolvers',['MAX_RESOLVERS',['../resolver__registry_8c.html#af575a6a4adada94cfdb731c84e327ed2',1,'resolver_registry.c']]],
+ ['max_5fsend_5finitial_5fmetadata_5fcount',['MAX_SEND_INITIAL_METADATA_COUNT',['../call_8c.html#ab0c91da8d11c6964aded3fbecff4a15c',1,'call.c']]],
+ ['max_5fwindow',['MAX_WINDOW',['../chttp2__transport_8c.html#a33445af5cbee6560efd1a891e4c01067',1,'chttp2_transport.c']]],
+ ['min_5fqueue_5fwindow_5fduration',['MIN_QUEUE_WINDOW_DURATION',['../alarm_8c.html#a1998a9b10fbd17ad50ff85991aeaa645',1,'alarm.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_b.html b/doc/ref/core.internal/html/search/defines_b.html
new file mode 100644
index 0000000000..6e8f2d0650
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_b.js b/doc/ref/core.internal/html/search/defines_b.js
new file mode 100644
index 0000000000..7e0340e619
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_b.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['num_5fcached_5fstatus_5felems',['NUM_CACHED_STATUS_ELEMS',['../channel_8c.html#a30ddfda40b473a077ff7c70a7687ddb1',1,'channel.c']]],
+ ['num_5fshards',['NUM_SHARDS',['../alarm_8c.html#abc8b3b06fc834d57a69ca6ed5e3dfe3e',1,'alarm.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_c.html b/doc/ref/core.internal/html/search/defines_c.html
new file mode 100644
index 0000000000..52fbffae03
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_c.js b/doc/ref/core.internal/html/search/defines_c.js
new file mode 100644
index 0000000000..be05db0da6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_c.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['one_5fon_5fadd_5fprobability',['ONE_ON_ADD_PROBABILITY',['../stream__encoder_8c.html#ad7f6bdf9db2a15a5e00cf3a6825d9957',1,'stream_encoder.c']]],
+ ['output_5fblock_5fsize',['OUTPUT_BLOCK_SIZE',['../message__compress_8c.html#a64fcbb2644c2b3d0dcdc23ac148dd553',1,'message_compress.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_d.html b/doc/ref/core.internal/html/search/defines_d.html
new file mode 100644
index 0000000000..434e87873f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_d.js b/doc/ref/core.internal/html/search/defines_d.js
new file mode 100644
index 0000000000..a36dcbcc49
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_d.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['ref_5flog',['REF_LOG',['../subchannel_8c.html#a12a25b2a728caf10ef93487e8a41896c',1,'subchannel.c']]],
+ ['ref_5fmd_5flocked',['REF_MD_LOCKED',['../metadata_8c.html#a5456b7d52304a8749ca71440bc7c2a0f',1,'metadata.c']]],
+ ['ref_5fpass_5fargs',['REF_PASS_ARGS',['../subchannel_8c.html#a8b6e7b7a1e9f2434b354c7bae2760ab0',1,'subchannel.c']]],
+ ['ref_5ftransport',['REF_TRANSPORT',['../chttp2__transport_8c.html#a14b095839f9792316e7aea2ab7a68bdc',1,'chttp2_transport.c']]],
+ ['reqset_5fdone',['REQSET_DONE',['../call_8c.html#afa1b821bc0571d94c462688e3deeeafd',1,'call.c']]],
+ ['reqset_5fempty',['REQSET_EMPTY',['../call_8c.html#a7810380d8811f64f6167a7427f22beb4',1,'call.c']]],
+ ['rotl32',['ROTL32',['../murmur__hash_8c.html#aff6ce4cae0564b039bbb4ef0cbdc0032',1,'murmur_hash.c']]],
+ ['round_5fup_5fto_5falignment_5fsize',['ROUND_UP_TO_ALIGNMENT_SIZE',['../channel__stack_8c.html#ab55c837def86039053f144d9fd6151d1',1,'channel_stack.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_e.html b/doc/ref/core.internal/html/search/defines_e.html
new file mode 100644
index 0000000000..897e317654
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_e.js b/doc/ref/core.internal/html/search/defines_e.js
new file mode 100644
index 0000000000..8ba6263e16
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_e.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+ ['server_5ffrom_5fcall_5felem',['SERVER_FROM_CALL_ELEM',['../server_8c.html#ad74e7a97d516828e54c49eb3e4878da3',1,'server.c']]],
+ ['shrink_5ffullness_5ffactor',['SHRINK_FULLNESS_FACTOR',['../alarm__heap_8c.html#ac5064e56882ef0a36524cae10ac800ce',1,'alarm_heap.c']]],
+ ['shrink_5fmin_5felems',['SHRINK_MIN_ELEMS',['../alarm__heap_8c.html#acea3d7e412eaa9246638bc218372f55e',1,'alarm_heap.c']]],
+ ['staging_5fbuffer_5fsize',['STAGING_BUFFER_SIZE',['../secure__endpoint_8c.html#a323532623f3183502482bb853c503353',1,'secure_endpoint.c']]],
+ ['status_5foffset',['STATUS_OFFSET',['../call_8c.html#ac3959778b8b4ee593c16fa33a06d844c',1,'call.c']]],
+ ['stream_5ffrom_5fglobal',['STREAM_FROM_GLOBAL',['../stream__lists_8c.html#ad226604f0f25167ab63b83fb504925ed',1,'STREAM_FROM_GLOBAL():&#160;stream_lists.c'],['../chttp2__transport_8c.html#ad226604f0f25167ab63b83fb504925ed',1,'STREAM_FROM_GLOBAL():&#160;chttp2_transport.c']]],
+ ['stream_5ffrom_5fparsing',['STREAM_FROM_PARSING',['../stream__lists_8c.html#af36e6925c4b86e9bdea0abf8824d521e',1,'stream_lists.c']]],
+ ['stream_5ffrom_5fwriting',['STREAM_FROM_WRITING',['../stream__lists_8c.html#a168549253d875995f6454b6ac5f9250f',1,'stream_lists.c']]],
+ ['strlen_5flit',['STRLEN_LIT',['../stream__encoder_8c.html#a4adf5996646225c1109095f57e5054c1',1,'stream_encoder.c']]],
+ ['subchannel_5fcall_5fto_5fcall_5fstack',['SUBCHANNEL_CALL_TO_CALL_STACK',['../subchannel_8c.html#a6f8f2e93f13638c3344bed1c0a810a90',1,'subchannel.c']]],
+ ['subchannel_5fref_5flocked',['SUBCHANNEL_REF_LOCKED',['../subchannel_8c.html#ad1c3bb13282f81c8384752ae3e2d74ad',1,'subchannel.c']]],
+ ['subchannel_5funref_5flocked',['SUBCHANNEL_UNREF_LOCKED',['../subchannel_8c.html#ac827935703a637a3a74cb54936a49f25',1,'subchannel.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/defines_f.html b/doc/ref/core.internal/html/search/defines_f.html
new file mode 100644
index 0000000000..d6b0b7b9ae
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/defines_f.js b/doc/ref/core.internal/html/search/defines_f.js
new file mode 100644
index 0000000000..ffb0ebdfb2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/defines_f.js
@@ -0,0 +1,26 @@
+var searchData=
+[
+ ['timeout_5fkey',['TIMEOUT_KEY',['../stream__encoder_8c.html#a730f13257408fd7a5a3d734f5399cba7',1,'stream_encoder.c']]],
+ ['top_5fbit_5fof_5ftype',['TOP_BIT_OF_TYPE',['../time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500',1,'time.c']]],
+ ['transport_5ffrom_5fglobal',['TRANSPORT_FROM_GLOBAL',['../stream__lists_8c.html#a029ef12f8edec2cce810fc244777f39e',1,'TRANSPORT_FROM_GLOBAL():&#160;stream_lists.c'],['../chttp2__transport_8c.html#a029ef12f8edec2cce810fc244777f39e',1,'TRANSPORT_FROM_GLOBAL():&#160;chttp2_transport.c']]],
+ ['transport_5ffrom_5fparsing',['TRANSPORT_FROM_PARSING',['../stream__lists_8c.html#a5d41409974a115e2721fe32cd1c1b8eb',1,'TRANSPORT_FROM_PARSING():&#160;stream_lists.c'],['../chttp2__transport_8c.html#a720ba3d4f39bd3a50eef94f3af02df26',1,'TRANSPORT_FROM_PARSING():&#160;chttp2_transport.c']]],
+ ['transport_5ffrom_5fwriting',['TRANSPORT_FROM_WRITING',['../stream__lists_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba',1,'TRANSPORT_FROM_WRITING():&#160;stream_lists.c'],['../chttp2__transport_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba',1,'TRANSPORT_FROM_WRITING():&#160;chttp2_transport.c']]],
+ ['transport_5fstream_5ffrom_5fcall_5fdata',['TRANSPORT_STREAM_FROM_CALL_DATA',['../connected__channel_8c.html#a20fccb78f707f86985ab8dccc8f9ff68',1,'connected_channel.c']]],
+ ['tsi_5fcertificate_5ftype_5fpeer_5fproperty',['TSI_CERTIFICATE_TYPE_PEER_PROPERTY',['../transport__security__interface_8h.html#ac1c4704b4f46d8db67be7d79cf9abee4',1,'transport_security_interface.h']]],
+ ['tsi_5ffake_5fcertificate_5ftype',['TSI_FAKE_CERTIFICATE_TYPE',['../fake__transport__security_8h.html#ae0392587ca3b2c370e2d0b23bd3567dc',1,'fake_transport_security.h']]],
+ ['tsi_5ffake_5fdefault_5fframe_5fsize',['TSI_FAKE_DEFAULT_FRAME_SIZE',['../fake__transport__security_8c.html#a5e80c442eaaca03f86cd1b2a1beea9f3',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fframe_5fheader_5fsize',['TSI_FAKE_FRAME_HEADER_SIZE',['../fake__transport__security_8c.html#ad4e1e451d3d99c6805c489641d4934df',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fframe_5finitial_5fallocated_5fsize',['TSI_FAKE_FRAME_INITIAL_ALLOCATED_SIZE',['../fake__transport__security_8c.html#a4faca44775d659e16993c11482a4a80e',1,'fake_transport_security.c']]],
+ ['tsi_5fhandshaker_5fis_5fin_5fprogress',['tsi_handshaker_is_in_progress',['../transport__security__interface_8h.html#a08a4eb400e7769528cf47bf38542010c',1,'transport_security_interface.h']]],
+ ['tsi_5fopenssl_5falpn_5fsupport',['TSI_OPENSSL_ALPN_SUPPORT',['../ssl__transport__security_8c.html#a6ddfac76c84308f6f7525adccea25b50',1,'ssl_transport_security.c']]],
+ ['tsi_5fssl_5falpn_5fselected_5fprotocol',['TSI_SSL_ALPN_SELECTED_PROTOCOL',['../ssl__transport__security_8h.html#a7772b205a40f5d0e6bf613f666df70fa',1,'ssl_transport_security.h']]],
+ ['tsi_5fssl_5fmax_5fprotected_5fframe_5fsize_5flower_5fbound',['TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND',['../ssl__transport__security_8c.html#a57f67839c0d50a95afa6b14b8917b7ba',1,'ssl_transport_security.c']]],
+ ['tsi_5fssl_5fmax_5fprotected_5fframe_5fsize_5fupper_5fbound',['TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND',['../ssl__transport__security_8c.html#afce1f5cc8a28bd1d4cea273bb2b5f5d8',1,'ssl_transport_security.c']]],
+ ['tsi_5fssl_5fmax_5fprotection_5foverhead',['TSI_SSL_MAX_PROTECTION_OVERHEAD',['../ssl__transport__security_8c.html#ac62522a33798b7b5bb434e1b8e49974f',1,'ssl_transport_security.c']]],
+ ['tsi_5fx509_5fcertificate_5ftype',['TSI_X509_CERTIFICATE_TYPE',['../ssl__transport__security_8h.html#a394dce2eccd1a35e54ea94ed19b95a7c',1,'ssl_transport_security.h']]],
+ ['tsi_5fx509_5fsubject_5falternative_5fname_5fpeer_5fproperty',['TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY',['../ssl__transport__security_8h.html#a64e0648b7d1eec9671f01aa79f508c0f',1,'ssl_transport_security.h']]],
+ ['tsi_5fx509_5fsubject_5fcommon_5fname_5fpeer_5fproperty',['TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY',['../ssl__transport__security_8h.html#a3015d52d16728b0e28f354217fbb6296',1,'ssl_transport_security.h']]],
+ ['type_5fis_5fsigned',['TYPE_IS_SIGNED',['../time_8c.html#aee5df4784512f172739646babf8fa13d',1,'time.c']]],
+ ['type_5fmax',['TYPE_MAX',['../time_8c.html#a87353338032e1f56c958d981731f8378',1,'time.c']]],
+ ['type_5fmin',['TYPE_MIN',['../time_8c.html#ad5b4c36b3633abe2c68f8b4ab3c7de8c',1,'time.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_0.html b/doc/ref/core.internal/html/search/enums_0.html
new file mode 100644
index 0000000000..b4cbe1e3ca
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_0.js b/doc/ref/core.internal/html/search/enums_0.js
new file mode 100644
index 0000000000..3ec083a98e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['argtype',['argtype',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4',1,'cmdline.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_1.html b/doc/ref/core.internal/html/search/enums_1.html
new file mode 100644
index 0000000000..2af2a03ec9
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_1.js b/doc/ref/core.internal/html/search/enums_1.js
new file mode 100644
index 0000000000..7ed8e08a44
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['binary_5fstate',['binary_state',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_2.html b/doc/ref/core.internal/html/search/enums_2.html
new file mode 100644
index 0000000000..f96cf0a736
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_2.js b/doc/ref/core.internal/html/search/enums_2.js
new file mode 100644
index 0000000000..1baa79c220
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_2.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['call_5fstate',['call_state',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1',1,'call_state():&#160;client_channel.c'],['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1',1,'call_state():&#160;server.c']]],
+ ['callback_5fphase',['callback_phase',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c',1,'channel_connectivity.c']]],
+ ['census_5ffeatures',['census_features',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8',1,'census.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_3.html b/doc/ref/core.internal/html/search/enums_3.html
new file mode 100644
index 0000000000..77df324aff
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_3.js b/doc/ref/core.internal/html/search/enums_3.js
new file mode 100644
index 0000000000..c57a29dcf5
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['first_5fbyte_5ftype',['first_byte_type',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918',1,'hpack_parser.c']]],
+ ['frame_5ftype',['frame_type',['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f',1,'stream_encoder.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_4.html b/doc/ref/core.internal/html/search/enums_4.html
new file mode 100644
index 0000000000..99379142e6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_4.js b/doc/ref/core.internal/html/search/enums_4.js
new file mode 100644
index 0000000000..a9e8e4dffa
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_4.js
@@ -0,0 +1,41 @@
+var searchData=
+[
+ ['gpr_5fclock_5ftype',['gpr_clock_type',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281',1,'time.h']]],
+ ['gpr_5flog_5fseverity',['gpr_log_severity',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48',1,'log.h']]],
+ ['grpc_5farg_5ftype',['grpc_arg_type',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593',1,'grpc.h']]],
+ ['grpc_5fbyte_5fbuffer_5ftype',['grpc_byte_buffer_type',['../byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6',1,'byte_buffer.h']]],
+ ['grpc_5fcall_5ferror',['grpc_call_error',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b',1,'grpc.h']]],
+ ['grpc_5fchttp2_5fdeframe_5ftransport_5fstate',['grpc_chttp2_deframe_transport_state',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62',1,'internal.h']]],
+ ['grpc_5fchttp2_5ferror_5fcode',['grpc_chttp2_error_code',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fgoaway_5fparse_5fstate',['grpc_chttp2_goaway_parse_state',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5finvalid_5fvalue_5fbehavior',['grpc_chttp2_invalid_value_behavior',['../frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fparse_5ferror',['grpc_chttp2_parse_error',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35',1,'frame.h']]],
+ ['grpc_5fchttp2_5fsend_5fclosed',['grpc_chttp2_send_closed',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9',1,'internal.h']]],
+ ['grpc_5fchttp2_5fsetting_5fid',['grpc_chttp2_setting_id',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11ef',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsetting_5fset',['grpc_chttp2_setting_set',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ad',1,'internal.h']]],
+ ['grpc_5fchttp2_5fsettings_5fparse_5fstate',['grpc_chttp2_settings_parse_state',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fstream_5flist_5fid',['grpc_chttp2_stream_list_id',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539',1,'internal.h']]],
+ ['grpc_5fchttp2_5fstream_5fstate',['grpc_chttp2_stream_state',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fwrite_5fstate',['grpc_chttp2_write_state',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc',1,'internal.h']]],
+ ['grpc_5fcompletion_5ftype',['grpc_completion_type',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87',1,'grpc.h']]],
+ ['grpc_5fcompression_5falgorithm',['grpc_compression_algorithm',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9',1,'compression.h']]],
+ ['grpc_5fcompression_5flevel',['grpc_compression_level',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7',1,'compression.h']]],
+ ['grpc_5fconnectivity_5fstate',['grpc_connectivity_state',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2',1,'grpc.h']]],
+ ['grpc_5fcontext_5findex',['grpc_context_index',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dff',1,'context.h']]],
+ ['grpc_5fcredentials_5fstatus',['grpc_credentials_status',['../credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4',1,'credentials.h']]],
+ ['grpc_5fdualstack_5fmode',['grpc_dualstack_mode',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264',1,'socket_utils_posix.h']]],
+ ['grpc_5fendpoint_5fcb_5fstatus',['grpc_endpoint_cb_status',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321ae',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fstatus',['grpc_endpoint_write_status',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902',1,'endpoint.h']]],
+ ['grpc_5fhttpcli_5fparser_5fstate',['grpc_httpcli_parser_state',['../parser_8h.html#a664db6149875c333b0a568ef8711e257',1,'parser.h']]],
+ ['grpc_5fioreq_5fop',['grpc_ioreq_op',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077',1,'call.h']]],
+ ['grpc_5fjson_5freader_5fstate',['grpc_json_reader_state',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3',1,'json_reader.h']]],
+ ['grpc_5fjson_5freader_5fstatus',['grpc_json_reader_status',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24',1,'json_reader.h']]],
+ ['grpc_5fjson_5ftype',['grpc_json_type',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2',1,'json_common.h']]],
+ ['grpc_5fjwt_5fverifier_5fstatus',['grpc_jwt_verifier_status',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5',1,'jwt_verifier.h']]],
+ ['grpc_5fop_5ftype',['grpc_op_type',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939a',1,'grpc.h']]],
+ ['grpc_5fprofiling_5ftags',['grpc_profiling_tags',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3',1,'timers.h']]],
+ ['grpc_5fsecurity_5fstatus',['grpc_security_status',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9',1,'security_connector.h']]],
+ ['grpc_5fstatus_5fcode',['grpc_status_code',['../status_8h.html#a35ab2a68917eb836de84cb23253108eb',1,'status.h']]],
+ ['grpc_5fstream_5fop_5fcode',['grpc_stream_op_code',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804',1,'stream_op.h']]],
+ ['grpc_5fstream_5fstate',['grpc_stream_state',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b',1,'transport.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_5.html b/doc/ref/core.internal/html/search/enums_5.html
new file mode 100644
index 0000000000..e1e6d0e01c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_5.js b/doc/ref/core.internal/html/search/enums_5.js
new file mode 100644
index 0000000000..f3e5c607a6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['is_5fbinary_5fheader',['is_binary_header',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35ee',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_6.html b/doc/ref/core.internal/html/search/enums_6.html
new file mode 100644
index 0000000000..ac51361f2d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_6.js b/doc/ref/core.internal/html/search/enums_6.js
new file mode 100644
index 0000000000..c8b7620e6d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_6.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['read_5fstate',['read_state',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17',1,'call.c']]],
+ ['req_5fstate',['req_state',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17',1,'call.c']]],
+ ['requested_5fcall_5ftype',['requested_call_type',['../server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_7.html b/doc/ref/core.internal/html/search/enums_7.html
new file mode 100644
index 0000000000..b948bd5ad0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_7.js b/doc/ref/core.internal/html/search/enums_7.js
new file mode 100644
index 0000000000..46aaa94ed4
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['send_5faction',['send_action',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819',1,'call.c']]],
+ ['status_5fsource',['status_source',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271',1,'call.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_8.html b/doc/ref/core.internal/html/search/enums_8.html
new file mode 100644
index 0000000000..1d9974af0d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_8.js b/doc/ref/core.internal/html/search/enums_8.js
new file mode 100644
index 0000000000..b1dc263143
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['tsi_5ffake_5fhandshake_5fmessage',['tsi_fake_handshake_message',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52',1,'fake_transport_security.c']]],
+ ['tsi_5fresult',['tsi_result',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468',1,'transport_security_interface.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enums_9.html b/doc/ref/core.internal/html/search/enums_9.html
new file mode 100644
index 0000000000..0540fddbef
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enums_9.js b/doc/ref/core.internal/html/search/enums_9.js
new file mode 100644
index 0000000000..ead4389d67
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enums_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['write_5fstate',['write_state',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688d',1,'call.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_0.html b/doc/ref/core.internal/html/search/enumvalues_0.html
new file mode 100644
index 0000000000..3e00fcf61a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_0.js b/doc/ref/core.internal/html/search/enumvalues_0.js
new file mode 100644
index 0000000000..f44252736c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_0.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['activated',['ACTIVATED',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d',1,'server.c']]],
+ ['argtype_5fbool',['ARGTYPE_BOOL',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4ad141b51bee7ccb14e0c83871f0e3ee0d',1,'cmdline.c']]],
+ ['argtype_5fint',['ARGTYPE_INT',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4a620547b20bcf630ba7f4d727fdb22521',1,'cmdline.c']]],
+ ['argtype_5fstring',['ARGTYPE_STRING',['../cmdline_8c.html#a55073e9737969efda87471594edd95d4a50a996a2423b2fd5397a14b362fa23ab',1,'cmdline.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_1.html b/doc/ref/core.internal/html/search/enumvalues_1.html
new file mode 100644
index 0000000000..0e575c969a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_1.js b/doc/ref/core.internal/html/search/enumvalues_1.js
new file mode 100644
index 0000000000..28d885fb3b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_1.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['b64_5fbyte0',['B64_BYTE0',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a500a293aa7eb4d4757a1f8c68e6130a2',1,'hpack_parser.c']]],
+ ['b64_5fbyte1',['B64_BYTE1',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a55a85d993feb4d0602aa7321264b6803',1,'hpack_parser.c']]],
+ ['b64_5fbyte2',['B64_BYTE2',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a67574c0700ab2dd5156af220443386d2',1,'hpack_parser.c']]],
+ ['b64_5fbyte3',['B64_BYTE3',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2aabf8c05acae26139d5ba70316b749524',1,'hpack_parser.c']]],
+ ['batch_5fcall',['BATCH_CALL',['../server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa38d2782a64b3bf4a845e9795b295b685',1,'server.c']]],
+ ['binary_5fheader',['BINARY_HEADER',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea4940041097c06eed1076f5dc2de17d9a',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_10.html b/doc/ref/core.internal/html/search/enumvalues_10.html
new file mode 100644
index 0000000000..470791ec90
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_10.js b/doc/ref/core.internal/html/search/enumvalues_10.js
new file mode 100644
index 0000000000..b52b388472
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_10.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['zombied',['ZOMBIED',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_2.html b/doc/ref/core.internal/html/search/enumvalues_2.html
new file mode 100644
index 0000000000..e59f4acb75
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_2.js b/doc/ref/core.internal/html/search/enumvalues_2.js
new file mode 100644
index 0000000000..fca7f746f2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_2.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+ ['call_5factive',['CALL_ACTIVE',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9',1,'client_channel.c']]],
+ ['call_5fcancelled',['CALL_CANCELLED',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d',1,'client_channel.c']]],
+ ['call_5fcreated',['CALL_CREATED',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fcall',['CALL_WAITING_FOR_CALL',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fconfig',['CALL_WAITING_FOR_CONFIG',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fpick',['CALL_WAITING_FOR_PICK',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad',1,'client_channel.c']]],
+ ['call_5fwaiting_5ffor_5fsend',['CALL_WAITING_FOR_SEND',['../client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c',1,'client_channel.c']]],
+ ['called_5fback',['CALLED_BACK',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca7cf5434be93040e9946cc788465d3b3a',1,'channel_connectivity.c']]],
+ ['calling_5fback',['CALLING_BACK',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845cab5a94c295540046002de0f889519c275',1,'channel_connectivity.c']]],
+ ['calling_5fback_5fand_5ffinished',['CALLING_BACK_AND_FINISHED',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca4ed55db80fc1cf98cb8fc633fd59d68d',1,'channel_connectivity.c']]],
+ ['census_5ffeature_5fall',['CENSUS_FEATURE_ALL',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aba96a94fb7af8cf1144ca14edc0b1f0c',1,'census.h']]],
+ ['census_5ffeature_5fcpu',['CENSUS_FEATURE_CPU',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a4808bff624e2377596b86a6f58ab04b5',1,'census.h']]],
+ ['census_5ffeature_5fnone',['CENSUS_FEATURE_NONE',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8aac1986834f37851b8d899c4a08c8e3ab',1,'census.h']]],
+ ['census_5ffeature_5fstats',['CENSUS_FEATURE_STATS',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8a84c772b868e53ee3487c7bfc8e8b2f1a',1,'census.h']]],
+ ['census_5ffeature_5ftracing',['CENSUS_FEATURE_TRACING',['../census_8h.html#abe92e59c22481b0de3742673cbbb1bf8ab0722326e730113d5be97f643c3e6718',1,'census.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_3.html b/doc/ref/core.internal/html/search/enumvalues_3.html
new file mode 100644
index 0000000000..0a2d754e4d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_3.js b/doc/ref/core.internal/html/search/enumvalues_3.js
new file mode 100644
index 0000000000..49fbe7735d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['data',['DATA',['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa9d7d6f31868d66330397c967c4afd2d2',1,'stream_encoder.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_4.html b/doc/ref/core.internal/html/search/enumvalues_4.html
new file mode 100644
index 0000000000..1258082bbf
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_4.js b/doc/ref/core.internal/html/search/enumvalues_4.js
new file mode 100644
index 0000000000..ec77c35b76
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_4.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['error_5fheader',['ERROR_HEADER',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea57e2b3994258d7216de08793daaa2b35',1,'hpack_parser.c']]],
+ ['event_5fsync_5fpartitions',['event_sync_partitions',['../sync_8c.html#a0ed680fdb405e7195d9f14032851eebba036372fdae4f52140a8f27482b729753',1,'sync.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_5.html b/doc/ref/core.internal/html/search/enumvalues_5.html
new file mode 100644
index 0000000000..e42d495996
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_5.js b/doc/ref/core.internal/html/search/enumvalues_5.js
new file mode 100644
index 0000000000..048633e2a8
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_5.js
@@ -0,0 +1,279 @@
+var searchData=
+[
+ ['gpr_5fclock_5fmonotonic',['GPR_CLOCK_MONOTONIC',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c',1,'time.h']]],
+ ['gpr_5fclock_5frealtime',['GPR_CLOCK_REALTIME',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746',1,'time.h']]],
+ ['gpr_5flog_5fseverity_5fdebug',['GPR_LOG_SEVERITY_DEBUG',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48af7d2a0ad91b0787398220ddcd91f06d6',1,'log.h']]],
+ ['gpr_5flog_5fseverity_5ferror',['GPR_LOG_SEVERITY_ERROR',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48a52b957eb23ac2207b5e1dcf15c2b3dd4',1,'log.h']]],
+ ['gpr_5flog_5fseverity_5finfo',['GPR_LOG_SEVERITY_INFO',['../log_8h.html#af10334b4085ac6985a2af9c08478ad48af6c13c67f06821c1629b7e019af4aaf1',1,'log.h']]],
+ ['gpr_5fthd_5fjoinable',['GPR_THD_JOINABLE',['../thd_8c.html#a0944a4353780132eeab7b06e3e42291da228d343354c0f2bb16c0fb1f79e71dbc',1,'thd.c']]],
+ ['gpr_5ftimespan',['GPR_TIMESPAN',['../time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741',1,'time.h']]],
+ ['grpc_5facked_5fsettings',['GRPC_ACKED_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada2ce0f9cd8c08c749b6471dda749d8b42',1,'internal.h']]],
+ ['grpc_5farg_5finteger',['GRPC_ARG_INTEGER',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a8d2f803b8aaf88f34dac1f887826c689',1,'grpc.h']]],
+ ['grpc_5farg_5fpointer',['GRPC_ARG_POINTER',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a02a823a7037e2a60b9d9a031fd42591b',1,'grpc.h']]],
+ ['grpc_5farg_5fstring',['GRPC_ARG_STRING',['../grpc_8h.html#a0b06eae05e70404aedbceaebce6de593a215b6b9143ba133ede0e29f79098239d',1,'grpc.h']]],
+ ['grpc_5fbb_5fraw',['GRPC_BB_RAW',['../byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6a1918bbb8502c74288793b58f1786f636',1,'byte_buffer.h']]],
+ ['grpc_5fcall_5ferror',['GRPC_CALL_ERROR',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba86e7b6bf1fe5dec17fc08ba2f77d1b41',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5falready_5faccepted',['GRPC_CALL_ERROR_ALREADY_ACCEPTED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba2f6f332e63eb94df8abedfddb96ae63a',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5falready_5ffinished',['GRPC_CALL_ERROR_ALREADY_FINISHED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba21256301a6038a6a03fc8444ddd08c63',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5falready_5finvoked',['GRPC_CALL_ERROR_ALREADY_INVOKED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba042165aa26653c844a846d188f722857',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5finvalid_5fflags',['GRPC_CALL_ERROR_INVALID_FLAGS',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bae915786320e24eff4f1e05852d40f861',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5finvalid_5fmetadata',['GRPC_CALL_ERROR_INVALID_METADATA',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba13f469c7761a672240ddfe29f85729bd',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5finvoked',['GRPC_CALL_ERROR_NOT_INVOKED',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba6113860606450e3a3fa40ddf46749296',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5fon_5fclient',['GRPC_CALL_ERROR_NOT_ON_CLIENT',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7ba38ea119e00e8b4d10211f4ced9ef6',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5fon_5fserver',['GRPC_CALL_ERROR_NOT_ON_SERVER',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba1a48e861db610ae8f0b0cba7749251d8',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5fnot_5fserver_5fcompletion_5fqueue',['GRPC_CALL_ERROR_NOT_SERVER_COMPLETION_QUEUE',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785bade52e850722f80804d90881ac125706f',1,'grpc.h']]],
+ ['grpc_5fcall_5ferror_5ftoo_5fmany_5foperations',['GRPC_CALL_ERROR_TOO_MANY_OPERATIONS',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba7e09791915b841c30e9d79c26a5a6454',1,'grpc.h']]],
+ ['grpc_5fcall_5fok',['GRPC_CALL_OK',['../grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785ba32f125b97007cbdb43534e9d6e0989f8',1,'grpc.h']]],
+ ['grpc_5fchannel_5fconnecting',['GRPC_CHANNEL_CONNECTING',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a3ac13f6c7627f15186760bfd6b7d9299',1,'grpc.h']]],
+ ['grpc_5fchannel_5ffatal_5ffailure',['GRPC_CHANNEL_FATAL_FAILURE',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a8f774ebe233ee26ebd546fe4b58060b6',1,'grpc.h']]],
+ ['grpc_5fchannel_5fidle',['GRPC_CHANNEL_IDLE',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2a304d1b81cec4357a9a6acbcb18248e77',1,'grpc.h']]],
+ ['grpc_5fchannel_5fready',['GRPC_CHANNEL_READY',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2aab01ef3f78d9236dfa3c751dc66aa7ea',1,'grpc.h']]],
+ ['grpc_5fchannel_5ftransient_5ffailure',['GRPC_CHANNEL_TRANSIENT_FAILURE',['../grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2af5bffd3ffb03795f551b0fa78e44b9b6',1,'grpc.h']]],
+ ['grpc_5fchttp2_5f_5ferror_5fdo_5fnot_5fuse',['GRPC_CHTTP2__ERROR_DO_NOT_USE',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8e5f197695b6c1b6219c713f252cbe98',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fcancel',['GRPC_CHTTP2_CANCEL',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa9264c0548b0e8fc3e8925c97950a3ada',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fclamp_5finvalid_5fvalue',['GRPC_CHTTP2_CLAMP_INVALID_VALUE',['../frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfabc4bdee640e0fd68941f5cef7d0d5c1d',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fcompression_5ferror',['GRPC_CHTTP2_COMPRESSION_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa8aad7d6ac431ca99de5ff0fb216cbf14',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fconnect_5ferror',['GRPC_CHTTP2_CONNECT_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daaa7fa96238f0902347df0e4eebe25bf95',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fconnection_5ferror',['GRPC_CHTTP2_CONNECTION_ERROR',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35a0bff666112f9afb13b93c48ed70c99c4',1,'frame.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f0',['GRPC_CHTTP2_DATA_FH_0',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a8606bae7951c3a44f31201632d3358fc',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f1',['GRPC_CHTTP2_DATA_FH_1',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910ab2647959f772db94da5da74192754b6c',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f2',['GRPC_CHTTP2_DATA_FH_2',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910adf4a0199bbd7ecc325f84d2781290843',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f3',['GRPC_CHTTP2_DATA_FH_3',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a1cf7aa5d2aa4fbe172e9356326228e91',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5ffh_5f4',['GRPC_CHTTP2_DATA_FH_4',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910a5d5cd606ac5966a5ad7deef8241ed288',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdata_5fframe',['GRPC_CHTTP2_DATA_FRAME',['../frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910aa95da05ccc06aa0c2196dcb54717b6de',1,'frame_data.h']]],
+ ['grpc_5fchttp2_5fdisconnect_5fon_5finvalid_5fvalue',['GRPC_CHTTP2_DISCONNECT_ON_INVALID_VALUE',['../frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69dfaaf75d3b2b0b3e9f19d2492734d0ab7ac',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fenhance_5fyour_5fcalm',['GRPC_CHTTP2_ENHANCE_YOUR_CALM',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa781f6e847c97a46478a27d4a9a08d602',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fflow_5fcontrol_5ferror',['GRPC_CHTTP2_FLOW_CONTROL_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa233f21b2f8d7b783e17c62e130566ffc',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fframe_5fsize_5ferror',['GRPC_CHTTP2_FRAME_SIZE_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa63771a624c3d25b6fac2eaab524eb8cf',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fgoaway_5fdebug',['GRPC_CHTTP2_GOAWAY_DEBUG',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa1ca1c1ca48d62838f5803452f7fc0619',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr0',['GRPC_CHTTP2_GOAWAY_ERR0',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa3980674942df0749ccce6bd0b8a1774a',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr1',['GRPC_CHTTP2_GOAWAY_ERR1',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa043c53d587fd0409363123590db80131',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr2',['GRPC_CHTTP2_GOAWAY_ERR2',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa65caf31f49f9cf98aa594be64659c18f',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5ferr3',['GRPC_CHTTP2_GOAWAY_ERR3',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa5decad83e822e3504618079fe13e3998',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi0',['GRPC_CHTTP2_GOAWAY_LSI0',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa44acac95504eba73375c26bb469c0149',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi1',['GRPC_CHTTP2_GOAWAY_LSI1',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa6b7fb7a9b9a4c34ef4e3e12adf06a3e6',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi2',['GRPC_CHTTP2_GOAWAY_LSI2',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aab1ff486da91ae87dfd94234508f6fbbe',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5fgoaway_5flsi3',['GRPC_CHTTP2_GOAWAY_LSI3',['../frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436aa528143455d42821886ecaba0ec753a72',1,'frame_goaway.h']]],
+ ['grpc_5fchttp2_5finadequate_5fsecurity',['GRPC_CHTTP2_INADEQUATE_SECURITY',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa333694384e3414c37dcc5f9856029d07',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5finternal_5ferror',['GRPC_CHTTP2_INTERNAL_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa93f66c3811f1a093c6db040a1d7a76bf',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5flist_5fall_5fstreams',['GRPC_CHTTP2_LIST_ALL_STREAMS',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a55472097517b6e0ad54562494cadc6a4',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fcancelled_5fwaiting_5ffor_5fwriting',['GRPC_CHTTP2_LIST_CANCELLED_WAITING_FOR_WRITING',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a8a9ab1244149b1d03b5107d51f872f21',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fclosed_5fwaiting_5ffor_5fparsing',['GRPC_CHTTP2_LIST_CLOSED_WAITING_FOR_PARSING',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab18632dd09ec47ec222a68fccfb5b56f',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fincoming_5fwindow_5fupdated',['GRPC_CHTTP2_LIST_INCOMING_WINDOW_UPDATED',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a379d8479565bb2a2565e3bef983c3f09',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fparsing_5fseen',['GRPC_CHTTP2_LIST_PARSING_SEEN',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539ab16ac38146d8c206d971154d3e2e385e',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fread_5fwrite_5fstate_5fchanged',['GRPC_CHTTP2_LIST_READ_WRITE_STATE_CHANGED',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539aad8c067aea30c7e63f1f8f578ad091ec',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwaiting_5ffor_5fconcurrency',['GRPC_CHTTP2_LIST_WAITING_FOR_CONCURRENCY',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a038c19c7cb6246583e24eb4ffe74883a',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwritable',['GRPC_CHTTP2_LIST_WRITABLE',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a472c9817d59a165a3a8a7bd6065c8af0',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwriting',['GRPC_CHTTP2_LIST_WRITING',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a2d32b64c3350b55206ca435e489bf48a',1,'internal.h']]],
+ ['grpc_5fchttp2_5flist_5fwritten',['GRPC_CHTTP2_LIST_WRITTEN',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539a9028d8867d7d656543018fe4e4483673',1,'internal.h']]],
+ ['grpc_5fchttp2_5fno_5ferror',['GRPC_CHTTP2_NO_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa089995d883f21b3bc4f6094fab83f0a6',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fnum_5fsettings',['GRPC_CHTTP2_NUM_SETTINGS',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fparse_5fok',['GRPC_CHTTP2_PARSE_OK',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35af86b67f5595348d506db6719011a2931',1,'frame.h']]],
+ ['grpc_5fchttp2_5fprotocol_5ferror',['GRPC_CHTTP2_PROTOCOL_ERROR',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0712f7732b32d9bf386f40b891543c4d',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5frefused_5fstream',['GRPC_CHTTP2_REFUSED_STREAM',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa0939e69d27c0978982c3de5ef02b729b',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fsettings_5fenable_5fpush',['GRPC_CHTTP2_SETTINGS_ENABLE_PUSH',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa7f070f14411298ea1311597311b41a1b',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fheader_5ftable_5fsize',['GRPC_CHTTP2_SETTINGS_HEADER_TABLE_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efac610e43a0f572521b814f87f7e3c79a7',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5finitial_5fwindow_5fsize',['GRPC_CHTTP2_SETTINGS_INITIAL_WINDOW_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4220c4c98b8d1658f64cde93dfbc6c1c',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fmax_5fconcurrent_5fstreams',['GRPC_CHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa41d47ec73fd1f060373bc6b229ce6924',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fmax_5fframe_5fsize',['GRPC_CHTTP2_SETTINGS_MAX_FRAME_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa9f44b823c96c40f04d156443621b04b7',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5fmax_5fheader_5flist_5fsize',['GRPC_CHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE',['../frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa4f082174b4938bd7bfb454ce86b57bd5',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsettings_5ftimeout',['GRPC_CHTTP2_SETTINGS_TIMEOUT',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daab8cd31d7a72d46adbfaadc17285f1b9f',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fsps_5fid0',['GRPC_CHTTP2_SPS_ID0',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2e800b21243029fbcc09886a92a103e7',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fid1',['GRPC_CHTTP2_SPS_ID1',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa72e3e47927539876c8174f778c01082a',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval0',['GRPC_CHTTP2_SPS_VAL0',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa025cf926edc443251e39469eae84eeee',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval1',['GRPC_CHTTP2_SPS_VAL1',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa2f522d046f4657fa3e5f40d78efa9a97',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval2',['GRPC_CHTTP2_SPS_VAL2',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8fa662e963afdd3bd9420a382124c7ee311',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fsps_5fval3',['GRPC_CHTTP2_SPS_VAL3',['../frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8facebee53c2a5e1cc209590d1fa93880a0',1,'frame_settings.h']]],
+ ['grpc_5fchttp2_5fstream_5fclosed',['GRPC_CHTTP2_STREAM_CLOSED',['../http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4daa67e605a7272d6d956ccc616caf85d4c2',1,'http2_errors.h']]],
+ ['grpc_5fchttp2_5fstream_5ferror',['GRPC_CHTTP2_STREAM_ERROR',['../frame_8h.html#ada474db64756bd411eeeaf3de4318e35a785a08cbae32b1550c8b96da011fe9a4',1,'frame.h']]],
+ ['grpc_5fcompress_5falgorithms_5fcount',['GRPC_COMPRESS_ALGORITHMS_COUNT',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d',1,'compression.h']]],
+ ['grpc_5fcompress_5fdeflate',['GRPC_COMPRESS_DEFLATE',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a50de256d5abe80daff7e1372e29dd913',1,'compression.h']]],
+ ['grpc_5fcompress_5fgzip',['GRPC_COMPRESS_GZIP',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a5a134ced82d8682b55b99b8e9386555e',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fcount',['GRPC_COMPRESS_LEVEL_COUNT',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a893b24fb0986e61ebda069c713b8bd43',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fhigh',['GRPC_COMPRESS_LEVEL_HIGH',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a501a0cf15300a90c09a3d8b4f7f43d22',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5flow',['GRPC_COMPRESS_LEVEL_LOW',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7afd436e21be4f897ca939b3b4d9a44673',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fmed',['GRPC_COMPRESS_LEVEL_MED',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7a4319a32cdd0b59a7ecc977f8612214ce',1,'compression.h']]],
+ ['grpc_5fcompress_5flevel_5fnone',['GRPC_COMPRESS_LEVEL_NONE',['../compression_8h.html#a14a79ed6b5ebd7e1dda7c2684f499cc7ab67efe04f58b0939b963e51a5b8f772c',1,'compression.h']]],
+ ['grpc_5fcompress_5fnone',['GRPC_COMPRESS_NONE',['../compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a3135cac7e854adb16358c53e97df9cd8',1,'compression.h']]],
+ ['grpc_5fcontext_5fcount',['GRPC_CONTEXT_COUNT',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7',1,'context.h']]],
+ ['grpc_5fcontext_5fsecurity',['GRPC_CONTEXT_SECURITY',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffad3eeb57d00fb37f4d2f39706942b4d1b',1,'context.h']]],
+ ['grpc_5fcontext_5ftracing',['GRPC_CONTEXT_TRACING',['../channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa772d66a312d7bbe72aa6036832976b80',1,'context.h']]],
+ ['grpc_5fcredentials_5ferror',['GRPC_CREDENTIALS_ERROR',['../credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4aa187148e06f47b75b8f89794a837fb6a',1,'credentials.h']]],
+ ['grpc_5fcredentials_5fok',['GRPC_CREDENTIALS_OK',['../credentials_8h.html#a2f0ff51afd60f456086f0db9b67a13e4a24b48b91238fd97a3f02b97886e93c15',1,'credentials.h']]],
+ ['grpc_5fdont_5fsend_5fclosed',['GRPC_DONT_SEND_CLOSED',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab7c3500e5584461922d410d38986335c',1,'internal.h']]],
+ ['grpc_5fdsmode_5fdualstack',['GRPC_DSMODE_DUALSTACK',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635',1,'socket_utils_posix.h']]],
+ ['grpc_5fdsmode_5fipv4',['GRPC_DSMODE_IPV4',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8',1,'socket_utils_posix.h']]],
+ ['grpc_5fdsmode_5fipv6',['GRPC_DSMODE_IPV6',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3',1,'socket_utils_posix.h']]],
+ ['grpc_5fdsmode_5fnone',['GRPC_DSMODE_NONE',['../socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858',1,'socket_utils_posix.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f0',['GRPC_DTS_CLIENT_PREFIX_0',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25d129ada2c0e8f26802bb1b490d0085',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f1',['GRPC_DTS_CLIENT_PREFIX_1',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa40d0131ceae834fc5333dd46fe43506',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f10',['GRPC_DTS_CLIENT_PREFIX_10',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a9e8caab2da107d3b8e757c91717d47f3',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f11',['GRPC_DTS_CLIENT_PREFIX_11',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af3615fc2a32d17ae1050e78bd89e43e1',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f12',['GRPC_DTS_CLIENT_PREFIX_12',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aa452c6c245042fcc3a6b07b89bc0392a',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f13',['GRPC_DTS_CLIENT_PREFIX_13',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7f122c0c00df0bea810b2d4023b60a19',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f14',['GRPC_DTS_CLIENT_PREFIX_14',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ae9e31a7c2928921ee0cb097fba7d03aa',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f15',['GRPC_DTS_CLIENT_PREFIX_15',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a06c52283890571b31d6e04c1ffc7957d',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f16',['GRPC_DTS_CLIENT_PREFIX_16',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab6eb5b0e8a5237462ee96361b440796f',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f17',['GRPC_DTS_CLIENT_PREFIX_17',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a82726c9cc14910572d203055432b6795',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f18',['GRPC_DTS_CLIENT_PREFIX_18',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad8642b29010211229e19de9c6e0fcbc8',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f19',['GRPC_DTS_CLIENT_PREFIX_19',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ab986ee109b4635c4ccf94d7aab397257',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f2',['GRPC_DTS_CLIENT_PREFIX_2',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a61ef7ffdaea8c2a8b0d4fb016c256ad0',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f20',['GRPC_DTS_CLIENT_PREFIX_20',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a25a1989db73d7d542ec6fc0b10ccb1cc',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f21',['GRPC_DTS_CLIENT_PREFIX_21',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a47d411086582ccce4e8d040eead17674',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f22',['GRPC_DTS_CLIENT_PREFIX_22',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac9321d51de32a9fd554196f6fe486e75',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f23',['GRPC_DTS_CLIENT_PREFIX_23',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a19861af38f4fe10f7c40b6bf99bd275e',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f3',['GRPC_DTS_CLIENT_PREFIX_3',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a4ebe79862d221aad04f0ccb8918f1912',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f4',['GRPC_DTS_CLIENT_PREFIX_4',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ad033829aebd599a6ea3d94026d80a355',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f5',['GRPC_DTS_CLIENT_PREFIX_5',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a66bdff40a54dc664cf72632276424b74',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f6',['GRPC_DTS_CLIENT_PREFIX_6',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a3cc01f12b7b1f4cbcf2ed027af56f835',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f7',['GRPC_DTS_CLIENT_PREFIX_7',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af04b36417fb0350bafc7c3054cfbad90',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f8',['GRPC_DTS_CLIENT_PREFIX_8',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62ac33407a02ca85302040eb22f1f639e0a',1,'internal.h']]],
+ ['grpc_5fdts_5fclient_5fprefix_5f9',['GRPC_DTS_CLIENT_PREFIX_9',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a64c70beae9714707e8750f863603cd2e',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f0',['GRPC_DTS_FH_0',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62adbe27b41d36d475e114fde2087aab8c1',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f1',['GRPC_DTS_FH_1',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a6ef23c92e88b4226bcde3d1f44150ab1',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f2',['GRPC_DTS_FH_2',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62aaab31026fe27f752d727eedd9a41b5ab',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f3',['GRPC_DTS_FH_3',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a1fa3cffd7776e95f961eef22681f1922',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f4',['GRPC_DTS_FH_4',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a15bfd0d79ed1a62dbdc8f377f62cacbd',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f5',['GRPC_DTS_FH_5',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a95f000174adbc3a27bc91b422520b6cc',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f6',['GRPC_DTS_FH_6',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a7dfb17176bd8ea6005e8d27caa30e49c',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f7',['GRPC_DTS_FH_7',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62af80fa92c955868a75af026943b74f976',1,'internal.h']]],
+ ['grpc_5fdts_5ffh_5f8',['GRPC_DTS_FH_8',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a26ea9eff9ffdbd49b96f39f6d1d8320a',1,'internal.h']]],
+ ['grpc_5fdts_5fframe',['GRPC_DTS_FRAME',['../internal_8h.html#a6f98ba3b22480becf1bcc47253326a62a166f3cb24f0210d2a31e37863345b586',1,'internal.h']]],
+ ['grpc_5fendpoint_5fcb_5feof',['GRPC_ENDPOINT_CB_EOF',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea2e899c2c1f439bcacb80d720bf16b28a',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5ferror',['GRPC_ENDPOINT_CB_ERROR',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea56bdd1b428950ad6e54bf0ef4044ab8e',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5fok',['GRPC_ENDPOINT_CB_OK',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea48c02072cce4fc7339c4236ea902407f',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5fshutdown',['GRPC_ENDPOINT_CB_SHUTDOWN',['../endpoint_8h.html#abb88e72ffe7908c2def55fea24d321aea077a9b05808b8e3b0e2cf6ab4fe0ee37',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fdone',['GRPC_ENDPOINT_WRITE_DONE',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902a9b592c54f22e5b3d4692aedf57b0a254',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5ferror',['GRPC_ENDPOINT_WRITE_ERROR',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902ac6ee550584876eb6ecba8fa333133f8f',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fpending',['GRPC_ENDPOINT_WRITE_PENDING',['../endpoint_8h.html#abfb8e299371be52c109912cda9dbe902aa3fdd3c500d6ed9c4d33687a80d37f09',1,'endpoint.h']]],
+ ['grpc_5fhttpcli_5fbody',['GRPC_HTTPCLI_BODY',['../parser_8h.html#a664db6149875c333b0a568ef8711e257ab0d18f147817864752f04b87f1ab54d0',1,'parser.h']]],
+ ['grpc_5fhttpcli_5fheaders',['GRPC_HTTPCLI_HEADERS',['../parser_8h.html#a664db6149875c333b0a568ef8711e257a3bbe99163e8d405c22e405cd380c3ba8',1,'parser.h']]],
+ ['grpc_5fhttpcli_5finitial_5fresponse',['GRPC_HTTPCLI_INITIAL_RESPONSE',['../parser_8h.html#a664db6149875c333b0a568ef8711e257a63262fde49ebad4848be6038d6a6dc8a',1,'parser.h']]],
+ ['grpc_5fioreq_5fop_5fcount',['GRPC_IOREQ_OP_COUNT',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fclose',['GRPC_IOREQ_RECV_CLOSE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a87859850a314f5275986aeb008e4f632',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5finitial_5fmetadata',['GRPC_IOREQ_RECV_INITIAL_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a1314ef20703755184ab04fbfb5387282',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fmessage',['GRPC_IOREQ_RECV_MESSAGE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a9ab6565e74cfb818d27db7d532570cbb',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fstatus',['GRPC_IOREQ_RECV_STATUS',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a115f1520925971c6a06680669d76ea9a',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5fstatus_5fdetails',['GRPC_IOREQ_RECV_STATUS_DETAILS',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077adffaf692690d3ce8fb0b503574d17795',1,'call.h']]],
+ ['grpc_5fioreq_5frecv_5ftrailing_5fmetadata',['GRPC_IOREQ_RECV_TRAILING_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a8e812e910cf251cd7ea99e912eeb9bcf',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5fclose',['GRPC_IOREQ_SEND_CLOSE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad303395faccf9db870bfb3017c3b994a',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5finitial_5fmetadata',['GRPC_IOREQ_SEND_INITIAL_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077a7f2c7c1956f546a988d5071ec49187b7',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5fmessage',['GRPC_IOREQ_SEND_MESSAGE',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077ae1347e94cd8011a8bbbf73e916fb9246',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5fstatus',['GRPC_IOREQ_SEND_STATUS',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077ad8568457ecb464f48adf5d5f27828e3c',1,'call.h']]],
+ ['grpc_5fioreq_5fsend_5ftrailing_5fmetadata',['GRPC_IOREQ_SEND_TRAILING_METADATA',['../call_8h.html#a6197b03dc8f1e7b26c62190faf505077aaf233f9c12febc8d9b8cef46c856c522',1,'call.h']]],
+ ['grpc_5fjson_5farray',['GRPC_JSON_ARRAY',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a12e5c49e8af63209e64af80f053a5877',1,'json_common.h']]],
+ ['grpc_5fjson_5fdone',['GRPC_JSON_DONE',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a3ec47e8c31d09cfc07b3b3459caf5ed7',1,'json_reader.h']]],
+ ['grpc_5fjson_5feagain',['GRPC_JSON_EAGAIN',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a28dcdba3bcbd64daf22c70df4d1bd3f0',1,'json_reader.h']]],
+ ['grpc_5fjson_5ffalse',['GRPC_JSON_FALSE',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a4d78cd5a0d3737102d1786e6d2e756fe',1,'json_common.h']]],
+ ['grpc_5fjson_5finternal_5ferror',['GRPC_JSON_INTERNAL_ERROR',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24ac3281037071f4e67aa01fb1f096bbfe8',1,'json_reader.h']]],
+ ['grpc_5fjson_5fnull',['GRPC_JSON_NULL',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a2927d5e4f8c2ac7970465d848733d880',1,'json_common.h']]],
+ ['grpc_5fjson_5fnumber',['GRPC_JSON_NUMBER',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a0e7572364b1b10b99d5b875329614b44',1,'json_common.h']]],
+ ['grpc_5fjson_5fobject',['GRPC_JSON_OBJECT',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a5dee7d9f721c5f616cf7f6fabff912a1',1,'json_common.h']]],
+ ['grpc_5fjson_5fparse_5ferror',['GRPC_JSON_PARSE_ERROR',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24a9e89bd16fe4ee12cff307413b6f28b6c',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5fchar_5feagain',['GRPC_JSON_READ_CHAR_EAGAIN',['../json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4dab16e9d72bca58d8d43810ed53afb12c9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5fchar_5feof',['GRPC_JSON_READ_CHAR_EOF',['../json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4daf9fe6e98c983a5c439783f938b3c86d9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5fchar_5ferror',['GRPC_JSON_READ_CHAR_ERROR',['../json__reader_8h.html#a16af7b253440dadd46a80a4b9fddba4da8812b963d2fe1700bdcc1a8084cf86bc',1,'json_reader.h']]],
+ ['grpc_5fjson_5fread_5ferror',['GRPC_JSON_READ_ERROR',['../json__reader_8h.html#ab958fafc9819a82736ac5f030feb8d24af34c0d5ee249e46cca43ead968e07ebc',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fend',['GRPC_JSON_STATE_END',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3abb3c4b5760662831b92f941695deb8ab',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fobject_5fkey_5fbegin',['GRPC_JSON_STATE_OBJECT_KEY_BEGIN',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae3661c71859af165b76b78ce3d76b1dd',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fobject_5fkey_5fend',['GRPC_JSON_STATE_OBJECT_KEY_END',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a34fed96cb6df9620bf61b3d22615365f',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fobject_5fkey_5fstring',['GRPC_JSON_STATE_OBJECT_KEY_STRING',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a9780461c3c593717ca7d3c493c6dcfdf',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape',['GRPC_JSON_STATE_STRING_ESCAPE',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad5c59beddcd25dbdf44c3ad129e77fd3',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu1',['GRPC_JSON_STATE_STRING_ESCAPE_U1',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a76dafae1aaab777fd9a6bbc26d10a71b',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu2',['GRPC_JSON_STATE_STRING_ESCAPE_U2',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3afa7e20c80c15f500c002a738a5d67829',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu3',['GRPC_JSON_STATE_STRING_ESCAPE_U3',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ae314dc1624daa9ff6b0f63e4b9d03eca',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fstring_5fescape_5fu4',['GRPC_JSON_STATE_STRING_ESCAPE_U4',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a168ce3979bfa152546f8d9d55b70b28f',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fbegin',['GRPC_JSON_STATE_VALUE_BEGIN',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a670a159c43fdc6905bd8d52c26da1114',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fend',['GRPC_JSON_STATE_VALUE_END',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a98d936a3fe5cf280c1791d5b1892edc0',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fa',['GRPC_JSON_STATE_VALUE_FALSE_A',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3aeab79537b4e6d7eeba5b80171da78c9c',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fe',['GRPC_JSON_STATE_VALUE_FALSE_E',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad30ab18e89a56d134986d7583a364a94',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fl',['GRPC_JSON_STATE_VALUE_FALSE_L',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a50c6454c492bfb09e8fd0560b0c5a5a7',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ffalse_5fs',['GRPC_JSON_STATE_VALUE_FALSE_S',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ad0097ae5d9dd0bff25b148574c7085e9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnull_5fl1',['GRPC_JSON_STATE_VALUE_NULL_L1',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8cc64baededcc064adfebf60232f7916',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnull_5fl2',['GRPC_JSON_STATE_VALUE_NULL_L2',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a0b12f5d4a59fd680ef25c3b6f8047cc5',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnull_5fu',['GRPC_JSON_STATE_VALUE_NULL_U',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a90b388ae65ad466503492cdc45b125e2',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber',['GRPC_JSON_STATE_VALUE_NUMBER',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a06d56e2f12761077e8f1f99d79e1288a',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fdot',['GRPC_JSON_STATE_VALUE_NUMBER_DOT',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3add9dc89ace1a49e762b0066b67337692',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fe',['GRPC_JSON_STATE_VALUE_NUMBER_E',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3ab5fd99deecc891aa5d550c0a4e367cc9',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fepm',['GRPC_JSON_STATE_VALUE_NUMBER_EPM',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a078f4e5d5e3aed61060331892d076746',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fwith_5fdecimal',['GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a8b40b7890a6e13c179270475b19406b4',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fnumber_5fzero',['GRPC_JSON_STATE_VALUE_NUMBER_ZERO',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a4343815cd876adf206462c2d6b2928f1',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5fstring',['GRPC_JSON_STATE_VALUE_STRING',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a35c7798e09ff2c349be10778d2a9003f',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ftrue_5fe',['GRPC_JSON_STATE_VALUE_TRUE_E',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a51f53cf8933bec52d5cfa2e60952e27c',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ftrue_5fr',['GRPC_JSON_STATE_VALUE_TRUE_R',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a83c0a8d29cef49ab924fd3c2a1ca5e0b',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstate_5fvalue_5ftrue_5fu',['GRPC_JSON_STATE_VALUE_TRUE_U',['../json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3a81ccf65c544696f17a35b6596b73e11b',1,'json_reader.h']]],
+ ['grpc_5fjson_5fstring',['GRPC_JSON_STRING',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2aaad8ddc7407e241b2c60d20c64d66d79',1,'json_common.h']]],
+ ['grpc_5fjson_5ftop_5flevel',['GRPC_JSON_TOP_LEVEL',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2a6cf6e3dbbe21345b1a3eb6e9d8becb63',1,'json_common.h']]],
+ ['grpc_5fjson_5ftrue',['GRPC_JSON_TRUE',['../json__common_8h.html#a3e82983bba0988c52251467566a07ce2addb2de1293e8e8c804847d54bbb7f53b',1,'json_common.h']]],
+ ['grpc_5fjwt_5fverifier_5fbad_5faudience',['GRPC_JWT_VERIFIER_BAD_AUDIENCE',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ae350517932f24d7381da68eb82c32e08',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fbad_5fformat',['GRPC_JWT_VERIFIER_BAD_FORMAT',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a093ce843a6f3bb30f7828dcdf179785c',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fbad_5fsignature',['GRPC_JWT_VERIFIER_BAD_SIGNATURE',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5aa940dd7ad73e12da6ad7c2c5ef4d3298',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fgeneric_5ferror',['GRPC_JWT_VERIFIER_GENERIC_ERROR',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a8b1bd3670e04ba080882d18ad2156546',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fkey_5fretrieval_5ferror',['GRPC_JWT_VERIFIER_KEY_RETRIEVAL_ERROR',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a939bc13cb2d1fe1529a29dfaca361194',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5fok',['GRPC_JWT_VERIFIER_OK',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5a7e0b490fc1c6a843a9ed7266f5255f57',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier_5ftime_5fconstraint_5ffailure',['GRPC_JWT_VERIFIER_TIME_CONSTRAINT_FAILURE',['../jwt__verifier_8h.html#a04a38ad49ca184c3a075f927b7ed61b5ab77a70669bbc2a0a6e69b95b9f8dd78f',1,'jwt_verifier.h']]],
+ ['grpc_5flocal_5fsettings',['GRPC_LOCAL_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada34fcc73078d41da89714d1735a6c34a0',1,'internal.h']]],
+ ['grpc_5fno_5fop',['GRPC_NO_OP',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c',1,'stream_op.h']]],
+ ['grpc_5fnum_5fsetting_5fsets',['GRPC_NUM_SETTING_SETS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641',1,'internal.h']]],
+ ['grpc_5fop_5fbegin_5fmessage',['GRPC_OP_BEGIN_MESSAGE',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31',1,'stream_op.h']]],
+ ['grpc_5fop_5fcomplete',['GRPC_OP_COMPLETE',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a00b42e3d4b6e6493c6e76f1adf07b297',1,'grpc.h']]],
+ ['grpc_5fop_5fmetadata',['GRPC_OP_METADATA',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317',1,'stream_op.h']]],
+ ['grpc_5fop_5frecv_5fclose_5fon_5fserver',['GRPC_OP_RECV_CLOSE_ON_SERVER',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa8fb75ed79601a4845a39a74d7505cef6',1,'grpc.h']]],
+ ['grpc_5fop_5frecv_5finitial_5fmetadata',['GRPC_OP_RECV_INITIAL_METADATA',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaabe080072d165d1e69459abd7c742078',1,'grpc.h']]],
+ ['grpc_5fop_5frecv_5fmessage',['GRPC_OP_RECV_MESSAGE',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aafe3da4c8865af4ef5258b3790d15afc5',1,'grpc.h']]],
+ ['grpc_5fop_5frecv_5fstatus_5fon_5fclient',['GRPC_OP_RECV_STATUS_ON_CLIENT',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa4d43b168589407554a58e91fae80ba17',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5fclose_5ffrom_5fclient',['GRPC_OP_SEND_CLOSE_FROM_CLIENT',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa6c66420562347ff4dcf35e4b32c0d486',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5finitial_5fmetadata',['GRPC_OP_SEND_INITIAL_METADATA',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaf5bbedf13763c180b2f1ada62769d721',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5fmessage',['GRPC_OP_SEND_MESSAGE',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aaa6447181c20e4c6d64a54fae8082ef70',1,'grpc.h']]],
+ ['grpc_5fop_5fsend_5fstatus_5ffrom_5fserver',['GRPC_OP_SEND_STATUS_FROM_SERVER',['../grpc_8h.html#a41dc9abf9678decbfcef1a037e35939aa3a3659314e7495b1cabed0f3a6705f64',1,'grpc.h']]],
+ ['grpc_5fop_5fslice',['GRPC_OP_SLICE',['../stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6',1,'stream_op.h']]],
+ ['grpc_5fpeer_5fsettings',['GRPC_PEER_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada1e2fba3c15bdcd6378ad03ed9a47a572',1,'internal.h']]],
+ ['grpc_5fptag_5fcall_5fon_5fdone_5frecv',['GRPC_PTAG_CALL_ON_DONE_RECV',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a',1,'timers.h']]],
+ ['grpc_5fptag_5fcpp_5fcall_5fcreated',['GRPC_PTAG_CPP_CALL_CREATED',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61',1,'timers.h']]],
+ ['grpc_5fptag_5fcpp_5fperform_5fops',['GRPC_PTAG_CPP_PERFORM_OPS',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e',1,'timers.h']]],
+ ['grpc_5fptag_5fhandle_5fread',['GRPC_PTAG_HANDLE_READ',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129',1,'timers.h']]],
+ ['grpc_5fptag_5fhttp2_5funlock',['GRPC_PTAG_HTTP2_UNLOCK',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d',1,'timers.h']]],
+ ['grpc_5fptag_5fhttp2_5funlock_5fcleanup',['GRPC_PTAG_HTTP2_UNLOCK_CLEANUP',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a',1,'timers.h']]],
+ ['grpc_5fptag_5fignore_5fthreshold',['GRPC_PTAG_IGNORE_THRESHOLD',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392',1,'timers.h']]],
+ ['grpc_5fptag_5fother_5fbase',['GRPC_PTAG_OTHER_BASE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b',1,'timers.h']]],
+ ['grpc_5fptag_5fpoll_5ffinished',['GRPC_PTAG_POLL_FINISHED',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627',1,'timers.h']]],
+ ['grpc_5fptag_5fproto_5fdeserialize',['GRPC_PTAG_PROTO_DESERIALIZE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b',1,'timers.h']]],
+ ['grpc_5fptag_5fproto_5fserialize',['GRPC_PTAG_PROTO_SERIALIZE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8',1,'timers.h']]],
+ ['grpc_5fptag_5frecvmsg',['GRPC_PTAG_RECVMSG',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77',1,'timers.h']]],
+ ['grpc_5fptag_5fsendmsg',['GRPC_PTAG_SENDMSG',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472',1,'timers.h']]],
+ ['grpc_5fptag_5ftcp_5fcb_5fwrite',['GRPC_PTAG_TCP_CB_WRITE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1',1,'timers.h']]],
+ ['grpc_5fptag_5ftcp_5fwrite',['GRPC_PTAG_TCP_WRITE',['../timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f',1,'timers.h']]],
+ ['grpc_5fqueue_5fshutdown',['GRPC_QUEUE_SHUTDOWN',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a503dd1b2ec79457f0f810716016219d5',1,'grpc.h']]],
+ ['grpc_5fqueue_5ftimeout',['GRPC_QUEUE_TIMEOUT',['../grpc_8h.html#ab6454071421a36ebc25952ed448d5b87a4339ea61236e103b6555fdf9b6cffab6',1,'grpc.h']]],
+ ['grpc_5fsecurity_5ferror',['GRPC_SECURITY_ERROR',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fok',['GRPC_SECURITY_OK',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fpending',['GRPC_SECURITY_PENDING',['../security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8',1,'security_connector.h']]],
+ ['grpc_5fsend_5fclosed',['GRPC_SEND_CLOSED',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab9d017cdb014717c5160971d45cc1c02',1,'internal.h']]],
+ ['grpc_5fsend_5fclosed_5fwith_5frst_5fstream',['GRPC_SEND_CLOSED_WITH_RST_STREAM',['../internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9ab0dbda5711c4d3612d77337cbeb88508',1,'internal.h']]],
+ ['grpc_5fsent_5fsettings',['GRPC_SENT_SETTINGS',['../internal_8h.html#a6c14b42c5aba744e7f99831e0b7901ada984818e41863a597de9f9fb6162019f5',1,'internal.h']]],
+ ['grpc_5fstatus_5f_5fdo_5fnot_5fuse',['GRPC_STATUS__DO_NOT_USE',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96',1,'status.h']]],
+ ['grpc_5fstatus_5faborted',['GRPC_STATUS_ABORTED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9',1,'status.h']]],
+ ['grpc_5fstatus_5falready_5fexists',['GRPC_STATUS_ALREADY_EXISTS',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b',1,'status.h']]],
+ ['grpc_5fstatus_5fcancelled',['GRPC_STATUS_CANCELLED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038',1,'status.h']]],
+ ['grpc_5fstatus_5fdata_5floss',['GRPC_STATUS_DATA_LOSS',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7',1,'status.h']]],
+ ['grpc_5fstatus_5fdeadline_5fexceeded',['GRPC_STATUS_DEADLINE_EXCEEDED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208',1,'status.h']]],
+ ['grpc_5fstatus_5ffailed_5fprecondition',['GRPC_STATUS_FAILED_PRECONDITION',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f',1,'status.h']]],
+ ['grpc_5fstatus_5finternal',['GRPC_STATUS_INTERNAL',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520',1,'status.h']]],
+ ['grpc_5fstatus_5finvalid_5fargument',['GRPC_STATUS_INVALID_ARGUMENT',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731',1,'status.h']]],
+ ['grpc_5fstatus_5fnot_5ffound',['GRPC_STATUS_NOT_FOUND',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2',1,'status.h']]],
+ ['grpc_5fstatus_5fok',['GRPC_STATUS_OK',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201',1,'status.h']]],
+ ['grpc_5fstatus_5fout_5fof_5frange',['GRPC_STATUS_OUT_OF_RANGE',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b',1,'status.h']]],
+ ['grpc_5fstatus_5fpermission_5fdenied',['GRPC_STATUS_PERMISSION_DENIED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4',1,'status.h']]],
+ ['grpc_5fstatus_5fresource_5fexhausted',['GRPC_STATUS_RESOURCE_EXHAUSTED',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9',1,'status.h']]],
+ ['grpc_5fstatus_5funauthenticated',['GRPC_STATUS_UNAUTHENTICATED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb',1,'status.h']]],
+ ['grpc_5fstatus_5funavailable',['GRPC_STATUS_UNAVAILABLE',['../status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79',1,'status.h']]],
+ ['grpc_5fstatus_5funimplemented',['GRPC_STATUS_UNIMPLEMENTED',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2',1,'status.h']]],
+ ['grpc_5fstatus_5funknown',['GRPC_STATUS_UNKNOWN',['../status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08',1,'status.h']]],
+ ['grpc_5fstream_5fclosed',['GRPC_STREAM_CLOSED',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362',1,'transport.h']]],
+ ['grpc_5fstream_5fopen',['GRPC_STREAM_OPEN',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76',1,'transport.h']]],
+ ['grpc_5fstream_5frecv_5fclosed',['GRPC_STREAM_RECV_CLOSED',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7',1,'transport.h']]],
+ ['grpc_5fstream_5fsend_5fclosed',['GRPC_STREAM_SEND_CLOSED',['../transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a',1,'transport.h']]],
+ ['grpc_5fwrite_5fstate_5fopen',['GRPC_WRITE_STATE_OPEN',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca0fe604e577783cbae2a2c88221278883',1,'internal.h']]],
+ ['grpc_5fwrite_5fstate_5fqueued_5fclose',['GRPC_WRITE_STATE_QUEUED_CLOSE',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca3919fcef92f060577ba356817423e633',1,'internal.h']]],
+ ['grpc_5fwrite_5fstate_5fsent_5fclose',['GRPC_WRITE_STATE_SENT_CLOSE',['../internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cca208ef886be22d63ae3cd3880cb6a3693',1,'internal.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_6.html b/doc/ref/core.internal/html/search/enumvalues_6.html
new file mode 100644
index 0000000000..96249ec49e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_6.js b/doc/ref/core.internal/html/search/enumvalues_6.js
new file mode 100644
index 0000000000..8ccf8a07b6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['header',['HEADER',['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa2e57918a09d25b07a664e505d50a97f6',1,'stream_encoder.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_7.html b/doc/ref/core.internal/html/search/enumvalues_7.html
new file mode 100644
index 0000000000..d38c296a1c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_7.js b/doc/ref/core.internal/html/search/enumvalues_7.js
new file mode 100644
index 0000000000..ee41a798dd
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_7.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['illegal',['ILLEGAL',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a64b291c78f4399005e7e6d35274ac792',1,'hpack_parser.c']]],
+ ['indexed_5ffield',['INDEXED_FIELD',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acf55dbd5b43747a8de2b3475e776b2a9',1,'hpack_parser.c']]],
+ ['indexed_5ffield_5fx',['INDEXED_FIELD_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab2d9a731d5c6871093edecbab8ec1b8a',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_8.html b/doc/ref/core.internal/html/search/enumvalues_8.html
new file mode 100644
index 0000000000..9966e4688c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_8.js b/doc/ref/core.internal/html/search/enumvalues_8.js
new file mode 100644
index 0000000000..16a30a12ad
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_8.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+ ['lithdr_5fincidx',['LITHDR_INCIDX',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ad521ba7e26b2f29b70f24ebe99a7b6d4',1,'hpack_parser.c']]],
+ ['lithdr_5fincidx_5fv',['LITHDR_INCIDX_V',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918acc616dbc2d6e6d99eb2879bc55a85e8c',1,'hpack_parser.c']]],
+ ['lithdr_5fincidx_5fx',['LITHDR_INCIDX_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918abc7a5a868dc1b4304662225ded589449',1,'hpack_parser.c']]],
+ ['lithdr_5fnotidx',['LITHDR_NOTIDX',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a21b8279ee1879c395b696774c516b925',1,'hpack_parser.c']]],
+ ['lithdr_5fnotidx_5fv',['LITHDR_NOTIDX_V',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9108c78104ce0a038a1ee76f9d56ebb4',1,'hpack_parser.c']]],
+ ['lithdr_5fnotidx_5fx',['LITHDR_NOTIDX_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a17dbb369763076fa7714c613ca4778b4',1,'hpack_parser.c']]],
+ ['lithdr_5fnvridx',['LITHDR_NVRIDX',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918aa4c98da3a42fad37a7eaaa74e76590e2',1,'hpack_parser.c']]],
+ ['lithdr_5fnvridx_5fv',['LITHDR_NVRIDX_V',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918ab3fbe40c948e7abb4b587700f295c508',1,'hpack_parser.c']]],
+ ['lithdr_5fnvridx_5fx',['LITHDR_NVRIDX_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a9e86cc54448658713f683983a377d364',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_9.html b/doc/ref/core.internal/html/search/enumvalues_9.html
new file mode 100644
index 0000000000..926ed9f2ec
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_9.js b/doc/ref/core.internal/html/search/enumvalues_9.js
new file mode 100644
index 0000000000..a76261e6b0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_9.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['max_5ftbl_5fsize',['MAX_TBL_SIZE',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918a01c9e4f4b7e8c618841fab7c6fab28d8',1,'hpack_parser.c']]],
+ ['max_5ftbl_5fsize_5fx',['MAX_TBL_SIZE_X',['../hpack__parser_8c.html#a82ea1fc72cfd46090df5eb5f87ba1918adb841f9eb9a97d6b2cbcdbc72ecceca4',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_a.html b/doc/ref/core.internal/html/search/enumvalues_a.html
new file mode 100644
index 0000000000..fa2cf426b2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_a.js b/doc/ref/core.internal/html/search/enumvalues_a.js
new file mode 100644
index 0000000000..8f7a6d17aa
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_a.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['none',['NONE',['../stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fac157bdf0b85a40d2619cbc8bc1ae5fe2',1,'stream_encoder.c']]],
+ ['not_5fbinary',['NOT_BINARY',['../hpack__parser_8c.html#ad3a7b3c7f62a05667162fb28247a07c2a36e0cd08af8b9cec8a5ae17c6a5c5124',1,'hpack_parser.c']]],
+ ['not_5fstarted',['NOT_STARTED',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_b.html b/doc/ref/core.internal/html/search/enumvalues_b.html
new file mode 100644
index 0000000000..f45e84c9bb
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_b.js b/doc/ref/core.internal/html/search/enumvalues_b.js
new file mode 100644
index 0000000000..b7ab792a3b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_b.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['pending',['PENDING',['../server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73',1,'server.c']]],
+ ['plaintext_5fheader',['PLAINTEXT_HEADER',['../hpack__parser_8c.html#a71eda0fd38f30d8005251eb895de35eea6b3fea68a44cbdbcd96fbdcf35d98a4c',1,'hpack_parser.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_c.html b/doc/ref/core.internal/html/search/enumvalues_c.html
new file mode 100644
index 0000000000..6ad81ca5dd
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_c.js b/doc/ref/core.internal/html/search/enumvalues_c.js
new file mode 100644
index 0000000000..f15ec9781e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_c.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['read_5fstate_5fgot_5finitial_5fmetadata',['READ_STATE_GOT_INITIAL_METADATA',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a37370f960213dc0f115eb8495e038b2a',1,'call.c']]],
+ ['read_5fstate_5finitial',['READ_STATE_INITIAL',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17ad2197f646af67a6d937754c3a1417439',1,'call.c']]],
+ ['read_5fstate_5fread_5fclosed',['READ_STATE_READ_CLOSED',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17a9c7de87cb383873b75a6de98df2dc445',1,'call.c']]],
+ ['read_5fstate_5fstream_5fclosed',['READ_STATE_STREAM_CLOSED',['../call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17add056921b7a5dd24d85db716da87594a',1,'call.c']]],
+ ['registered_5fcall',['REGISTERED_CALL',['../server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa969f2119db66590473c2fa7f00e21c5a',1,'server.c']]],
+ ['req_5fdone',['REQ_DONE',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17a9156fc9ac04c64171f05a5692a1356a9',1,'call.c']]],
+ ['req_5finitial',['REQ_INITIAL',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17a6268d672744bde6005590a30c8189779',1,'call.c']]],
+ ['req_5fready',['REQ_READY',['../call_8c.html#a54d1fff20be8e7414ba15f456824bb17a99044b02beb639fe667b1a5fcae61a96',1,'call.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_d.html b/doc/ref/core.internal/html/search/enumvalues_d.html
new file mode 100644
index 0000000000..526907ab4d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_d.js b/doc/ref/core.internal/html/search/enumvalues_d.js
new file mode 100644
index 0000000000..ad3f5757c6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_d.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['send_5fbuffered_5finitial_5fmetadata',['SEND_BUFFERED_INITIAL_METADATA',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819aa0eea39729a5b7c862262626fbe3d352',1,'call.c']]],
+ ['send_5fbuffered_5fmessage',['SEND_BUFFERED_MESSAGE',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819ad0b19b54eb40a63af9f7d957ff717f6e',1,'call.c']]],
+ ['send_5ffinish',['SEND_FINISH',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819addfb3ce4bfcd50ee7ec74608fb32f8ef',1,'call.c']]],
+ ['send_5finitial_5fmetadata',['SEND_INITIAL_METADATA',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819a7045eff04495ab507242e5da11bcb4ff',1,'call.c']]],
+ ['send_5fmessage',['SEND_MESSAGE',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819a5def54f3ec39f74661e1614669603d71',1,'call.c']]],
+ ['send_5fnothing',['SEND_NOTHING',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819ad40596b21bcebc4654bb8da5c7469b01',1,'call.c']]],
+ ['send_5ftrailing_5fmetadata_5fand_5ffinish',['SEND_TRAILING_METADATA_AND_FINISH',['../call_8c.html#a5c099cbc41809afd83d900cef74c2819a69a25d71b99a99c66c39696b038aa486',1,'call.c']]],
+ ['status_5ffrom_5fapi_5foverride',['STATUS_FROM_API_OVERRIDE',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271afd2f639169b914143f3b412ed1a2ef00',1,'call.c']]],
+ ['status_5ffrom_5fcore',['STATUS_FROM_CORE',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a48a145dfa9c97761d84d36131d27a72e',1,'call.c']]],
+ ['status_5ffrom_5fserver_5fstatus',['STATUS_FROM_SERVER_STATUS',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271aad4663967ed2d5b74e875954573b5c64',1,'call.c']]],
+ ['status_5ffrom_5fwire',['STATUS_FROM_WIRE',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a825b6688b57f66bdb07fef664aa8d569',1,'call.c']]],
+ ['status_5fsource_5fcount',['STATUS_SOURCE_COUNT',['../call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22',1,'call.c']]],
+ ['stream_5flist_5fcount',['STREAM_LIST_COUNT',['../internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5',1,'internal.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_e.html b/doc/ref/core.internal/html/search/enumvalues_e.html
new file mode 100644
index 0000000000..36af8c0054
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_e.js b/doc/ref/core.internal/html/search/enumvalues_e.js
new file mode 100644
index 0000000000..55d869fd43
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_e.js
@@ -0,0 +1,21 @@
+var searchData=
+[
+ ['tsi_5fdata_5fcorrupted',['TSI_DATA_CORRUPTED',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54',1,'transport_security_interface.h']]],
+ ['tsi_5ffailed_5fprecondition',['TSI_FAILED_PRECONDITION',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe',1,'transport_security_interface.h']]],
+ ['tsi_5ffake_5fclient_5ffinished',['TSI_FAKE_CLIENT_FINISHED',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a8449ebdb0b21fe666efe134d8eb5af74',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fclient_5finit',['TSI_FAKE_CLIENT_INIT',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a3eef9f8827f4892e807c2b0e1a9187f3',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fhandshake_5fmessage_5fmax',['TSI_FAKE_HANDSHAKE_MESSAGE_MAX',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52adf08f2bf334a78ccee66b203a08b6e7b',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fserver_5ffinished',['TSI_FAKE_SERVER_FINISHED',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52abf558a770548cdab6e4716e7f30ac641',1,'fake_transport_security.c']]],
+ ['tsi_5ffake_5fserver_5finit',['TSI_FAKE_SERVER_INIT',['../fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52a062ff4e0c7cb1b8894dbd5d633f4e5bb',1,'fake_transport_security.c']]],
+ ['tsi_5fhandshake_5fin_5fprogress',['TSI_HANDSHAKE_IN_PROGRESS',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c',1,'transport_security_interface.h']]],
+ ['tsi_5fincomplete_5fdata',['TSI_INCOMPLETE_DATA',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e',1,'transport_security_interface.h']]],
+ ['tsi_5finternal_5ferror',['TSI_INTERNAL_ERROR',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34',1,'transport_security_interface.h']]],
+ ['tsi_5finvalid_5fargument',['TSI_INVALID_ARGUMENT',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada',1,'transport_security_interface.h']]],
+ ['tsi_5fnot_5ffound',['TSI_NOT_FOUND',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6',1,'transport_security_interface.h']]],
+ ['tsi_5fok',['TSI_OK',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d',1,'transport_security_interface.h']]],
+ ['tsi_5fout_5fof_5fresources',['TSI_OUT_OF_RESOURCES',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519',1,'transport_security_interface.h']]],
+ ['tsi_5fpermission_5fdenied',['TSI_PERMISSION_DENIED',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906',1,'transport_security_interface.h']]],
+ ['tsi_5fprotocol_5ffailure',['TSI_PROTOCOL_FAILURE',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a',1,'transport_security_interface.h']]],
+ ['tsi_5funimplemented',['TSI_UNIMPLEMENTED',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e',1,'transport_security_interface.h']]],
+ ['tsi_5funknown_5ferror',['TSI_UNKNOWN_ERROR',['../transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe',1,'transport_security_interface.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/enumvalues_f.html b/doc/ref/core.internal/html/search/enumvalues_f.html
new file mode 100644
index 0000000000..f8ca1881dc
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/enumvalues_f.js b/doc/ref/core.internal/html/search/enumvalues_f.js
new file mode 100644
index 0000000000..f3815806b9
--- /dev/null
+++ b/doc/ref/core.internal/html/search/enumvalues_f.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['waiting',['WAITING',['../channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845ca757971c0bc5a1972d5f1b1be2c0e2087',1,'channel_connectivity.c']]],
+ ['write_5fstate_5finitial',['WRITE_STATE_INITIAL',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688da18e6209a49059c72ae1a0671fbe729f3',1,'call.c']]],
+ ['write_5fstate_5fstarted',['WRITE_STATE_STARTED',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688da26c7fbe66a37088b9bc8f34edd4e2634',1,'call.c']]],
+ ['write_5fstate_5fwrite_5fclosed',['WRITE_STATE_WRITE_CLOSED',['../call_8c.html#a5ed0172019dfa72bf69d881d3f06688daa6f0a8cbb946569f2f609e500abbbff4',1,'call.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_0.html b/doc/ref/core.internal/html/search/files_0.html
new file mode 100644
index 0000000000..c7aa36c96f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_0.js b/doc/ref/core.internal/html/search/files_0.js
new file mode 100644
index 0000000000..89ccd98240
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_0.js
@@ -0,0 +1,20 @@
+var searchData=
+[
+ ['add_5fchannel_5farg_2ec',['add_channel_arg.c',['../add__channel__arg_8c.html',1,'']]],
+ ['add_5fchannel_5farg_2eh',['add_channel_arg.h',['../add__channel__arg_8h.html',1,'']]],
+ ['alarm_2ec',['alarm.c',['../alarm_8c.html',1,'']]],
+ ['alarm_2eh',['alarm.h',['../alarm_8h.html',1,'']]],
+ ['alarm_5fheap_2ec',['alarm_heap.c',['../alarm__heap_8c.html',1,'']]],
+ ['alarm_5fheap_2eh',['alarm_heap.h',['../alarm__heap_8h.html',1,'']]],
+ ['alarm_5finternal_2eh',['alarm_internal.h',['../alarm__internal_8h.html',1,'']]],
+ ['algorithm_2ec',['algorithm.c',['../algorithm_8c.html',1,'']]],
+ ['alloc_2ec',['alloc.c',['../alloc_8c.html',1,'']]],
+ ['alloc_2eh',['alloc.h',['../alloc_8h.html',1,'']]],
+ ['alpn_2ec',['alpn.c',['../alpn_8c.html',1,'']]],
+ ['alpn_2eh',['alpn.h',['../alpn_8h.html',1,'']]],
+ ['atm_2eh',['atm.h',['../atm_8h.html',1,'']]],
+ ['atm_5fgcc_5fatomic_2eh',['atm_gcc_atomic.h',['../atm__gcc__atomic_8h.html',1,'']]],
+ ['atm_5fgcc_5fsync_2eh',['atm_gcc_sync.h',['../atm__gcc__sync_8h.html',1,'']]],
+ ['atm_5fwin32_2eh',['atm_win32.h',['../atm__win32_8h.html',1,'']]],
+ ['auth_5ffilters_2eh',['auth_filters.h',['../auth__filters_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_1.html b/doc/ref/core.internal/html/search/files_1.html
new file mode 100644
index 0000000000..eca1c80542
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_1.js b/doc/ref/core.internal/html/search/files_1.js
new file mode 100644
index 0000000000..4765dca470
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_1.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+ ['base64_2ec',['base64.c',['../base64_8c.html',1,'']]],
+ ['base64_2eh',['base64.h',['../base64_8h.html',1,'']]],
+ ['basic_5ftimers_2ec',['basic_timers.c',['../basic__timers_8c.html',1,'']]],
+ ['bin_5fencoder_2ec',['bin_encoder.c',['../bin__encoder_8c.html',1,'']]],
+ ['bin_5fencoder_2eh',['bin_encoder.h',['../bin__encoder_8h.html',1,'']]],
+ ['byte_5fbuffer_2ec',['byte_buffer.c',['../byte__buffer_8c.html',1,'']]],
+ ['byte_5fbuffer_2eh',['byte_buffer.h',['../byte__buffer_8h.html',1,'']]],
+ ['byte_5fbuffer_5fqueue_2ec',['byte_buffer_queue.c',['../byte__buffer__queue_8c.html',1,'']]],
+ ['byte_5fbuffer_5fqueue_2eh',['byte_buffer_queue.h',['../byte__buffer__queue_8h.html',1,'']]],
+ ['byte_5fbuffer_5freader_2ec',['byte_buffer_reader.c',['../byte__buffer__reader_8c.html',1,'']]],
+ ['byte_5fbuffer_5freader_2eh',['byte_buffer_reader.h',['../byte__buffer__reader_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_10.html b/doc/ref/core.internal/html/search/files_10.html
new file mode 100644
index 0000000000..4ac316cd82
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_10.js b/doc/ref/core.internal/html/search/files_10.js
new file mode 100644
index 0000000000..c32d53aa7c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_10.js
@@ -0,0 +1,42 @@
+var searchData=
+[
+ ['tcp_5fclient_2eh',['tcp_client.h',['../tcp__client_8h.html',1,'']]],
+ ['tcp_5fclient_5fposix_2ec',['tcp_client_posix.c',['../tcp__client__posix_8c.html',1,'']]],
+ ['tcp_5fclient_5fwindows_2ec',['tcp_client_windows.c',['../tcp__client__windows_8c.html',1,'']]],
+ ['tcp_5fposix_2ec',['tcp_posix.c',['../tcp__posix_8c.html',1,'']]],
+ ['tcp_5fposix_2eh',['tcp_posix.h',['../tcp__posix_8h.html',1,'']]],
+ ['tcp_5fserver_2eh',['tcp_server.h',['../tcp__server_8h.html',1,'']]],
+ ['tcp_5fserver_5fposix_2ec',['tcp_server_posix.c',['../tcp__server__posix_8c.html',1,'']]],
+ ['tcp_5fserver_5fwindows_2ec',['tcp_server_windows.c',['../tcp__server__windows_8c.html',1,'']]],
+ ['tcp_5fwindows_2ec',['tcp_windows.c',['../tcp__windows_8c.html',1,'']]],
+ ['tcp_5fwindows_2eh',['tcp_windows.h',['../tcp__windows_8h.html',1,'']]],
+ ['thd_2ec',['thd.c',['../thd_8c.html',1,'']]],
+ ['thd_2eh',['thd.h',['../thd_8h.html',1,'']]],
+ ['thd_5finternal_2eh',['thd_internal.h',['../thd__internal_8h.html',1,'']]],
+ ['thd_5fposix_2ec',['thd_posix.c',['../thd__posix_8c.html',1,'']]],
+ ['thd_5fwin32_2ec',['thd_win32.c',['../thd__win32_8c.html',1,'']]],
+ ['time_2ec',['time.c',['../time_8c.html',1,'']]],
+ ['time_2eh',['time.h',['../time_8h.html',1,'']]],
+ ['time_5faveraged_5fstats_2ec',['time_averaged_stats.c',['../time__averaged__stats_8c.html',1,'']]],
+ ['time_5faveraged_5fstats_2eh',['time_averaged_stats.h',['../time__averaged__stats_8h.html',1,'']]],
+ ['time_5fposix_2ec',['time_posix.c',['../time__posix_8c.html',1,'']]],
+ ['time_5fwin32_2ec',['time_win32.c',['../time__win32_8c.html',1,'']]],
+ ['timeout_5fencoding_2ec',['timeout_encoding.c',['../timeout__encoding_8c.html',1,'']]],
+ ['timeout_5fencoding_2eh',['timeout_encoding.h',['../timeout__encoding_8h.html',1,'']]],
+ ['timers_2eh',['timers.h',['../timers_8h.html',1,'']]],
+ ['timers_5fpreciseclock_2eh',['timers_preciseclock.h',['../timers__preciseclock_8h.html',1,'']]],
+ ['tls_2eh',['tls.h',['../tls_8h.html',1,'']]],
+ ['tls_5fgcc_2eh',['tls_gcc.h',['../tls__gcc_8h.html',1,'']]],
+ ['tls_5fmsvc_2eh',['tls_msvc.h',['../tls__msvc_8h.html',1,'']]],
+ ['tls_5fpthread_2ec',['tls_pthread.c',['../tls__pthread_8c.html',1,'']]],
+ ['tls_5fpthread_2eh',['tls_pthread.h',['../tls__pthread_8h.html',1,'']]],
+ ['trace_2ec',['trace.c',['../trace_8c.html',1,'']]],
+ ['trace_2eh',['trace.h',['../trace_8h.html',1,'']]],
+ ['transport_2ec',['transport.c',['../transport_8c.html',1,'']]],
+ ['transport_2eh',['transport.h',['../transport_8h.html',1,'']]],
+ ['transport_5fimpl_2eh',['transport_impl.h',['../transport__impl_8h.html',1,'']]],
+ ['transport_5fop_5fstring_2ec',['transport_op_string.c',['../transport__op__string_8c.html',1,'']]],
+ ['transport_5fsecurity_2ec',['transport_security.c',['../transport__security_8c.html',1,'']]],
+ ['transport_5fsecurity_2eh',['transport_security.h',['../transport__security_8h.html',1,'']]],
+ ['transport_5fsecurity_5finterface_2eh',['transport_security_interface.h',['../transport__security__interface_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_11.html b/doc/ref/core.internal/html/search/files_11.html
new file mode 100644
index 0000000000..afd2311585
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_11.js b/doc/ref/core.internal/html/search/files_11.js
new file mode 100644
index 0000000000..baf278952c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_11.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['uri_5fparser_2ec',['uri_parser.c',['../uri__parser_8c.html',1,'']]],
+ ['uri_5fparser_2eh',['uri_parser.h',['../uri__parser_8h.html',1,'']]],
+ ['useful_2eh',['useful.h',['../useful_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_12.html b/doc/ref/core.internal/html/search/files_12.html
new file mode 100644
index 0000000000..247951b8db
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_12.js b/doc/ref/core.internal/html/search/files_12.js
new file mode 100644
index 0000000000..100fe7eb2b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_12.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['varint_2ec',['varint.c',['../varint_8c.html',1,'']]],
+ ['varint_2eh',['varint.h',['../varint_8h.html',1,'']]],
+ ['version_2ec',['version.c',['../version_8c.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_13.html b/doc/ref/core.internal/html/search/files_13.html
new file mode 100644
index 0000000000..019294799b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_13.js b/doc/ref/core.internal/html/search/files_13.js
new file mode 100644
index 0000000000..0bf6f46a61
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_13.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['wakeup_5ffd_5feventfd_2ec',['wakeup_fd_eventfd.c',['../wakeup__fd__eventfd_8c.html',1,'']]],
+ ['wakeup_5ffd_5fnospecial_2ec',['wakeup_fd_nospecial.c',['../wakeup__fd__nospecial_8c.html',1,'']]],
+ ['wakeup_5ffd_5fpipe_2ec',['wakeup_fd_pipe.c',['../wakeup__fd__pipe_8c.html',1,'']]],
+ ['wakeup_5ffd_5fpipe_2eh',['wakeup_fd_pipe.h',['../wakeup__fd__pipe_8h.html',1,'']]],
+ ['wakeup_5ffd_5fposix_2ec',['wakeup_fd_posix.c',['../wakeup__fd__posix_8c.html',1,'']]],
+ ['wakeup_5ffd_5fposix_2eh',['wakeup_fd_posix.h',['../wakeup__fd__posix_8h.html',1,'']]],
+ ['writing_2ec',['writing.c',['../writing_8c.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_2.html b/doc/ref/core.internal/html/search/files_2.html
new file mode 100644
index 0000000000..04a8a46342
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_2.js b/doc/ref/core.internal/html/search/files_2.js
new file mode 100644
index 0000000000..109c857b69
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_2.js
@@ -0,0 +1,52 @@
+var searchData=
+[
+ ['call_2ec',['call.c',['../call_8c.html',1,'']]],
+ ['call_2eh',['call.h',['../call_8h.html',1,'']]],
+ ['call_5fdetails_2ec',['call_details.c',['../call__details_8c.html',1,'']]],
+ ['call_5flog_5fbatch_2ec',['call_log_batch.c',['../call__log__batch_8c.html',1,'']]],
+ ['cancellable_2ec',['cancellable.c',['../cancellable_8c.html',1,'']]],
+ ['cancellable_5fplatform_2eh',['cancellable_platform.h',['../cancellable__platform_8h.html',1,'']]],
+ ['census_2eh',['census.h',['../census_8h.html',1,'']]],
+ ['census_5ffilter_2eh',['census_filter.h',['../census__filter_8h.html',1,'']]],
+ ['channel_2ec',['channel.c',['../channel_8c.html',1,'']]],
+ ['channel_2eh',['channel.h',['../channel_8h.html',1,'']]],
+ ['channel_5fargs_2ec',['channel_args.c',['../channel__args_8c.html',1,'']]],
+ ['channel_5fargs_2eh',['channel_args.h',['../channel__args_8h.html',1,'']]],
+ ['channel_5fconnectivity_2ec',['channel_connectivity.c',['../channel__connectivity_8c.html',1,'']]],
+ ['channel_5fcreate_2ec',['channel_create.c',['../channel__create_8c.html',1,'']]],
+ ['channel_5fstack_2ec',['channel_stack.c',['../channel__stack_8c.html',1,'']]],
+ ['channel_5fstack_2eh',['channel_stack.h',['../channel__stack_8h.html',1,'']]],
+ ['chttp2_5ftransport_2ec',['chttp2_transport.c',['../chttp2__transport_8c.html',1,'']]],
+ ['chttp2_5ftransport_2eh',['chttp2_transport.h',['../chttp2__transport_8h.html',1,'']]],
+ ['client_5fauth_5ffilter_2ec',['client_auth_filter.c',['../client__auth__filter_8c.html',1,'']]],
+ ['client_5fchannel_2ec',['client_channel.c',['../client__channel_8c.html',1,'']]],
+ ['client_5fchannel_2eh',['client_channel.h',['../client__channel_8h.html',1,'']]],
+ ['client_5fconfig_2ec',['client_config.c',['../client__config_8c.html',1,'']]],
+ ['client_5fconfig_2eh',['client_config.h',['../client__config_8h.html',1,'']]],
+ ['cmdline_2ec',['cmdline.c',['../cmdline_8c.html',1,'']]],
+ ['cmdline_2eh',['cmdline.h',['../cmdline_8h.html',1,'']]],
+ ['completion_5fqueue_2ec',['completion_queue.c',['../completion__queue_8c.html',1,'']]],
+ ['completion_5fqueue_2eh',['completion_queue.h',['../completion__queue_8h.html',1,'']]],
+ ['compress_5ffilter_2ec',['compress_filter.c',['../compress__filter_8c.html',1,'']]],
+ ['compress_5ffilter_2eh',['compress_filter.h',['../compress__filter_8h.html',1,'']]],
+ ['compression_2eh',['compression.h',['../compression_8h.html',1,'']]],
+ ['connected_5fchannel_2ec',['connected_channel.c',['../connected__channel_8c.html',1,'']]],
+ ['connected_5fchannel_2eh',['connected_channel.h',['../connected__channel_8h.html',1,'']]],
+ ['connectivity_5fstate_2ec',['connectivity_state.c',['../connectivity__state_8c.html',1,'']]],
+ ['connectivity_5fstate_2eh',['connectivity_state.h',['../connectivity__state_8h.html',1,'']]],
+ ['connector_2ec',['connector.c',['../connector_8c.html',1,'']]],
+ ['connector_2eh',['connector.h',['../connector_8h.html',1,'']]],
+ ['context_2ec',['context.c',['../context_8c.html',1,'']]],
+ ['context_2eh',['context.h',['../census_2context_8h.html',1,'']]],
+ ['context_2eh',['context.h',['../channel_2context_8h.html',1,'']]],
+ ['cpu_2eh',['cpu.h',['../cpu_8h.html',1,'']]],
+ ['cpu_5fiphone_2ec',['cpu_iphone.c',['../cpu__iphone_8c.html',1,'']]],
+ ['cpu_5flinux_2ec',['cpu_linux.c',['../cpu__linux_8c.html',1,'']]],
+ ['cpu_5fposix_2ec',['cpu_posix.c',['../cpu__posix_8c.html',1,'']]],
+ ['cpu_5fwindows_2ec',['cpu_windows.c',['../cpu__windows_8c.html',1,'']]],
+ ['credentials_2ec',['credentials.c',['../credentials_8c.html',1,'']]],
+ ['credentials_2eh',['credentials.h',['../credentials_8h.html',1,'']]],
+ ['credentials_5fmetadata_2ec',['credentials_metadata.c',['../credentials__metadata_8c.html',1,'']]],
+ ['credentials_5fposix_2ec',['credentials_posix.c',['../credentials__posix_8c.html',1,'']]],
+ ['credentials_5fwin32_2ec',['credentials_win32.c',['../credentials__win32_8c.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_3.html b/doc/ref/core.internal/html/search/files_3.html
new file mode 100644
index 0000000000..0dc9a561e5
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_3.js b/doc/ref/core.internal/html/search/files_3.js
new file mode 100644
index 0000000000..5f4cc67786
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['dns_5fresolver_2ec',['dns_resolver.c',['../dns__resolver_8c.html',1,'']]],
+ ['dns_5fresolver_2eh',['dns_resolver.h',['../dns__resolver_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_4.html b/doc/ref/core.internal/html/search/files_4.html
new file mode 100644
index 0000000000..891b5da340
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_4.js b/doc/ref/core.internal/html/search/files_4.js
new file mode 100644
index 0000000000..3476a04b2f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_4.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+ ['endpoint_2ec',['endpoint.c',['../endpoint_8c.html',1,'']]],
+ ['endpoint_2eh',['endpoint.h',['../endpoint_8h.html',1,'']]],
+ ['endpoint_5fpair_2eh',['endpoint_pair.h',['../endpoint__pair_8h.html',1,'']]],
+ ['endpoint_5fpair_5fposix_2ec',['endpoint_pair_posix.c',['../endpoint__pair__posix_8c.html',1,'']]],
+ ['endpoint_5fpair_5fwindows_2ec',['endpoint_pair_windows.c',['../endpoint__pair__windows_8c.html',1,'']]],
+ ['env_2eh',['env.h',['../env_8h.html',1,'']]],
+ ['env_5flinux_2ec',['env_linux.c',['../env__linux_8c.html',1,'']]],
+ ['env_5fposix_2ec',['env_posix.c',['../env__posix_8c.html',1,'']]],
+ ['env_5fwin32_2ec',['env_win32.c',['../env__win32_8c.html',1,'']]],
+ ['event_5fstring_2ec',['event_string.c',['../event__string_8c.html',1,'']]],
+ ['event_5fstring_2eh',['event_string.h',['../event__string_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_5.html b/doc/ref/core.internal/html/search/files_5.html
new file mode 100644
index 0000000000..1741195c0f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_5.js b/doc/ref/core.internal/html/search/files_5.js
new file mode 100644
index 0000000000..b3a7d9b3c8
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_5.js
@@ -0,0 +1,26 @@
+var searchData=
+[
+ ['fake_5ftransport_5fsecurity_2ec',['fake_transport_security.c',['../fake__transport__security_8c.html',1,'']]],
+ ['fake_5ftransport_5fsecurity_2eh',['fake_transport_security.h',['../fake__transport__security_8h.html',1,'']]],
+ ['fd_5fposix_2ec',['fd_posix.c',['../fd__posix_8c.html',1,'']]],
+ ['fd_5fposix_2eh',['fd_posix.h',['../fd__posix_8h.html',1,'']]],
+ ['file_2ec',['file.c',['../file_8c.html',1,'']]],
+ ['file_2eh',['file.h',['../file_8h.html',1,'']]],
+ ['file_5fposix_2ec',['file_posix.c',['../file__posix_8c.html',1,'']]],
+ ['file_5fwin32_2ec',['file_win32.c',['../file__win32_8c.html',1,'']]],
+ ['format_5frequest_2ec',['format_request.c',['../format__request_8c.html',1,'']]],
+ ['format_5frequest_2eh',['format_request.h',['../format__request_8h.html',1,'']]],
+ ['frame_2eh',['frame.h',['../frame_8h.html',1,'']]],
+ ['frame_5fdata_2ec',['frame_data.c',['../frame__data_8c.html',1,'']]],
+ ['frame_5fdata_2eh',['frame_data.h',['../frame__data_8h.html',1,'']]],
+ ['frame_5fgoaway_2ec',['frame_goaway.c',['../frame__goaway_8c.html',1,'']]],
+ ['frame_5fgoaway_2eh',['frame_goaway.h',['../frame__goaway_8h.html',1,'']]],
+ ['frame_5fping_2ec',['frame_ping.c',['../frame__ping_8c.html',1,'']]],
+ ['frame_5fping_2eh',['frame_ping.h',['../frame__ping_8h.html',1,'']]],
+ ['frame_5frst_5fstream_2ec',['frame_rst_stream.c',['../frame__rst__stream_8c.html',1,'']]],
+ ['frame_5frst_5fstream_2eh',['frame_rst_stream.h',['../frame__rst__stream_8h.html',1,'']]],
+ ['frame_5fsettings_2ec',['frame_settings.c',['../frame__settings_8c.html',1,'']]],
+ ['frame_5fsettings_2eh',['frame_settings.h',['../frame__settings_8h.html',1,'']]],
+ ['frame_5fwindow_5fupdate_2ec',['frame_window_update.c',['../frame__window__update_8c.html',1,'']]],
+ ['frame_5fwindow_5fupdate_2eh',['frame_window_update.h',['../frame__window__update_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_6.html b/doc/ref/core.internal/html/search/files_6.html
new file mode 100644
index 0000000000..262d3da249
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_6.js b/doc/ref/core.internal/html/search/files_6.js
new file mode 100644
index 0000000000..214460ac06
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_6.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['google_5fdefault_5fcredentials_2ec',['google_default_credentials.c',['../google__default__credentials_8c.html',1,'']]],
+ ['grpc_2eh',['grpc.h',['../grpc_8h.html',1,'']]],
+ ['grpc_5fcontext_2ec',['grpc_context.c',['../grpc__context_8c.html',1,'']]],
+ ['grpc_5fsecurity_2eh',['grpc_security.h',['../grpc__security_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_7.html b/doc/ref/core.internal/html/search/files_7.html
new file mode 100644
index 0000000000..c5355726df
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_7.js b/doc/ref/core.internal/html/search/files_7.js
new file mode 100644
index 0000000000..e7279661da
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_7.js
@@ -0,0 +1,22 @@
+var searchData=
+[
+ ['histogram_2ec',['histogram.c',['../histogram_8c.html',1,'']]],
+ ['histogram_2eh',['histogram.h',['../histogram_8h.html',1,'']]],
+ ['host_5fport_2ec',['host_port.c',['../host__port_8c.html',1,'']]],
+ ['host_5fport_2eh',['host_port.h',['../host__port_8h.html',1,'']]],
+ ['hpack_5fparser_2ec',['hpack_parser.c',['../hpack__parser_8c.html',1,'']]],
+ ['hpack_5fparser_2eh',['hpack_parser.h',['../hpack__parser_8h.html',1,'']]],
+ ['hpack_5ftable_2ec',['hpack_table.c',['../hpack__table_8c.html',1,'']]],
+ ['hpack_5ftable_2eh',['hpack_table.h',['../hpack__table_8h.html',1,'']]],
+ ['http2_5ferrors_2eh',['http2_errors.h',['../http2__errors_8h.html',1,'']]],
+ ['http_5fclient_5ffilter_2ec',['http_client_filter.c',['../http__client__filter_8c.html',1,'']]],
+ ['http_5fclient_5ffilter_2eh',['http_client_filter.h',['../http__client__filter_8h.html',1,'']]],
+ ['http_5fserver_5ffilter_2ec',['http_server_filter.c',['../http__server__filter_8c.html',1,'']]],
+ ['http_5fserver_5ffilter_2eh',['http_server_filter.h',['../http__server__filter_8h.html',1,'']]],
+ ['httpcli_2ec',['httpcli.c',['../httpcli_8c.html',1,'']]],
+ ['httpcli_2eh',['httpcli.h',['../httpcli_8h.html',1,'']]],
+ ['httpcli_5fsecurity_5fconnector_2ec',['httpcli_security_connector.c',['../httpcli__security__connector_8c.html',1,'']]],
+ ['httpcli_5fsecurity_5fconnector_2eh',['httpcli_security_connector.h',['../httpcli__security__connector_8h.html',1,'']]],
+ ['huffsyms_2ec',['huffsyms.c',['../huffsyms_8c.html',1,'']]],
+ ['huffsyms_2eh',['huffsyms.h',['../huffsyms_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_8.html b/doc/ref/core.internal/html/search/files_8.html
new file mode 100644
index 0000000000..21c328afad
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_8.js b/doc/ref/core.internal/html/search/files_8.js
new file mode 100644
index 0000000000..caf72f7c4b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_8.js
@@ -0,0 +1,18 @@
+var searchData=
+[
+ ['incoming_5fmetadata_2ec',['incoming_metadata.c',['../incoming__metadata_8c.html',1,'']]],
+ ['incoming_5fmetadata_2eh',['incoming_metadata.h',['../incoming__metadata_8h.html',1,'']]],
+ ['init_2ec',['init.c',['../init_8c.html',1,'']]],
+ ['init_2eh',['init.h',['../init_8h.html',1,'']]],
+ ['init_5fsecure_2ec',['init_secure.c',['../init__secure_8c.html',1,'']]],
+ ['initialize_2ec',['initialize.c',['../initialize_8c.html',1,'']]],
+ ['internal_2eh',['internal.h',['../internal_8h.html',1,'']]],
+ ['iocp_5fwindows_2ec',['iocp_windows.c',['../iocp__windows_8c.html',1,'']]],
+ ['iocp_5fwindows_2eh',['iocp_windows.h',['../iocp__windows_8h.html',1,'']]],
+ ['iomgr_2ec',['iomgr.c',['../iomgr_8c.html',1,'']]],
+ ['iomgr_2eh',['iomgr.h',['../iomgr_8h.html',1,'']]],
+ ['iomgr_5finternal_2eh',['iomgr_internal.h',['../iomgr__internal_8h.html',1,'']]],
+ ['iomgr_5fposix_2ec',['iomgr_posix.c',['../iomgr__posix_8c.html',1,'']]],
+ ['iomgr_5fposix_2eh',['iomgr_posix.h',['../iomgr__posix_8h.html',1,'']]],
+ ['iomgr_5fwindows_2ec',['iomgr_windows.c',['../iomgr__windows_8c.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_9.html b/doc/ref/core.internal/html/search/files_9.html
new file mode 100644
index 0000000000..00a520120c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_9.js b/doc/ref/core.internal/html/search/files_9.js
new file mode 100644
index 0000000000..612634644e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_9.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+ ['json_2ec',['json.c',['../json_8c.html',1,'']]],
+ ['json_2eh',['json.h',['../json_8h.html',1,'']]],
+ ['json_5fcommon_2eh',['json_common.h',['../json__common_8h.html',1,'']]],
+ ['json_5freader_2ec',['json_reader.c',['../json__reader_8c.html',1,'']]],
+ ['json_5freader_2eh',['json_reader.h',['../json__reader_8h.html',1,'']]],
+ ['json_5fstring_2ec',['json_string.c',['../json__string_8c.html',1,'']]],
+ ['json_5ftoken_2ec',['json_token.c',['../json__token_8c.html',1,'']]],
+ ['json_5ftoken_2eh',['json_token.h',['../json__token_8h.html',1,'']]],
+ ['json_5fwriter_2ec',['json_writer.c',['../json__writer_8c.html',1,'']]],
+ ['json_5fwriter_2eh',['json_writer.h',['../json__writer_8h.html',1,'']]],
+ ['jwt_5fverifier_2ec',['jwt_verifier.c',['../jwt__verifier_8c.html',1,'']]],
+ ['jwt_5fverifier_2eh',['jwt_verifier.h',['../jwt__verifier_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_a.html b/doc/ref/core.internal/html/search/files_a.html
new file mode 100644
index 0000000000..ab047558cc
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_a.js b/doc/ref/core.internal/html/search/files_a.js
new file mode 100644
index 0000000000..971fe2e3aa
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_a.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+ ['lame_5fclient_2ec',['lame_client.c',['../lame__client_8c.html',1,'']]],
+ ['lb_5fpolicy_2ec',['lb_policy.c',['../lb__policy_8c.html',1,'']]],
+ ['lb_5fpolicy_2eh',['lb_policy.h',['../lb__policy_8h.html',1,'']]],
+ ['log_2ec',['log.c',['../log_8c.html',1,'']]],
+ ['log_2eh',['log.h',['../log_8h.html',1,'']]],
+ ['log_5fandroid_2ec',['log_android.c',['../log__android_8c.html',1,'']]],
+ ['log_5flinux_2ec',['log_linux.c',['../log__linux_8c.html',1,'']]],
+ ['log_5fposix_2ec',['log_posix.c',['../log__posix_8c.html',1,'']]],
+ ['log_5fwin32_2ec',['log_win32.c',['../log__win32_8c.html',1,'']]],
+ ['log_5fwin32_2eh',['log_win32.h',['../log__win32_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_b.html b/doc/ref/core.internal/html/search/files_b.html
new file mode 100644
index 0000000000..11010e1bf7
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_b.js b/doc/ref/core.internal/html/search/files_b.js
new file mode 100644
index 0000000000..f3cf2390a0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_b.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+ ['merge_5fchannel_5fargs_2ec',['merge_channel_args.c',['../merge__channel__args_8c.html',1,'']]],
+ ['merge_5fchannel_5fargs_2eh',['merge_channel_args.h',['../merge__channel__args_8h.html',1,'']]],
+ ['message_5fcompress_2ec',['message_compress.c',['../message__compress_8c.html',1,'']]],
+ ['message_5fcompress_2eh',['message_compress.h',['../message__compress_8h.html',1,'']]],
+ ['metadata_2ec',['metadata.c',['../metadata_8c.html',1,'']]],
+ ['metadata_2eh',['metadata.h',['../metadata_8h.html',1,'']]],
+ ['metadata_5farray_2ec',['metadata_array.c',['../metadata__array_8c.html',1,'']]],
+ ['murmur_5fhash_2ec',['murmur_hash.c',['../murmur__hash_8c.html',1,'']]],
+ ['murmur_5fhash_2eh',['murmur_hash.h',['../murmur__hash_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_c.html b/doc/ref/core.internal/html/search/files_c.html
new file mode 100644
index 0000000000..6fbd1357c0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_c.js b/doc/ref/core.internal/html/search/files_c.js
new file mode 100644
index 0000000000..2794123d3f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_c.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['noop_5ffilter_2ec',['noop_filter.c',['../noop__filter_8c.html',1,'']]],
+ ['noop_5ffilter_2eh',['noop_filter.h',['../noop__filter_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_d.html b/doc/ref/core.internal/html/search/files_d.html
new file mode 100644
index 0000000000..1201a33c10
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_d.js b/doc/ref/core.internal/html/search/files_d.js
new file mode 100644
index 0000000000..4b0180c643
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_d.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+ ['parser_2ec',['parser.c',['../parser_8c.html',1,'']]],
+ ['parser_2eh',['parser.h',['../parser_8h.html',1,'']]],
+ ['parsing_2ec',['parsing.c',['../parsing_8c.html',1,'']]],
+ ['pick_5ffirst_2ec',['pick_first.c',['../pick__first_8c.html',1,'']]],
+ ['pick_5ffirst_2eh',['pick_first.h',['../pick__first_8h.html',1,'']]],
+ ['pollset_2eh',['pollset.h',['../pollset_8h.html',1,'']]],
+ ['pollset_5fkick_5fposix_2ec',['pollset_kick_posix.c',['../pollset__kick__posix_8c.html',1,'']]],
+ ['pollset_5fkick_5fposix_2eh',['pollset_kick_posix.h',['../pollset__kick__posix_8h.html',1,'']]],
+ ['pollset_5fmultipoller_5fwith_5fepoll_2ec',['pollset_multipoller_with_epoll.c',['../pollset__multipoller__with__epoll_8c.html',1,'']]],
+ ['pollset_5fmultipoller_5fwith_5fpoll_5fposix_2ec',['pollset_multipoller_with_poll_posix.c',['../pollset__multipoller__with__poll__posix_8c.html',1,'']]],
+ ['pollset_5fposix_2ec',['pollset_posix.c',['../pollset__posix_8c.html',1,'']]],
+ ['pollset_5fposix_2eh',['pollset_posix.h',['../pollset__posix_8h.html',1,'']]],
+ ['pollset_5fset_2eh',['pollset_set.h',['../pollset__set_8h.html',1,'']]],
+ ['pollset_5fset_5fposix_2ec',['pollset_set_posix.c',['../pollset__set__posix_8c.html',1,'']]],
+ ['pollset_5fset_5fposix_2eh',['pollset_set_posix.h',['../pollset__set__posix_8h.html',1,'']]],
+ ['pollset_5fset_5fwindows_2ec',['pollset_set_windows.c',['../pollset__set__windows_8c.html',1,'']]],
+ ['pollset_5fset_5fwindows_2eh',['pollset_set_windows.h',['../pollset__set__windows_8h.html',1,'']]],
+ ['pollset_5fwindows_2ec',['pollset_windows.c',['../pollset__windows_8c.html',1,'']]],
+ ['pollset_5fwindows_2eh',['pollset_windows.h',['../pollset__windows_8h.html',1,'']]],
+ ['port_5fplatform_2eh',['port_platform.h',['../port__platform_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_e.html b/doc/ref/core.internal/html/search/files_e.html
new file mode 100644
index 0000000000..2d919977de
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_e.js b/doc/ref/core.internal/html/search/files_e.js
new file mode 100644
index 0000000000..a506275162
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_e.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+ ['record_5fstat_2ec',['record_stat.c',['../record__stat_8c.html',1,'']]],
+ ['resolve_5faddress_2eh',['resolve_address.h',['../resolve__address_8h.html',1,'']]],
+ ['resolve_5faddress_5fposix_2ec',['resolve_address_posix.c',['../resolve__address__posix_8c.html',1,'']]],
+ ['resolve_5faddress_5fwindows_2ec',['resolve_address_windows.c',['../resolve__address__windows_8c.html',1,'']]],
+ ['resolver_2ec',['resolver.c',['../resolver_8c.html',1,'']]],
+ ['resolver_2eh',['resolver.h',['../resolver_8h.html',1,'']]],
+ ['resolver_5ffactory_2ec',['resolver_factory.c',['../resolver__factory_8c.html',1,'']]],
+ ['resolver_5ffactory_2eh',['resolver_factory.h',['../resolver__factory_8h.html',1,'']]],
+ ['resolver_5fregistry_2ec',['resolver_registry.c',['../resolver__registry_8c.html',1,'']]],
+ ['resolver_5fregistry_2eh',['resolver_registry.h',['../resolver__registry_8h.html',1,'']]],
+ ['rpc_5fstat_5fid_2eh',['rpc_stat_id.h',['../rpc__stat__id_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/files_f.html b/doc/ref/core.internal/html/search/files_f.html
new file mode 100644
index 0000000000..95985b3d18
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/files_f.js b/doc/ref/core.internal/html/search/files_f.js
new file mode 100644
index 0000000000..a5daf8221b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/files_f.js
@@ -0,0 +1,71 @@
+var searchData=
+[
+ ['secure_5fchannel_5fcreate_2ec',['secure_channel_create.c',['../secure__channel__create_8c.html',1,'']]],
+ ['secure_5fendpoint_2ec',['secure_endpoint.c',['../secure__endpoint_8c.html',1,'']]],
+ ['secure_5fendpoint_2eh',['secure_endpoint.h',['../secure__endpoint_8h.html',1,'']]],
+ ['secure_5ftransport_5fsetup_2ec',['secure_transport_setup.c',['../secure__transport__setup_8c.html',1,'']]],
+ ['secure_5ftransport_5fsetup_2eh',['secure_transport_setup.h',['../secure__transport__setup_8h.html',1,'']]],
+ ['security_5fconnector_2ec',['security_connector.c',['../security__connector_8c.html',1,'']]],
+ ['security_5fconnector_2eh',['security_connector.h',['../security__connector_8h.html',1,'']]],
+ ['security_5fcontext_2ec',['security_context.c',['../security__context_8c.html',1,'']]],
+ ['security_5fcontext_2eh',['security_context.h',['../security__context_8h.html',1,'']]],
+ ['server_2ec',['server.c',['../server_8c.html',1,'']]],
+ ['server_2eh',['server.h',['../server_8h.html',1,'']]],
+ ['server_5fauth_5ffilter_2ec',['server_auth_filter.c',['../server__auth__filter_8c.html',1,'']]],
+ ['server_5fchttp2_2ec',['server_chttp2.c',['../server__chttp2_8c.html',1,'']]],
+ ['server_5fcreate_2ec',['server_create.c',['../server__create_8c.html',1,'']]],
+ ['server_5fsecure_5fchttp2_2ec',['server_secure_chttp2.c',['../server__secure__chttp2_8c.html',1,'']]],
+ ['slice_2ec',['slice.c',['../slice_8c.html',1,'']]],
+ ['slice_2eh',['slice.h',['../slice_8h.html',1,'']]],
+ ['slice_5fbuffer_2ec',['slice_buffer.c',['../slice__buffer_8c.html',1,'']]],
+ ['slice_5fbuffer_2eh',['slice_buffer.h',['../slice__buffer_8h.html',1,'']]],
+ ['sockaddr_2eh',['sockaddr.h',['../sockaddr_8h.html',1,'']]],
+ ['sockaddr_5fposix_2eh',['sockaddr_posix.h',['../sockaddr__posix_8h.html',1,'']]],
+ ['sockaddr_5fresolver_2ec',['sockaddr_resolver.c',['../sockaddr__resolver_8c.html',1,'']]],
+ ['sockaddr_5fresolver_2eh',['sockaddr_resolver.h',['../sockaddr__resolver_8h.html',1,'']]],
+ ['sockaddr_5futils_2ec',['sockaddr_utils.c',['../sockaddr__utils_8c.html',1,'']]],
+ ['sockaddr_5futils_2eh',['sockaddr_utils.h',['../sockaddr__utils_8h.html',1,'']]],
+ ['sockaddr_5fwin32_2eh',['sockaddr_win32.h',['../sockaddr__win32_8h.html',1,'']]],
+ ['socket_5futils_5fcommon_5fposix_2ec',['socket_utils_common_posix.c',['../socket__utils__common__posix_8c.html',1,'']]],
+ ['socket_5futils_5flinux_2ec',['socket_utils_linux.c',['../socket__utils__linux_8c.html',1,'']]],
+ ['socket_5futils_5fposix_2ec',['socket_utils_posix.c',['../socket__utils__posix_8c.html',1,'']]],
+ ['socket_5futils_5fposix_2eh',['socket_utils_posix.h',['../socket__utils__posix_8h.html',1,'']]],
+ ['socket_5fwindows_2ec',['socket_windows.c',['../socket__windows_8c.html',1,'']]],
+ ['socket_5fwindows_2eh',['socket_windows.h',['../socket__windows_8h.html',1,'']]],
+ ['ssl_5ftransport_5fsecurity_2ec',['ssl_transport_security.c',['../ssl__transport__security_8c.html',1,'']]],
+ ['ssl_5ftransport_5fsecurity_2eh',['ssl_transport_security.h',['../ssl__transport__security_8h.html',1,'']]],
+ ['stack_5flockfree_2ec',['stack_lockfree.c',['../stack__lockfree_8c.html',1,'']]],
+ ['stack_5flockfree_2eh',['stack_lockfree.h',['../stack__lockfree_8h.html',1,'']]],
+ ['stap_5ftimers_2ec',['stap_timers.c',['../stap__timers_8c.html',1,'']]],
+ ['status_2eh',['status.h',['../status_8h.html',1,'']]],
+ ['status_5fconversion_2ec',['status_conversion.c',['../status__conversion_8c.html',1,'']]],
+ ['status_5fconversion_2eh',['status_conversion.h',['../status__conversion_8h.html',1,'']]],
+ ['stream_5fencoder_2ec',['stream_encoder.c',['../stream__encoder_8c.html',1,'']]],
+ ['stream_5fencoder_2eh',['stream_encoder.h',['../stream__encoder_8h.html',1,'']]],
+ ['stream_5flists_2ec',['stream_lists.c',['../stream__lists_8c.html',1,'']]],
+ ['stream_5fmap_2ec',['stream_map.c',['../stream__map_8c.html',1,'']]],
+ ['stream_5fmap_2eh',['stream_map.h',['../stream__map_8h.html',1,'']]],
+ ['stream_5fop_2ec',['stream_op.c',['../stream__op_8c.html',1,'']]],
+ ['stream_5fop_2eh',['stream_op.h',['../stream__op_8h.html',1,'']]],
+ ['string_2ec',['string.c',['../string_8c.html',1,'']]],
+ ['string_2eh',['string.h',['../string_8h.html',1,'']]],
+ ['string_5fposix_2ec',['string_posix.c',['../string__posix_8c.html',1,'']]],
+ ['string_5futil_2eh',['string_util.h',['../string__util_8h.html',1,'']]],
+ ['string_5fwin32_2ec',['string_win32.c',['../string__win32_8c.html',1,'']]],
+ ['string_5fwin32_2eh',['string_win32.h',['../string__win32_8h.html',1,'']]],
+ ['subchannel_2ec',['subchannel.c',['../subchannel_8c.html',1,'']]],
+ ['subchannel_2eh',['subchannel.h',['../subchannel_8h.html',1,'']]],
+ ['subchannel_5ffactory_2ec',['subchannel_factory.c',['../subchannel__factory_8c.html',1,'']]],
+ ['subchannel_5ffactory_2eh',['subchannel_factory.h',['../subchannel__factory_8h.html',1,'']]],
+ ['subprocess_2eh',['subprocess.h',['../subprocess_8h.html',1,'']]],
+ ['subprocess_5fposix_2ec',['subprocess_posix.c',['../subprocess__posix_8c.html',1,'']]],
+ ['surface_5ftrace_2ec',['surface_trace.c',['../surface__trace_8c.html',1,'']]],
+ ['surface_5ftrace_2eh',['surface_trace.h',['../surface__trace_8h.html',1,'']]],
+ ['sync_2ec',['sync.c',['../sync_8c.html',1,'']]],
+ ['sync_2eh',['sync.h',['../sync_8h.html',1,'']]],
+ ['sync_5fgeneric_2eh',['sync_generic.h',['../sync__generic_8h.html',1,'']]],
+ ['sync_5fposix_2ec',['sync_posix.c',['../sync__posix_8c.html',1,'']]],
+ ['sync_5fposix_2eh',['sync_posix.h',['../sync__posix_8h.html',1,'']]],
+ ['sync_5fwin32_2ec',['sync_win32.c',['../sync__win32_8c.html',1,'']]],
+ ['sync_5fwin32_2eh',['sync_win32.h',['../sync__win32_8h.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/functions_0.html b/doc/ref/core.internal/html/search/functions_0.html
new file mode 100644
index 0000000000..16a5a527a8
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/functions_0.js b/doc/ref/core.internal/html/search/functions_0.js
new file mode 100644
index 0000000000..6b9715441c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_0.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+ ['census_5fcontext_5fdeserialize',['census_context_deserialize',['../census_8h.html#ad9daab242b41571299ac5b3bca71fc0d',1,'census_context_deserialize(const char *buffer, census_context **context):&#160;context.c'],['../context_8c.html#ad9daab242b41571299ac5b3bca71fc0d',1,'census_context_deserialize(const char *buffer, census_context **context):&#160;context.c']]],
+ ['census_5fcontext_5fdestroy',['census_context_destroy',['../census_8h.html#a5bfcd1edc546eeacf111c3316ae7785d',1,'census_context_destroy(census_context *context):&#160;context.c'],['../context_8c.html#a5bfcd1edc546eeacf111c3316ae7785d',1,'census_context_destroy(census_context *context):&#160;context.c']]],
+ ['census_5fcontext_5fserialize',['census_context_serialize',['../census_8h.html#ad9a7d3170ecf720e1b22a4f255605748',1,'census_context_serialize(const census_context *context, char *buffer, size_t buf_size):&#160;context.c'],['../context_8c.html#ad9a7d3170ecf720e1b22a4f255605748',1,'census_context_serialize(const census_context *context, char *buffer, size_t buf_size):&#160;context.c']]],
+ ['census_5fenabled',['census_enabled',['../census_8h.html#a742616973e78aaf969389cea20feea9f',1,'census_enabled(void):&#160;initialize.c'],['../initialize_8c.html#a742616973e78aaf969389cea20feea9f',1,'census_enabled(void):&#160;initialize.c']]],
+ ['census_5finitialize',['census_initialize',['../census_8h.html#a4cea92157f3de215724f6bf4aeaee1b6',1,'census_initialize(int features):&#160;initialize.c'],['../initialize_8c.html#a4cea92157f3de215724f6bf4aeaee1b6',1,'census_initialize(int features):&#160;initialize.c']]],
+ ['census_5frecord_5fstat',['census_record_stat',['../census_8h.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb',1,'census_record_stat(census_context *context, census_stat *stats, size_t nstats):&#160;record_stat.c'],['../record__stat_8c.html#a0cdd5ba86b080e6b5a4b47cfaa5b51cb',1,'census_record_stat(census_context *context, census_stat *stats, size_t nstats):&#160;record_stat.c']]],
+ ['census_5fshutdown',['census_shutdown',['../census_8h.html#aa792b067548ecdd987d560b492c83d85',1,'census_shutdown(void):&#160;initialize.c'],['../initialize_8c.html#aa792b067548ecdd987d560b492c83d85',1,'census_shutdown(void):&#160;initialize.c']]],
+ ['census_5fsupported',['census_supported',['../census_8h.html#ad5f627a64ac4febbc61d2b89801d40e9',1,'census_supported(void):&#160;initialize.c'],['../initialize_8c.html#ad5f627a64ac4febbc61d2b89801d40e9',1,'census_supported(void):&#160;initialize.c']]],
+ ['compress_5finner',['compress_inner',['../message__compress_8c.html#a703e3d8f4ace9e8b102552c527b879d8',1,'message_compress.c']]],
+ ['compute_5fand_5fencode_5fsignature',['compute_and_encode_signature',['../json__token_8c.html#a08e7b0b2b3e6352e92cc7ae87328a480',1,'json_token.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/functions_1.html b/doc/ref/core.internal/html/search/functions_1.html
new file mode 100644
index 0000000000..3b4eacfebf
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/functions_1.js b/doc/ref/core.internal/html/search/functions_1.js
new file mode 100644
index 0000000000..440edf821a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_1.js
@@ -0,0 +1,777 @@
+var searchData=
+[
+ ['gpr_5fasprintf',['gpr_asprintf',['../string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0',1,'string_util.h']]],
+ ['gpr_5fcancellable_5fcancel',['gpr_cancellable_cancel',['../sync_8h.html#a895fb73161d2dd1fa19be10d5395001c',1,'gpr_cancellable_cancel(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#a895fb73161d2dd1fa19be10d5395001c',1,'gpr_cancellable_cancel(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5fdestroy',['gpr_cancellable_destroy',['../sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338',1,'gpr_cancellable_destroy(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#aa82b7172b992bd33bd6fd4b4dc89e338',1,'gpr_cancellable_destroy(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5finit',['gpr_cancellable_init',['../sync_8h.html#aec0b0e9b9f084550cdec300da1f31add',1,'gpr_cancellable_init(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#aec0b0e9b9f084550cdec300da1f31add',1,'gpr_cancellable_init(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcancellable_5fis_5fcancelled',['gpr_cancellable_is_cancelled',['../sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b',1,'gpr_cancellable_is_cancelled(gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#a1e53047443e5eb1f9895be0c90bc790b',1,'gpr_cancellable_is_cancelled(gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcmdline_5fadd_5fflag',['gpr_cmdline_add_flag',['../cmdline_8h.html#ac5ecfdfc605896c29df846b1e268045e',1,'gpr_cmdline_add_flag(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c'],['../cmdline_8c.html#ac5ecfdfc605896c29df846b1e268045e',1,'gpr_cmdline_add_flag(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fadd_5fint',['gpr_cmdline_add_int',['../cmdline_8h.html#a0fc8cd330751e9876e8635189a1bc10f',1,'gpr_cmdline_add_int(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c'],['../cmdline_8c.html#a0fc8cd330751e9876e8635189a1bc10f',1,'gpr_cmdline_add_int(gpr_cmdline *cl, const char *name, const char *help, int *value):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fadd_5fstring',['gpr_cmdline_add_string',['../cmdline_8h.html#a34568676c089f3284dc8f7d8d706b1d3',1,'gpr_cmdline_add_string(gpr_cmdline *cl, const char *name, const char *help, char **value):&#160;cmdline.c'],['../cmdline_8c.html#a34568676c089f3284dc8f7d8d706b1d3',1,'gpr_cmdline_add_string(gpr_cmdline *cl, const char *name, const char *help, char **value):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fcreate',['gpr_cmdline_create',['../cmdline_8h.html#a608f6fbc4edfb4d2c18e3c0660fd8773',1,'gpr_cmdline_create(const char *description):&#160;cmdline.c'],['../cmdline_8c.html#a608f6fbc4edfb4d2c18e3c0660fd8773',1,'gpr_cmdline_create(const char *description):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fdestroy',['gpr_cmdline_destroy',['../cmdline_8h.html#a018f826ce313b02d2773ef97b8df5f98',1,'gpr_cmdline_destroy(gpr_cmdline *cl):&#160;cmdline.c'],['../cmdline_8c.html#a018f826ce313b02d2773ef97b8df5f98',1,'gpr_cmdline_destroy(gpr_cmdline *cl):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fon_5fextra_5farg',['gpr_cmdline_on_extra_arg',['../cmdline_8h.html#afcf023a5eb082034a650a0f0177d1fe9',1,'gpr_cmdline_on_extra_arg(gpr_cmdline *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *arg), void *user_data):&#160;cmdline.c'],['../cmdline_8c.html#afcf023a5eb082034a650a0f0177d1fe9',1,'gpr_cmdline_on_extra_arg(gpr_cmdline *cl, const char *name, const char *help, void(*on_extra_arg)(void *user_data, const char *arg), void *user_data):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fparse',['gpr_cmdline_parse',['../cmdline_8h.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4',1,'gpr_cmdline_parse(gpr_cmdline *cl, int argc, char **argv):&#160;cmdline.c'],['../cmdline_8c.html#a34b66021bbbb9f6a6e8a60c0ae34f8a4',1,'gpr_cmdline_parse(gpr_cmdline *cl, int argc, char **argv):&#160;cmdline.c']]],
+ ['gpr_5fcmdline_5fusage_5fstring',['gpr_cmdline_usage_string',['../cmdline_8h.html#a4eac81d047bdc6e679079309bf60f030',1,'gpr_cmdline_usage_string(gpr_cmdline *cl, const char *argv0):&#160;cmdline.c'],['../cmdline_8c.html#a4eac81d047bdc6e679079309bf60f030',1,'gpr_cmdline_usage_string(gpr_cmdline *cl, const char *argv0):&#160;cmdline.c']]],
+ ['gpr_5fconvert_5fclock_5ftype',['gpr_convert_clock_type',['../time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74',1,'gpr_convert_clock_type(gpr_timespec t, gpr_clock_type target_clock):&#160;time.c'],['../time_8c.html#ab265219dd3038a1e89ded09033bada5e',1,'gpr_convert_clock_type(gpr_timespec t, gpr_clock_type clock_type):&#160;time.c']]],
+ ['gpr_5fcpu_5fcurrent_5fcpu',['gpr_cpu_current_cpu',['../cpu_8h.html#ad713326192eea685047b742f1da87c1d',1,'cpu.h']]],
+ ['gpr_5fcpu_5fnum_5fcores',['gpr_cpu_num_cores',['../cpu_8h.html#abfe660c6872b008de80de5b39ac2538d',1,'cpu.h']]],
+ ['gpr_5fcv_5fbroadcast',['gpr_cv_broadcast',['../sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b',1,'sync.h']]],
+ ['gpr_5fcv_5fcancellable_5fwait',['gpr_cv_cancellable_wait',['../sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9',1,'gpr_cv_cancellable_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;cancellable.c'],['../cancellable_8c.html#a5f1df649a9885ff2354dd4ce611017d9',1,'gpr_cv_cancellable_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;cancellable.c']]],
+ ['gpr_5fcv_5fdestroy',['gpr_cv_destroy',['../sync_8h.html#a652900a910676d5cae9ccba052adb6b0',1,'sync.h']]],
+ ['gpr_5fcv_5finit',['gpr_cv_init',['../sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2',1,'sync.h']]],
+ ['gpr_5fcv_5fsignal',['gpr_cv_signal',['../sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f',1,'sync.h']]],
+ ['gpr_5fcv_5fwait',['gpr_cv_wait',['../sync_8h.html#ad5d8d01509b75addc44e5a43783a826e',1,'sync.h']]],
+ ['gpr_5fdefault_5flog',['gpr_default_log',['../log_8c.html#a620ef16728107bedfa4188786f901ff9',1,'log.c']]],
+ ['gpr_5fdump',['gpr_dump',['../string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1',1,'gpr_dump(const char *buf, size_t len, gpr_uint32 flags):&#160;string.c'],['../string_8c.html#a5b9ee77c9f03764e72d7b91a64ef86f1',1,'gpr_dump(const char *buf, size_t len, gpr_uint32 flags):&#160;string.c']]],
+ ['gpr_5fdump_5fslice',['gpr_dump_slice',['../string_8h.html#a77bcdd897064702d16e7aaaea2e0e259',1,'gpr_dump_slice(gpr_slice slice, gpr_uint32 flags):&#160;string.c'],['../string_8c.html#a008e053cd53efcf2f606b7414c22ea95',1,'gpr_dump_slice(gpr_slice s, gpr_uint32 flags):&#160;string.c']]],
+ ['gpr_5fempty_5fslice',['gpr_empty_slice',['../slice_8h.html#a1a8906400c956fb8c508326a072b0662',1,'gpr_empty_slice(void):&#160;slice.c'],['../slice_8c.html#a1a8906400c956fb8c508326a072b0662',1,'gpr_empty_slice(void):&#160;slice.c']]],
+ ['gpr_5fevent_5fcancellable_5fwait',['gpr_event_cancellable_wait',['../sync_8h.html#ae048c7e762b723821e35a07fd0d85e22',1,'gpr_event_cancellable_wait(gpr_event *ev, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;sync.c'],['../sync_8c.html#ae048c7e762b723821e35a07fd0d85e22',1,'gpr_event_cancellable_wait(gpr_event *ev, gpr_timespec abs_deadline, gpr_cancellable *c):&#160;sync.c']]],
+ ['gpr_5fevent_5fget',['gpr_event_get',['../sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161',1,'gpr_event_get(gpr_event *ev):&#160;sync.c'],['../sync_8c.html#ac0a2305d9e6575cc5a3d92bc3f12c161',1,'gpr_event_get(gpr_event *ev):&#160;sync.c']]],
+ ['gpr_5fevent_5finit',['gpr_event_init',['../sync_8h.html#a93f37cd27964fda51acd4cd8e6737922',1,'gpr_event_init(gpr_event *ev):&#160;sync.c'],['../sync_8c.html#a93f37cd27964fda51acd4cd8e6737922',1,'gpr_event_init(gpr_event *ev):&#160;sync.c']]],
+ ['gpr_5fevent_5fset',['gpr_event_set',['../sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd',1,'gpr_event_set(gpr_event *ev, void *value):&#160;sync.c'],['../sync_8c.html#a1b1d014640e00512f6789dacc4ff88bd',1,'gpr_event_set(gpr_event *ev, void *value):&#160;sync.c']]],
+ ['gpr_5fevent_5fwait',['gpr_event_wait',['../sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7',1,'gpr_event_wait(gpr_event *ev, gpr_timespec abs_deadline):&#160;sync.c'],['../sync_8c.html#a01d442a76ff77f64d9f898b22ea33db7',1,'gpr_event_wait(gpr_event *ev, gpr_timespec abs_deadline):&#160;sync.c']]],
+ ['gpr_5fformat_5fmessage',['gpr_format_message',['../log__win32_8h.html#ad8115cf8df2332d225d12cb87c21f536',1,'log_win32.h']]],
+ ['gpr_5ffree',['gpr_free',['../alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8',1,'gpr_free(void *ptr):&#160;alloc.c'],['../alloc_8c.html#abb8ce294adb033ac54e7a2e28b9bdac6',1,'gpr_free(void *p):&#160;alloc.c']]],
+ ['gpr_5ffree_5faligned',['gpr_free_aligned',['../alloc_8h.html#af9b603aefd33752e1b473856af77cbc9',1,'gpr_free_aligned(void *ptr):&#160;alloc.c'],['../alloc_8c.html#af9b603aefd33752e1b473856af77cbc9',1,'gpr_free_aligned(void *ptr):&#160;alloc.c']]],
+ ['gpr_5fgetenv',['gpr_getenv',['../env_8h.html#a56b20a68a421e585a14b92cb9999eafb',1,'env.h']]],
+ ['gpr_5fhistogram_5fadd',['gpr_histogram_add',['../histogram_8h.html#a63815a52b0236626a30480915ff51847',1,'gpr_histogram_add(gpr_histogram *h, double x):&#160;histogram.c'],['../histogram_8c.html#a63815a52b0236626a30480915ff51847',1,'gpr_histogram_add(gpr_histogram *h, double x):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fcount',['gpr_histogram_count',['../histogram_8h.html#a242b0541ee25271812d867d8f2734255',1,'gpr_histogram_count(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a9789e9d2bfe80302771cb7037ff67109',1,'gpr_histogram_count(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fcreate',['gpr_histogram_create',['../histogram_8h.html#a5da9d3dac4262c5ae1e974a649edbd5c',1,'gpr_histogram_create(double resolution, double max_bucket_start):&#160;histogram.c'],['../histogram_8c.html#a5da9d3dac4262c5ae1e974a649edbd5c',1,'gpr_histogram_create(double resolution, double max_bucket_start):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fdestroy',['gpr_histogram_destroy',['../histogram_8h.html#a7411a760aa075c1c27eeb9249d951c6c',1,'gpr_histogram_destroy(gpr_histogram *h):&#160;histogram.c'],['../histogram_8c.html#a7411a760aa075c1c27eeb9249d951c6c',1,'gpr_histogram_destroy(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fget_5fcontents',['gpr_histogram_get_contents',['../histogram_8h.html#aa7807dc3f06172d1513498761c3ad8c4',1,'gpr_histogram_get_contents(gpr_histogram *histogram, size_t *count):&#160;histogram.c'],['../histogram_8c.html#adcd82f9ac3a24d76fa43d6ee38cd03d9',1,'gpr_histogram_get_contents(gpr_histogram *h, size_t *size):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmaximum',['gpr_histogram_maximum',['../histogram_8h.html#a71e5aa88087c8595c7f5d01750f919cb',1,'gpr_histogram_maximum(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#aede32c052f8cfb6c645773dc02abb269',1,'gpr_histogram_maximum(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmean',['gpr_histogram_mean',['../histogram_8h.html#a14d68ff71978bda93a07d019d993d83c',1,'gpr_histogram_mean(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a5fe371014a644b04cb7a3cc10d0c4d54',1,'gpr_histogram_mean(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmerge',['gpr_histogram_merge',['../histogram_8h.html#a41caac8747588e75cf5fed974fcd90f2',1,'gpr_histogram_merge(gpr_histogram *dst, gpr_histogram *src):&#160;histogram.c'],['../histogram_8c.html#a41caac8747588e75cf5fed974fcd90f2',1,'gpr_histogram_merge(gpr_histogram *dst, gpr_histogram *src):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fmerge_5fcontents',['gpr_histogram_merge_contents',['../histogram_8h.html#aa1acf09b75809398b4e45729e6a3ba30',1,'gpr_histogram_merge_contents(gpr_histogram *histogram, const gpr_uint32 *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count):&#160;histogram.c'],['../histogram_8c.html#a4092227c6ba42490fd0311f5f8223e73',1,'gpr_histogram_merge_contents(gpr_histogram *dst, const gpr_uint32 *data, size_t data_count, double min_seen, double max_seen, double sum, double sum_of_squares, double count):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fminimum',['gpr_histogram_minimum',['../histogram_8h.html#ab89af54f76a690d82d1f065ceeda6a76',1,'gpr_histogram_minimum(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a02493e2e022e463dcaf0738cc2f57e9e',1,'gpr_histogram_minimum(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fpercentile',['gpr_histogram_percentile',['../histogram_8h.html#a1a0a1b854c2af4d29175872fe5bb4431',1,'gpr_histogram_percentile(gpr_histogram *histogram, double percentile):&#160;histogram.c'],['../histogram_8c.html#a29c6f43aed5d521d17bf7677b2fbee39',1,'gpr_histogram_percentile(gpr_histogram *h, double percentile):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fstddev',['gpr_histogram_stddev',['../histogram_8h.html#a0979c6470e9192e5f83bcab01542dd91',1,'gpr_histogram_stddev(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a36846d8c0ae93fa49fb4a1d07d8a2872',1,'gpr_histogram_stddev(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fsum',['gpr_histogram_sum',['../histogram_8h.html#a0332c47f841d8b0607e3327d8bc9a933',1,'gpr_histogram_sum(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a6f5945872847d0d3e460181bb11c8414',1,'gpr_histogram_sum(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fsum_5fof_5fsquares',['gpr_histogram_sum_of_squares',['../histogram_8h.html#a5788652eb5350afcc534f563fd0265d3',1,'gpr_histogram_sum_of_squares(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a651cd46647b768e4c7ffceb20d4ac523',1,'gpr_histogram_sum_of_squares(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5fhistogram_5fvariance',['gpr_histogram_variance',['../histogram_8h.html#a4ef00ceaa619ca09da4de17fc5a5769b',1,'gpr_histogram_variance(gpr_histogram *histogram):&#160;histogram.c'],['../histogram_8c.html#a36df07c41d7d9e92e2b7cfce5cba2083',1,'gpr_histogram_variance(gpr_histogram *h):&#160;histogram.c']]],
+ ['gpr_5finf_5ffuture',['gpr_inf_future',['../time_8h.html#a9324a2b33d5d7686fb14714c59ff026d',1,'gpr_inf_future(gpr_clock_type type):&#160;time.c'],['../time_8c.html#a9324a2b33d5d7686fb14714c59ff026d',1,'gpr_inf_future(gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5finf_5fpast',['gpr_inf_past',['../time_8h.html#abd2eba8066648fe0d94146d8310b4283',1,'gpr_inf_past(gpr_clock_type type):&#160;time.c'],['../time_8c.html#abd2eba8066648fe0d94146d8310b4283',1,'gpr_inf_past(gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5fjoin_5fhost_5fport',['gpr_join_host_port',['../host__port_8h.html#a75d6ea0faeed039dc132873afce91508',1,'gpr_join_host_port(char **out, const char *host, int port):&#160;host_port.c'],['../host__port_8c.html#a75d6ea0faeed039dc132873afce91508',1,'gpr_join_host_port(char **out, const char *host, int port):&#160;host_port.c']]],
+ ['gpr_5fload_5ffile',['gpr_load_file',['../file_8h.html#aaad6ffe6949461096a99c7d2e8890c59',1,'gpr_load_file(const char *filename, int add_null_terminator, int *success):&#160;file.c'],['../file_8c.html#aaad6ffe6949461096a99c7d2e8890c59',1,'gpr_load_file(const char *filename, int add_null_terminator, int *success):&#160;file.c']]],
+ ['gpr_5flog',['gpr_log',['../log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1',1,'log.h']]],
+ ['gpr_5flog_5fmessage',['gpr_log_message',['../log_8h.html#a7a3d59528754f8fbcfe54f6f8a72ec61',1,'gpr_log_message(const char *file, int line, gpr_log_severity severity, const char *message):&#160;log.c'],['../log_8c.html#a7a3d59528754f8fbcfe54f6f8a72ec61',1,'gpr_log_message(const char *file, int line, gpr_log_severity severity, const char *message):&#160;log.c']]],
+ ['gpr_5flog_5fseverity_5fstring',['gpr_log_severity_string',['../log_8h.html#a3badccbc5ec4c725eadbc07b8e5706eb',1,'gpr_log_severity_string(gpr_log_severity severity):&#160;log.c'],['../log_8c.html#a3badccbc5ec4c725eadbc07b8e5706eb',1,'gpr_log_severity_string(gpr_log_severity severity):&#160;log.c']]],
+ ['gpr_5fltoa',['gpr_ltoa',['../string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24',1,'gpr_ltoa(long value, char *output):&#160;string.c'],['../string_8c.html#aa6aa8a10c07a02550542c920a6b1f5f6',1,'gpr_ltoa(long value, char *string):&#160;string.c']]],
+ ['gpr_5fmalloc',['gpr_malloc',['../alloc_8h.html#af5896bb446b6179f35651730357149bb',1,'gpr_malloc(size_t size):&#160;alloc.c'],['../alloc_8c.html#af5896bb446b6179f35651730357149bb',1,'gpr_malloc(size_t size):&#160;alloc.c']]],
+ ['gpr_5fmalloc_5faligned',['gpr_malloc_aligned',['../alloc_8h.html#a73551a6249ae9b0a73ad75733c67ead4',1,'gpr_malloc_aligned(size_t size, size_t alignment_log):&#160;alloc.c'],['../alloc_8c.html#a73551a6249ae9b0a73ad75733c67ead4',1,'gpr_malloc_aligned(size_t size, size_t alignment_log):&#160;alloc.c']]],
+ ['gpr_5fmu_5fdestroy',['gpr_mu_destroy',['../sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e',1,'sync.h']]],
+ ['gpr_5fmu_5finit',['gpr_mu_init',['../sync_8h.html#a16694f755266c254390b041a0f069094',1,'sync.h']]],
+ ['gpr_5fmu_5flock',['gpr_mu_lock',['../sync_8h.html#a44b385455d169e6c84659adb222c1d42',1,'sync.h']]],
+ ['gpr_5fmu_5ftrylock',['gpr_mu_trylock',['../sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777',1,'sync.h']]],
+ ['gpr_5fmu_5funlock',['gpr_mu_unlock',['../sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff',1,'sync.h']]],
+ ['gpr_5fmurmur_5fhash3',['gpr_murmur_hash3',['../murmur__hash_8h.html#afd4a38ba55dc020a76c1ec09a4f626d0',1,'gpr_murmur_hash3(const void *key, size_t len, gpr_uint32 seed):&#160;murmur_hash.c'],['../murmur__hash_8c.html#afd4a38ba55dc020a76c1ec09a4f626d0',1,'gpr_murmur_hash3(const void *key, size_t len, gpr_uint32 seed):&#160;murmur_hash.c']]],
+ ['gpr_5fnow',['gpr_now',['../time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19',1,'time.h']]],
+ ['gpr_5fonce_5finit',['gpr_once_init',['../sync_8h.html#ad5c88872723a129b09200b1892d2323f',1,'sync.h']]],
+ ['gpr_5fparse_5fbytes_5fto_5fuint32',['gpr_parse_bytes_to_uint32',['../string_8h.html#a753cd4bfe9add8476a2797904c4c68c7',1,'gpr_parse_bytes_to_uint32(const char *data, size_t length, gpr_uint32 *result):&#160;string.c'],['../string_8c.html#ad68355bffdcb8c7f69fc908e60ab9da6',1,'gpr_parse_bytes_to_uint32(const char *buf, size_t len, gpr_uint32 *result):&#160;string.c']]],
+ ['gpr_5frealloc',['gpr_realloc',['../alloc_8h.html#a25d9a067b093e9c76dbbd77995b1bc91',1,'gpr_realloc(void *p, size_t size):&#160;alloc.c'],['../alloc_8c.html#a25d9a067b093e9c76dbbd77995b1bc91',1,'gpr_realloc(void *p, size_t size):&#160;alloc.c']]],
+ ['gpr_5fref',['gpr_ref',['../sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571',1,'gpr_ref(gpr_refcount *r):&#160;sync.c'],['../sync_8c.html#ac0e52c6bfc7a04ba8a269f3227104571',1,'gpr_ref(gpr_refcount *r):&#160;sync.c']]],
+ ['gpr_5fref_5finit',['gpr_ref_init',['../sync_8h.html#a235584f36572b5410b042ee63cb0740b',1,'gpr_ref_init(gpr_refcount *r, int n):&#160;sync.c'],['../sync_8c.html#a235584f36572b5410b042ee63cb0740b',1,'gpr_ref_init(gpr_refcount *r, int n):&#160;sync.c']]],
+ ['gpr_5frefn',['gpr_refn',['../sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25',1,'gpr_refn(gpr_refcount *r, int n):&#160;sync.c'],['../sync_8c.html#a516e26b66b1aa53fba8f5f52b249cb25',1,'gpr_refn(gpr_refcount *r, int n):&#160;sync.c']]],
+ ['gpr_5freverse_5fbytes',['gpr_reverse_bytes',['../string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9',1,'gpr_reverse_bytes(char *str, int len):&#160;string.c'],['../string_8c.html#ac61f7fa80be757db2d5457e3fe21ffe9',1,'gpr_reverse_bytes(char *str, int len):&#160;string.c']]],
+ ['gpr_5fset_5flog_5ffunction',['gpr_set_log_function',['../log_8h.html#a75771a41e3bb2831df8043a57de05330',1,'gpr_set_log_function(gpr_log_func func):&#160;log.c'],['../log_8c.html#a4a4590f04f5e003b740b7688014b7be5',1,'gpr_set_log_function(gpr_log_func f):&#160;log.c']]],
+ ['gpr_5fsetenv',['gpr_setenv',['../env_8h.html#ab20b9f1c8dc1f142a17eaa4e18f37fa3',1,'env.h']]],
+ ['gpr_5fsleep_5funtil',['gpr_sleep_until',['../time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7',1,'time.h']]],
+ ['gpr_5fslice_5fbuffer_5fadd',['gpr_slice_buffer_add',['../slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12',1,'gpr_slice_buffer_add(gpr_slice_buffer *sb, gpr_slice slice):&#160;slice_buffer.c'],['../slice__buffer_8c.html#ae202c0235646241cf95ffbb2479bada9',1,'gpr_slice_buffer_add(gpr_slice_buffer *sb, gpr_slice s):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fadd_5findexed',['gpr_slice_buffer_add_indexed',['../slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045',1,'gpr_slice_buffer_add_indexed(gpr_slice_buffer *sb, gpr_slice slice):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a31bc820cee4aae1904d67a9d81fd83b3',1,'gpr_slice_buffer_add_indexed(gpr_slice_buffer *sb, gpr_slice s):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5faddn',['gpr_slice_buffer_addn',['../slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46',1,'gpr_slice_buffer_addn(gpr_slice_buffer *sb, gpr_slice *slices, size_t n):&#160;slice_buffer.c'],['../slice__buffer_8c.html#af58c3edcfaf90b364e3977e3bb423e3f',1,'gpr_slice_buffer_addn(gpr_slice_buffer *sb, gpr_slice *s, size_t n):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fdestroy',['gpr_slice_buffer_destroy',['../slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399',1,'gpr_slice_buffer_destroy(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a60c8b437918c3a81651b5f9a892f6399',1,'gpr_slice_buffer_destroy(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5finit',['gpr_slice_buffer_init',['../slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8',1,'gpr_slice_buffer_init(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#aab5ed508480703c7b856e92ef6d7e4c8',1,'gpr_slice_buffer_init(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fmove_5finto',['gpr_slice_buffer_move_into',['../slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1',1,'gpr_slice_buffer_move_into(gpr_slice_buffer *src, gpr_slice_buffer *dst):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a0289912040151750bbee19ba632a88f1',1,'gpr_slice_buffer_move_into(gpr_slice_buffer *src, gpr_slice_buffer *dst):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fpop',['gpr_slice_buffer_pop',['../slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79',1,'gpr_slice_buffer_pop(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#ae3bd1bc560aad5b69a6ef0b09286cc79',1,'gpr_slice_buffer_pop(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5freset_5fand_5funref',['gpr_slice_buffer_reset_and_unref',['../slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010',1,'gpr_slice_buffer_reset_and_unref(gpr_slice_buffer *sb):&#160;slice_buffer.c'],['../slice__buffer_8c.html#aa2819a201e9dcf62e31a6dbfc6fe3010',1,'gpr_slice_buffer_reset_and_unref(gpr_slice_buffer *sb):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5fswap',['gpr_slice_buffer_swap',['../slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d',1,'gpr_slice_buffer_swap(gpr_slice_buffer *a, gpr_slice_buffer *b):&#160;slice_buffer.c'],['../slice__buffer_8c.html#a672b80e16cdabf26c7b558a54edfcd2d',1,'gpr_slice_buffer_swap(gpr_slice_buffer *a, gpr_slice_buffer *b):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fbuffer_5ftiny_5fadd',['gpr_slice_buffer_tiny_add',['../slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0',1,'gpr_slice_buffer_tiny_add(gpr_slice_buffer *sb, unsigned len):&#160;slice_buffer.c'],['../slice__buffer_8c.html#ae5498f14d7b008d134a3ad32935df4ac',1,'gpr_slice_buffer_tiny_add(gpr_slice_buffer *sb, unsigned n):&#160;slice_buffer.c']]],
+ ['gpr_5fslice_5fcmp',['gpr_slice_cmp',['../slice_8h.html#add3c8736c46bea7517991f178c82ba3c',1,'gpr_slice_cmp(gpr_slice a, gpr_slice b):&#160;slice.c'],['../slice_8c.html#add3c8736c46bea7517991f178c82ba3c',1,'gpr_slice_cmp(gpr_slice a, gpr_slice b):&#160;slice.c']]],
+ ['gpr_5fslice_5ffrom_5fcopied_5fbuffer',['gpr_slice_from_copied_buffer',['../slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e',1,'gpr_slice_from_copied_buffer(const char *source, size_t len):&#160;slice.c'],['../slice_8c.html#a54af06d0bea05fa416a85402e3f0d3b4',1,'gpr_slice_from_copied_buffer(const char *source, size_t length):&#160;slice.c']]],
+ ['gpr_5fslice_5ffrom_5fcopied_5fstring',['gpr_slice_from_copied_string',['../slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b',1,'gpr_slice_from_copied_string(const char *source):&#160;slice.c'],['../slice_8c.html#adf4df32e55b1b09d3f11c39447dcc68b',1,'gpr_slice_from_copied_string(const char *source):&#160;slice.c']]],
+ ['gpr_5fslice_5fmalloc',['gpr_slice_malloc',['../slice_8h.html#ab57463740ccedc00b50721dce66ebd7b',1,'gpr_slice_malloc(size_t length):&#160;slice.c'],['../slice_8c.html#ab57463740ccedc00b50721dce66ebd7b',1,'gpr_slice_malloc(size_t length):&#160;slice.c']]],
+ ['gpr_5fslice_5fnew',['gpr_slice_new',['../slice_8h.html#aea43587a11bfe2e06fb8532035229bb2',1,'gpr_slice_new(void *p, size_t len, void(*destroy)(void *)):&#160;slice.c'],['../slice_8c.html#aea43587a11bfe2e06fb8532035229bb2',1,'gpr_slice_new(void *p, size_t len, void(*destroy)(void *)):&#160;slice.c']]],
+ ['gpr_5fslice_5fnew_5fwith_5flen',['gpr_slice_new_with_len',['../slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812',1,'gpr_slice_new_with_len(void *p, size_t len, void(*destroy)(void *, size_t)):&#160;slice.c'],['../slice_8c.html#affd1fef2ffaca67e0b2e7b60923da812',1,'gpr_slice_new_with_len(void *p, size_t len, void(*destroy)(void *, size_t)):&#160;slice.c']]],
+ ['gpr_5fslice_5fref',['gpr_slice_ref',['../slice_8h.html#ad28a2bcca348046cbe660a44180e75ca',1,'gpr_slice_ref(gpr_slice s):&#160;slice.c'],['../slice_8c.html#aa439f1ee94ab61e6ff17647940d29582',1,'gpr_slice_ref(gpr_slice slice):&#160;slice.c']]],
+ ['gpr_5fslice_5fsplit',['gpr_slice_split',['../string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3',1,'gpr_slice_split(gpr_slice str, const char *sep, gpr_slice_buffer *dst):&#160;string.c'],['../string_8c.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3',1,'gpr_slice_split(gpr_slice str, const char *sep, gpr_slice_buffer *dst):&#160;string.c']]],
+ ['gpr_5fslice_5fsplit_5fhead',['gpr_slice_split_head',['../slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24',1,'gpr_slice_split_head(gpr_slice *s, size_t split):&#160;slice.c'],['../slice_8c.html#a15ea61593682d41ef435b9f7fa44a604',1,'gpr_slice_split_head(gpr_slice *source, size_t split):&#160;slice.c']]],
+ ['gpr_5fslice_5fsplit_5ftail',['gpr_slice_split_tail',['../slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e',1,'gpr_slice_split_tail(gpr_slice *s, size_t split):&#160;slice.c'],['../slice_8c.html#af592ef63bc65829371d4dacaa4f5eef1',1,'gpr_slice_split_tail(gpr_slice *source, size_t split):&#160;slice.c']]],
+ ['gpr_5fslice_5fstr_5fcmp',['gpr_slice_str_cmp',['../slice_8h.html#aef752203db50c932010a74c6845872c2',1,'gpr_slice_str_cmp(gpr_slice a, const char *b):&#160;slice.c'],['../slice_8c.html#aef752203db50c932010a74c6845872c2',1,'gpr_slice_str_cmp(gpr_slice a, const char *b):&#160;slice.c']]],
+ ['gpr_5fslice_5fsub',['gpr_slice_sub',['../slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb',1,'gpr_slice_sub(gpr_slice s, size_t begin, size_t end):&#160;slice.c'],['../slice_8c.html#a60d9c7c62fdbbd7d4be1ff0f8d357032',1,'gpr_slice_sub(gpr_slice source, size_t begin, size_t end):&#160;slice.c']]],
+ ['gpr_5fslice_5fsub_5fno_5fref',['gpr_slice_sub_no_ref',['../slice_8h.html#accf08ddad530a5f1cca82c834dc70965',1,'gpr_slice_sub_no_ref(gpr_slice s, size_t begin, size_t end):&#160;slice.c'],['../slice_8c.html#a03f66bb8343910499215c75f6ad69be4',1,'gpr_slice_sub_no_ref(gpr_slice source, size_t begin, size_t end):&#160;slice.c']]],
+ ['gpr_5fslice_5fto_5fcstring',['gpr_slice_to_cstring',['../slice_8c.html#a2e5f30a9a0750b8d38100dbfe647438e',1,'slice.c']]],
+ ['gpr_5fslice_5funref',['gpr_slice_unref',['../slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7',1,'gpr_slice_unref(gpr_slice s):&#160;slice.c'],['../slice_8c.html#aaa595344a06d9a17f64f2774a42fe160',1,'gpr_slice_unref(gpr_slice slice):&#160;slice.c']]],
+ ['gpr_5fsplit_5fhost_5fport',['gpr_split_host_port',['../host__port_8h.html#aacb0efdff2bb1b15d5e7edeb62ae4aea',1,'gpr_split_host_port(const char *name, char **host, char **port):&#160;host_port.c'],['../host__port_8c.html#aacb0efdff2bb1b15d5e7edeb62ae4aea',1,'gpr_split_host_port(const char *name, char **host, char **port):&#160;host_port.c']]],
+ ['gpr_5fstack_5flockfree_5fcreate',['gpr_stack_lockfree_create',['../stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9',1,'gpr_stack_lockfree_create(int entries):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#a281add9a8c1bdc0a6715cc168c6f41a9',1,'gpr_stack_lockfree_create(int entries):&#160;stack_lockfree.c']]],
+ ['gpr_5fstack_5flockfree_5fdestroy',['gpr_stack_lockfree_destroy',['../stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554',1,'gpr_stack_lockfree_destroy(gpr_stack_lockfree *stack):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#a0d082653d002f9849d89f1ac93f21554',1,'gpr_stack_lockfree_destroy(gpr_stack_lockfree *stack):&#160;stack_lockfree.c']]],
+ ['gpr_5fstack_5flockfree_5fpop',['gpr_stack_lockfree_pop',['../stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14',1,'gpr_stack_lockfree_pop(gpr_stack_lockfree *stack):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#ae2548d065e76c3ece34984e43c599d14',1,'gpr_stack_lockfree_pop(gpr_stack_lockfree *stack):&#160;stack_lockfree.c']]],
+ ['gpr_5fstack_5flockfree_5fpush',['gpr_stack_lockfree_push',['../stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa',1,'gpr_stack_lockfree_push(gpr_stack_lockfree *, int entry):&#160;stack_lockfree.c'],['../stack__lockfree_8c.html#a0c2fa41e3046d10a9e98416f4d809933',1,'gpr_stack_lockfree_push(gpr_stack_lockfree *stack, int entry):&#160;stack_lockfree.c']]],
+ ['gpr_5fstats_5finc',['gpr_stats_inc',['../sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c',1,'gpr_stats_inc(gpr_stats_counter *c, gpr_intptr inc):&#160;sync.c'],['../sync_8c.html#a8e51ec3b46c7c03602e2279a802daa1c',1,'gpr_stats_inc(gpr_stats_counter *c, gpr_intptr inc):&#160;sync.c']]],
+ ['gpr_5fstats_5finit',['gpr_stats_init',['../sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30',1,'gpr_stats_init(gpr_stats_counter *c, gpr_intptr n):&#160;sync.c'],['../sync_8c.html#a76b8e5de6e1baa4fd66c014417dc0a30',1,'gpr_stats_init(gpr_stats_counter *c, gpr_intptr n):&#160;sync.c']]],
+ ['gpr_5fstats_5fread',['gpr_stats_read',['../sync_8h.html#abb2c58da7d0b785887266b3b1890764d',1,'gpr_stats_read(const gpr_stats_counter *c):&#160;sync.c'],['../sync_8c.html#abb2c58da7d0b785887266b3b1890764d',1,'gpr_stats_read(const gpr_stats_counter *c):&#160;sync.c']]],
+ ['gpr_5fstrdup',['gpr_strdup',['../string__util_8h.html#a7a021bce444344f0a96cb022038eed93',1,'gpr_strdup(const char *src):&#160;string.c'],['../string_8c.html#a7a021bce444344f0a96cb022038eed93',1,'gpr_strdup(const char *src):&#160;string.c']]],
+ ['gpr_5fstrjoin',['gpr_strjoin',['../string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c',1,'gpr_strjoin(const char **strs, size_t nstrs, size_t *total_length):&#160;string.c'],['../string_8c.html#a5de29a3d1854cf2dfa54b501e2793e96',1,'gpr_strjoin(const char **strs, size_t nstrs, size_t *final_length):&#160;string.c']]],
+ ['gpr_5fstrjoin_5fsep',['gpr_strjoin_sep',['../string_8h.html#ac842445695baf5ff8e96a7bf12c6b176',1,'gpr_strjoin_sep(const char **strs, size_t nstrs, const char *sep, size_t *total_length):&#160;string.c'],['../string_8c.html#a5b9d1ee9cc94732b728b033649c2d00a',1,'gpr_strjoin_sep(const char **strs, size_t nstrs, const char *sep, size_t *final_length):&#160;string.c']]],
+ ['gpr_5fstrvec_5fadd',['gpr_strvec_add',['../string_8h.html#a4eaa61df749bed219a09e69837a69a50',1,'gpr_strvec_add(gpr_strvec *strs, char *add):&#160;string.c'],['../string_8c.html#a9d91f04f11bc82ed5a562e44878eafde',1,'gpr_strvec_add(gpr_strvec *sv, char *str):&#160;string.c']]],
+ ['gpr_5fstrvec_5fdestroy',['gpr_strvec_destroy',['../string_8h.html#af194bff1a43db7ed5be927264bce7f52',1,'gpr_strvec_destroy(gpr_strvec *strs):&#160;string.c'],['../string_8c.html#a0c7ab5a87b900005d826bdaa8e106b28',1,'gpr_strvec_destroy(gpr_strvec *sv):&#160;string.c']]],
+ ['gpr_5fstrvec_5fflatten',['gpr_strvec_flatten',['../string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185',1,'gpr_strvec_flatten(gpr_strvec *strs, size_t *total_length):&#160;string.c'],['../string_8c.html#a0145a60ccd4d1e25389f8bad033f1ff5',1,'gpr_strvec_flatten(gpr_strvec *sv, size_t *final_length):&#160;string.c']]],
+ ['gpr_5fstrvec_5finit',['gpr_strvec_init',['../string_8h.html#a78cca9fe86b48cf442f80a666b73768f',1,'gpr_strvec_init(gpr_strvec *strs):&#160;string.c'],['../string_8c.html#a751f38e61272bd9626890fa54270b82f',1,'gpr_strvec_init(gpr_strvec *sv):&#160;string.c']]],
+ ['gpr_5fsubprocess_5fbinary_5fextension',['gpr_subprocess_binary_extension',['../subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fcreate',['gpr_subprocess_create',['../subprocess_8h.html#a761755433d8809a68024b03176341242',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fdestroy',['gpr_subprocess_destroy',['../subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5finterrupt',['gpr_subprocess_interrupt',['../subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d',1,'subprocess.h']]],
+ ['gpr_5fsubprocess_5fjoin',['gpr_subprocess_join',['../subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5',1,'subprocess.h']]],
+ ['gpr_5fthd_5fcurrentid',['gpr_thd_currentid',['../thd_8h.html#a8c875ae5410d10d658cfb7b917909624',1,'thd.h']]],
+ ['gpr_5fthd_5fjoin',['gpr_thd_join',['../thd_8h.html#a73509f851051b4d5f02ca1982d216776',1,'thd.h']]],
+ ['gpr_5fthd_5fnew',['gpr_thd_new',['../thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea',1,'thd.h']]],
+ ['gpr_5fthd_5foptions_5fdefault',['gpr_thd_options_default',['../thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862',1,'gpr_thd_options_default(void):&#160;thd.c'],['../thd_8c.html#abf8bb34ba7d26ddab0696e24b1fcc862',1,'gpr_thd_options_default(void):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fis_5fdetached',['gpr_thd_options_is_detached',['../thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89',1,'gpr_thd_options_is_detached(const gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#a1647c2e991d269cdaf146dc33f61ce89',1,'gpr_thd_options_is_detached(const gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fis_5fjoinable',['gpr_thd_options_is_joinable',['../thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b',1,'gpr_thd_options_is_joinable(const gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b',1,'gpr_thd_options_is_joinable(const gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fset_5fdetached',['gpr_thd_options_set_detached',['../thd_8h.html#a704882e5c65d29c817fae9173085e5ba',1,'gpr_thd_options_set_detached(gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#a704882e5c65d29c817fae9173085e5ba',1,'gpr_thd_options_set_detached(gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5fthd_5foptions_5fset_5fjoinable',['gpr_thd_options_set_joinable',['../thd_8h.html#a87ad3ff4d439450ae1318151c1526745',1,'gpr_thd_options_set_joinable(gpr_thd_options *options):&#160;thd.c'],['../thd_8c.html#a87ad3ff4d439450ae1318151c1526745',1,'gpr_thd_options_set_joinable(gpr_thd_options *options):&#160;thd.c']]],
+ ['gpr_5ftime_5f0',['gpr_time_0',['../time_8h.html#a4f552f0628cc389dfbe3674a1a978108',1,'gpr_time_0(gpr_clock_type type):&#160;time.c'],['../time_8c.html#a4f552f0628cc389dfbe3674a1a978108',1,'gpr_time_0(gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5fadd',['gpr_time_add',['../time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004',1,'gpr_time_add(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#a6f2c6fbc9fef45d74670c446e2bad004',1,'gpr_time_add(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fcmp',['gpr_time_cmp',['../time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0',1,'gpr_time_cmp(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#aeb10778e9b7c1dd7e6c47099d55f0fa0',1,'gpr_time_cmp(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fhours',['gpr_time_from_hours',['../time_8h.html#af7a9aca2af5348cbb8dc835853dc2756',1,'gpr_time_from_hours(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#ab8e7ff6a62bcd1fda7ea07ee67ffbacd',1,'gpr_time_from_hours(long h, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fmicros',['gpr_time_from_micros',['../time_8h.html#a79956c6fba5b660aeee24b09ae026d6c',1,'gpr_time_from_micros(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#a4c0445a26d72673e14ea4c403b69ee65',1,'gpr_time_from_micros(long us, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fmillis',['gpr_time_from_millis',['../time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946',1,'gpr_time_from_millis(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#a3b46878435c03a093b01f23b6a23631b',1,'gpr_time_from_millis(long ms, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fminutes',['gpr_time_from_minutes',['../time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba',1,'gpr_time_from_minutes(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#afd411906dd4100d1a359177eaa8e6d5f',1,'gpr_time_from_minutes(long m, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fnanos',['gpr_time_from_nanos',['../time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a',1,'gpr_time_from_nanos(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#a7b5437762ab2c7b7b31f7ab8e054eb04',1,'gpr_time_from_nanos(long ns, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5ffrom_5fseconds',['gpr_time_from_seconds',['../time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916',1,'gpr_time_from_seconds(long x, gpr_clock_type clock_type):&#160;time.c'],['../time_8c.html#ac43b8cfb4ba31a567eb77c2dacda57a7',1,'gpr_time_from_seconds(long s, gpr_clock_type type):&#160;time.c']]],
+ ['gpr_5ftime_5finit',['gpr_time_init',['../time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56',1,'time.h']]],
+ ['gpr_5ftime_5fmax',['gpr_time_max',['../time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8',1,'gpr_time_max(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#a4e1c94c1e488381e9f01d4318c2a45d8',1,'gpr_time_max(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fmin',['gpr_time_min',['../time_8h.html#af15f574932e56662f57bd3573e3cc469',1,'gpr_time_min(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#af15f574932e56662f57bd3573e3cc469',1,'gpr_time_min(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fsimilar',['gpr_time_similar',['../time_8h.html#a914f666c6cfe709650d96c986600de15',1,'gpr_time_similar(gpr_timespec a, gpr_timespec b, gpr_timespec threshold):&#160;time.c'],['../time_8c.html#a914f666c6cfe709650d96c986600de15',1,'gpr_time_similar(gpr_timespec a, gpr_timespec b, gpr_timespec threshold):&#160;time.c']]],
+ ['gpr_5ftime_5fsub',['gpr_time_sub',['../time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a',1,'gpr_time_sub(gpr_timespec a, gpr_timespec b):&#160;time.c'],['../time_8c.html#a1eaf8db9ee9e94bd4af005f1049f967a',1,'gpr_time_sub(gpr_timespec a, gpr_timespec b):&#160;time.c']]],
+ ['gpr_5ftime_5fto_5fmillis',['gpr_time_to_millis',['../time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df',1,'gpr_time_to_millis(gpr_timespec timespec):&#160;time.c'],['../time_8c.html#a0e913ddb6917c82510ff48d34672f6a1',1,'gpr_time_to_millis(gpr_timespec t):&#160;time.c']]],
+ ['gpr_5ftimespec_5fto_5fmicros',['gpr_timespec_to_micros',['../time_8h.html#a1704f2028070b3c92bd5420864458bac',1,'gpr_timespec_to_micros(gpr_timespec t):&#160;time.c'],['../time_8c.html#a1704f2028070b3c92bd5420864458bac',1,'gpr_timespec_to_micros(gpr_timespec t):&#160;time.c']]],
+ ['gpr_5ftls_5fset',['gpr_tls_set',['../tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea',1,'tls_pthread.h']]],
+ ['gpr_5ftmpfile',['gpr_tmpfile',['../file_8h.html#abdc37810133df55be624548f00fd177f',1,'file.h']]],
+ ['gpr_5funref',['gpr_unref',['../sync_8h.html#a76b570c831b14070c37e708dde91b795',1,'gpr_unref(gpr_refcount *r):&#160;sync.c'],['../sync_8c.html#a76b570c831b14070c37e708dde91b795',1,'gpr_unref(gpr_refcount *r):&#160;sync.c']]],
+ ['grpc_5faccept4',['grpc_accept4',['../socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060',1,'socket_utils_posix.h']]],
+ ['grpc_5faccess_5ftoken_5fcredentials_5fcreate',['grpc_access_token_credentials_create',['../grpc__security_8h.html#a7ef8e179bb5d15c81dfd363924db0041',1,'grpc_access_token_credentials_create(const char *access_token):&#160;credentials.c'],['../credentials_8c.html#a7ef8e179bb5d15c81dfd363924db0041',1,'grpc_access_token_credentials_create(const char *access_token):&#160;credentials.c']]],
+ ['grpc_5falarm_5fcancel',['grpc_alarm_cancel',['../alarm_8h.html#a921e9a2f728d338f42ad586e6d4eaf60',1,'grpc_alarm_cancel(grpc_alarm *alarm):&#160;alarm.c'],['../alarm_8c.html#a921e9a2f728d338f42ad586e6d4eaf60',1,'grpc_alarm_cancel(grpc_alarm *alarm):&#160;alarm.c']]],
+ ['grpc_5falarm_5fcheck',['grpc_alarm_check',['../alarm__internal_8h.html#a28de65beea264f65e15824cbf866d863',1,'grpc_alarm_check(gpr_mu *drop_mu, gpr_timespec now, gpr_timespec *next):&#160;alarm.c'],['../alarm_8c.html#a28de65beea264f65e15824cbf866d863',1,'grpc_alarm_check(gpr_mu *drop_mu, gpr_timespec now, gpr_timespec *next):&#160;alarm.c']]],
+ ['grpc_5falarm_5fheap_5fadd',['grpc_alarm_heap_add',['../alarm__heap_8h.html#a96e6b49b0020da6f3163dfaeac36fed4',1,'grpc_alarm_heap_add(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a96e6b49b0020da6f3163dfaeac36fed4',1,'grpc_alarm_heap_add(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fdestroy',['grpc_alarm_heap_destroy',['../alarm__heap_8h.html#a827cbed1eadd7b307da4f509bb0e4ff9',1,'grpc_alarm_heap_destroy(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a827cbed1eadd7b307da4f509bb0e4ff9',1,'grpc_alarm_heap_destroy(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5finit',['grpc_alarm_heap_init',['../alarm__heap_8h.html#a353a4a1809ac4546d62b3098dda8f674',1,'grpc_alarm_heap_init(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a353a4a1809ac4546d62b3098dda8f674',1,'grpc_alarm_heap_init(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fis_5fempty',['grpc_alarm_heap_is_empty',['../alarm__heap_8h.html#a52d3c052d322cc97ced32a68bd9048cb',1,'grpc_alarm_heap_is_empty(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a52d3c052d322cc97ced32a68bd9048cb',1,'grpc_alarm_heap_is_empty(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fpop',['grpc_alarm_heap_pop',['../alarm__heap_8h.html#a40cf7d2741c1640309682f14cafbb029',1,'grpc_alarm_heap_pop(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a40cf7d2741c1640309682f14cafbb029',1,'grpc_alarm_heap_pop(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5fremove',['grpc_alarm_heap_remove',['../alarm__heap_8h.html#a69c5b3ff692b6ca36c48d727acd45e9c',1,'grpc_alarm_heap_remove(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a69c5b3ff692b6ca36c48d727acd45e9c',1,'grpc_alarm_heap_remove(grpc_alarm_heap *heap, grpc_alarm *alarm):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5fheap_5ftop',['grpc_alarm_heap_top',['../alarm__heap_8h.html#a1c81a64c942586da4313547cc8d259ea',1,'grpc_alarm_heap_top(grpc_alarm_heap *heap):&#160;alarm_heap.c'],['../alarm__heap_8c.html#a1c81a64c942586da4313547cc8d259ea',1,'grpc_alarm_heap_top(grpc_alarm_heap *heap):&#160;alarm_heap.c']]],
+ ['grpc_5falarm_5finit',['grpc_alarm_init',['../alarm_8h.html#a50483486a229b573a29ed9fa30807999',1,'grpc_alarm_init(grpc_alarm *alarm, gpr_timespec deadline, grpc_iomgr_cb_func alarm_cb, void *alarm_cb_arg, gpr_timespec now):&#160;alarm.c'],['../alarm_8c.html#a50483486a229b573a29ed9fa30807999',1,'grpc_alarm_init(grpc_alarm *alarm, gpr_timespec deadline, grpc_iomgr_cb_func alarm_cb, void *alarm_cb_arg, gpr_timespec now):&#160;alarm.c']]],
+ ['grpc_5falarm_5flist_5finit',['grpc_alarm_list_init',['../alarm__internal_8h.html#a7f76e290e84d187382a25d0d6999067e',1,'grpc_alarm_list_init(gpr_timespec now):&#160;alarm.c'],['../alarm_8c.html#a7f76e290e84d187382a25d0d6999067e',1,'grpc_alarm_list_init(gpr_timespec now):&#160;alarm.c']]],
+ ['grpc_5falarm_5flist_5fnext_5ftimeout',['grpc_alarm_list_next_timeout',['../alarm__internal_8h.html#a257c1eaf2f1c2f352893dcc0af034dfa',1,'grpc_alarm_list_next_timeout(void):&#160;alarm.c'],['../alarm_8c.html#a257c1eaf2f1c2f352893dcc0af034dfa',1,'grpc_alarm_list_next_timeout(void):&#160;alarm.c']]],
+ ['grpc_5falarm_5flist_5fshutdown',['grpc_alarm_list_shutdown',['../alarm__internal_8h.html#a768994cd3fff1f9b3ca7805dee7b3831',1,'grpc_alarm_list_shutdown(void):&#160;alarm.c'],['../alarm_8c.html#a768994cd3fff1f9b3ca7805dee7b3831',1,'grpc_alarm_list_shutdown(void):&#160;alarm.c']]],
+ ['grpc_5fauth_5fcontext_5fcreate',['grpc_auth_context_create',['../security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25',1,'grpc_auth_context_create(grpc_auth_context *chained, size_t property_count):&#160;security_context.c'],['../security__context_8c.html#ab81f0d925a8aefc04349a849e63d9d25',1,'grpc_auth_context_create(grpc_auth_context *chained, size_t property_count):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5ffind_5fproperties_5fby_5fname',['grpc_auth_context_find_properties_by_name',['../grpc__security_8h.html#a5298ac64614986581fc314f63fa9afd7',1,'grpc_auth_context_find_properties_by_name(const grpc_auth_context *ctx, const char *name):&#160;security_context.c'],['../security__context_8c.html#a5298ac64614986581fc314f63fa9afd7',1,'grpc_auth_context_find_properties_by_name(const grpc_auth_context *ctx, const char *name):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fpeer_5fidentity',['grpc_auth_context_peer_identity',['../grpc__security_8h.html#a144c6f3a56c8592489b3978e0c5caced',1,'grpc_auth_context_peer_identity(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#a144c6f3a56c8592489b3978e0c5caced',1,'grpc_auth_context_peer_identity(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fpeer_5fidentity_5fproperty_5fname',['grpc_auth_context_peer_identity_property_name',['../grpc__security_8h.html#ac05022ccd5b972ba089950437727ff23',1,'grpc_auth_context_peer_identity_property_name(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#ac05022ccd5b972ba089950437727ff23',1,'grpc_auth_context_peer_identity_property_name(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fpeer_5fis_5fauthenticated',['grpc_auth_context_peer_is_authenticated',['../grpc__security_8h.html#af33fe6681dedb389edbf708020680093',1,'grpc_auth_context_peer_is_authenticated(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#af33fe6681dedb389edbf708020680093',1,'grpc_auth_context_peer_is_authenticated(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fproperty_5fiterator',['grpc_auth_context_property_iterator',['../grpc__security_8h.html#aaad9fed074f7aebed63ed075bb6ff780',1,'grpc_auth_context_property_iterator(const grpc_auth_context *ctx):&#160;security_context.c'],['../security__context_8c.html#aaad9fed074f7aebed63ed075bb6ff780',1,'grpc_auth_context_property_iterator(const grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5fref',['grpc_auth_context_ref',['../security__context_8h.html#aafcd59997402fd705818b3ce8e374623',1,'grpc_auth_context_ref(grpc_auth_context *policy):&#160;security_context.c'],['../security__context_8c.html#a449824176a9f6c79ee461e476f409aec',1,'grpc_auth_context_ref(grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5frelease',['grpc_auth_context_release',['../grpc__security_8h.html#a2eea99f76030b21ad58afdf615f4d2b9',1,'grpc_auth_context_release(grpc_auth_context *context):&#160;security_context.c'],['../security__context_8c.html#a2eea99f76030b21ad58afdf615f4d2b9',1,'grpc_auth_context_release(grpc_auth_context *context):&#160;security_context.c']]],
+ ['grpc_5fauth_5fcontext_5funref',['grpc_auth_context_unref',['../security__context_8h.html#a19e637927ac80502fe6093a2669674da',1,'grpc_auth_context_unref(grpc_auth_context *policy):&#160;security_context.c'],['../security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33',1,'grpc_auth_context_unref(grpc_auth_context *ctx):&#160;security_context.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fcreate_5ffrom_5fjson',['grpc_auth_json_key_create_from_json',['../json__token_8h.html#a99327b0fd2f13d8c98ebb68aecde0194',1,'grpc_auth_json_key_create_from_json(const grpc_json *json):&#160;json_token.c'],['../json__token_8c.html#a99327b0fd2f13d8c98ebb68aecde0194',1,'grpc_auth_json_key_create_from_json(const grpc_json *json):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fcreate_5ffrom_5fstring',['grpc_auth_json_key_create_from_string',['../json__token_8h.html#aed79d1eb6161019cd427d7dc4bdc8462',1,'grpc_auth_json_key_create_from_string(const char *json_string):&#160;json_token.c'],['../json__token_8c.html#aed79d1eb6161019cd427d7dc4bdc8462',1,'grpc_auth_json_key_create_from_string(const char *json_string):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fdestruct',['grpc_auth_json_key_destruct',['../json__token_8h.html#a0be195f2d8dad589b59befaaf379deb7',1,'grpc_auth_json_key_destruct(grpc_auth_json_key *json_key):&#160;json_token.c'],['../json__token_8c.html#a0be195f2d8dad589b59befaaf379deb7',1,'grpc_auth_json_key_destruct(grpc_auth_json_key *json_key):&#160;json_token.c']]],
+ ['grpc_5fauth_5fjson_5fkey_5fis_5fvalid',['grpc_auth_json_key_is_valid',['../json__token_8h.html#ac4a86a67c8b9cd4b8b142fe880099689',1,'grpc_auth_json_key_is_valid(const grpc_auth_json_key *json_key):&#160;json_token.c'],['../json__token_8c.html#ac4a86a67c8b9cd4b8b142fe880099689',1,'grpc_auth_json_key_is_valid(const grpc_auth_json_key *json_key):&#160;json_token.c']]],
+ ['grpc_5fauth_5fproperty_5finit',['grpc_auth_property_init',['../security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a',1,'grpc_auth_property_init(const char *name, const char *value, size_t value_length):&#160;security_context.c'],['../security__context_8c.html#a816adda9cd16c9f8087a1f11b1f7154a',1,'grpc_auth_property_init(const char *name, const char *value, size_t value_length):&#160;security_context.c']]],
+ ['grpc_5fauth_5fproperty_5finit_5ffrom_5fcstring',['grpc_auth_property_init_from_cstring',['../security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58',1,'grpc_auth_property_init_from_cstring(const char *name, const char *value):&#160;security_context.c'],['../security__context_8c.html#a9ffe10ffd7c0397eb9656a5017ba0e58',1,'grpc_auth_property_init_from_cstring(const char *name, const char *value):&#160;security_context.c']]],
+ ['grpc_5fauth_5fproperty_5fiterator_5fnext',['grpc_auth_property_iterator_next',['../grpc__security_8h.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae',1,'grpc_auth_property_iterator_next(grpc_auth_property_iterator *it):&#160;security_context.c'],['../security__context_8c.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae',1,'grpc_auth_property_iterator_next(grpc_auth_property_iterator *it):&#160;security_context.c']]],
+ ['grpc_5fauth_5fproperty_5freset',['grpc_auth_property_reset',['../security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195',1,'grpc_auth_property_reset(grpc_auth_property *property):&#160;security_context.c'],['../security__context_8c.html#a9721c8f46ab15103ee4f69cf49c04195',1,'grpc_auth_property_reset(grpc_auth_property *property):&#160;security_context.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fcreate_5ffrom_5fjson',['grpc_auth_refresh_token_create_from_json',['../json__token_8h.html#a31e46f408f67e61eb59471816d7394d9',1,'grpc_auth_refresh_token_create_from_json(const grpc_json *json):&#160;json_token.c'],['../json__token_8c.html#a31e46f408f67e61eb59471816d7394d9',1,'grpc_auth_refresh_token_create_from_json(const grpc_json *json):&#160;json_token.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fcreate_5ffrom_5fstring',['grpc_auth_refresh_token_create_from_string',['../json__token_8h.html#aa8602827c182047ae58ff6f8d55fcf06',1,'grpc_auth_refresh_token_create_from_string(const char *json_string):&#160;json_token.c'],['../json__token_8c.html#aa8602827c182047ae58ff6f8d55fcf06',1,'grpc_auth_refresh_token_create_from_string(const char *json_string):&#160;json_token.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fdestruct',['grpc_auth_refresh_token_destruct',['../json__token_8h.html#a14f7331e37fa96ee4652780610e1b773',1,'grpc_auth_refresh_token_destruct(grpc_auth_refresh_token *refresh_token):&#160;json_token.c'],['../json__token_8c.html#a14f7331e37fa96ee4652780610e1b773',1,'grpc_auth_refresh_token_destruct(grpc_auth_refresh_token *refresh_token):&#160;json_token.c']]],
+ ['grpc_5fauth_5frefresh_5ftoken_5fis_5fvalid',['grpc_auth_refresh_token_is_valid',['../json__token_8h.html#a9b1a8c0e0fda0b36dc2ad142f276002f',1,'grpc_auth_refresh_token_is_valid(const grpc_auth_refresh_token *refresh_token):&#160;json_token.c'],['../json__token_8c.html#a9b1a8c0e0fda0b36dc2ad142f276002f',1,'grpc_auth_refresh_token_is_valid(const grpc_auth_refresh_token *refresh_token):&#160;json_token.c']]],
+ ['grpc_5fbase64_5fdecode',['grpc_base64_decode',['../base64_8h.html#a81bf1bd8387f2d69d6fe48e463a40c96',1,'grpc_base64_decode(const char *b64, int url_safe):&#160;base64.c'],['../base64_8c.html#a81bf1bd8387f2d69d6fe48e463a40c96',1,'grpc_base64_decode(const char *b64, int url_safe):&#160;base64.c']]],
+ ['grpc_5fbase64_5fdecode_5fwith_5flen',['grpc_base64_decode_with_len',['../base64_8h.html#a2d9a616e303d93f4cb0733fe96a0f28f',1,'grpc_base64_decode_with_len(const char *b64, size_t b64_len, int url_safe):&#160;base64.c'],['../base64_8c.html#a2d9a616e303d93f4cb0733fe96a0f28f',1,'grpc_base64_decode_with_len(const char *b64, size_t b64_len, int url_safe):&#160;base64.c']]],
+ ['grpc_5fbase64_5fencode',['grpc_base64_encode',['../base64_8h.html#af3751ba76aa864e4983cea879fb437d8',1,'grpc_base64_encode(const void *data, size_t data_size, int url_safe, int multiline):&#160;base64.c'],['../base64_8c.html#a52b0da4b71404bafb66d7cd2d6bc898a',1,'grpc_base64_encode(const void *vdata, size_t data_size, int url_safe, int multiline):&#160;base64.c']]],
+ ['grpc_5fbbq_5fbytes',['grpc_bbq_bytes',['../byte__buffer__queue_8h.html#a86c63b57cc95e136b8de2592e4dedf28',1,'grpc_bbq_bytes(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a86c63b57cc95e136b8de2592e4dedf28',1,'grpc_bbq_bytes(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fdestroy',['grpc_bbq_destroy',['../byte__buffer__queue_8h.html#ae1f26933a5e6e643c3c31de676804edb',1,'grpc_bbq_destroy(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#ae1f26933a5e6e643c3c31de676804edb',1,'grpc_bbq_destroy(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fempty',['grpc_bbq_empty',['../byte__buffer__queue_8h.html#aaa5f8cf8f94340a6e2f6c803a8001c15',1,'grpc_bbq_empty(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#aaa5f8cf8f94340a6e2f6c803a8001c15',1,'grpc_bbq_empty(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fflush',['grpc_bbq_flush',['../byte__buffer__queue_8h.html#a8308c0116008c7abd4554a34a549e94a',1,'grpc_bbq_flush(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a8308c0116008c7abd4554a34a549e94a',1,'grpc_bbq_flush(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fpop',['grpc_bbq_pop',['../byte__buffer__queue_8h.html#a0539ad1d8c25d3060475370bcc9d37c5',1,'grpc_bbq_pop(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a0539ad1d8c25d3060475370bcc9d37c5',1,'grpc_bbq_pop(grpc_byte_buffer_queue *q):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fbbq_5fpush',['grpc_bbq_push',['../byte__buffer__queue_8h.html#a28f3a949b2a27c25929fdb86819e4dae',1,'grpc_bbq_push(grpc_byte_buffer_queue *q, grpc_byte_buffer *bb):&#160;byte_buffer_queue.c'],['../byte__buffer__queue_8c.html#a34702570a1438c8cf7a4dcdcc65a5891',1,'grpc_bbq_push(grpc_byte_buffer_queue *q, grpc_byte_buffer *buffer):&#160;byte_buffer_queue.c']]],
+ ['grpc_5fblocking_5fresolve_5faddress',['grpc_blocking_resolve_address',['../resolve__address_8h.html#a92567a2b60cddf219f240a07212fff7c',1,'resolve_address.h']]],
+ ['grpc_5fbyte_5fbuffer_5fcopy',['grpc_byte_buffer_copy',['../byte__buffer_8h.html#aac8a5605c5de93a78da7e8ca06a80efb',1,'grpc_byte_buffer_copy(grpc_byte_buffer *bb):&#160;byte_buffer.c'],['../byte__buffer_8c.html#aac8a5605c5de93a78da7e8ca06a80efb',1,'grpc_byte_buffer_copy(grpc_byte_buffer *bb):&#160;byte_buffer.c']]],
+ ['grpc_5fbyte_5fbuffer_5fdestroy',['grpc_byte_buffer_destroy',['../byte__buffer_8h.html#a5a9ccea69a6ba41d34a6985837fd88f5',1,'grpc_byte_buffer_destroy(grpc_byte_buffer *byte_buffer):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a0099fc01264d8aeb7cd56dfb58652d22',1,'grpc_byte_buffer_destroy(grpc_byte_buffer *bb):&#160;byte_buffer.c']]],
+ ['grpc_5fbyte_5fbuffer_5flength',['grpc_byte_buffer_length',['../byte__buffer_8h.html#a61b6ac03d6a50664786e45d616ba435d',1,'grpc_byte_buffer_length(grpc_byte_buffer *bb):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a61b6ac03d6a50664786e45d616ba435d',1,'grpc_byte_buffer_length(grpc_byte_buffer *bb):&#160;byte_buffer.c']]],
+ ['grpc_5fbyte_5fbuffer_5freader_5fdestroy',['grpc_byte_buffer_reader_destroy',['../byte__buffer_8h.html#aed5f40a76941741b7672c14f15be0778',1,'grpc_byte_buffer_reader_destroy(grpc_byte_buffer_reader *reader):&#160;byte_buffer_reader.c'],['../byte__buffer__reader_8c.html#aed5f40a76941741b7672c14f15be0778',1,'grpc_byte_buffer_reader_destroy(grpc_byte_buffer_reader *reader):&#160;byte_buffer_reader.c']]],
+ ['grpc_5fbyte_5fbuffer_5freader_5finit',['grpc_byte_buffer_reader_init',['../byte__buffer_8h.html#a71016674849f4f57c1a4319d7964d268',1,'grpc_byte_buffer_reader_init(grpc_byte_buffer_reader *reader, grpc_byte_buffer *buffer):&#160;byte_buffer_reader.c'],['../byte__buffer__reader_8c.html#a71016674849f4f57c1a4319d7964d268',1,'grpc_byte_buffer_reader_init(grpc_byte_buffer_reader *reader, grpc_byte_buffer *buffer):&#160;byte_buffer_reader.c']]],
+ ['grpc_5fbyte_5fbuffer_5freader_5fnext',['grpc_byte_buffer_reader_next',['../byte__buffer_8h.html#aff713900a0177997a0be49a40781bcc9',1,'grpc_byte_buffer_reader_next(grpc_byte_buffer_reader *reader, gpr_slice *slice):&#160;byte_buffer_reader.c'],['../byte__buffer__reader_8c.html#aff713900a0177997a0be49a40781bcc9',1,'grpc_byte_buffer_reader_next(grpc_byte_buffer_reader *reader, gpr_slice *slice):&#160;byte_buffer_reader.c']]],
+ ['grpc_5fcall_5fauth_5fcontext',['grpc_call_auth_context',['../grpc__security_8h.html#a0b439e6d2875c8b5e2e901a959f6a2fe',1,'grpc_call_auth_context(grpc_call *call):&#160;security_context.c'],['../security__context_8c.html#a0b439e6d2875c8b5e2e901a959f6a2fe',1,'grpc_call_auth_context(grpc_call *call):&#160;security_context.c']]],
+ ['grpc_5fcall_5fcancel',['grpc_call_cancel',['../grpc_8h.html#adce32a3168cfc0048423af94a3961878',1,'grpc_call_cancel(grpc_call *call):&#160;call.c'],['../call_8c.html#adce32a3168cfc0048423af94a3961878',1,'grpc_call_cancel(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5fcancel_5fwith_5fstatus',['grpc_call_cancel_with_status',['../grpc_8h.html#a8332e3ac6611ae4012ed17707d7dbcf2',1,'grpc_call_cancel_with_status(grpc_call *call, grpc_status_code status, const char *description):&#160;call.c'],['../call_8c.html#a1adb0f85dd491cc47dd8da655c4e30a6',1,'grpc_call_cancel_with_status(grpc_call *c, grpc_status_code status, const char *description):&#160;call.c']]],
+ ['grpc_5fcall_5fcontext_5fget',['grpc_call_context_get',['../call_8h.html#a039322642b1682808002d1302c248c5f',1,'grpc_call_context_get(grpc_call *call, grpc_context_index elem):&#160;call.c'],['../call_8c.html#a039322642b1682808002d1302c248c5f',1,'grpc_call_context_get(grpc_call *call, grpc_context_index elem):&#160;call.c']]],
+ ['grpc_5fcall_5fcontext_5fset',['grpc_call_context_set',['../call_8h.html#adad531b2cfc5574dbc4bebaafe0db1e9',1,'grpc_call_context_set(grpc_call *call, grpc_context_index elem, void *value, void(*destroy)(void *value)):&#160;call.c'],['../call_8c.html#adad531b2cfc5574dbc4bebaafe0db1e9',1,'grpc_call_context_set(grpc_call *call, grpc_context_index elem, void *value, void(*destroy)(void *value)):&#160;call.c']]],
+ ['grpc_5fcall_5fcreate',['grpc_call_create',['../call_8h.html#a0199bd70012c6e2dfa8667dd1d280109',1,'grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq, const void *server_transport_data, grpc_mdelem **add_initial_metadata, size_t add_initial_metadata_count, gpr_timespec send_deadline):&#160;call.c'],['../call_8c.html#a0199bd70012c6e2dfa8667dd1d280109',1,'grpc_call_create(grpc_channel *channel, grpc_completion_queue *cq, const void *server_transport_data, grpc_mdelem **add_initial_metadata, size_t add_initial_metadata_count, gpr_timespec send_deadline):&#160;call.c']]],
+ ['grpc_5fcall_5fdestroy',['grpc_call_destroy',['../grpc_8h.html#a3edbb9347e32fd0152c8ed4bbbaf5125',1,'grpc_call_destroy(grpc_call *call):&#160;call.c'],['../call_8c.html#a456f491fd120a1561aa8cd1178ddb4c7',1,'grpc_call_destroy(grpc_call *c):&#160;call.c']]],
+ ['grpc_5fcall_5fdetails_5fdestroy',['grpc_call_details_destroy',['../grpc_8h.html#a436819189c9155a0761db7667f9078f9',1,'grpc_call_details_destroy(grpc_call_details *details):&#160;call_details.c'],['../call__details_8c.html#a8ac75052ac470570689777a7a2684012',1,'grpc_call_details_destroy(grpc_call_details *cd):&#160;call_details.c']]],
+ ['grpc_5fcall_5fdetails_5finit',['grpc_call_details_init',['../grpc_8h.html#a29fa3bfb0a561ba465260154a4ef3bb5',1,'grpc_call_details_init(grpc_call_details *details):&#160;call_details.c'],['../call__details_8c.html#aec87c14a6d7452bfb029af6a317a6cff',1,'grpc_call_details_init(grpc_call_details *cd):&#160;call_details.c']]],
+ ['grpc_5fcall_5felement_5fsend_5fcancel',['grpc_call_element_send_cancel',['../channel__stack_8h.html#a7127b6c0b4d14c70e23e65875c7b6bc5',1,'grpc_call_element_send_cancel(grpc_call_element *cur_elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a7127b6c0b4d14c70e23e65875c7b6bc5',1,'grpc_call_element_send_cancel(grpc_call_element *cur_elem):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5ffrom_5ftop_5felement',['grpc_call_from_top_element',['../call_8h.html#a86f68a55fd9421d297c43cb4f0911d1e',1,'grpc_call_from_top_element(grpc_call_element *surface_element):&#160;call.c'],['../call_8c.html#a92d6bdbeddb5e6918e118bc0979a1a9b',1,'grpc_call_from_top_element(grpc_call_element *elem):&#160;call.c']]],
+ ['grpc_5fcall_5fget_5fcall_5fstack',['grpc_call_get_call_stack',['../call_8h.html#a089e0677c51d9a5d4a4a7e582f86b27f',1,'grpc_call_get_call_stack(grpc_call *call):&#160;call.c'],['../call_8c.html#a089e0677c51d9a5d4a4a7e582f86b27f',1,'grpc_call_get_call_stack(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5fget_5fcompletion_5fqueue',['grpc_call_get_completion_queue',['../call_8h.html#a383950ef84646c0f3cb3cb38807503db',1,'grpc_call_get_completion_queue(grpc_call *call):&#160;call.c'],['../call_8c.html#a383950ef84646c0f3cb3cb38807503db',1,'grpc_call_get_completion_queue(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5fget_5fcompression_5falgorithm',['grpc_call_get_compression_algorithm',['../call_8c.html#a5128cbee3e5ed3cd97b4043c0f6d7d04',1,'call.c']]],
+ ['grpc_5fcall_5fget_5fpeer',['grpc_call_get_peer',['../grpc_8h.html#adf4ac8b78da7b957ce05dc0f62719ada',1,'grpc_call_get_peer(grpc_call *call):&#160;call.c'],['../call_8c.html#adf4ac8b78da7b957ce05dc0f62719ada',1,'grpc_call_get_peer(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5finternal_5fref',['grpc_call_internal_ref',['../call_8h.html#a6845825cac8a628227db13fef74ac84d',1,'grpc_call_internal_ref(grpc_call *call):&#160;call.c'],['../call_8c.html#afdbe0f591e358205051b2af04a8df4f8',1,'grpc_call_internal_ref(grpc_call *c):&#160;call.c']]],
+ ['grpc_5fcall_5finternal_5funref',['grpc_call_internal_unref',['../call_8h.html#a5f5aa8da7ebb5abc159c079891fbbe76',1,'grpc_call_internal_unref(grpc_call *call, int allow_immediate_deletion):&#160;call.c'],['../call_8c.html#afc70fe56761341f774d1b03a55a0e0e9',1,'grpc_call_internal_unref(grpc_call *c, int allow_immediate_deletion):&#160;call.c']]],
+ ['grpc_5fcall_5fis_5fclient',['grpc_call_is_client',['../call_8h.html#af101e4a67c8995de55cbd8b113e3b394',1,'grpc_call_is_client(grpc_call *call):&#160;call.c'],['../call_8c.html#af101e4a67c8995de55cbd8b113e3b394',1,'grpc_call_is_client(grpc_call *call):&#160;call.c']]],
+ ['grpc_5fcall_5flog_5fbatch',['grpc_call_log_batch',['../call_8h.html#a70fab32081ad1821de8bf3979cfa01d6',1,'grpc_call_log_batch(char *file, int line, gpr_log_severity severity, grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call_log_batch.c'],['../call__log__batch_8c.html#a70fab32081ad1821de8bf3979cfa01d6',1,'grpc_call_log_batch(char *file, int line, gpr_log_severity severity, grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call_log_batch.c']]],
+ ['grpc_5fcall_5flog_5fop',['grpc_call_log_op',['../channel__stack_8h.html#aa821d8d1e991cb36c971c6524d2ea5ee',1,'grpc_call_log_op(char *file, int line, gpr_log_severity severity, grpc_call_element *elem, grpc_transport_stream_op *op):&#160;transport_op_string.c'],['../transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee',1,'grpc_call_log_op(char *file, int line, gpr_log_severity severity, grpc_call_element *elem, grpc_transport_stream_op *op):&#160;transport_op_string.c']]],
+ ['grpc_5fcall_5fnext_5fget_5fpeer',['grpc_call_next_get_peer',['../channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801',1,'grpc_call_next_get_peer(grpc_call_element *elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a40c122e470335bb7a6edf1e0a31fc801',1,'grpc_call_next_get_peer(grpc_call_element *elem):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fnext_5fop',['grpc_call_next_op',['../channel__stack_8h.html#af52cb36e243fc3bfb81ebca882346ce9',1,'grpc_call_next_op(grpc_call_element *elem, grpc_transport_stream_op *op):&#160;channel_stack.c'],['../channel__stack_8c.html#af52cb36e243fc3bfb81ebca882346ce9',1,'grpc_call_next_op(grpc_call_element *elem, grpc_transport_stream_op *op):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fset_5fcompletion_5fqueue',['grpc_call_set_completion_queue',['../call_8h.html#a29e0a4ca5d3d86c071b41dcb30c117bd',1,'grpc_call_set_completion_queue(grpc_call *call, grpc_completion_queue *cq):&#160;call.c'],['../call_8c.html#a29e0a4ca5d3d86c071b41dcb30c117bd',1,'grpc_call_set_completion_queue(grpc_call *call, grpc_completion_queue *cq):&#160;call.c']]],
+ ['grpc_5fcall_5fset_5fcredentials',['grpc_call_set_credentials',['../grpc__security_8h.html#a56de54ae2563e67e236c10e8fa419f60',1,'grpc_call_set_credentials(grpc_call *call, grpc_credentials *creds):&#160;security_context.c'],['../security__context_8c.html#a56de54ae2563e67e236c10e8fa419f60',1,'grpc_call_set_credentials(grpc_call *call, grpc_credentials *creds):&#160;security_context.c']]],
+ ['grpc_5fcall_5fstack_5fdestroy',['grpc_call_stack_destroy',['../channel__stack_8h.html#a441c43095f765c200e679230a11c6116',1,'grpc_call_stack_destroy(grpc_call_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#a441c43095f765c200e679230a11c6116',1,'grpc_call_stack_destroy(grpc_call_stack *stack):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstack_5felement',['grpc_call_stack_element',['../channel__stack_8h.html#adbba36449dd62d534cadc0de6c25bb17',1,'grpc_call_stack_element(grpc_call_stack *stack, size_t i):&#160;channel_stack.c'],['../channel__stack_8c.html#a32b8a3c21a1e805669af3569b6c4a333',1,'grpc_call_stack_element(grpc_call_stack *call_stack, size_t index):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstack_5ffrom_5ftop_5felement',['grpc_call_stack_from_top_element',['../channel__stack_8h.html#a90d6131bc8142e1516618bd2e4daf58c',1,'grpc_call_stack_from_top_element(grpc_call_element *elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a90d6131bc8142e1516618bd2e4daf58c',1,'grpc_call_stack_from_top_element(grpc_call_element *elem):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstack_5finit',['grpc_call_stack_init',['../channel__stack_8h.html#ac7f3085338ed96593ca7c814cd6d705d',1,'grpc_call_stack_init(grpc_channel_stack *channel_stack, const void *transport_server_data, grpc_transport_stream_op *initial_op, grpc_call_stack *call_stack):&#160;channel_stack.c'],['../channel__stack_8c.html#ac7f3085338ed96593ca7c814cd6d705d',1,'grpc_call_stack_init(grpc_channel_stack *channel_stack, const void *transport_server_data, grpc_transport_stream_op *initial_op, grpc_call_stack *call_stack):&#160;channel_stack.c']]],
+ ['grpc_5fcall_5fstart_5fbatch',['grpc_call_start_batch',['../grpc_8h.html#ae0e60993c9d6e5ceccaf2e61f690b101',1,'grpc_call_start_batch(grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call.c'],['../call_8c.html#ae0e60993c9d6e5ceccaf2e61f690b101',1,'grpc_call_start_batch(grpc_call *call, const grpc_op *ops, size_t nops, void *tag):&#160;call.c']]],
+ ['grpc_5fcall_5fstart_5fioreq_5fand_5fcall_5fback',['grpc_call_start_ioreq_and_call_back',['../call_8h.html#aef30c2ddcfea12c0df20548f32b4378d',1,'grpc_call_start_ioreq_and_call_back(grpc_call *call, const grpc_ioreq *reqs, size_t nreqs, grpc_ioreq_completion_func on_complete, void *user_data):&#160;call.c'],['../call_8c.html#aef30c2ddcfea12c0df20548f32b4378d',1,'grpc_call_start_ioreq_and_call_back(grpc_call *call, const grpc_ioreq *reqs, size_t nreqs, grpc_ioreq_completion_func on_complete, void *user_data):&#160;call.c']]],
+ ['grpc_5fcensus_5fcall_5fget_5fcontext',['grpc_census_call_get_context',['../grpc_8h.html#a0f2c6a97262a251d18b76ad470af0e66',1,'grpc_census_call_get_context(grpc_call *call):&#160;grpc_context.c'],['../grpc__context_8c.html#a333e4c9a18683ab7a0db218df7a5fc6e',1,'grpc_census_call_get_context(grpc_call *call):&#160;grpc_context.c']]],
+ ['grpc_5fcensus_5fcall_5fset_5fcontext',['grpc_census_call_set_context',['../grpc_8h.html#a9d5bbdac3a9068747ef3639c4e52af9a',1,'grpc_census_call_set_context(grpc_call *call, struct census_context *context):&#160;grpc_context.c'],['../grpc__context_8c.html#afe9f71e9469141cc38cf3ec1375830ce',1,'grpc_census_call_set_context(grpc_call *call, census_context *context):&#160;grpc_context.c']]],
+ ['grpc_5fchannel_5fargs_5fcopy',['grpc_channel_args_copy',['../channel__args_8h.html#aea7141804d69de11c1470197ad87b45d',1,'grpc_channel_args_copy(const grpc_channel_args *src):&#160;channel_args.c'],['../channel__args_8c.html#aea7141804d69de11c1470197ad87b45d',1,'grpc_channel_args_copy(const grpc_channel_args *src):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fcopy_5fand_5fadd',['grpc_channel_args_copy_and_add',['../channel__args_8h.html#ace4130d42d359c697a99d4ed7a7e54c3',1,'grpc_channel_args_copy_and_add(const grpc_channel_args *src, const grpc_arg *to_add, size_t num_to_add):&#160;channel_args.c'],['../channel__args_8c.html#ace4130d42d359c697a99d4ed7a7e54c3',1,'grpc_channel_args_copy_and_add(const grpc_channel_args *src, const grpc_arg *to_add, size_t num_to_add):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fdestroy',['grpc_channel_args_destroy',['../channel__args_8h.html#ad7467ddcad8160325b79b8d3a627c42e',1,'grpc_channel_args_destroy(grpc_channel_args *a):&#160;channel_args.c'],['../channel__args_8c.html#ad7467ddcad8160325b79b8d3a627c42e',1,'grpc_channel_args_destroy(grpc_channel_args *a):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fget_5fcompression_5falgorithm',['grpc_channel_args_get_compression_algorithm',['../channel__args_8h.html#ab6073e21bee62a87f891a10d5bb4a3bb',1,'grpc_channel_args_get_compression_algorithm(const grpc_channel_args *a):&#160;channel_args.c'],['../channel__args_8c.html#ab6073e21bee62a87f891a10d5bb4a3bb',1,'grpc_channel_args_get_compression_algorithm(const grpc_channel_args *a):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fis_5fcensus_5fenabled',['grpc_channel_args_is_census_enabled',['../channel__args_8h.html#a918e3c374d10937b1cf1a7bec45e96c0',1,'grpc_channel_args_is_census_enabled(const grpc_channel_args *a):&#160;channel_args.c'],['../channel__args_8c.html#a918e3c374d10937b1cf1a7bec45e96c0',1,'grpc_channel_args_is_census_enabled(const grpc_channel_args *a):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fmerge',['grpc_channel_args_merge',['../channel__args_8h.html#aa098be5f086aefff83a52e202d11a39a',1,'grpc_channel_args_merge(const grpc_channel_args *a, const grpc_channel_args *b):&#160;channel_args.c'],['../channel__args_8c.html#aa098be5f086aefff83a52e202d11a39a',1,'grpc_channel_args_merge(const grpc_channel_args *a, const grpc_channel_args *b):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fargs_5fset_5fcompression_5falgorithm',['grpc_channel_args_set_compression_algorithm',['../channel__args_8h.html#a1666cde2d23a797e95cf09e3c26e7f70',1,'grpc_channel_args_set_compression_algorithm(grpc_channel_args *a, grpc_compression_algorithm algorithm):&#160;channel_args.c'],['../channel__args_8c.html#a1666cde2d23a797e95cf09e3c26e7f70',1,'grpc_channel_args_set_compression_algorithm(grpc_channel_args *a, grpc_compression_algorithm algorithm):&#160;channel_args.c']]],
+ ['grpc_5fchannel_5fcheck_5fconnectivity_5fstate',['grpc_channel_check_connectivity_state',['../grpc_8h.html#a9623d8e4df1d17eb26b67d905f1d7cb3',1,'grpc_channel_check_connectivity_state(grpc_channel *channel, int try_to_connect):&#160;channel_connectivity.c'],['../channel__connectivity_8c.html#a9623d8e4df1d17eb26b67d905f1d7cb3',1,'grpc_channel_check_connectivity_state(grpc_channel *channel, int try_to_connect):&#160;channel_connectivity.c']]],
+ ['grpc_5fchannel_5fcreate_5fcall',['grpc_channel_create_call',['../grpc_8h.html#a368ca2e4f76495c3c4bfbb27eb88936e',1,'grpc_channel_create_call(grpc_channel *channel, grpc_completion_queue *completion_queue, const char *method, const char *host, gpr_timespec deadline):&#160;channel.c'],['../channel_8c.html#aa6b80c5019007f758b1bf414e323db05',1,'grpc_channel_create_call(grpc_channel *channel, grpc_completion_queue *cq, const char *method, const char *host, gpr_timespec deadline):&#160;channel.c']]],
+ ['grpc_5fchannel_5fcreate_5ffrom_5ffilters',['grpc_channel_create_from_filters',['../channel_8h.html#a12b25d31348401c51adab93c4f461d58',1,'grpc_channel_create_from_filters(const char *target, const grpc_channel_filter **filters, size_t count, const grpc_channel_args *args, grpc_mdctx *mdctx, int is_client):&#160;channel.c'],['../channel_8c.html#a32e56f0a0ab55d90624b92cbbf7bd384',1,'grpc_channel_create_from_filters(const char *target, const grpc_channel_filter **filters, size_t num_filters, const grpc_channel_args *args, grpc_mdctx *mdctx, int is_client):&#160;channel.c']]],
+ ['grpc_5fchannel_5fcreate_5fregistered_5fcall',['grpc_channel_create_registered_call',['../grpc_8h.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa',1,'grpc_channel_create_registered_call(grpc_channel *channel, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline):&#160;channel.c'],['../channel_8c.html#a38aa45cdbc3d9a9529bcb6ee8b2c68aa',1,'grpc_channel_create_registered_call(grpc_channel *channel, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline):&#160;channel.c']]],
+ ['grpc_5fchannel_5fdestroy',['grpc_channel_destroy',['../grpc_8h.html#a16e4b95581ad12e8e0af2af8d41b71b3',1,'grpc_channel_destroy(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a16e4b95581ad12e8e0af2af8d41b71b3',1,'grpc_channel_destroy(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fchannel_5fstack',['grpc_channel_get_channel_stack',['../channel_8h.html#a264b543c86559165c42b1c41cb4c9045',1,'grpc_channel_get_channel_stack(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a264b543c86559165c42b1c41cb4c9045',1,'grpc_channel_get_channel_stack(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fcompression_5falgorithm_5fstring',['grpc_channel_get_compression_algorithm_string',['../channel_8h.html#aee69f0f30f9cdcdd3961b1d253fa29af',1,'grpc_channel_get_compression_algorithm_string(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#aee69f0f30f9cdcdd3961b1d253fa29af',1,'grpc_channel_get_compression_algorithm_string(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fmax_5fmessage_5flength',['grpc_channel_get_max_message_length',['../channel_8h.html#a1f91159c2a0d259aa7f854ba4204cafd',1,'grpc_channel_get_max_message_length(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a1f91159c2a0d259aa7f854ba4204cafd',1,'grpc_channel_get_max_message_length(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fmessage_5fstring',['grpc_channel_get_message_string',['../channel_8h.html#a3008e3086b47f6170180c32ef88c83db',1,'grpc_channel_get_message_string(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a3008e3086b47f6170180c32ef88c83db',1,'grpc_channel_get_message_string(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fmetadata_5fcontext',['grpc_channel_get_metadata_context',['../channel_8h.html#a6b9ee58f86b3e3026767b37bbc3efa80',1,'grpc_channel_get_metadata_context(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a6b9ee58f86b3e3026767b37bbc3efa80',1,'grpc_channel_get_metadata_context(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5freffed_5fstatus_5felem',['grpc_channel_get_reffed_status_elem',['../channel_8h.html#a0c93bb726613652c5a22d9f4fb6c2101',1,'grpc_channel_get_reffed_status_elem(grpc_channel *channel, int status_code):&#160;channel.c'],['../channel_8c.html#a49c14becac82008119b5e9fd9d554983',1,'grpc_channel_get_reffed_status_elem(grpc_channel *channel, int i):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5fstatus_5fstring',['grpc_channel_get_status_string',['../channel_8h.html#a2192de2d31a54523311ce241f933e048',1,'grpc_channel_get_status_string(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a2192de2d31a54523311ce241f933e048',1,'grpc_channel_get_status_string(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fget_5ftarget',['grpc_channel_get_target',['../grpc_8h.html#a108ef86bc0e5ebcb05f744315e2a6499',1,'grpc_channel_get_target(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a108ef86bc0e5ebcb05f744315e2a6499',1,'grpc_channel_get_target(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5finternal_5fref',['grpc_channel_internal_ref',['../channel_8h.html#a2e6da9e3b86935fa1ddd6d55bf6b1634',1,'grpc_channel_internal_ref(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a7e9137c2c6f7cc3c1cdc27fbc5f23b41',1,'grpc_channel_internal_ref(grpc_channel *c):&#160;channel.c']]],
+ ['grpc_5fchannel_5finternal_5funref',['grpc_channel_internal_unref',['../channel_8h.html#a7fe6e3f3337487d8b584cb8d51bdfa6b',1,'grpc_channel_internal_unref(grpc_channel *channel):&#160;channel.c'],['../channel_8c.html#a7fe6e3f3337487d8b584cb8d51bdfa6b',1,'grpc_channel_internal_unref(grpc_channel *channel):&#160;channel.c']]],
+ ['grpc_5fchannel_5fnext_5fop',['grpc_channel_next_op',['../channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9',1,'grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op):&#160;channel_stack.c'],['../channel__stack_8c.html#aea7eceb60c0e94465c4baea314c0ebd9',1,'grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fregister_5fcall',['grpc_channel_register_call',['../grpc_8h.html#af00855f27d8b7c6b232982446371c04d',1,'grpc_channel_register_call(grpc_channel *channel, const char *method, const char *host):&#160;channel.c'],['../channel_8c.html#af00855f27d8b7c6b232982446371c04d',1,'grpc_channel_register_call(grpc_channel *channel, const char *method, const char *host):&#160;channel.c']]],
+ ['grpc_5fchannel_5fsecurity_5fconnector_5fcheck_5fcall_5fhost',['grpc_channel_security_connector_check_call_host',['../security__connector_8h.html#a845341440590ee81647b56575eb60168',1,'grpc_channel_security_connector_check_call_host(grpc_channel_security_connector *sc, const char *host, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c'],['../security__connector_8c.html#a845341440590ee81647b56575eb60168',1,'grpc_channel_security_connector_check_call_host(grpc_channel_security_connector *sc, const char *host, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c']]],
+ ['grpc_5fchannel_5fstack_5fdestroy',['grpc_channel_stack_destroy',['../channel__stack_8h.html#ad06f3ee4d872888e99778e5faa610764',1,'grpc_channel_stack_destroy(grpc_channel_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#ad06f3ee4d872888e99778e5faa610764',1,'grpc_channel_stack_destroy(grpc_channel_stack *stack):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5felement',['grpc_channel_stack_element',['../channel__stack_8h.html#a85cb9b511c9a4f222ec27d8459cb7c40',1,'grpc_channel_stack_element(grpc_channel_stack *stack, size_t i):&#160;channel_stack.c'],['../channel__stack_8c.html#a6fa445cf1f13f17095e14c0cc8801fb5',1,'grpc_channel_stack_element(grpc_channel_stack *channel_stack, size_t index):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5ffrom_5ftop_5felement',['grpc_channel_stack_from_top_element',['../channel__stack_8h.html#a5fd8b3503ac2f8193509e2ce02ef9406',1,'grpc_channel_stack_from_top_element(grpc_channel_element *elem):&#160;channel_stack.c'],['../channel__stack_8c.html#a5fd8b3503ac2f8193509e2ce02ef9406',1,'grpc_channel_stack_from_top_element(grpc_channel_element *elem):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5finit',['grpc_channel_stack_init',['../channel__stack_8h.html#a9dfbcf853676b70efa84cf8777a7b928',1,'grpc_channel_stack_init(const grpc_channel_filter **filters, size_t filter_count, grpc_channel *master, const grpc_channel_args *args, grpc_mdctx *metadata_context, grpc_channel_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#a9dfbcf853676b70efa84cf8777a7b928',1,'grpc_channel_stack_init(const grpc_channel_filter **filters, size_t filter_count, grpc_channel *master, const grpc_channel_args *args, grpc_mdctx *metadata_context, grpc_channel_stack *stack):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5flast_5felement',['grpc_channel_stack_last_element',['../channel__stack_8h.html#a1245cdffecb56b7eb11d189327dc29b0',1,'grpc_channel_stack_last_element(grpc_channel_stack *stack):&#160;channel_stack.c'],['../channel__stack_8c.html#a663793c2627677279816d636bf310b50',1,'grpc_channel_stack_last_element(grpc_channel_stack *channel_stack):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fstack_5fsize',['grpc_channel_stack_size',['../channel__stack_8h.html#a7593e5b07a422db70484cfb66264dd1b',1,'grpc_channel_stack_size(const grpc_channel_filter **filters, size_t filter_count):&#160;channel_stack.c'],['../channel__stack_8c.html#a7593e5b07a422db70484cfb66264dd1b',1,'grpc_channel_stack_size(const grpc_channel_filter **filters, size_t filter_count):&#160;channel_stack.c']]],
+ ['grpc_5fchannel_5fwatch_5fconnectivity_5fstate',['grpc_channel_watch_connectivity_state',['../grpc_8h.html#a29aa98ca6ce9f7e5116e43b0c414e96b',1,'grpc_channel_watch_connectivity_state(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag):&#160;channel_connectivity.c'],['../channel__connectivity_8c.html#a29aa98ca6ce9f7e5116e43b0c414e96b',1,'grpc_channel_watch_connectivity_state(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag):&#160;channel_connectivity.c']]],
+ ['grpc_5fchttp2_5fadd_5fincoming_5fgoaway',['grpc_chttp2_add_incoming_goaway',['../internal_8h.html#aeb6a160980622d4e5d1b8e9e608c6771',1,'grpc_chttp2_add_incoming_goaway(grpc_chttp2_transport_global *transport_global, gpr_uint32 goaway_error, gpr_slice goaway_text):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#aeb6a160980622d4e5d1b8e9e608c6771',1,'grpc_chttp2_add_incoming_goaway(grpc_chttp2_transport_global *transport_global, gpr_uint32 goaway_error, gpr_slice goaway_text):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fbase64_5fencode',['grpc_chttp2_base64_encode',['../bin__encoder_8h.html#a1435a6d866c6e7f7989ca786facc1fde',1,'grpc_chttp2_base64_encode(gpr_slice input):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a1435a6d866c6e7f7989ca786facc1fde',1,'grpc_chttp2_base64_encode(gpr_slice input):&#160;bin_encoder.c']]],
+ ['grpc_5fchttp2_5fbase64_5fencode_5fand_5fhuffman_5fcompress',['grpc_chttp2_base64_encode_and_huffman_compress',['../bin__encoder_8h.html#a0d29385f837594681b517d91d5d578a7',1,'grpc_chttp2_base64_encode_and_huffman_compress(gpr_slice input):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a0d29385f837594681b517d91d5d578a7',1,'grpc_chttp2_base64_encode_and_huffman_compress(gpr_slice input):&#160;bin_encoder.c']]],
+ ['grpc_5fchttp2_5fcleanup_5fwriting',['grpc_chttp2_cleanup_writing',['../internal_8h.html#a309e83a79f87a133dee17a1a7dd592b9',1,'grpc_chttp2_cleanup_writing(grpc_chttp2_transport_global *global, grpc_chttp2_transport_writing *writing):&#160;writing.c'],['../writing_8c.html#aec2dafff34e07d99d473de28a658614f',1,'grpc_chttp2_cleanup_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing):&#160;writing.c']]],
+ ['grpc_5fchttp2_5fdata_5fframe_5fcreate_5fempty_5fclose',['grpc_chttp2_data_frame_create_empty_close',['../frame__data_8h.html#aa79c486a29b6e104c57be53a20d91362',1,'grpc_chttp2_data_frame_create_empty_close(gpr_uint32 id):&#160;stream_encoder.c'],['../stream__encoder_8c.html#aa79c486a29b6e104c57be53a20d91362',1,'grpc_chttp2_data_frame_create_empty_close(gpr_uint32 id):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5fbegin_5fframe',['grpc_chttp2_data_parser_begin_frame',['../frame__data_8h.html#afab39491d68260dc81d1a57cac6f434a',1,'grpc_chttp2_data_parser_begin_frame(grpc_chttp2_data_parser *parser, gpr_uint8 flags):&#160;frame_data.c'],['../frame__data_8c.html#afab39491d68260dc81d1a57cac6f434a',1,'grpc_chttp2_data_parser_begin_frame(grpc_chttp2_data_parser *parser, gpr_uint8 flags):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5fdestroy',['grpc_chttp2_data_parser_destroy',['../frame__data_8h.html#a5927900bd0d0911de70cab715f4d4468',1,'grpc_chttp2_data_parser_destroy(grpc_chttp2_data_parser *parser):&#160;frame_data.c'],['../frame__data_8c.html#a5927900bd0d0911de70cab715f4d4468',1,'grpc_chttp2_data_parser_destroy(grpc_chttp2_data_parser *parser):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5finit',['grpc_chttp2_data_parser_init',['../frame__data_8h.html#a796d3b28bd11e75897705b4f92a5cae7',1,'grpc_chttp2_data_parser_init(grpc_chttp2_data_parser *parser):&#160;frame_data.c'],['../frame__data_8c.html#a796d3b28bd11e75897705b4f92a5cae7',1,'grpc_chttp2_data_parser_init(grpc_chttp2_data_parser *parser):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdata_5fparser_5fparse',['grpc_chttp2_data_parser_parse',['../frame__data_8h.html#abc519029db35772068e9a052076fcfa1',1,'grpc_chttp2_data_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_data.c'],['../frame__data_8c.html#abc519029db35772068e9a052076fcfa1',1,'grpc_chttp2_data_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_data.c']]],
+ ['grpc_5fchttp2_5fdecode_5ftimeout',['grpc_chttp2_decode_timeout',['../timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8',1,'grpc_chttp2_decode_timeout(const char *buffer, gpr_timespec *timeout):&#160;timeout_encoding.c'],['../timeout__encoding_8c.html#ac96a9d21da277e6a790fa8ac5846b5d8',1,'grpc_chttp2_decode_timeout(const char *buffer, gpr_timespec *timeout):&#160;timeout_encoding.c']]],
+ ['grpc_5fchttp2_5fencode',['grpc_chttp2_encode',['../stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd',1,'grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof, gpr_uint32 stream_id, grpc_chttp2_hpack_compressor *compressor, gpr_slice_buffer *output):&#160;stream_encoder.c'],['../stream__encoder_8c.html#a1fdaaa3443176e8815ffe75804b5efbd',1,'grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof, gpr_uint32 stream_id, grpc_chttp2_hpack_compressor *compressor, gpr_slice_buffer *output):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fencode_5ftimeout',['grpc_chttp2_encode_timeout',['../timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc',1,'grpc_chttp2_encode_timeout(gpr_timespec timeout, char *buffer):&#160;timeout_encoding.c'],['../timeout__encoding_8c.html#aa4128995f3b3d4fe068c1635a85f7bcc',1,'grpc_chttp2_encode_timeout(gpr_timespec timeout, char *buffer):&#160;timeout_encoding.c']]],
+ ['grpc_5fchttp2_5fflowctl_5ftrace',['grpc_chttp2_flowctl_trace',['../internal_8h.html#ac054ecf6e743093e5527787063f3acaa',1,'grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#ac054ecf6e743093e5527787063f3acaa',1,'grpc_chttp2_flowctl_trace(const char *file, int line, const char *reason, const char *context, const char *var, int is_client, gpr_uint32 stream_id, gpr_int64 current_value, gpr_int64 delta):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5ffor_5fall_5fstreams',['grpc_chttp2_for_all_streams',['../internal_8h.html#a62031f6afc6643cc2f34b4af2d547576',1,'grpc_chttp2_for_all_streams(grpc_chttp2_transport_global *transport_global, void *user_data, void(*cb)(grpc_chttp2_transport_global *transport_global, void *user_data, grpc_chttp2_stream_global *stream_global)):&#160;stream_lists.c'],['../stream__lists_8c.html#a62031f6afc6643cc2f34b4af2d547576',1,'grpc_chttp2_for_all_streams(grpc_chttp2_transport_global *transport_global, void *user_data, void(*cb)(grpc_chttp2_transport_global *transport_global, void *user_data, grpc_chttp2_stream_global *stream_global)):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fget_5falpn_5fversion_5findex',['grpc_chttp2_get_alpn_version_index',['../alpn_8h.html#a3f09d970c73c43952620b5e983c77dc5',1,'grpc_chttp2_get_alpn_version_index(size_t i):&#160;alpn.c'],['../alpn_8c.html#a3f09d970c73c43952620b5e983c77dc5',1,'grpc_chttp2_get_alpn_version_index(size_t i):&#160;alpn.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fappend',['grpc_chttp2_goaway_append',['../frame__goaway_8h.html#a71bd236ace0cb6b0f04ebb1049efc5bc',1,'grpc_chttp2_goaway_append(gpr_uint32 last_stream_id, gpr_uint32 error_code, gpr_slice debug_data, gpr_slice_buffer *slice_buffer):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a71bd236ace0cb6b0f04ebb1049efc5bc',1,'grpc_chttp2_goaway_append(gpr_uint32 last_stream_id, gpr_uint32 error_code, gpr_slice debug_data, gpr_slice_buffer *slice_buffer):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5fbegin_5fframe',['grpc_chttp2_goaway_parser_begin_frame',['../frame__goaway_8h.html#a48814915966d3dd70b73d854629813b6',1,'grpc_chttp2_goaway_parser_begin_frame(grpc_chttp2_goaway_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a2dd5fba43ce1f26f220199c1c7db0f05',1,'grpc_chttp2_goaway_parser_begin_frame(grpc_chttp2_goaway_parser *p, gpr_uint32 length, gpr_uint8 flags):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5fdestroy',['grpc_chttp2_goaway_parser_destroy',['../frame__goaway_8h.html#a5cd3e388f5844ad2c4c7d1c9488436a8',1,'grpc_chttp2_goaway_parser_destroy(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a5cd3e388f5844ad2c4c7d1c9488436a8',1,'grpc_chttp2_goaway_parser_destroy(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5finit',['grpc_chttp2_goaway_parser_init',['../frame__goaway_8h.html#a8df9b9a3fcd7bc6d679b47909c2c8f23',1,'grpc_chttp2_goaway_parser_init(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a8df9b9a3fcd7bc6d679b47909c2c8f23',1,'grpc_chttp2_goaway_parser_init(grpc_chttp2_goaway_parser *p):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgoaway_5fparser_5fparse',['grpc_chttp2_goaway_parser_parse',['../frame__goaway_8h.html#a52a6863feebfb5a9962330d42b22be2d',1,'grpc_chttp2_goaway_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_goaway.c'],['../frame__goaway_8c.html#a52a6863feebfb5a9962330d42b22be2d',1,'grpc_chttp2_goaway_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_goaway.c']]],
+ ['grpc_5fchttp2_5fgrpc_5fstatus_5fto_5fhttp2_5ferror',['grpc_chttp2_grpc_status_to_http2_error',['../status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6',1,'grpc_chttp2_grpc_status_to_http2_error(grpc_status_code status):&#160;status_conversion.c'],['../status__conversion_8c.html#a8fc288b0c9b0f2333adb3c1de2559c1d',1,'grpc_chttp2_grpc_status_to_http2_error(grpc_status_code status):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fgrpc_5fstatus_5fto_5fhttp2_5fstatus',['grpc_chttp2_grpc_status_to_http2_status',['../status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a',1,'grpc_chttp2_grpc_status_to_http2_status(grpc_status_code status):&#160;status_conversion.c'],['../status__conversion_8c.html#a30ec4cf33600ca53524bb3003c02b37a',1,'grpc_chttp2_grpc_status_to_http2_status(grpc_status_code status):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fhas_5fstreams',['grpc_chttp2_has_streams',['../internal_8h.html#a19ad8f2b321787a1255a888d5d5923f1',1,'grpc_chttp2_has_streams(grpc_chttp2_transport *t):&#160;stream_lists.c'],['../stream__lists_8c.html#a19ad8f2b321787a1255a888d5d5923f1',1,'grpc_chttp2_has_streams(grpc_chttp2_transport *t):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fheader_5fparser_5fparse',['grpc_chttp2_header_parser_parse',['../hpack__parser_8h.html#a7a92d332cfe4cdd2fe066d8c187a19c3',1,'grpc_chttp2_header_parser_parse(void *hpack_parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;hpack_parser.c'],['../hpack__parser_8c.html#a7a92d332cfe4cdd2fe066d8c187a19c3',1,'grpc_chttp2_header_parser_parse(void *hpack_parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fcompressor_5fdestroy',['grpc_chttp2_hpack_compressor_destroy',['../stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66',1,'grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c):&#160;stream_encoder.c'],['../stream__encoder_8c.html#a03663bcc8cda8973711333e62e7aff66',1,'grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fhpack_5fcompressor_5finit',['grpc_chttp2_hpack_compressor_init',['../stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89',1,'grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c, grpc_mdctx *mdctx):&#160;stream_encoder.c'],['../stream__encoder_8c.html#ad9ec21ece920fa6f844eeecf4b5c4149',1,'grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c, grpc_mdctx *ctx):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fdestroy',['grpc_chttp2_hpack_parser_destroy',['../hpack__parser_8h.html#ae43cb55b0e7102694c68c29d93cd3573',1,'grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c'],['../hpack__parser_8c.html#ae43cb55b0e7102694c68c29d93cd3573',1,'grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5finit',['grpc_chttp2_hpack_parser_init',['../hpack__parser_8h.html#ae9f87d2fc6cdda2cfcedd228feff9a43',1,'grpc_chttp2_hpack_parser_init(grpc_chttp2_hpack_parser *p, grpc_mdctx *mdctx):&#160;hpack_parser.c'],['../hpack__parser_8c.html#ae9f87d2fc6cdda2cfcedd228feff9a43',1,'grpc_chttp2_hpack_parser_init(grpc_chttp2_hpack_parser *p, grpc_mdctx *mdctx):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fparse',['grpc_chttp2_hpack_parser_parse',['../hpack__parser_8h.html#a883d1c556ca6aaea2fbb04dda7928ebc',1,'grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end):&#160;hpack_parser.c'],['../hpack__parser_8c.html#a883d1c556ca6aaea2fbb04dda7928ebc',1,'grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fset_5fhas_5fpriority',['grpc_chttp2_hpack_parser_set_has_priority',['../hpack__parser_8h.html#a9fc7e7f152280acc512689e138805eee',1,'grpc_chttp2_hpack_parser_set_has_priority(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c'],['../hpack__parser_8c.html#a9fc7e7f152280acc512689e138805eee',1,'grpc_chttp2_hpack_parser_set_has_priority(grpc_chttp2_hpack_parser *p):&#160;hpack_parser.c']]],
+ ['grpc_5fchttp2_5fhpack_5fvarint_5flength',['grpc_chttp2_hpack_varint_length',['../varint_8h.html#a2b4567fce80183246809231da7d798dc',1,'grpc_chttp2_hpack_varint_length(gpr_uint32 tail_value):&#160;varint.c'],['../varint_8c.html#a2b4567fce80183246809231da7d798dc',1,'grpc_chttp2_hpack_varint_length(gpr_uint32 tail_value):&#160;varint.c']]],
+ ['grpc_5fchttp2_5fhpack_5fwrite_5fvarint_5ftail',['grpc_chttp2_hpack_write_varint_tail',['../varint_8h.html#a7fcc1174a3686feebdb7085e30283a66',1,'grpc_chttp2_hpack_write_varint_tail(gpr_uint32 tail_value, gpr_uint8 *target, int tail_length):&#160;varint.c'],['../varint_8c.html#a7fcc1174a3686feebdb7085e30283a66',1,'grpc_chttp2_hpack_write_varint_tail(gpr_uint32 tail_value, gpr_uint8 *target, int tail_length):&#160;varint.c']]],
+ ['grpc_5fchttp2_5fhptbl_5fadd',['grpc_chttp2_hptbl_add',['../hpack__table_8h.html#a1ad3f82e2b6f66cf022f672861b65b84',1,'grpc_chttp2_hptbl_add(grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c'],['../hpack__table_8c.html#a1ad3f82e2b6f66cf022f672861b65b84',1,'grpc_chttp2_hptbl_add(grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5fdestroy',['grpc_chttp2_hptbl_destroy',['../hpack__table_8h.html#aeef559491f324858e464dff14851d857',1,'grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl *tbl):&#160;hpack_table.c'],['../hpack__table_8c.html#aeef559491f324858e464dff14851d857',1,'grpc_chttp2_hptbl_destroy(grpc_chttp2_hptbl *tbl):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5ffind',['grpc_chttp2_hptbl_find',['../hpack__table_8h.html#aaa946e97b0f962e4d7e8fb8b4886f1ba',1,'grpc_chttp2_hptbl_find(const grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c'],['../hpack__table_8c.html#aaa946e97b0f962e4d7e8fb8b4886f1ba',1,'grpc_chttp2_hptbl_find(const grpc_chttp2_hptbl *tbl, grpc_mdelem *md):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5finit',['grpc_chttp2_hptbl_init',['../hpack__table_8h.html#a17492a855a901fafa3086087e74a16f0',1,'grpc_chttp2_hptbl_init(grpc_chttp2_hptbl *tbl, grpc_mdctx *mdctx):&#160;hpack_table.c'],['../hpack__table_8c.html#a17492a855a901fafa3086087e74a16f0',1,'grpc_chttp2_hptbl_init(grpc_chttp2_hptbl *tbl, grpc_mdctx *mdctx):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhptbl_5flookup',['grpc_chttp2_hptbl_lookup',['../hpack__table_8h.html#a3e857648df8d6b50e5faac502bd5fe5b',1,'grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl *tbl, gpr_uint32 index):&#160;hpack_table.c'],['../hpack__table_8c.html#a3e857648df8d6b50e5faac502bd5fe5b',1,'grpc_chttp2_hptbl_lookup(const grpc_chttp2_hptbl *tbl, gpr_uint32 index):&#160;hpack_table.c']]],
+ ['grpc_5fchttp2_5fhttp2_5ferror_5fto_5fgrpc_5fstatus',['grpc_chttp2_http2_error_to_grpc_status',['../status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2',1,'grpc_chttp2_http2_error_to_grpc_status(grpc_chttp2_error_code error):&#160;status_conversion.c'],['../status__conversion_8c.html#ae4babdebe7ad9dc3b68b37b86d00f3e2',1,'grpc_chttp2_http2_error_to_grpc_status(grpc_chttp2_error_code error):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fhttp2_5fstatus_5fto_5fgrpc_5fstatus',['grpc_chttp2_http2_status_to_grpc_status',['../status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12',1,'grpc_chttp2_http2_status_to_grpc_status(int status):&#160;status_conversion.c'],['../status__conversion_8c.html#a6e442a5cee1439a8cf37203b40956d12',1,'grpc_chttp2_http2_status_to_grpc_status(int status):&#160;status_conversion.c']]],
+ ['grpc_5fchttp2_5fhuffman_5fcompress',['grpc_chttp2_huffman_compress',['../bin__encoder_8h.html#a4445cb57a3331537c4d942764b555123',1,'grpc_chttp2_huffman_compress(gpr_slice input):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a4445cb57a3331537c4d942764b555123',1,'grpc_chttp2_huffman_compress(gpr_slice input):&#160;bin_encoder.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fadd',['grpc_chttp2_incoming_metadata_buffer_add',['../incoming__metadata_8h.html#a0b7de798f56d0202db1102c2c87313d0',1,'grpc_chttp2_incoming_metadata_buffer_add(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_mdelem *elem):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a0b7de798f56d0202db1102c2c87313d0',1,'grpc_chttp2_incoming_metadata_buffer_add(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_mdelem *elem):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fdestroy',['grpc_chttp2_incoming_metadata_buffer_destroy',['../incoming__metadata_8h.html#a640db57113d389432d42bda5e1169b31',1,'grpc_chttp2_incoming_metadata_buffer_destroy(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a640db57113d389432d42bda5e1169b31',1,'grpc_chttp2_incoming_metadata_buffer_destroy(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5finit',['grpc_chttp2_incoming_metadata_buffer_init',['../incoming__metadata_8h.html#acb327575a569f6d7fbb40c309119bc00',1,'grpc_chttp2_incoming_metadata_buffer_init(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#acb327575a569f6d7fbb40c309119bc00',1,'grpc_chttp2_incoming_metadata_buffer_init(grpc_chttp2_incoming_metadata_buffer *buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fplace_5fmetadata_5fbatch_5finto',['grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into',['../incoming__metadata_8h.html#a6b6375d9d949b70f2d38ceeb57437137',1,'grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a6b6375d9d949b70f2d38ceeb57437137',1,'grpc_chttp2_incoming_metadata_buffer_place_metadata_batch_into(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fpostprocess_5fsopb_5fand_5fbegin_5flive_5fop',['grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op',['../incoming__metadata_8h.html#aafe1950af666833c29b8086f4931be4d',1,'grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb, grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#aafe1950af666833c29b8086f4931be4d',1,'grpc_chttp2_incoming_metadata_buffer_postprocess_sopb_and_begin_live_op(grpc_chttp2_incoming_metadata_buffer *buffer, grpc_stream_op_buffer *sopb, grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5freset',['grpc_chttp2_incoming_metadata_buffer_reset',['../incoming__metadata_8h.html#ad1f653fae150dc145f909b855a28e883',1,'incoming_metadata.h']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fset_5fdeadline',['grpc_chttp2_incoming_metadata_buffer_set_deadline',['../incoming__metadata_8h.html#aba03088316cada64053b68851b5a5603',1,'grpc_chttp2_incoming_metadata_buffer_set_deadline(grpc_chttp2_incoming_metadata_buffer *buffer, gpr_timespec deadline):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#aba03088316cada64053b68851b5a5603',1,'grpc_chttp2_incoming_metadata_buffer_set_deadline(grpc_chttp2_incoming_metadata_buffer *buffer, gpr_timespec deadline):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5fbuffer_5fswap',['grpc_chttp2_incoming_metadata_buffer_swap',['../incoming__metadata_8c.html#a3ae615483b18241fe3a8fe7c9897cee4',1,'incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fincoming_5fmetadata_5flive_5fop_5fbuffer_5fend',['grpc_chttp2_incoming_metadata_live_op_buffer_end',['../incoming__metadata_8h.html#a84fcf79fb151ceab04531f8921ed51f2',1,'grpc_chttp2_incoming_metadata_live_op_buffer_end(grpc_chttp2_incoming_metadata_live_op_buffer *live_op_buffer):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a5b987a9d3099c62ad4a6c198242b884e',1,'grpc_chttp2_incoming_metadata_live_op_buffer_end(grpc_chttp2_incoming_metadata_live_op_buffer *buffer):&#160;incoming_metadata.c']]],
+ ['grpc_5fchttp2_5fis_5falpn_5fversion_5fsupported',['grpc_chttp2_is_alpn_version_supported',['../alpn_8h.html#ad4d4c481dfaefe5690ccb83861466f6b',1,'grpc_chttp2_is_alpn_version_supported(const char *version, size_t size):&#160;alpn.c'],['../alpn_8c.html#ad4d4c481dfaefe5690ccb83861466f6b',1,'grpc_chttp2_is_alpn_version_supported(const char *version, size_t size):&#160;alpn.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fcancelled_5fwaiting_5ffor_5fwriting',['grpc_chttp2_list_add_cancelled_waiting_for_writing',['../internal_8h.html#ad26dae5e10a026530f50b133359b3ee2',1,'grpc_chttp2_list_add_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ad26dae5e10a026530f50b133359b3ee2',1,'grpc_chttp2_list_add_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fclosed_5fwaiting_5ffor_5fparsing',['grpc_chttp2_list_add_closed_waiting_for_parsing',['../internal_8h.html#a1208f234dcb6b2a73be3c875b2b52907',1,'grpc_chttp2_list_add_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a1208f234dcb6b2a73be3c875b2b52907',1,'grpc_chttp2_list_add_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5ffirst_5fwritable_5fstream',['grpc_chttp2_list_add_first_writable_stream',['../internal_8h.html#a8858ea6e4f6e7c363985793b403a0ac9',1,'grpc_chttp2_list_add_first_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a8858ea6e4f6e7c363985793b403a0ac9',1,'grpc_chttp2_list_add_first_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fincoming_5fwindow_5fupdated',['grpc_chttp2_list_add_incoming_window_updated',['../internal_8h.html#a1d99597284d4c0a0bd3cbf102ff415a2',1,'grpc_chttp2_list_add_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a1d99597284d4c0a0bd3cbf102ff415a2',1,'grpc_chttp2_list_add_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fparsing_5fseen_5fstream',['grpc_chttp2_list_add_parsing_seen_stream',['../internal_8h.html#a771e6e4a553060bfac71d00b5f866877',1,'grpc_chttp2_list_add_parsing_seen_stream(grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing):&#160;stream_lists.c'],['../stream__lists_8c.html#a771e6e4a553060bfac71d00b5f866877',1,'grpc_chttp2_list_add_parsing_seen_stream(grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fread_5fwrite_5fstate_5fchanged',['grpc_chttp2_list_add_read_write_state_changed',['../internal_8h.html#aa6b5168e8b96d0bc9f9d84a4cbef653a',1,'grpc_chttp2_list_add_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#aa6b5168e8b96d0bc9f9d84a4cbef653a',1,'grpc_chttp2_list_add_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwaiting_5ffor_5fconcurrency',['grpc_chttp2_list_add_waiting_for_concurrency',['../internal_8h.html#a71d9dea1ff323c374d7ea47818defc2e',1,'grpc_chttp2_list_add_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a71d9dea1ff323c374d7ea47818defc2e',1,'grpc_chttp2_list_add_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwritable_5fstream',['grpc_chttp2_list_add_writable_stream',['../internal_8h.html#a117877f5202f072aa35e7ada0379d0db',1,'grpc_chttp2_list_add_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a117877f5202f072aa35e7ada0379d0db',1,'grpc_chttp2_list_add_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwriting_5fstream',['grpc_chttp2_list_add_writing_stream',['../internal_8h.html#af5740bd38b626e875166e60e697e099e',1,'grpc_chttp2_list_add_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#af5740bd38b626e875166e60e697e099e',1,'grpc_chttp2_list_add_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fadd_5fwritten_5fstream',['grpc_chttp2_list_add_written_stream',['../internal_8h.html#ac6b7a089de78b67a9650e42b4a76ac69',1,'grpc_chttp2_list_add_written_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#ac6b7a089de78b67a9650e42b4a76ac69',1,'grpc_chttp2_list_add_written_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing *stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fhave_5fwriting_5fstreams',['grpc_chttp2_list_have_writing_streams',['../internal_8h.html#a2c7a37cef27c29528850701b9cf772d4',1,'grpc_chttp2_list_have_writing_streams(grpc_chttp2_transport_writing *transport_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#a2c7a37cef27c29528850701b9cf772d4',1,'grpc_chttp2_list_have_writing_streams(grpc_chttp2_transport_writing *transport_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fcancelled_5fwaiting_5ffor_5fwriting',['grpc_chttp2_list_pop_cancelled_waiting_for_writing',['../internal_8h.html#ad2d2a802b9072505d1e6f8bb68727f44',1,'grpc_chttp2_list_pop_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ad2d2a802b9072505d1e6f8bb68727f44',1,'grpc_chttp2_list_pop_cancelled_waiting_for_writing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fclosed_5fwaiting_5ffor_5fparsing',['grpc_chttp2_list_pop_closed_waiting_for_parsing',['../internal_8h.html#ad0434ee720b66a5ee51c9904548857af',1,'grpc_chttp2_list_pop_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ad0434ee720b66a5ee51c9904548857af',1,'grpc_chttp2_list_pop_closed_waiting_for_parsing(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fincoming_5fwindow_5fupdated',['grpc_chttp2_list_pop_incoming_window_updated',['../internal_8h.html#a90a6cb6d111a750ab1f28bf4e438bb62',1,'grpc_chttp2_list_pop_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c'],['../stream__lists_8c.html#a90a6cb6d111a750ab1f28bf4e438bb62',1,'grpc_chttp2_list_pop_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fparsing_5fseen_5fstream',['grpc_chttp2_list_pop_parsing_seen_stream',['../internal_8h.html#a1d1ec9b2edce465d2fd18002a403878d',1,'grpc_chttp2_list_pop_parsing_seen_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c'],['../stream__lists_8c.html#a1d1ec9b2edce465d2fd18002a403878d',1,'grpc_chttp2_list_pop_parsing_seen_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_parsing **stream_parsing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fread_5fwrite_5fstate_5fchanged',['grpc_chttp2_list_pop_read_write_state_changed',['../internal_8h.html#ac9e8165e01d872ed42c0333aee9d31c4',1,'grpc_chttp2_list_pop_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#ac9e8165e01d872ed42c0333aee9d31c4',1,'grpc_chttp2_list_pop_read_write_state_changed(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwaiting_5ffor_5fconcurrency',['grpc_chttp2_list_pop_waiting_for_concurrency',['../internal_8h.html#a6b62b98b415b3984616d4e851f0ff5c0',1,'grpc_chttp2_list_pop_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a6b62b98b415b3984616d4e851f0ff5c0',1,'grpc_chttp2_list_pop_waiting_for_concurrency(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global **stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwritable_5fstream',['grpc_chttp2_list_pop_writable_stream',['../internal_8h.html#aeac970afdd6294bac9d1dcb84b702167',1,'grpc_chttp2_list_pop_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#aeac970afdd6294bac9d1dcb84b702167',1,'grpc_chttp2_list_pop_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwriting_5fstream',['grpc_chttp2_list_pop_writing_stream',['../internal_8h.html#aba4771272cd49e3012d81c05fad1bdb7',1,'grpc_chttp2_list_pop_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#aba4771272cd49e3012d81c05fad1bdb7',1,'grpc_chttp2_list_pop_writing_stream(grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fpop_5fwritten_5fstream',['grpc_chttp2_list_pop_written_stream',['../internal_8h.html#a3107afcec2694dd7c7855d540a560090',1,'grpc_chttp2_list_pop_written_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c'],['../stream__lists_8c.html#a3107afcec2694dd7c7855d540a560090',1,'grpc_chttp2_list_pop_written_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing, grpc_chttp2_stream_global **stream_global, grpc_chttp2_stream_writing **stream_writing):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fremove_5fincoming_5fwindow_5fupdated',['grpc_chttp2_list_remove_incoming_window_updated',['../internal_8h.html#a8a7f981b74e1e99b0a1afe0c45702d89',1,'grpc_chttp2_list_remove_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a8a7f981b74e1e99b0a1afe0c45702d89',1,'grpc_chttp2_list_remove_incoming_window_updated(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5flist_5fremove_5fwritable_5fstream',['grpc_chttp2_list_remove_writable_stream',['../internal_8h.html#a789d5bcd10c0f1c7ad2fc32190fd87a0',1,'grpc_chttp2_list_remove_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c'],['../stream__lists_8c.html#a789d5bcd10c0f1c7ad2fc32190fd87a0',1,'grpc_chttp2_list_remove_writable_stream(grpc_chttp2_transport_global *transport_global, grpc_chttp2_stream_global *stream_global):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fnum_5falpn_5fversions',['grpc_chttp2_num_alpn_versions',['../alpn_8h.html#aa7e91d317127b4a8a8a1cbb6acc942f5',1,'grpc_chttp2_num_alpn_versions(void):&#160;alpn.c'],['../alpn_8c.html#aa7e91d317127b4a8a8a1cbb6acc942f5',1,'grpc_chttp2_num_alpn_versions(void):&#160;alpn.c']]],
+ ['grpc_5fchttp2_5fparsing_5faccept_5fstream',['grpc_chttp2_parsing_accept_stream',['../internal_8h.html#a25a39d1d95e7140c1ae8f765ffd92847',1,'grpc_chttp2_parsing_accept_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a25a39d1d95e7140c1ae8f765ffd92847',1,'grpc_chttp2_parsing_accept_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fparsing_5fbecome_5fskip_5fparser',['grpc_chttp2_parsing_become_skip_parser',['../internal_8h.html#ad6a13571d6666f45a64c8e0f6b234e60',1,'grpc_chttp2_parsing_become_skip_parser(grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c'],['../parsing_8c.html#ad6a13571d6666f45a64c8e0f6b234e60',1,'grpc_chttp2_parsing_become_skip_parser(grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fparsing_5flookup_5fstream',['grpc_chttp2_parsing_lookup_stream',['../internal_8h.html#ae19b5968ebea2a077650652f1a3af46d',1,'grpc_chttp2_parsing_lookup_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#ae19b5968ebea2a077650652f1a3af46d',1,'grpc_chttp2_parsing_lookup_stream(grpc_chttp2_transport_parsing *transport_parsing, gpr_uint32 id):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fperform_5fread',['grpc_chttp2_perform_read',['../internal_8h.html#abeaab2fead1bddefe92af0bc61a3a33f',1,'grpc_chttp2_perform_read(grpc_chttp2_transport_parsing *transport_parsing, gpr_slice slice):&#160;parsing.c'],['../parsing_8c.html#abeaab2fead1bddefe92af0bc61a3a33f',1,'grpc_chttp2_perform_read(grpc_chttp2_transport_parsing *transport_parsing, gpr_slice slice):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fperform_5fwrites',['grpc_chttp2_perform_writes',['../internal_8h.html#a8fa6e3087336e9d487f3987148cc3930',1,'grpc_chttp2_perform_writes(grpc_chttp2_transport_writing *transport_writing, grpc_endpoint *endpoint):&#160;writing.c'],['../writing_8c.html#a8fa6e3087336e9d487f3987148cc3930',1,'grpc_chttp2_perform_writes(grpc_chttp2_transport_writing *transport_writing, grpc_endpoint *endpoint):&#160;writing.c']]],
+ ['grpc_5fchttp2_5fping_5fcreate',['grpc_chttp2_ping_create',['../frame__ping_8h.html#a80bb3f2ba166dcbd164aa04e680c58e3',1,'grpc_chttp2_ping_create(gpr_uint8 ack, gpr_uint8 *opaque_8bytes):&#160;frame_ping.c'],['../frame__ping_8c.html#a80bb3f2ba166dcbd164aa04e680c58e3',1,'grpc_chttp2_ping_create(gpr_uint8 ack, gpr_uint8 *opaque_8bytes):&#160;frame_ping.c']]],
+ ['grpc_5fchttp2_5fping_5fparser_5fbegin_5fframe',['grpc_chttp2_ping_parser_begin_frame',['../frame__ping_8h.html#a76f66f3bbe53a20610183253d30c57f7',1,'grpc_chttp2_ping_parser_begin_frame(grpc_chttp2_ping_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_ping.c'],['../frame__ping_8c.html#a76f66f3bbe53a20610183253d30c57f7',1,'grpc_chttp2_ping_parser_begin_frame(grpc_chttp2_ping_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_ping.c']]],
+ ['grpc_5fchttp2_5fping_5fparser_5fparse',['grpc_chttp2_ping_parser_parse',['../frame__ping_8h.html#ace393509f26406ff6bdc9e60e7534042',1,'grpc_chttp2_ping_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_ping.c'],['../frame__ping_8c.html#ace393509f26406ff6bdc9e60e7534042',1,'grpc_chttp2_ping_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_ping.c']]],
+ ['grpc_5fchttp2_5fpreencode',['grpc_chttp2_preencode',['../stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022',1,'grpc_chttp2_preencode(grpc_stream_op *inops, size_t *inops_count, gpr_uint32 max_flow_controlled_bytes, grpc_stream_op_buffer *outops):&#160;stream_encoder.c'],['../stream__encoder_8c.html#a3ee751a56974f45d33d89ce7f02cf022',1,'grpc_chttp2_preencode(grpc_stream_op *inops, size_t *inops_count, gpr_uint32 max_flow_controlled_bytes, grpc_stream_op_buffer *outops):&#160;stream_encoder.c']]],
+ ['grpc_5fchttp2_5fprepare_5fto_5fread',['grpc_chttp2_prepare_to_read',['../internal_8h.html#ae444a83dc73e9a658e7df625a04b101a',1,'grpc_chttp2_prepare_to_read(grpc_chttp2_transport_global *global, grpc_chttp2_transport_parsing *parsing):&#160;parsing.c'],['../parsing_8c.html#ae010263eae7de4e41a74679b11579825',1,'grpc_chttp2_prepare_to_read(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fpublish_5freads',['grpc_chttp2_publish_reads',['../internal_8h.html#a4d137f455d722521fd7dab4fd13e1697',1,'grpc_chttp2_publish_reads(grpc_chttp2_transport_global *global, grpc_chttp2_transport_parsing *parsing):&#160;parsing.c'],['../parsing_8c.html#aba67e2ed1d9d5ac25c0d5b2ea31e8137',1,'grpc_chttp2_publish_reads(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_parsing *transport_parsing):&#160;parsing.c']]],
+ ['grpc_5fchttp2_5fregister_5fstream',['grpc_chttp2_register_stream',['../internal_8h.html#accb6dbbacb57c3f9860e6ec6eca2390e',1,'grpc_chttp2_register_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s):&#160;stream_lists.c'],['../stream__lists_8c.html#accb6dbbacb57c3f9860e6ec6eca2390e',1,'grpc_chttp2_register_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fcreate',['grpc_chttp2_rst_stream_create',['../frame__rst__stream_8h.html#aecab04c529c662e1703ae01fb70d7687',1,'grpc_chttp2_rst_stream_create(gpr_uint32 stream_id, gpr_uint32 code):&#160;frame_rst_stream.c'],['../frame__rst__stream_8c.html#a6a627690f79faf403072532d19a08895',1,'grpc_chttp2_rst_stream_create(gpr_uint32 id, gpr_uint32 code):&#160;frame_rst_stream.c']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fparser_5fbegin_5fframe',['grpc_chttp2_rst_stream_parser_begin_frame',['../frame__rst__stream_8h.html#a3138dce884dfcb8c9653de757261d16e',1,'grpc_chttp2_rst_stream_parser_begin_frame(grpc_chttp2_rst_stream_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_rst_stream.c'],['../frame__rst__stream_8c.html#a3138dce884dfcb8c9653de757261d16e',1,'grpc_chttp2_rst_stream_parser_begin_frame(grpc_chttp2_rst_stream_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_rst_stream.c']]],
+ ['grpc_5fchttp2_5frst_5fstream_5fparser_5fparse',['grpc_chttp2_rst_stream_parser_parse',['../frame__rst__stream_8h.html#ad89852ed41fa9b715fb86ab6193160fc',1,'grpc_chttp2_rst_stream_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_rst_stream.c'],['../frame__rst__stream_8c.html#ad89852ed41fa9b715fb86ab6193160fc',1,'grpc_chttp2_rst_stream_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_rst_stream.c']]],
+ ['grpc_5fchttp2_5fschedule_5fclosure',['grpc_chttp2_schedule_closure',['../internal_8h.html#a6f8b16bb6048f85107966a4be9ff4a4d',1,'grpc_chttp2_schedule_closure(grpc_chttp2_transport_global *transport_global, grpc_iomgr_closure *closure, int success):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a6f8b16bb6048f85107966a4be9ff4a4d',1,'grpc_chttp2_schedule_closure(grpc_chttp2_transport_global *transport_global, grpc_iomgr_closure *closure, int success):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5fsettings_5fack_5fcreate',['grpc_chttp2_settings_ack_create',['../frame__settings_8h.html#aa1382503cac023cb2cbf516427ec7954',1,'grpc_chttp2_settings_ack_create(void):&#160;frame_settings.c'],['../frame__settings_8c.html#aa1382503cac023cb2cbf516427ec7954',1,'grpc_chttp2_settings_ack_create(void):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fcreate',['grpc_chttp2_settings_create',['../frame__settings_8h.html#aa7db515ebcf9a8add8ade457502d065a',1,'grpc_chttp2_settings_create(gpr_uint32 *old, const gpr_uint32 *new, gpr_uint32 force_mask, size_t count):&#160;frame_settings.c'],['../frame__settings_8c.html#aa7db515ebcf9a8add8ade457502d065a',1,'grpc_chttp2_settings_create(gpr_uint32 *old, const gpr_uint32 *new, gpr_uint32 force_mask, size_t count):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fparser_5fbegin_5fframe',['grpc_chttp2_settings_parser_begin_frame',['../frame__settings_8h.html#a8ad385f78097ad98242ae5a8b4bc9ccf',1,'grpc_chttp2_settings_parser_begin_frame(grpc_chttp2_settings_parser *parser, gpr_uint32 length, gpr_uint8 flags, gpr_uint32 *settings):&#160;frame_settings.c'],['../frame__settings_8c.html#a8ad385f78097ad98242ae5a8b4bc9ccf',1,'grpc_chttp2_settings_parser_begin_frame(grpc_chttp2_settings_parser *parser, gpr_uint32 length, gpr_uint8 flags, gpr_uint32 *settings):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fsettings_5fparser_5fparse',['grpc_chttp2_settings_parser_parse',['../frame__settings_8h.html#a15ff513efa0a8683d5df89ee5b369544',1,'grpc_chttp2_settings_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_settings.c'],['../frame__settings_8c.html#a24ea784f4fb455974f9b4e5d66ee1416',1,'grpc_chttp2_settings_parser_parse(void *p, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_settings.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fadd',['grpc_chttp2_stream_map_add',['../stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560',1,'grpc_chttp2_stream_map_add(grpc_chttp2_stream_map *map, gpr_uint32 key, void *value):&#160;stream_map.c'],['../stream__map_8c.html#a45ba47442f3bc9d3b6c6841a6f855560',1,'grpc_chttp2_stream_map_add(grpc_chttp2_stream_map *map, gpr_uint32 key, void *value):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fdelete',['grpc_chttp2_stream_map_delete',['../stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e',1,'grpc_chttp2_stream_map_delete(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c'],['../stream__map_8c.html#ab2236a03f8efe26f8a1a3818bed7844e',1,'grpc_chttp2_stream_map_delete(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fdestroy',['grpc_chttp2_stream_map_destroy',['../stream__map_8h.html#ad002379073f1a7c545a186fa0498f077',1,'grpc_chttp2_stream_map_destroy(grpc_chttp2_stream_map *map):&#160;stream_map.c'],['../stream__map_8c.html#ad002379073f1a7c545a186fa0498f077',1,'grpc_chttp2_stream_map_destroy(grpc_chttp2_stream_map *map):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5ffind',['grpc_chttp2_stream_map_find',['../stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4',1,'grpc_chttp2_stream_map_find(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c'],['../stream__map_8c.html#abdc9ffa6b3f22fc039ab6457a18e3fd4',1,'grpc_chttp2_stream_map_find(grpc_chttp2_stream_map *map, gpr_uint32 key):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5ffor_5feach',['grpc_chttp2_stream_map_for_each',['../stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3',1,'grpc_chttp2_stream_map_for_each(grpc_chttp2_stream_map *map, void(*f)(void *user_data, gpr_uint32 key, void *value), void *user_data):&#160;stream_map.c'],['../stream__map_8c.html#a113657d2ad2cdffe3d9d00fe30996aa3',1,'grpc_chttp2_stream_map_for_each(grpc_chttp2_stream_map *map, void(*f)(void *user_data, gpr_uint32 key, void *value), void *user_data):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5finit',['grpc_chttp2_stream_map_init',['../stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d',1,'grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map, size_t initial_capacity):&#160;stream_map.c'],['../stream__map_8c.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d',1,'grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map, size_t initial_capacity):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fmove_5finto',['grpc_chttp2_stream_map_move_into',['../stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9',1,'grpc_chttp2_stream_map_move_into(grpc_chttp2_stream_map *src, grpc_chttp2_stream_map *dst):&#160;stream_map.c'],['../stream__map_8c.html#ac8399a7345ae2a716a1eb7594d6d0aa9',1,'grpc_chttp2_stream_map_move_into(grpc_chttp2_stream_map *src, grpc_chttp2_stream_map *dst):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fstream_5fmap_5fsize',['grpc_chttp2_stream_map_size',['../stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85',1,'grpc_chttp2_stream_map_size(grpc_chttp2_stream_map *map):&#160;stream_map.c'],['../stream__map_8c.html#a9f3f7360b053c5507b8bd792ba7e9e85',1,'grpc_chttp2_stream_map_size(grpc_chttp2_stream_map *map):&#160;stream_map.c']]],
+ ['grpc_5fchttp2_5fterminate_5fwriting',['grpc_chttp2_terminate_writing',['../internal_8h.html#a83baade3ee315270b6d34fc6fbecb30c',1,'grpc_chttp2_terminate_writing(grpc_chttp2_transport_writing *transport_writing, int success):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a83baade3ee315270b6d34fc6fbecb30c',1,'grpc_chttp2_terminate_writing(grpc_chttp2_transport_writing *transport_writing, int success):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5ftransport_5fstart_5freading',['grpc_chttp2_transport_start_reading',['../chttp2__transport_8h.html#a73a9f03068253da126388dd890f1ee7d',1,'grpc_chttp2_transport_start_reading(grpc_transport *transport, gpr_slice *slices, size_t nslices):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a73a9f03068253da126388dd890f1ee7d',1,'grpc_chttp2_transport_start_reading(grpc_transport *transport, gpr_slice *slices, size_t nslices):&#160;chttp2_transport.c']]],
+ ['grpc_5fchttp2_5funlocking_5fcheck_5fwrites',['grpc_chttp2_unlocking_check_writes',['../internal_8h.html#a154399c46a1f7b901491acb4c04d19d3',1,'grpc_chttp2_unlocking_check_writes(grpc_chttp2_transport_global *global, grpc_chttp2_transport_writing *writing):&#160;writing.c'],['../writing_8c.html#a309a5e92de22678f146956743d86f18a',1,'grpc_chttp2_unlocking_check_writes(grpc_chttp2_transport_global *transport_global, grpc_chttp2_transport_writing *transport_writing):&#160;writing.c']]],
+ ['grpc_5fchttp2_5funregister_5fstream',['grpc_chttp2_unregister_stream',['../internal_8h.html#a558d8331836125098834d28a94e39bcc',1,'grpc_chttp2_unregister_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s) GRPC_MUST_USE_RESULT:&#160;stream_lists.c'],['../stream__lists_8c.html#a9a096df2132a082f0fcd5b1f8010bf84',1,'grpc_chttp2_unregister_stream(grpc_chttp2_transport *t, grpc_chttp2_stream *s):&#160;stream_lists.c']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fcreate',['grpc_chttp2_window_update_create',['../frame__window__update_8h.html#a98b5291151f7f1b9ea69a988bbe66fe0',1,'grpc_chttp2_window_update_create(gpr_uint32 id, gpr_uint32 window_delta):&#160;frame_window_update.c'],['../frame__window__update_8c.html#a66b55a7299f42a5862cdd349afc6d6ac',1,'grpc_chttp2_window_update_create(gpr_uint32 id, gpr_uint32 window_update):&#160;frame_window_update.c']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fparser_5fbegin_5fframe',['grpc_chttp2_window_update_parser_begin_frame',['../frame__window__update_8h.html#ad675abd4715d42665d37f606447dcde8',1,'grpc_chttp2_window_update_parser_begin_frame(grpc_chttp2_window_update_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_window_update.c'],['../frame__window__update_8c.html#ad675abd4715d42665d37f606447dcde8',1,'grpc_chttp2_window_update_parser_begin_frame(grpc_chttp2_window_update_parser *parser, gpr_uint32 length, gpr_uint8 flags):&#160;frame_window_update.c']]],
+ ['grpc_5fchttp2_5fwindow_5fupdate_5fparser_5fparse',['grpc_chttp2_window_update_parser_parse',['../frame__window__update_8h.html#ab1c1b5d960c0ed5cfff799476b4e425a',1,'grpc_chttp2_window_update_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_window_update.c'],['../frame__window__update_8c.html#ab1c1b5d960c0ed5cfff799476b4e425a',1,'grpc_chttp2_window_update_parser_parse(void *parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last):&#160;frame_window_update.c']]],
+ ['grpc_5fclient_5fchannel_5fadd_5finterested_5fparty',['grpc_client_channel_add_interested_party',['../client__channel_8h.html#ac31482c5bf741292f7598367655fd5ee',1,'grpc_client_channel_add_interested_party(grpc_channel_element *channel, grpc_pollset *pollset):&#160;client_channel.c'],['../client__channel_8c.html#a7b288cd209db3fac0c4cd5d4f8fbf3b3',1,'grpc_client_channel_add_interested_party(grpc_channel_element *elem, grpc_pollset *pollset):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fcheck_5fconnectivity_5fstate',['grpc_client_channel_check_connectivity_state',['../client__channel_8h.html#ae257a5817fa8e50df430d4a2132deed6',1,'grpc_client_channel_check_connectivity_state(grpc_channel_element *elem, int try_to_connect):&#160;client_channel.c'],['../client__channel_8c.html#ae257a5817fa8e50df430d4a2132deed6',1,'grpc_client_channel_check_connectivity_state(grpc_channel_element *elem, int try_to_connect):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fdel_5finterested_5fparty',['grpc_client_channel_del_interested_party',['../client__channel_8h.html#a495327ded305a2211cc39f7c5ecf5c8d',1,'grpc_client_channel_del_interested_party(grpc_channel_element *channel, grpc_pollset *pollset):&#160;client_channel.c'],['../client__channel_8c.html#a36a91904b5c5cce4a334a9e055b35f78',1,'grpc_client_channel_del_interested_party(grpc_channel_element *elem, grpc_pollset *pollset):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fget_5fconnecting_5fpollset_5fset',['grpc_client_channel_get_connecting_pollset_set',['../client__channel_8h.html#ab6ddde66c53ca2fec899def7d72234ad',1,'grpc_client_channel_get_connecting_pollset_set(grpc_channel_element *elem):&#160;client_channel.c'],['../client__channel_8c.html#ab6ddde66c53ca2fec899def7d72234ad',1,'grpc_client_channel_get_connecting_pollset_set(grpc_channel_element *elem):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fset_5fresolver',['grpc_client_channel_set_resolver',['../client__channel_8h.html#a86757e52c8e3f20d553f999c62589993',1,'grpc_client_channel_set_resolver(grpc_channel_stack *channel_stack, grpc_resolver *resolver):&#160;client_channel.c'],['../client__channel_8c.html#a86757e52c8e3f20d553f999c62589993',1,'grpc_client_channel_set_resolver(grpc_channel_stack *channel_stack, grpc_resolver *resolver):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fchannel_5fwatch_5fconnectivity_5fstate',['grpc_client_channel_watch_connectivity_state',['../client__channel_8h.html#a037d0d7720ae9a68669ad9552f7ee69c',1,'grpc_client_channel_watch_connectivity_state(grpc_channel_element *elem, grpc_connectivity_state *state, grpc_iomgr_closure *on_complete):&#160;client_channel.c'],['../client__channel_8c.html#a037d0d7720ae9a68669ad9552f7ee69c',1,'grpc_client_channel_watch_connectivity_state(grpc_channel_element *elem, grpc_connectivity_state *state, grpc_iomgr_closure *on_complete):&#160;client_channel.c']]],
+ ['grpc_5fclient_5fconfig_5fcreate',['grpc_client_config_create',['../client__config_8h.html#a165901d77b066794c0822a683d167359',1,'grpc_client_config_create():&#160;client_config.c'],['../client__config_8c.html#a165901d77b066794c0822a683d167359',1,'grpc_client_config_create():&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5fget_5flb_5fpolicy',['grpc_client_config_get_lb_policy',['../client__config_8h.html#a34de5fdfe171d82064a2c568dc5f109e',1,'grpc_client_config_get_lb_policy(grpc_client_config *client_config):&#160;client_config.c'],['../client__config_8c.html#aa6642aab990240a61c9ecafa3dfb55e1',1,'grpc_client_config_get_lb_policy(grpc_client_config *c):&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5fref',['grpc_client_config_ref',['../client__config_8h.html#af036e0a9e83189f7d2c72afdeb6c6d86',1,'grpc_client_config_ref(grpc_client_config *client_config):&#160;client_config.c'],['../client__config_8c.html#aa0b099847f86ea9e0da873f49b92f554',1,'grpc_client_config_ref(grpc_client_config *c):&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5fset_5flb_5fpolicy',['grpc_client_config_set_lb_policy',['../client__config_8h.html#a01f90473256a8c714ba043c03ef2acac',1,'grpc_client_config_set_lb_policy(grpc_client_config *client_config, grpc_lb_policy *lb_policy):&#160;client_config.c'],['../client__config_8c.html#a807baa44b3464dc0c5870184619d6c35',1,'grpc_client_config_set_lb_policy(grpc_client_config *c, grpc_lb_policy *lb_policy):&#160;client_config.c']]],
+ ['grpc_5fclient_5fconfig_5funref',['grpc_client_config_unref',['../client__config_8h.html#a614ddbd34b8597f39bce9d8f4c6ca978',1,'grpc_client_config_unref(grpc_client_config *client_config):&#160;client_config.c'],['../client__config_8c.html#ad8d9107bdf0a780e914dccd4fd57cb35',1,'grpc_client_config_unref(grpc_client_config *c):&#160;client_config.c']]],
+ ['grpc_5fclient_5fsecurity_5fcontext_5fcreate',['grpc_client_security_context_create',['../security__context_8h.html#a7ca11372b407a42724f5d13e36409c03',1,'grpc_client_security_context_create(void):&#160;security_context.c'],['../security__context_8c.html#a7ca11372b407a42724f5d13e36409c03',1,'grpc_client_security_context_create(void):&#160;security_context.c']]],
+ ['grpc_5fclient_5fsecurity_5fcontext_5fdestroy',['grpc_client_security_context_destroy',['../security__context_8h.html#a794b8453091b440bafd21e00cf0f7236',1,'grpc_client_security_context_destroy(void *ctx):&#160;security_context.c'],['../security__context_8c.html#a794b8453091b440bafd21e00cf0f7236',1,'grpc_client_security_context_destroy(void *ctx):&#160;security_context.c']]],
+ ['grpc_5fcompletion_5fqueue_5fcreate',['grpc_completion_queue_create',['../grpc_8h.html#a9f69c76c26125e6581491864a06ea44a',1,'grpc_completion_queue_create(void):&#160;completion_queue.c'],['../completion__queue_8c.html#a9f69c76c26125e6581491864a06ea44a',1,'grpc_completion_queue_create(void):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fdestroy',['grpc_completion_queue_destroy',['../grpc_8h.html#a629a77a358721f1a3bbb8fef34c3996e',1,'grpc_completion_queue_destroy(grpc_completion_queue *cq):&#160;completion_queue.c'],['../completion__queue_8c.html#a1d73d7983af3030ee119b768095e9627',1,'grpc_completion_queue_destroy(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fnext',['grpc_completion_queue_next',['../grpc_8h.html#a56a4ff1f046393205c3418c24f5d5587',1,'grpc_completion_queue_next(grpc_completion_queue *cq, gpr_timespec deadline):&#160;completion_queue.c'],['../completion__queue_8c.html#ac9b582acb0fc4994ccdbf39d40ee3766',1,'grpc_completion_queue_next(grpc_completion_queue *cc, gpr_timespec deadline):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fpluck',['grpc_completion_queue_pluck',['../grpc_8h.html#a21e38dd0146d244eb0e262fd1b6a50ee',1,'grpc_completion_queue_pluck(grpc_completion_queue *cq, void *tag, gpr_timespec deadline):&#160;completion_queue.c'],['../completion__queue_8c.html#ab63b4e63ae13faa3e6786f131a46b5dd',1,'grpc_completion_queue_pluck(grpc_completion_queue *cc, void *tag, gpr_timespec deadline):&#160;completion_queue.c']]],
+ ['grpc_5fcompletion_5fqueue_5fshutdown',['grpc_completion_queue_shutdown',['../grpc_8h.html#a4051b4036c5132f02064430f67420ecd',1,'grpc_completion_queue_shutdown(grpc_completion_queue *cq):&#160;completion_queue.c'],['../completion__queue_8c.html#a7a7c60f847e798025d83e2d8ff9b1778',1,'grpc_completion_queue_shutdown(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcomposite_5fcredentials_5fcreate',['grpc_composite_credentials_create',['../grpc__security_8h.html#a4f65f01fb23e963cc88bcdfbede70da7',1,'grpc_composite_credentials_create(grpc_credentials *creds1, grpc_credentials *creds2):&#160;credentials.c'],['../credentials_8c.html#a4f65f01fb23e963cc88bcdfbede70da7',1,'grpc_composite_credentials_create(grpc_credentials *creds1, grpc_credentials *creds2):&#160;credentials.c']]],
+ ['grpc_5fcomposite_5fcredentials_5fget_5fcredentials',['grpc_composite_credentials_get_credentials',['../credentials_8h.html#ae0ed8f1e7494e839a3992c0a19fe0c67',1,'grpc_composite_credentials_get_credentials(grpc_credentials *composite_creds):&#160;credentials.c'],['../credentials_8c.html#ac3ea491e3e847e603c0da420375b6e60',1,'grpc_composite_credentials_get_credentials(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcompression_5falgorithm_5ffor_5flevel',['grpc_compression_algorithm_for_level',['../compression_8h.html#a382cce802b53a6f85deb706caf1dccd6',1,'grpc_compression_algorithm_for_level(grpc_compression_level level):&#160;algorithm.c'],['../algorithm_8c.html#a382cce802b53a6f85deb706caf1dccd6',1,'grpc_compression_algorithm_for_level(grpc_compression_level level):&#160;algorithm.c']]],
+ ['grpc_5fcompression_5falgorithm_5fname',['grpc_compression_algorithm_name',['../compression_8h.html#adce0341ab8fd560dc39e9e96daf7cb14',1,'grpc_compression_algorithm_name(grpc_compression_algorithm algorithm, char **name):&#160;algorithm.c'],['../algorithm_8c.html#adce0341ab8fd560dc39e9e96daf7cb14',1,'grpc_compression_algorithm_name(grpc_compression_algorithm algorithm, char **name):&#160;algorithm.c']]],
+ ['grpc_5fcompression_5falgorithm_5fparse',['grpc_compression_algorithm_parse',['../compression_8h.html#a996f65ae42d05dd7ef9da9c6d6586397',1,'grpc_compression_algorithm_parse(const char *name, grpc_compression_algorithm *algorithm):&#160;algorithm.c'],['../algorithm_8c.html#a996f65ae42d05dd7ef9da9c6d6586397',1,'grpc_compression_algorithm_parse(const char *name, grpc_compression_algorithm *algorithm):&#160;algorithm.c']]],
+ ['grpc_5fcompression_5flevel_5ffor_5falgorithm',['grpc_compression_level_for_algorithm',['../compression_8h.html#ace80040d9c2a916ddd4d2f2d2ec44dba',1,'grpc_compression_level_for_algorithm(grpc_compression_algorithm algorithm):&#160;algorithm.c'],['../algorithm_8c.html#ace80040d9c2a916ddd4d2f2d2ec44dba',1,'grpc_compression_level_for_algorithm(grpc_compression_algorithm algorithm):&#160;algorithm.c']]],
+ ['grpc_5fcompute_5fengine_5fcredentials_5fcreate',['grpc_compute_engine_credentials_create',['../grpc__security_8h.html#a3beb3fe683139856e1a13c27d760eb95',1,'grpc_compute_engine_credentials_create(void):&#160;credentials.c'],['../credentials_8c.html#a3beb3fe683139856e1a13c27d760eb95',1,'grpc_compute_engine_credentials_create(void):&#160;credentials.c']]],
+ ['grpc_5fconnected_5fchannel_5fbind_5ftransport',['grpc_connected_channel_bind_transport',['../connected__channel_8h.html#a5be096b4cce2c5c6b51727866723e5b9',1,'grpc_connected_channel_bind_transport(grpc_channel_stack *channel_stack, grpc_transport *transport):&#160;connected_channel.c'],['../connected__channel_8c.html#a5be096b4cce2c5c6b51727866723e5b9',1,'grpc_connected_channel_bind_transport(grpc_channel_stack *channel_stack, grpc_transport *transport):&#160;connected_channel.c']]],
+ ['grpc_5fconnectivity_5fstate_5fcheck',['grpc_connectivity_state_check',['../connectivity__state_8h.html#a7de513064c1e6d041b5c03611a21784c',1,'grpc_connectivity_state_check(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c'],['../connectivity__state_8c.html#a7de513064c1e6d041b5c03611a21784c',1,'grpc_connectivity_state_check(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fdestroy',['grpc_connectivity_state_destroy',['../connectivity__state_8h.html#aa8e03f103b290be8de8041a63e469591',1,'grpc_connectivity_state_destroy(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c'],['../connectivity__state_8c.html#aa8e03f103b290be8de8041a63e469591',1,'grpc_connectivity_state_destroy(grpc_connectivity_state_tracker *tracker):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5finit',['grpc_connectivity_state_init',['../connectivity__state_8h.html#ab6dd4577019442e4d2bfab318d0a66a8',1,'grpc_connectivity_state_init(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state init_state, const char *name):&#160;connectivity_state.c'],['../connectivity__state_8c.html#ab6dd4577019442e4d2bfab318d0a66a8',1,'grpc_connectivity_state_init(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state init_state, const char *name):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fname',['grpc_connectivity_state_name',['../connectivity__state_8c.html#a90cae61aab329c583da43141f8057b36',1,'connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fnotify_5fon_5fstate_5fchange',['grpc_connectivity_state_notify_on_state_change',['../connectivity__state_8h.html#aef05f23287d0e2ab2e469e7113d01827',1,'grpc_connectivity_state_notify_on_state_change(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state *current, grpc_iomgr_closure *notify):&#160;connectivity_state.c'],['../connectivity__state_8c.html#aef05f23287d0e2ab2e469e7113d01827',1,'grpc_connectivity_state_notify_on_state_change(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state *current, grpc_iomgr_closure *notify):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fset',['grpc_connectivity_state_set',['../connectivity__state_8h.html#aafe2517530b344f8e062bbef25b8895c',1,'grpc_connectivity_state_set(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, const char *reason):&#160;connectivity_state.c'],['../connectivity__state_8c.html#aafe2517530b344f8e062bbef25b8895c',1,'grpc_connectivity_state_set(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, const char *reason):&#160;connectivity_state.c']]],
+ ['grpc_5fconnectivity_5fstate_5fset_5fwith_5fscheduler',['grpc_connectivity_state_set_with_scheduler',['../connectivity__state_8h.html#ae542578d2026b84ff6d0403809e67ad7',1,'grpc_connectivity_state_set_with_scheduler(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, void(*scheduler)(void *arg, grpc_iomgr_closure *closure), void *arg, const char *reason):&#160;connectivity_state.c'],['../connectivity__state_8c.html#ae542578d2026b84ff6d0403809e67ad7',1,'grpc_connectivity_state_set_with_scheduler(grpc_connectivity_state_tracker *tracker, grpc_connectivity_state state, void(*scheduler)(void *arg, grpc_iomgr_closure *closure), void *arg, const char *reason):&#160;connectivity_state.c']]],
+ ['grpc_5fconnector_5fconnect',['grpc_connector_connect',['../connector_8h.html#ae43acb2d650fdc8023d69a4a39781d4e',1,'grpc_connector_connect(grpc_connector *connector, const grpc_connect_in_args *in_args, grpc_connect_out_args *out_args, grpc_iomgr_closure *notify):&#160;connector.c'],['../connector_8c.html#ae43acb2d650fdc8023d69a4a39781d4e',1,'grpc_connector_connect(grpc_connector *connector, const grpc_connect_in_args *in_args, grpc_connect_out_args *out_args, grpc_iomgr_closure *notify):&#160;connector.c']]],
+ ['grpc_5fconnector_5fref',['grpc_connector_ref',['../connector_8h.html#a32f21c6a46c13ba6cc697cf94c45ca46',1,'grpc_connector_ref(grpc_connector *connector):&#160;connector.c'],['../connector_8c.html#a32f21c6a46c13ba6cc697cf94c45ca46',1,'grpc_connector_ref(grpc_connector *connector):&#160;connector.c']]],
+ ['grpc_5fconnector_5funref',['grpc_connector_unref',['../connector_8h.html#ab65e217852a93e4a8281e7003d72bcf6',1,'grpc_connector_unref(grpc_connector *connector):&#160;connector.c'],['../connector_8c.html#ab65e217852a93e4a8281e7003d72bcf6',1,'grpc_connector_unref(grpc_connector *connector):&#160;connector.c']]],
+ ['grpc_5fcq_5fbegin_5fop',['grpc_cq_begin_op',['../completion__queue_8h.html#af0798635c22a4eaa66ed25c310b3a776',1,'grpc_cq_begin_op(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#af0798635c22a4eaa66ed25c310b3a776',1,'grpc_cq_begin_op(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fend_5fop',['grpc_cq_end_op',['../completion__queue_8h.html#a2752dafd9e9e02bbd253578fc58b0a7e',1,'grpc_cq_end_op(grpc_completion_queue *cc, void *tag, int success, void(*done)(void *done_arg, grpc_cq_completion *storage), void *done_arg, grpc_cq_completion *storage):&#160;completion_queue.c'],['../completion__queue_8c.html#a2752dafd9e9e02bbd253578fc58b0a7e',1,'grpc_cq_end_op(grpc_completion_queue *cc, void *tag, int success, void(*done)(void *done_arg, grpc_cq_completion *storage), void *done_arg, grpc_cq_completion *storage):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fhack_5fspin_5fpollset',['grpc_cq_hack_spin_pollset',['../completion__queue_8h.html#af56ef17bad0397c6f1305be433aeeb64',1,'grpc_cq_hack_spin_pollset(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#af56ef17bad0397c6f1305be433aeeb64',1,'grpc_cq_hack_spin_pollset(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5finternal_5fref',['grpc_cq_internal_ref',['../completion__queue_8h.html#acec06afc3d55de1701d5831e979dad02',1,'grpc_cq_internal_ref(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#acec06afc3d55de1701d5831e979dad02',1,'grpc_cq_internal_ref(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5finternal_5funref',['grpc_cq_internal_unref',['../completion__queue_8h.html#a0096a03d441f4b7cfbbe864eb122ed8e',1,'grpc_cq_internal_unref(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#a0096a03d441f4b7cfbbe864eb122ed8e',1,'grpc_cq_internal_unref(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fis_5fserver_5fcq',['grpc_cq_is_server_cq',['../completion__queue_8h.html#a02173d1bf8e55f6903d24c20107d8dbf',1,'grpc_cq_is_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#a02173d1bf8e55f6903d24c20107d8dbf',1,'grpc_cq_is_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fmark_5fserver_5fcq',['grpc_cq_mark_server_cq',['../completion__queue_8h.html#afbe8f768af201e16309e240ae155ee3d',1,'grpc_cq_mark_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#afbe8f768af201e16309e240ae155ee3d',1,'grpc_cq_mark_server_cq(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcq_5fpollset',['grpc_cq_pollset',['../completion__queue_8h.html#a0ebca6cf60ce9cc92b9bfa9200fab813',1,'grpc_cq_pollset(grpc_completion_queue *cc):&#160;completion_queue.c'],['../completion__queue_8c.html#a0ebca6cf60ce9cc92b9bfa9200fab813',1,'grpc_cq_pollset(grpc_completion_queue *cc):&#160;completion_queue.c']]],
+ ['grpc_5fcreate_5fchttp2_5ftransport',['grpc_create_chttp2_transport',['../chttp2__transport_8h.html#a73982c96ccbaedc415c044d9d9b7bd01',1,'grpc_create_chttp2_transport(const grpc_channel_args *channel_args, grpc_endpoint *ep, grpc_mdctx *metadata_context, int is_client):&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a03cebc42bd75ab90ce0f9d3c8bc526a8',1,'grpc_create_chttp2_transport(const grpc_channel_args *channel_args, grpc_endpoint *ep, grpc_mdctx *mdctx, int is_client):&#160;chttp2_transport.c']]],
+ ['grpc_5fcreate_5fdualstack_5fsocket',['grpc_create_dualstack_socket',['../socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6',1,'socket_utils_posix.h']]],
+ ['grpc_5fcreate_5fpick_5ffirst_5flb_5fpolicy',['grpc_create_pick_first_lb_policy',['../pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e',1,'grpc_create_pick_first_lb_policy(grpc_subchannel **subchannels, size_t num_subchannels):&#160;pick_first.c'],['../pick__first_8c.html#a2ef6310260146caa4cf56acddbb4343e',1,'grpc_create_pick_first_lb_policy(grpc_subchannel **subchannels, size_t num_subchannels):&#160;pick_first.c']]],
+ ['grpc_5fcredentials_5fcontains_5ftype',['grpc_credentials_contains_type',['../credentials_8h.html#a4a6be957afa38741405a5a41cdd752e1',1,'grpc_credentials_contains_type(grpc_credentials *creds, const char *type, grpc_credentials **composite_creds):&#160;credentials.c'],['../credentials_8c.html#a4a6be957afa38741405a5a41cdd752e1',1,'grpc_credentials_contains_type(grpc_credentials *creds, const char *type, grpc_credentials **composite_creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fcreate_5fsecurity_5fconnector',['grpc_credentials_create_security_connector',['../credentials_8h.html#af26c4ee0ed97f2e88958c54ba22d5759',1,'grpc_credentials_create_security_connector(grpc_credentials *creds, const char *target, const grpc_channel_args *args, grpc_credentials *request_metadata_creds, grpc_channel_security_connector **sc, grpc_channel_args **new_args):&#160;credentials.c'],['../credentials_8c.html#af26c4ee0ed97f2e88958c54ba22d5759',1,'grpc_credentials_create_security_connector(grpc_credentials *creds, const char *target, const grpc_channel_args *args, grpc_credentials *request_metadata_creds, grpc_channel_security_connector **sc, grpc_channel_args **new_args):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fget_5frequest_5fmetadata',['grpc_credentials_get_request_metadata',['../credentials_8h.html#afe8d4191ee0f0f67684fd2575173cabc',1,'grpc_credentials_get_request_metadata(grpc_credentials *creds, grpc_pollset *pollset, const char *service_url, grpc_credentials_metadata_cb cb, void *user_data):&#160;credentials.c'],['../credentials_8c.html#afe8d4191ee0f0f67684fd2575173cabc',1,'grpc_credentials_get_request_metadata(grpc_credentials *creds, grpc_pollset *pollset, const char *service_url, grpc_credentials_metadata_cb cb, void *user_data):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fhas_5frequest_5fmetadata',['grpc_credentials_has_request_metadata',['../credentials_8h.html#ad44c9cce8c086f8c083e5d5006e3310a',1,'grpc_credentials_has_request_metadata(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#ad44c9cce8c086f8c083e5d5006e3310a',1,'grpc_credentials_has_request_metadata(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fhas_5frequest_5fmetadata_5fonly',['grpc_credentials_has_request_metadata_only',['../credentials_8h.html#a726f818ebdd9e781b090cf7d27347b7a',1,'grpc_credentials_has_request_metadata_only(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a726f818ebdd9e781b090cf7d27347b7a',1,'grpc_credentials_has_request_metadata_only(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fadd',['grpc_credentials_md_store_add',['../credentials_8h.html#a3676b161f50d5b36989af2624565596b',1,'grpc_credentials_md_store_add(grpc_credentials_md_store *store, gpr_slice key, gpr_slice value):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#a3676b161f50d5b36989af2624565596b',1,'grpc_credentials_md_store_add(grpc_credentials_md_store *store, gpr_slice key, gpr_slice value):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fadd_5fcstrings',['grpc_credentials_md_store_add_cstrings',['../credentials_8h.html#a51ccf8c724a8477d5efcf0e3f73ef3a4',1,'grpc_credentials_md_store_add_cstrings(grpc_credentials_md_store *store, const char *key, const char *value):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#a51ccf8c724a8477d5efcf0e3f73ef3a4',1,'grpc_credentials_md_store_add_cstrings(grpc_credentials_md_store *store, const char *key, const char *value):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fcreate',['grpc_credentials_md_store_create',['../credentials_8h.html#aee28492ddb70e47b0778fc928be9159b',1,'grpc_credentials_md_store_create(size_t initial_capacity):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#aee28492ddb70e47b0778fc928be9159b',1,'grpc_credentials_md_store_create(size_t initial_capacity):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5fref',['grpc_credentials_md_store_ref',['../credentials_8h.html#a5535f991ceb2b2160aee414cf013ed73',1,'grpc_credentials_md_store_ref(grpc_credentials_md_store *store):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#a5535f991ceb2b2160aee414cf013ed73',1,'grpc_credentials_md_store_ref(grpc_credentials_md_store *store):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fmd_5fstore_5funref',['grpc_credentials_md_store_unref',['../credentials_8h.html#afc507497ef8b5dda7074b63babaac366',1,'grpc_credentials_md_store_unref(grpc_credentials_md_store *store):&#160;credentials_metadata.c'],['../credentials__metadata_8c.html#afc507497ef8b5dda7074b63babaac366',1,'grpc_credentials_md_store_unref(grpc_credentials_md_store *store):&#160;credentials_metadata.c']]],
+ ['grpc_5fcredentials_5fref',['grpc_credentials_ref',['../credentials_8h.html#a62061acac11e854a58c5faca6956e609',1,'grpc_credentials_ref(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a62061acac11e854a58c5faca6956e609',1,'grpc_credentials_ref(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5frelease',['grpc_credentials_release',['../grpc__security_8h.html#a6c01e107d41e964458fdf701b8b81440',1,'grpc_credentials_release(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a6c01e107d41e964458fdf701b8b81440',1,'grpc_credentials_release(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fcredentials_5funref',['grpc_credentials_unref',['../credentials_8h.html#a63d4aa3f072736ba5eb168e12c306e56',1,'grpc_credentials_unref(grpc_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a63d4aa3f072736ba5eb168e12c306e56',1,'grpc_credentials_unref(grpc_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fdns_5fresolver_5ffactory_5fcreate',['grpc_dns_resolver_factory_create',['../dns__resolver_8h.html#af1a22a50d3130b565e8a00b95a805b8a',1,'grpc_dns_resolver_factory_create(void):&#160;dns_resolver.c'],['../dns__resolver_8c.html#a932c66ec39e987fb2cd076869334f871',1,'grpc_dns_resolver_factory_create():&#160;dns_resolver.c']]],
+ ['grpc_5fendpoint_5fadd_5fto_5fpollset',['grpc_endpoint_add_to_pollset',['../endpoint_8h.html#afe30ad16c4df2a5c80b9e73d2bce80e6',1,'grpc_endpoint_add_to_pollset(grpc_endpoint *ep, grpc_pollset *pollset):&#160;endpoint.c'],['../endpoint_8c.html#afe30ad16c4df2a5c80b9e73d2bce80e6',1,'grpc_endpoint_add_to_pollset(grpc_endpoint *ep, grpc_pollset *pollset):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fadd_5fto_5fpollset_5fset',['grpc_endpoint_add_to_pollset_set',['../endpoint_8h.html#a7da8b1657895a121a59458dbdeb0e900',1,'grpc_endpoint_add_to_pollset_set(grpc_endpoint *ep, grpc_pollset_set *pollset_set):&#160;endpoint.c'],['../endpoint_8c.html#a7da8b1657895a121a59458dbdeb0e900',1,'grpc_endpoint_add_to_pollset_set(grpc_endpoint *ep, grpc_pollset_set *pollset_set):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fdestroy',['grpc_endpoint_destroy',['../endpoint_8h.html#a5b4b5f0b352955ec4f060c6b443408bd',1,'grpc_endpoint_destroy(grpc_endpoint *ep):&#160;endpoint.c'],['../endpoint_8c.html#a5b4b5f0b352955ec4f060c6b443408bd',1,'grpc_endpoint_destroy(grpc_endpoint *ep):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fget_5fpeer',['grpc_endpoint_get_peer',['../endpoint_8h.html#a21e5c205829aaf48ae7d26b32fa00338',1,'grpc_endpoint_get_peer(grpc_endpoint *ep):&#160;endpoint.c'],['../endpoint_8c.html#a21e5c205829aaf48ae7d26b32fa00338',1,'grpc_endpoint_get_peer(grpc_endpoint *ep):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fnotify_5fon_5fread',['grpc_endpoint_notify_on_read',['../endpoint_8h.html#abead7bb222b6e3f5a7004c8fb12821be',1,'grpc_endpoint_notify_on_read(grpc_endpoint *ep, grpc_endpoint_read_cb cb, void *user_data):&#160;endpoint.c'],['../endpoint_8c.html#abead7bb222b6e3f5a7004c8fb12821be',1,'grpc_endpoint_notify_on_read(grpc_endpoint *ep, grpc_endpoint_read_cb cb, void *user_data):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fshutdown',['grpc_endpoint_shutdown',['../endpoint_8h.html#a7fca699259b75cf0f685227a363765fa',1,'grpc_endpoint_shutdown(grpc_endpoint *ep):&#160;endpoint.c'],['../endpoint_8c.html#a7fca699259b75cf0f685227a363765fa',1,'grpc_endpoint_shutdown(grpc_endpoint *ep):&#160;endpoint.c']]],
+ ['grpc_5fendpoint_5fwrite',['grpc_endpoint_write',['../endpoint_8h.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0',1,'grpc_endpoint_write(grpc_endpoint *ep, gpr_slice *slices, size_t nslices, grpc_endpoint_write_cb cb, void *user_data):&#160;endpoint.c'],['../endpoint_8c.html#a6cc5c4afb853d7204ad7b6bcbe8c95b0',1,'grpc_endpoint_write(grpc_endpoint *ep, gpr_slice *slices, size_t nslices, grpc_endpoint_write_cb cb, void *user_data):&#160;endpoint.c']]],
+ ['grpc_5fevent_5fstring',['grpc_event_string',['../event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313',1,'grpc_event_string(grpc_event *ev):&#160;event_string.c'],['../event__string_8c.html#a8dc67a225f744d4d0ee592faf2bd4313',1,'grpc_event_string(grpc_event *ev):&#160;event_string.c']]],
+ ['grpc_5ffake_5fchannel_5fsecurity_5fconnector_5fcreate',['grpc_fake_channel_security_connector_create',['../security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12',1,'grpc_fake_channel_security_connector_create(grpc_credentials *request_metadata_creds, int call_host_check_is_async):&#160;security_connector.c'],['../security__connector_8c.html#abe2c43cab618ad3b036645d9aa506f12',1,'grpc_fake_channel_security_connector_create(grpc_credentials *request_metadata_creds, int call_host_check_is_async):&#160;security_connector.c']]],
+ ['grpc_5ffake_5foauth2_5fcredentials_5fcreate',['grpc_fake_oauth2_credentials_create',['../credentials_8h.html#ac749a71cdf28ebdc69d25cde612b22cc',1,'grpc_fake_oauth2_credentials_create(const char *token_md_value, int is_async):&#160;credentials.c'],['../credentials_8c.html#ac749a71cdf28ebdc69d25cde612b22cc',1,'grpc_fake_oauth2_credentials_create(const char *token_md_value, int is_async):&#160;credentials.c']]],
+ ['grpc_5ffake_5fserver_5fsecurity_5fconnector_5fcreate',['grpc_fake_server_security_connector_create',['../security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417',1,'grpc_fake_server_security_connector_create(void):&#160;security_connector.c'],['../security__connector_8c.html#a45a42c3c0b40593ac1b8025ba1875417',1,'grpc_fake_server_security_connector_create(void):&#160;security_connector.c']]],
+ ['grpc_5ffake_5ftransport_5fsecurity_5fcredentials_5fcreate',['grpc_fake_transport_security_credentials_create',['../credentials_8h.html#ab970b1925f494cb159a29a404f23d157',1,'grpc_fake_transport_security_credentials_create(void):&#160;credentials.c'],['../credentials_8c.html#ab970b1925f494cb159a29a404f23d157',1,'grpc_fake_transport_security_credentials_create(void):&#160;credentials.c']]],
+ ['grpc_5ffake_5ftransport_5fsecurity_5fserver_5fcredentials_5fcreate',['grpc_fake_transport_security_server_credentials_create',['../credentials_8h.html#a60f9433cc38460bb83da148eff9475ae',1,'grpc_fake_transport_security_server_credentials_create(void):&#160;credentials.c'],['../credentials_8c.html#a60f9433cc38460bb83da148eff9475ae',1,'grpc_fake_transport_security_server_credentials_create(void):&#160;credentials.c']]],
+ ['grpc_5ffd_5fbecome_5freadable',['grpc_fd_become_readable',['../fd__posix_8h.html#a5c2c13dc1a1eb20f9ce43d7625b59002',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fbecome_5fwritable',['grpc_fd_become_writable',['../fd__posix_8h.html#a699c0434cce29ae12f9ca59fc73dff98',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fbegin_5fpoll',['grpc_fd_begin_poll',['../fd__posix_8h.html#aabfaf5c3fc1b7d4306d8489cda8f09c5',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fcreate',['grpc_fd_create',['../fd__posix_8h.html#a6752527e24586c370a8305916cb35dde',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fend_5fpoll',['grpc_fd_end_poll',['../fd__posix_8h.html#aecd30af2ff851bee3264bc6548fb7ae5',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fglobal_5finit',['grpc_fd_global_init',['../fd__posix_8h.html#a0fcf378b86c04bff95bffca0bfaf891a',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fglobal_5fshutdown',['grpc_fd_global_shutdown',['../fd__posix_8h.html#a39d3a0f4eed1d4033b2e0db7145749c2',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fis_5forphaned',['grpc_fd_is_orphaned',['../fd__posix_8h.html#adcd1fd3c640a72be6429fb60c3ddc258',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fnotify_5fon_5fread',['grpc_fd_notify_on_read',['../fd__posix_8h.html#adc65edd83bbaab2044bb80e8f526aff0',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fnotify_5fon_5fwrite',['grpc_fd_notify_on_write',['../fd__posix_8h.html#aaa2b28cae8176ef883c4dba5373152ac',1,'fd_posix.h']]],
+ ['grpc_5ffd_5forphan',['grpc_fd_orphan',['../fd__posix_8h.html#af78f10c0cb866d1981db0e4515dbfbb1',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fref',['grpc_fd_ref',['../fd__posix_8h.html#a84623f0ef331d38c1b19d89f991dc0c3',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fshutdown',['grpc_fd_shutdown',['../fd__posix_8h.html#a18ed4db2cb1970f0933f9f5a7a5ddbad',1,'fd_posix.h']]],
+ ['grpc_5ffd_5funref',['grpc_fd_unref',['../fd__posix_8h.html#af874d803d96b6cd126e53e64707c69e0',1,'fd_posix.h']]],
+ ['grpc_5ffind_5fsecurity_5fconnector_5fin_5fargs',['grpc_find_security_connector_in_args',['../security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c',1,'grpc_find_security_connector_in_args(const grpc_channel_args *args):&#160;security_connector.c'],['../security__connector_8c.html#a7db9da4604178cb7e640e744da4b733c',1,'grpc_find_security_connector_in_args(const grpc_channel_args *args):&#160;security_connector.c']]],
+ ['grpc_5fflush_5fcached_5fgoogle_5fdefault_5fcredentials',['grpc_flush_cached_google_default_credentials',['../credentials_8h.html#a7e3aec152312d2b66ccd3b232317b10a',1,'grpc_flush_cached_google_default_credentials(void):&#160;google_default_credentials.c'],['../google__default__credentials_8c.html#a7e3aec152312d2b66ccd3b232317b10a',1,'grpc_flush_cached_google_default_credentials(void):&#160;google_default_credentials.c']]],
+ ['grpc_5fget_5fdefault_5fssl_5froots',['grpc_get_default_ssl_roots',['../security__connector_8h.html#a341f454443268ca27e5cc01219b93fef',1,'grpc_get_default_ssl_roots(const unsigned char **pem_root_certs):&#160;security_connector.c'],['../security__connector_8c.html#a341f454443268ca27e5cc01219b93fef',1,'grpc_get_default_ssl_roots(const unsigned char **pem_root_certs):&#160;security_connector.c']]],
+ ['grpc_5fget_5fwell_5fknown_5fgoogle_5fcredentials_5ffile_5fpath',['grpc_get_well_known_google_credentials_file_path',['../credentials_8h.html#a3c03f6a39aec4530a4a3024a8f9c2716',1,'credentials.h']]],
+ ['grpc_5fgoogle_5fdefault_5fcredentials_5fcreate',['grpc_google_default_credentials_create',['../grpc__security_8h.html#a5e3fb8f208c302245a1392c7ef16d170',1,'grpc_google_default_credentials_create(void):&#160;google_default_credentials.c'],['../google__default__credentials_8c.html#a5e3fb8f208c302245a1392c7ef16d170',1,'grpc_google_default_credentials_create(void):&#160;google_default_credentials.c']]],
+ ['grpc_5fhttpcli_5fcontext_5fdestroy',['grpc_httpcli_context_destroy',['../httpcli_8h.html#a6d47084af44bf387790281f288f78d7b',1,'grpc_httpcli_context_destroy(grpc_httpcli_context *context):&#160;httpcli.c'],['../httpcli_8c.html#a6d47084af44bf387790281f288f78d7b',1,'grpc_httpcli_context_destroy(grpc_httpcli_context *context):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fcontext_5finit',['grpc_httpcli_context_init',['../httpcli_8h.html#accc8da3837feac14f5f0b64e4cff8d1b',1,'grpc_httpcli_context_init(grpc_httpcli_context *context):&#160;httpcli.c'],['../httpcli_8c.html#accc8da3837feac14f5f0b64e4cff8d1b',1,'grpc_httpcli_context_init(grpc_httpcli_context *context):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fformat_5fget_5frequest',['grpc_httpcli_format_get_request',['../format__request_8h.html#a0fa0de242d866bb79b5ad39f3c46eae2',1,'grpc_httpcli_format_get_request(const grpc_httpcli_request *request):&#160;format_request.c'],['../format__request_8c.html#a0fa0de242d866bb79b5ad39f3c46eae2',1,'grpc_httpcli_format_get_request(const grpc_httpcli_request *request):&#160;format_request.c']]],
+ ['grpc_5fhttpcli_5fformat_5fpost_5frequest',['grpc_httpcli_format_post_request',['../format__request_8h.html#ae6a0298e2b174b65c5571622d3908501',1,'grpc_httpcli_format_post_request(const grpc_httpcli_request *request, const char *body_bytes, size_t body_size):&#160;format_request.c'],['../format__request_8c.html#ae6a0298e2b174b65c5571622d3908501',1,'grpc_httpcli_format_post_request(const grpc_httpcli_request *request, const char *body_bytes, size_t body_size):&#160;format_request.c']]],
+ ['grpc_5fhttpcli_5fget',['grpc_httpcli_get',['../httpcli_8h.html#a594371d2c96d499a5a3bcccb27ece0da',1,'grpc_httpcli_get(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c'],['../httpcli_8c.html#a594371d2c96d499a5a3bcccb27ece0da',1,'grpc_httpcli_get(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fparser_5fdestroy',['grpc_httpcli_parser_destroy',['../parser_8h.html#a947eefc20a5245e155e1bb55380c8344',1,'grpc_httpcli_parser_destroy(grpc_httpcli_parser *parser):&#160;parser.c'],['../parser_8c.html#a947eefc20a5245e155e1bb55380c8344',1,'grpc_httpcli_parser_destroy(grpc_httpcli_parser *parser):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5feof',['grpc_httpcli_parser_eof',['../parser_8h.html#a3ad859c8c3267265dba030d1d7597df8',1,'grpc_httpcli_parser_eof(grpc_httpcli_parser *parser):&#160;parser.c'],['../parser_8c.html#a3ad859c8c3267265dba030d1d7597df8',1,'grpc_httpcli_parser_eof(grpc_httpcli_parser *parser):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5finit',['grpc_httpcli_parser_init',['../parser_8h.html#a5801c0439a5dff17a1ddc7f22bdf7ec9',1,'grpc_httpcli_parser_init(grpc_httpcli_parser *parser):&#160;parser.c'],['../parser_8c.html#a5801c0439a5dff17a1ddc7f22bdf7ec9',1,'grpc_httpcli_parser_init(grpc_httpcli_parser *parser):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fparser_5fparse',['grpc_httpcli_parser_parse',['../parser_8h.html#a24a1909825c06938a465e40295464cd0',1,'grpc_httpcli_parser_parse(grpc_httpcli_parser *parser, gpr_slice slice):&#160;parser.c'],['../parser_8c.html#a24a1909825c06938a465e40295464cd0',1,'grpc_httpcli_parser_parse(grpc_httpcli_parser *parser, gpr_slice slice):&#160;parser.c']]],
+ ['grpc_5fhttpcli_5fpost',['grpc_httpcli_post',['../httpcli_8h.html#a96f034743193848e966d61192e406c70',1,'grpc_httpcli_post(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, const char *body_bytes, size_t body_size, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c'],['../httpcli_8c.html#a96f034743193848e966d61192e406c70',1,'grpc_httpcli_post(grpc_httpcli_context *context, grpc_pollset *pollset, const grpc_httpcli_request *request, const char *body_bytes, size_t body_size, gpr_timespec deadline, grpc_httpcli_response_cb on_response, void *user_data):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fset_5foverride',['grpc_httpcli_set_override',['../httpcli_8h.html#a15ab7c87e0d5e42341c9652d5045d8ce',1,'grpc_httpcli_set_override(grpc_httpcli_get_override get, grpc_httpcli_post_override post):&#160;httpcli.c'],['../httpcli_8c.html#a15ab7c87e0d5e42341c9652d5045d8ce',1,'grpc_httpcli_set_override(grpc_httpcli_get_override get, grpc_httpcli_post_override post):&#160;httpcli.c']]],
+ ['grpc_5fhttpcli_5fssl_5fchannel_5fsecurity_5fconnector_5fcreate',['grpc_httpcli_ssl_channel_security_connector_create',['../httpcli__security__connector_8h.html#a2738fc49f8c3103a4e43ef68cd9b15de',1,'grpc_httpcli_ssl_channel_security_connector_create(const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, grpc_channel_security_connector **sc):&#160;httpcli_security_connector.c'],['../httpcli__security__connector_8c.html#a2738fc49f8c3103a4e43ef68cd9b15de',1,'grpc_httpcli_ssl_channel_security_connector_create(const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *secure_peer_name, grpc_channel_security_connector **sc):&#160;httpcli_security_connector.c']]],
+ ['grpc_5fiam_5fcredentials_5fcreate',['grpc_iam_credentials_create',['../grpc__security_8h.html#ae42c358e718847c988aa690cb0fccab3',1,'grpc_iam_credentials_create(const char *authorization_token, const char *authority_selector):&#160;credentials.c'],['../credentials_8c.html#ad16075798f906b98e0fb3e3018f22ae0',1,'grpc_iam_credentials_create(const char *token, const char *authority_selector):&#160;credentials.c']]],
+ ['grpc_5fincoming_5fmetadata_5fbuffer_5fmove_5fto_5freferencing_5fsopb',['grpc_incoming_metadata_buffer_move_to_referencing_sopb',['../incoming__metadata_8h.html#a0a6bd4407d08e21bc48a6f9cd7167cd0',1,'grpc_incoming_metadata_buffer_move_to_referencing_sopb(grpc_chttp2_incoming_metadata_buffer *src, grpc_chttp2_incoming_metadata_buffer *dst, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c'],['../incoming__metadata_8c.html#a0a6bd4407d08e21bc48a6f9cd7167cd0',1,'grpc_incoming_metadata_buffer_move_to_referencing_sopb(grpc_chttp2_incoming_metadata_buffer *src, grpc_chttp2_incoming_metadata_buffer *dst, grpc_stream_op_buffer *sopb):&#160;incoming_metadata.c']]],
+ ['grpc_5finit',['grpc_init',['../grpc_8h.html#aa78606c93951c49eadd8d83d739798d6',1,'grpc_init(void):&#160;init.c'],['../init_8c.html#aa78606c93951c49eadd8d83d739798d6',1,'grpc_init(void):&#160;init.c']]],
+ ['grpc_5finsecure_5fchannel_5fcreate',['grpc_insecure_channel_create',['../grpc_8h.html#aa710e7e68b23098900f924cf69797496',1,'grpc_insecure_channel_create(const char *target, const grpc_channel_args *args):&#160;channel_create.c'],['../channel__create_8c.html#aa710e7e68b23098900f924cf69797496',1,'grpc_insecure_channel_create(const char *target, const grpc_channel_args *args):&#160;channel_create.c']]],
+ ['grpc_5fiocp_5fadd_5fsocket',['grpc_iocp_add_socket',['../iocp__windows_8h.html#ad206d7bc3468ecc2fb6ab52d80c6e2dd',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5finit',['grpc_iocp_init',['../iocp__windows_8h.html#a74907d635ceee6adf285291336d18807',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5fkick',['grpc_iocp_kick',['../iocp__windows_8h.html#abd0c27d8288aa07c1b07d125cd0ad505',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5fshutdown',['grpc_iocp_shutdown',['../iocp__windows_8h.html#a7198ba025cf05ae1a67b6f493caf5b16',1,'iocp_windows.h']]],
+ ['grpc_5fiocp_5fsocket_5forphan',['grpc_iocp_socket_orphan',['../iocp__windows_8h.html#a720ee7b4b498b7d477efa4fc3ff55aac',1,'iocp_windows.h']]],
+ ['grpc_5fiomgr_5fadd_5fcallback',['grpc_iomgr_add_callback',['../iomgr_8h.html#a95b724dc6bbd9b75694251713db00619',1,'grpc_iomgr_add_callback(grpc_iomgr_closure *closure):&#160;iomgr.c'],['../iomgr_8c.html#a95b724dc6bbd9b75694251713db00619',1,'grpc_iomgr_add_callback(grpc_iomgr_closure *closure):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fadd_5fdelayed_5fcallback',['grpc_iomgr_add_delayed_callback',['../iomgr_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b',1,'grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *iocb, int success):&#160;iomgr.c'],['../iomgr__internal_8h.html#a6a9f23f29a410d705af2c6b6d5c3917b',1,'grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *iocb, int success):&#160;iomgr.c'],['../iomgr_8c.html#a4d3b9286cc4434fad35b6017f6222431',1,'grpc_iomgr_add_delayed_callback(grpc_iomgr_closure *closure, int success):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fclosure_5finit',['grpc_iomgr_closure_init',['../iomgr_8h.html#ac8b4ae11b78ccbded903c14f69aa7a83',1,'grpc_iomgr_closure_init(grpc_iomgr_closure *closure, grpc_iomgr_cb_func cb, void *cb_arg):&#160;iomgr.c'],['../iomgr_8c.html#ac8b4ae11b78ccbded903c14f69aa7a83',1,'grpc_iomgr_closure_init(grpc_iomgr_closure *closure, grpc_iomgr_cb_func cb, void *cb_arg):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fcreate_5fendpoint_5fpair',['grpc_iomgr_create_endpoint_pair',['../endpoint__pair_8h.html#a024d70a614077120d1a5ab8c612a469a',1,'endpoint_pair.h']]],
+ ['grpc_5fiomgr_5finit',['grpc_iomgr_init',['../iomgr_8h.html#a2e26e83c3a2591cbc127dbbc50f5c504',1,'grpc_iomgr_init(void):&#160;iomgr.c'],['../iomgr_8c.html#a2e26e83c3a2591cbc127dbbc50f5c504',1,'grpc_iomgr_init(void):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fplatform_5finit',['grpc_iomgr_platform_init',['../iomgr__internal_8h.html#ae9d0385656f046d1c40023d1d9f5ec5e',1,'iomgr_internal.h']]],
+ ['grpc_5fiomgr_5fplatform_5fshutdown',['grpc_iomgr_platform_shutdown',['../iomgr__internal_8h.html#a87a1f7804687c5ca784a8d9842e83624',1,'iomgr_internal.h']]],
+ ['grpc_5fiomgr_5fregister_5fobject',['grpc_iomgr_register_object',['../iomgr__internal_8h.html#a19ac63e9dff7d1543b1a3e556525773e',1,'grpc_iomgr_register_object(grpc_iomgr_object *obj, const char *name):&#160;iomgr.c'],['../iomgr_8c.html#a19ac63e9dff7d1543b1a3e556525773e',1,'grpc_iomgr_register_object(grpc_iomgr_object *obj, const char *name):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5fshutdown',['grpc_iomgr_shutdown',['../iomgr_8h.html#a466909d4101b063c991bbb39ee38ae25',1,'grpc_iomgr_shutdown(void):&#160;iomgr.c'],['../iomgr_8c.html#a466909d4101b063c991bbb39ee38ae25',1,'grpc_iomgr_shutdown(void):&#160;iomgr.c']]],
+ ['grpc_5fiomgr_5funregister_5fobject',['grpc_iomgr_unregister_object',['../iomgr__internal_8h.html#a82cf3ac6566867546afabf5f08f4aa8a',1,'grpc_iomgr_unregister_object(grpc_iomgr_object *obj):&#160;iomgr.c'],['../iomgr_8c.html#a82cf3ac6566867546afabf5f08f4aa8a',1,'grpc_iomgr_unregister_object(grpc_iomgr_object *obj):&#160;iomgr.c']]],
+ ['grpc_5fipv4_5fresolver_5ffactory_5fcreate',['grpc_ipv4_resolver_factory_create',['../sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa',1,'grpc_ipv4_resolver_factory_create(void):&#160;sockaddr_resolver.c'],['../sockaddr__resolver_8c.html#abc4c6c8581ef4f8dc5cf8ec5c79383a1',1,'grpc_ipv4_resolver_factory_create():&#160;sockaddr_resolver.c']]],
+ ['grpc_5fipv6_5floopback_5favailable',['grpc_ipv6_loopback_available',['../socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563',1,'socket_utils_posix.h']]],
+ ['grpc_5fipv6_5fresolver_5ffactory_5fcreate',['grpc_ipv6_resolver_factory_create',['../sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2',1,'grpc_ipv6_resolver_factory_create(void):&#160;sockaddr_resolver.c'],['../sockaddr__resolver_8c.html#ad0f24d3cf0da9c53e628da5f60cab92d',1,'grpc_ipv6_resolver_factory_create():&#160;sockaddr_resolver.c']]],
+ ['grpc_5fis_5fbinary_5fheader',['grpc_is_binary_header',['../bin__encoder_8h.html#a6ce0fde0cf6e820ca0c95dae4653039e',1,'grpc_is_binary_header(const char *key, size_t length):&#160;bin_encoder.c'],['../bin__encoder_8c.html#a6ce0fde0cf6e820ca0c95dae4653039e',1,'grpc_is_binary_header(const char *key, size_t length):&#160;bin_encoder.c']]],
+ ['grpc_5fis_5finitialized',['grpc_is_initialized',['../init_8h.html#a9e672384642d6dc0e98df16188beba55',1,'grpc_is_initialized(void):&#160;init.c'],['../init_8c.html#a9e672384642d6dc0e98df16188beba55',1,'grpc_is_initialized(void):&#160;init.c']]],
+ ['grpc_5fjson_5fcreate',['grpc_json_create',['../json_8h.html#a479fecc70a15ea64d52485891615669f',1,'grpc_json_create(grpc_json_type type):&#160;json.c'],['../json_8c.html#a479fecc70a15ea64d52485891615669f',1,'grpc_json_create(grpc_json_type type):&#160;json.c']]],
+ ['grpc_5fjson_5fdestroy',['grpc_json_destroy',['../json_8h.html#a93347bf054f40cd67dd9a1d46e830ed3',1,'grpc_json_destroy(grpc_json *json):&#160;json.c'],['../json_8c.html#a93347bf054f40cd67dd9a1d46e830ed3',1,'grpc_json_destroy(grpc_json *json):&#160;json.c']]],
+ ['grpc_5fjson_5fdump_5fto_5fstring',['grpc_json_dump_to_string',['../json_8h.html#a4d51e00e1deba5579a221647ced4cd71',1,'grpc_json_dump_to_string(grpc_json *json, int indent):&#160;json_string.c'],['../json__string_8c.html#a4d51e00e1deba5579a221647ced4cd71',1,'grpc_json_dump_to_string(grpc_json *json, int indent):&#160;json_string.c']]],
+ ['grpc_5fjson_5fparse_5fstring',['grpc_json_parse_string',['../json_8h.html#ad66397af23c3f5377035d9fc74e4f401',1,'grpc_json_parse_string(char *input):&#160;json_string.c'],['../json__string_8c.html#ad66397af23c3f5377035d9fc74e4f401',1,'grpc_json_parse_string(char *input):&#160;json_string.c']]],
+ ['grpc_5fjson_5fparse_5fstring_5fwith_5flen',['grpc_json_parse_string_with_len',['../json_8h.html#ac0d745ec903ab5f5759ebf3bc245b5c6',1,'grpc_json_parse_string_with_len(char *input, size_t size):&#160;json_string.c'],['../json__string_8c.html#ac0d745ec903ab5f5759ebf3bc245b5c6',1,'grpc_json_parse_string_with_len(char *input, size_t size):&#160;json_string.c']]],
+ ['grpc_5fjson_5freader_5finit',['grpc_json_reader_init',['../json__reader_8h.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b',1,'grpc_json_reader_init(grpc_json_reader *reader, grpc_json_reader_vtable *vtable, void *userdata):&#160;json_reader.c'],['../json__reader_8c.html#acb17637cdaf7d1bc6c5403eb2cdd2b1b',1,'grpc_json_reader_init(grpc_json_reader *reader, grpc_json_reader_vtable *vtable, void *userdata):&#160;json_reader.c']]],
+ ['grpc_5fjson_5freader_5fis_5fcomplete',['grpc_json_reader_is_complete',['../json__reader_8h.html#aca35ff1405586201c145f8411ce4f611',1,'grpc_json_reader_is_complete(grpc_json_reader *reader):&#160;json_reader.c'],['../json__reader_8c.html#aca35ff1405586201c145f8411ce4f611',1,'grpc_json_reader_is_complete(grpc_json_reader *reader):&#160;json_reader.c']]],
+ ['grpc_5fjson_5freader_5frun',['grpc_json_reader_run',['../json__reader_8h.html#a369a903219dd343358dad9e4cc67cedb',1,'grpc_json_reader_run(grpc_json_reader *reader):&#160;json_reader.c'],['../json__reader_8c.html#a369a903219dd343358dad9e4cc67cedb',1,'grpc_json_reader_run(grpc_json_reader *reader):&#160;json_reader.c']]],
+ ['grpc_5fjson_5fwriter_5fcontainer_5fbegins',['grpc_json_writer_container_begins',['../json__writer_8h.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae',1,'grpc_json_writer_container_begins(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c'],['../json__writer_8c.html#ab4c1bf3c4ab69ae62cea7c4cc425cdae',1,'grpc_json_writer_container_begins(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fcontainer_5fends',['grpc_json_writer_container_ends',['../json__writer_8h.html#a8ec853f6ef8940debf36820f6329427e',1,'grpc_json_writer_container_ends(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c'],['../json__writer_8c.html#a8ec853f6ef8940debf36820f6329427e',1,'grpc_json_writer_container_ends(grpc_json_writer *writer, grpc_json_type type):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5finit',['grpc_json_writer_init',['../json__writer_8h.html#a9c57757dbd540d5c31db7dbb35274637',1,'grpc_json_writer_init(grpc_json_writer *writer, int indent, grpc_json_writer_vtable *vtable, void *userdata):&#160;json_writer.c'],['../json__writer_8c.html#a9c57757dbd540d5c31db7dbb35274637',1,'grpc_json_writer_init(grpc_json_writer *writer, int indent, grpc_json_writer_vtable *vtable, void *userdata):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fobject_5fkey',['grpc_json_writer_object_key',['../json__writer_8h.html#ae009eea3f345ef9ab454876f81f1ab47',1,'grpc_json_writer_object_key(grpc_json_writer *writer, const char *string):&#160;json_writer.c'],['../json__writer_8c.html#ae009eea3f345ef9ab454876f81f1ab47',1,'grpc_json_writer_object_key(grpc_json_writer *writer, const char *string):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvalue_5fraw',['grpc_json_writer_value_raw',['../json__writer_8h.html#afac9ce564b4c11e3ea35082de3bd1747',1,'grpc_json_writer_value_raw(grpc_json_writer *writer, const char *string):&#160;json_writer.c'],['../json__writer_8c.html#afac9ce564b4c11e3ea35082de3bd1747',1,'grpc_json_writer_value_raw(grpc_json_writer *writer, const char *string):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvalue_5fraw_5fwith_5flen',['grpc_json_writer_value_raw_with_len',['../json__writer_8h.html#a2b88eb7fd1bd939146e86c5b212d8cb5',1,'grpc_json_writer_value_raw_with_len(grpc_json_writer *writer, const char *string, size_t len):&#160;json_writer.c'],['../json__writer_8c.html#a2b88eb7fd1bd939146e86c5b212d8cb5',1,'grpc_json_writer_value_raw_with_len(grpc_json_writer *writer, const char *string, size_t len):&#160;json_writer.c']]],
+ ['grpc_5fjson_5fwriter_5fvalue_5fstring',['grpc_json_writer_value_string',['../json__writer_8h.html#aa7e5a12ffddc0cc95bff06c1879a64e0',1,'grpc_json_writer_value_string(grpc_json_writer *writer, const char *string):&#160;json_writer.c'],['../json__writer_8c.html#aa7e5a12ffddc0cc95bff06c1879a64e0',1,'grpc_json_writer_value_string(grpc_json_writer *writer, const char *string):&#160;json_writer.c']]],
+ ['grpc_5fjwt_5fclaims_5faudience',['grpc_jwt_claims_audience',['../jwt__verifier_8h.html#a19e8de86ed8bb8461969cd07624cb06f',1,'grpc_jwt_claims_audience(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a19e8de86ed8bb8461969cd07624cb06f',1,'grpc_jwt_claims_audience(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fcheck',['grpc_jwt_claims_check',['../jwt__verifier_8h.html#a956a1fe237276fbed03e5caee7360c6a',1,'grpc_jwt_claims_check(const grpc_jwt_claims *claims, const char *audience):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a956a1fe237276fbed03e5caee7360c6a',1,'grpc_jwt_claims_check(const grpc_jwt_claims *claims, const char *audience):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fdestroy',['grpc_jwt_claims_destroy',['../jwt__verifier_8h.html#aa69d0e75df7133ebfda05f50303f8316',1,'grpc_jwt_claims_destroy(grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#aa69d0e75df7133ebfda05f50303f8316',1,'grpc_jwt_claims_destroy(grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fexpires_5fat',['grpc_jwt_claims_expires_at',['../jwt__verifier_8h.html#ab9759b63895dde79be0715b0369cd0c4',1,'grpc_jwt_claims_expires_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ab9759b63895dde79be0715b0369cd0c4',1,'grpc_jwt_claims_expires_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5ffrom_5fjson',['grpc_jwt_claims_from_json',['../jwt__verifier_8h.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8',1,'grpc_jwt_claims_from_json(grpc_json *json, gpr_slice buffer):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ae3272e7b9f64bb7b36b4b7fbce9ae4f8',1,'grpc_jwt_claims_from_json(grpc_json *json, gpr_slice buffer):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fid',['grpc_jwt_claims_id',['../jwt__verifier_8h.html#a319d836355e40efba372f9baf09bbd54',1,'grpc_jwt_claims_id(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a319d836355e40efba372f9baf09bbd54',1,'grpc_jwt_claims_id(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fissued_5fat',['grpc_jwt_claims_issued_at',['../jwt__verifier_8h.html#a58838743f413ceebbf5b4afd77d7ab7f',1,'grpc_jwt_claims_issued_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a58838743f413ceebbf5b4afd77d7ab7f',1,'grpc_jwt_claims_issued_at(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fissuer',['grpc_jwt_claims_issuer',['../jwt__verifier_8h.html#a61a1d74e9b150c1a7dccf259d84e8da6',1,'grpc_jwt_claims_issuer(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a61a1d74e9b150c1a7dccf259d84e8da6',1,'grpc_jwt_claims_issuer(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fjson',['grpc_jwt_claims_json',['../jwt__verifier_8h.html#a4eb1db0055c2992691e1c3e92d65a656',1,'grpc_jwt_claims_json(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a4eb1db0055c2992691e1c3e92d65a656',1,'grpc_jwt_claims_json(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fnot_5fbefore',['grpc_jwt_claims_not_before',['../jwt__verifier_8h.html#a1904f0f6a28c8b14a486c932e5db1499',1,'grpc_jwt_claims_not_before(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a1904f0f6a28c8b14a486c932e5db1499',1,'grpc_jwt_claims_not_before(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fclaims_5fsubject',['grpc_jwt_claims_subject',['../jwt__verifier_8h.html#ac77af641794a3449e94d7d7cb48a50c6',1,'grpc_jwt_claims_subject(const grpc_jwt_claims *claims):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ac77af641794a3449e94d7d7cb48a50c6',1,'grpc_jwt_claims_subject(const grpc_jwt_claims *claims):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fencode_5fand_5fsign',['grpc_jwt_encode_and_sign',['../json__token_8h.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f',1,'grpc_jwt_encode_and_sign(const grpc_auth_json_key *json_key, const char *audience, gpr_timespec token_lifetime, const char *scope):&#160;json_token.c'],['../json__token_8c.html#af0b8abcdcb33f9d4ac1f15c5e2ef4b7f',1,'grpc_jwt_encode_and_sign(const grpc_auth_json_key *json_key, const char *audience, gpr_timespec token_lifetime, const char *scope):&#160;json_token.c']]],
+ ['grpc_5fjwt_5fencode_5fand_5fsign_5fset_5foverride',['grpc_jwt_encode_and_sign_set_override',['../json__token_8h.html#a58f70df2a4a2e8c9bc4f91a85202ce9c',1,'grpc_jwt_encode_and_sign_set_override(grpc_jwt_encode_and_sign_override func):&#160;json_token.c'],['../json__token_8c.html#a58f70df2a4a2e8c9bc4f91a85202ce9c',1,'grpc_jwt_encode_and_sign_set_override(grpc_jwt_encode_and_sign_override func):&#160;json_token.c']]],
+ ['grpc_5fjwt_5fverifier_5fcreate',['grpc_jwt_verifier_create',['../jwt__verifier_8h.html#acf8e8c06616b9d3006333f63c708a811',1,'grpc_jwt_verifier_create(const grpc_jwt_verifier_email_domain_key_url_mapping *mappings, size_t num_mappings):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#acf8e8c06616b9d3006333f63c708a811',1,'grpc_jwt_verifier_create(const grpc_jwt_verifier_email_domain_key_url_mapping *mappings, size_t num_mappings):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fdestroy',['grpc_jwt_verifier_destroy',['../jwt__verifier_8h.html#a7d033f01e4d9c4c3dfba2e2f4cf57398',1,'grpc_jwt_verifier_destroy(grpc_jwt_verifier *verifier):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a44bac1b48da3adf4d7858f2b40121bab',1,'grpc_jwt_verifier_destroy(grpc_jwt_verifier *v):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fstatus_5fto_5fstring',['grpc_jwt_verifier_status_to_string',['../jwt__verifier_8h.html#a2aad6c48023145f901a39b5b9ef6b6d3',1,'grpc_jwt_verifier_status_to_string(grpc_jwt_verifier_status status):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a2aad6c48023145f901a39b5b9ef6b6d3',1,'grpc_jwt_verifier_status_to_string(grpc_jwt_verifier_status status):&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fverify',['grpc_jwt_verifier_verify',['../jwt__verifier_8h.html#ac9960f7842a141d85b0bb38dd231900d',1,'grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, grpc_jwt_verification_done_cb cb, void *user_data):&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ac9960f7842a141d85b0bb38dd231900d',1,'grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, grpc_jwt_verification_done_cb cb, void *user_data):&#160;jwt_verifier.c']]],
+ ['grpc_5fkick_5fdrain',['grpc_kick_drain',['../pollset__posix_8h.html#a36baf579c30c8dba9a6c68f1f9dd979c',1,'pollset_posix.h']]],
+ ['grpc_5fkick_5fpoller',['grpc_kick_poller',['../alarm__internal_8h.html#aac483dfd6e19fa9df68620e7f7a0697f',1,'grpc_kick_poller(void):&#160;iomgr.c'],['../iomgr_8c.html#aac483dfd6e19fa9df68620e7f7a0697f',1,'grpc_kick_poller(void):&#160;iomgr.c']]],
+ ['grpc_5fkick_5fread_5ffd',['grpc_kick_read_fd',['../pollset__posix_8h.html#af74c66d9afaf90a2134f209dfb41f91b',1,'pollset_posix.h']]],
+ ['grpc_5flame_5fclient_5fchannel_5fcreate',['grpc_lame_client_channel_create',['../grpc_8h.html#acd59697f4b8bedea662939da3668ab9b',1,'grpc_lame_client_channel_create(const char *target):&#160;lame_client.c'],['../lame__client_8c.html#acd59697f4b8bedea662939da3668ab9b',1,'grpc_lame_client_channel_create(const char *target):&#160;lame_client.c']]],
+ ['grpc_5flb_5fpolicy_5fbroadcast',['grpc_lb_policy_broadcast',['../lb__policy_8h.html#a1d03d2f71dda12c97863cf387559e47a',1,'grpc_lb_policy_broadcast(grpc_lb_policy *policy, grpc_transport_op *op):&#160;lb_policy.c'],['../lb__policy_8c.html#a1d03d2f71dda12c97863cf387559e47a',1,'grpc_lb_policy_broadcast(grpc_lb_policy *policy, grpc_transport_op *op):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fcheck_5fconnectivity',['grpc_lb_policy_check_connectivity',['../lb__policy_8h.html#a115550f997d572ed49c8906c2cb347b8',1,'grpc_lb_policy_check_connectivity(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#a115550f997d572ed49c8906c2cb347b8',1,'grpc_lb_policy_check_connectivity(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fexit_5fidle',['grpc_lb_policy_exit_idle',['../lb__policy_8h.html#a163a863a51690daa93984d7b7bd0ac88',1,'grpc_lb_policy_exit_idle(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#a163a863a51690daa93984d7b7bd0ac88',1,'grpc_lb_policy_exit_idle(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5finit',['grpc_lb_policy_init',['../lb__policy_8h.html#aa20fbb7fdf68dadcae6aaba3e227ac50',1,'grpc_lb_policy_init(grpc_lb_policy *policy, const grpc_lb_policy_vtable *vtable):&#160;lb_policy.c'],['../lb__policy_8c.html#aa20fbb7fdf68dadcae6aaba3e227ac50',1,'grpc_lb_policy_init(grpc_lb_policy *policy, const grpc_lb_policy_vtable *vtable):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fnotify_5fon_5fstate_5fchange',['grpc_lb_policy_notify_on_state_change',['../lb__policy_8h.html#a246a7f5b971f672fa6a8dba8d7264790',1,'grpc_lb_policy_notify_on_state_change(grpc_lb_policy *policy, grpc_connectivity_state *state, grpc_iomgr_closure *closure):&#160;lb_policy.c'],['../lb__policy_8c.html#a246a7f5b971f672fa6a8dba8d7264790',1,'grpc_lb_policy_notify_on_state_change(grpc_lb_policy *policy, grpc_connectivity_state *state, grpc_iomgr_closure *closure):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fpick',['grpc_lb_policy_pick',['../lb__policy_8h.html#a31611c6d703434b360e90062a28e5140',1,'grpc_lb_policy_pick(grpc_lb_policy *policy, grpc_pollset *pollset, grpc_metadata_batch *initial_metadata, grpc_subchannel **target, grpc_iomgr_closure *on_complete):&#160;lb_policy.c'],['../lb__policy_8c.html#a31611c6d703434b360e90062a28e5140',1,'grpc_lb_policy_pick(grpc_lb_policy *policy, grpc_pollset *pollset, grpc_metadata_batch *initial_metadata, grpc_subchannel **target, grpc_iomgr_closure *on_complete):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fref',['grpc_lb_policy_ref',['../lb__policy_8h.html#af9780ed236a96c3f57d1965d3395132f',1,'grpc_lb_policy_ref(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#af9780ed236a96c3f57d1965d3395132f',1,'grpc_lb_policy_ref(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5fshutdown',['grpc_lb_policy_shutdown',['../lb__policy_8h.html#a1eb8d912c3d82fa0f444fe9cf4bd6991',1,'grpc_lb_policy_shutdown(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#a1eb8d912c3d82fa0f444fe9cf4bd6991',1,'grpc_lb_policy_shutdown(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5flb_5fpolicy_5funref',['grpc_lb_policy_unref',['../lb__policy_8h.html#aed69acd0dd453033a1e1437920ba8942',1,'grpc_lb_policy_unref(grpc_lb_policy *policy):&#160;lb_policy.c'],['../lb__policy_8c.html#aed69acd0dd453033a1e1437920ba8942',1,'grpc_lb_policy_unref(grpc_lb_policy *policy):&#160;lb_policy.c']]],
+ ['grpc_5fmaybe_5fcall_5fdelayed_5fcallbacks',['grpc_maybe_call_delayed_callbacks',['../iomgr__internal_8h.html#ae4e69eb5e3c51e00c2983df24c3c8c9f',1,'grpc_maybe_call_delayed_callbacks(gpr_mu *drop_mu, int success):&#160;iomgr.c'],['../iomgr_8c.html#ae4e69eb5e3c51e00c2983df24c3c8c9f',1,'grpc_maybe_call_delayed_callbacks(gpr_mu *drop_mu, int success):&#160;iomgr.c']]],
+ ['grpc_5fmdctx_5fcreate',['grpc_mdctx_create',['../metadata_8h.html#a207b09a54f3c57a90b5b44868fbf5649',1,'grpc_mdctx_create(void):&#160;metadata.c'],['../metadata_8c.html#a207b09a54f3c57a90b5b44868fbf5649',1,'grpc_mdctx_create(void):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fcreate_5fwith_5fseed',['grpc_mdctx_create_with_seed',['../metadata_8h.html#a29700f3749eea2c96f7bae1d57f8f7e3',1,'grpc_mdctx_create_with_seed(gpr_uint32 seed):&#160;metadata.c'],['../metadata_8c.html#a29700f3749eea2c96f7bae1d57f8f7e3',1,'grpc_mdctx_create_with_seed(gpr_uint32 seed):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fget_5fmdtab_5fcapacity_5ftest_5fonly',['grpc_mdctx_get_mdtab_capacity_test_only',['../metadata_8h.html#ab56ce41a4a8c2d30fca3e32d4d7b5e36',1,'grpc_mdctx_get_mdtab_capacity_test_only(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#a655a0f22cc71643674124ced4ce5018d',1,'grpc_mdctx_get_mdtab_capacity_test_only(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fget_5fmdtab_5fcount_5ftest_5fonly',['grpc_mdctx_get_mdtab_count_test_only',['../metadata_8h.html#ac3c26191d224ff5ac9f54713cfc90f92',1,'grpc_mdctx_get_mdtab_count_test_only(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#aba47aef8a83c845dd6ec3dc366fcfdab',1,'grpc_mdctx_get_mdtab_count_test_only(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fget_5fmdtab_5ffree_5ftest_5fonly',['grpc_mdctx_get_mdtab_free_test_only',['../metadata_8h.html#ae467d8aaa91efb73610faca99c18ca17',1,'grpc_mdctx_get_mdtab_free_test_only(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#a8a7b1b8046529252525680692d7dd68a',1,'grpc_mdctx_get_mdtab_free_test_only(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5flock',['grpc_mdctx_lock',['../metadata_8h.html#a390eb255a6d72a8ea84ac8ad3cbeb331',1,'grpc_mdctx_lock(grpc_mdctx *ctx):&#160;metadata.c'],['../metadata_8c.html#a390eb255a6d72a8ea84ac8ad3cbeb331',1,'grpc_mdctx_lock(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5flocked_5fmdelem_5funref',['grpc_mdctx_locked_mdelem_unref',['../metadata_8h.html#a7b190b43b10959286e61719a9f9f0f01',1,'grpc_mdctx_locked_mdelem_unref(grpc_mdctx *ctx, grpc_mdelem *elem):&#160;metadata.c'],['../metadata_8c.html#a473a5ef9df4df3cca9865f07a9237739',1,'grpc_mdctx_locked_mdelem_unref(grpc_mdctx *ctx, grpc_mdelem *gmd):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5fref',['grpc_mdctx_ref',['../metadata_8h.html#a0eee1214d287f4f14fa1363fdacff5da',1,'grpc_mdctx_ref(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#a0293b53029721bf7013af7466efbd324',1,'grpc_mdctx_ref(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5funlock',['grpc_mdctx_unlock',['../metadata_8h.html#a033690c1ac25d72fdc5e56e9f5d9e97b',1,'grpc_mdctx_unlock(grpc_mdctx *ctx):&#160;metadata.c'],['../metadata_8c.html#a033690c1ac25d72fdc5e56e9f5d9e97b',1,'grpc_mdctx_unlock(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdctx_5funref',['grpc_mdctx_unref',['../metadata_8h.html#a8ca25748d59d50f8641692bf3ae357d3',1,'grpc_mdctx_unref(grpc_mdctx *mdctx):&#160;metadata.c'],['../metadata_8c.html#ae80c7476ff57db4121dc9d8fef9e5670',1,'grpc_mdctx_unref(grpc_mdctx *ctx):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fmetadata_5fstrings',['grpc_mdelem_from_metadata_strings',['../metadata_8h.html#a969845603738428cf18a9a090896e152',1,'grpc_mdelem_from_metadata_strings(grpc_mdctx *ctx, grpc_mdstr *key, grpc_mdstr *value):&#160;metadata.c'],['../metadata_8c.html#afc5656c1cd10a6f2e7cebebff10c25a4',1,'grpc_mdelem_from_metadata_strings(grpc_mdctx *ctx, grpc_mdstr *mkey, grpc_mdstr *mvalue):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fslices',['grpc_mdelem_from_slices',['../metadata_8h.html#a5b5ad2d68dd8c76345170f5f732b8fa2',1,'grpc_mdelem_from_slices(grpc_mdctx *ctx, gpr_slice key, gpr_slice value):&#160;metadata.c'],['../metadata_8c.html#a5b5ad2d68dd8c76345170f5f732b8fa2',1,'grpc_mdelem_from_slices(grpc_mdctx *ctx, gpr_slice key, gpr_slice value):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fstring_5fand_5fbuffer',['grpc_mdelem_from_string_and_buffer',['../metadata_8h.html#a748c6028cdc4cd0fd8d98c3a7f79ed13',1,'grpc_mdelem_from_string_and_buffer(grpc_mdctx *ctx, const char *key, const gpr_uint8 *value, size_t value_length, int canonicalize_key):&#160;metadata.c'],['../metadata_8c.html#a748c6028cdc4cd0fd8d98c3a7f79ed13',1,'grpc_mdelem_from_string_and_buffer(grpc_mdctx *ctx, const char *key, const gpr_uint8 *value, size_t value_length, int canonicalize_key):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5ffrom_5fstrings',['grpc_mdelem_from_strings',['../metadata_8h.html#a6535f623fc2bd818158d96f6a37f73c8',1,'grpc_mdelem_from_strings(grpc_mdctx *ctx, const char *key, const char *value):&#160;metadata.c'],['../metadata_8c.html#a6535f623fc2bd818158d96f6a37f73c8',1,'grpc_mdelem_from_strings(grpc_mdctx *ctx, const char *key, const char *value):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5fget_5fuser_5fdata',['grpc_mdelem_get_user_data',['../metadata_8h.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9',1,'grpc_mdelem_get_user_data(grpc_mdelem *md, void(*if_destroy_func)(void *)):&#160;metadata.c'],['../metadata_8c.html#a1f7c3e28f1f851a5b50d274f3ad3ecc9',1,'grpc_mdelem_get_user_data(grpc_mdelem *md, void(*if_destroy_func)(void *)):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5fref',['grpc_mdelem_ref',['../metadata_8h.html#ae73ccb189245977bbddfa464bd3c6615',1,'grpc_mdelem_ref(grpc_mdelem *md):&#160;metadata.c'],['../metadata_8c.html#a5a85da96bfb21ef225169545913fbdc2',1,'grpc_mdelem_ref(grpc_mdelem *gmd):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5fset_5fuser_5fdata',['grpc_mdelem_set_user_data',['../metadata_8h.html#a6d0f62841408f1a89773aa4ef54dcf0e',1,'grpc_mdelem_set_user_data(grpc_mdelem *md, void(*destroy_func)(void *), void *user_data):&#160;metadata.c'],['../metadata_8c.html#a6d0f62841408f1a89773aa4ef54dcf0e',1,'grpc_mdelem_set_user_data(grpc_mdelem *md, void(*destroy_func)(void *), void *user_data):&#160;metadata.c']]],
+ ['grpc_5fmdelem_5funref',['grpc_mdelem_unref',['../metadata_8h.html#aaf81c9b79ca751ffb4de33ea510d70cc',1,'grpc_mdelem_unref(grpc_mdelem *md):&#160;metadata.c'],['../metadata_8c.html#a51228fa7618a8f6503e605709d893a25',1,'grpc_mdelem_unref(grpc_mdelem *gmd):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fas_5fbase64_5fencoded_5fand_5fhuffman_5fcompressed',['grpc_mdstr_as_base64_encoded_and_huffman_compressed',['../metadata_8h.html#a314273fea07852ac80ea184100398c11',1,'grpc_mdstr_as_base64_encoded_and_huffman_compressed(grpc_mdstr *str):&#160;metadata.c'],['../metadata_8c.html#a0bc211dd30038c1366a614647abdcf08',1,'grpc_mdstr_as_base64_encoded_and_huffman_compressed(grpc_mdstr *gs):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fas_5fc_5fstring',['grpc_mdstr_as_c_string',['../metadata_8h.html#aacbae6a08b63835ec31fcddb556aa895',1,'grpc_mdstr_as_c_string(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#aacbae6a08b63835ec31fcddb556aa895',1,'grpc_mdstr_as_c_string(grpc_mdstr *s):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5ffrom_5fbuffer',['grpc_mdstr_from_buffer',['../metadata_8h.html#ac510347648778d23eaf6c8d9a4b664db',1,'grpc_mdstr_from_buffer(grpc_mdctx *ctx, const gpr_uint8 *str, size_t length):&#160;metadata.c'],['../metadata_8c.html#a357ead79c52ee284bb190bae970d8457',1,'grpc_mdstr_from_buffer(grpc_mdctx *ctx, const gpr_uint8 *buf, size_t length):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5ffrom_5fslice',['grpc_mdstr_from_slice',['../metadata_8h.html#a4eccbbb62d87a131d2eb3367fd2c4c43',1,'grpc_mdstr_from_slice(grpc_mdctx *ctx, gpr_slice slice):&#160;metadata.c'],['../metadata_8c.html#a4eccbbb62d87a131d2eb3367fd2c4c43',1,'grpc_mdstr_from_slice(grpc_mdctx *ctx, gpr_slice slice):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5ffrom_5fstring',['grpc_mdstr_from_string',['../metadata_8h.html#af961acf0149066abf14c01f56a3e2b55',1,'grpc_mdstr_from_string(grpc_mdctx *ctx, const char *str, int perform_key_canonicalization):&#160;metadata.c'],['../metadata_8c.html#a30a9ea36693c48da5072719f6ae7de6d',1,'grpc_mdstr_from_string(grpc_mdctx *ctx, const char *str, int canonicalize_key):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fis_5fbin_5fsuffixed',['grpc_mdstr_is_bin_suffixed',['../metadata_8h.html#ad34887fb9c6733916ac87b8fde793e74',1,'grpc_mdstr_is_bin_suffixed(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#ad34887fb9c6733916ac87b8fde793e74',1,'grpc_mdstr_is_bin_suffixed(grpc_mdstr *s):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fis_5flegal_5fheader',['grpc_mdstr_is_legal_header',['../metadata_8h.html#a427ad60503ae8ce87bcfa0aa09fe99a5',1,'grpc_mdstr_is_legal_header(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#a427ad60503ae8ce87bcfa0aa09fe99a5',1,'grpc_mdstr_is_legal_header(grpc_mdstr *s):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5fref',['grpc_mdstr_ref',['../metadata_8h.html#abb0b4e65a5d630dfe5fe975cd7b578cf',1,'grpc_mdstr_ref(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#a85a25deeeea31c616e326b765043b9c9',1,'grpc_mdstr_ref(grpc_mdstr *gs):&#160;metadata.c']]],
+ ['grpc_5fmdstr_5funref',['grpc_mdstr_unref',['../metadata_8h.html#a6ba2e968699daaddaad9b48b78779465',1,'grpc_mdstr_unref(grpc_mdstr *s):&#160;metadata.c'],['../metadata_8c.html#a6481b7703e964dc8306f3c243b2378f3',1,'grpc_mdstr_unref(grpc_mdstr *gs):&#160;metadata.c']]],
+ ['grpc_5fmetadata_5farray_5fdestroy',['grpc_metadata_array_destroy',['../grpc_8h.html#aad125726d8b689cc5fc1a0444c91ed44',1,'grpc_metadata_array_destroy(grpc_metadata_array *array):&#160;metadata_array.c'],['../metadata__array_8c.html#aad125726d8b689cc5fc1a0444c91ed44',1,'grpc_metadata_array_destroy(grpc_metadata_array *array):&#160;metadata_array.c']]],
+ ['grpc_5fmetadata_5farray_5finit',['grpc_metadata_array_init',['../grpc_8h.html#a52cfda44034115720a0e88037dedbfb5',1,'grpc_metadata_array_init(grpc_metadata_array *array):&#160;metadata_array.c'],['../metadata__array_8c.html#a52cfda44034115720a0e88037dedbfb5',1,'grpc_metadata_array_init(grpc_metadata_array *array):&#160;metadata_array.c']]],
+ ['grpc_5fmetadata_5fbatch_5fadd_5fhead',['grpc_metadata_batch_add_head',['../stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003',1,'grpc_metadata_batch_add_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c'],['../stream__op_8c.html#a845453663a8db6cd2624ed92d63b2003',1,'grpc_metadata_batch_add_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fadd_5ftail',['grpc_metadata_batch_add_tail',['../stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01',1,'grpc_metadata_batch_add_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c'],['../stream__op_8c.html#a31f318cbb2f1fdb6372fdc4891e74d01',1,'grpc_metadata_batch_add_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fassert_5fok',['grpc_metadata_batch_assert_ok',['../stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a',1,'grpc_metadata_batch_assert_ok(grpc_metadata_batch *comd):&#160;stream_op.c'],['../stream__op_8c.html#a5107cb817e5019fc9f9e7fdd99e54c0e',1,'grpc_metadata_batch_assert_ok(grpc_metadata_batch *batch):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fdestroy',['grpc_metadata_batch_destroy',['../stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08',1,'grpc_metadata_batch_destroy(grpc_metadata_batch *batch):&#160;stream_op.c'],['../stream__op_8c.html#afc4867b9d7a952f003c5494120b59c08',1,'grpc_metadata_batch_destroy(grpc_metadata_batch *batch):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5ffilter',['grpc_metadata_batch_filter',['../stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf',1,'grpc_metadata_batch_filter(grpc_metadata_batch *batch, grpc_mdelem *(*filter)(void *user_data, grpc_mdelem *elem), void *user_data):&#160;stream_op.c'],['../stream__op_8c.html#a754411d9f54fc8762416abf0c148afcf',1,'grpc_metadata_batch_filter(grpc_metadata_batch *batch, grpc_mdelem *(*filter)(void *user_data, grpc_mdelem *elem), void *user_data):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5finit',['grpc_metadata_batch_init',['../stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770',1,'grpc_metadata_batch_init(grpc_metadata_batch *batch):&#160;stream_op.c'],['../stream__op_8c.html#a56d5ee4a6e415827935accfe449dc770',1,'grpc_metadata_batch_init(grpc_metadata_batch *batch):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5flink_5fhead',['grpc_metadata_batch_link_head',['../stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b',1,'grpc_metadata_batch_link_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c'],['../stream__op_8c.html#a8c6af9205b51577ab879b07d9954d32b',1,'grpc_metadata_batch_link_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5flink_5ftail',['grpc_metadata_batch_link_tail',['../stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e',1,'grpc_metadata_batch_link_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c'],['../stream__op_8c.html#a6a07ac989d86142e60bd17525f7f509e',1,'grpc_metadata_batch_link_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fmerge',['grpc_metadata_batch_merge',['../stream__op_8h.html#adf6ee05d9443f295076015da3428f12a',1,'grpc_metadata_batch_merge(grpc_metadata_batch *target, grpc_metadata_batch *add):&#160;stream_op.c'],['../stream__op_8c.html#adf6ee05d9443f295076015da3428f12a',1,'grpc_metadata_batch_merge(grpc_metadata_batch *target, grpc_metadata_batch *add):&#160;stream_op.c']]],
+ ['grpc_5fmetadata_5fbatch_5fmove',['grpc_metadata_batch_move',['../stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e',1,'grpc_metadata_batch_move(grpc_metadata_batch *dst, grpc_metadata_batch *src):&#160;stream_op.c'],['../stream__op_8c.html#a719845dfd6b62fb62a75d9776396154e',1,'grpc_metadata_batch_move(grpc_metadata_batch *dst, grpc_metadata_batch *src):&#160;stream_op.c']]],
+ ['grpc_5fmsg_5fcompress',['grpc_msg_compress',['../message__compress_8h.html#ad77078989bef6661528ca2e22223d8cd',1,'grpc_msg_compress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c'],['../message__compress_8c.html#ad77078989bef6661528ca2e22223d8cd',1,'grpc_msg_compress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c']]],
+ ['grpc_5fmsg_5fdecompress',['grpc_msg_decompress',['../message__compress_8h.html#a3453eb197bbea1ad5dbc57561d9352f0',1,'grpc_msg_decompress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c'],['../message__compress_8c.html#a3453eb197bbea1ad5dbc57561d9352f0',1,'grpc_msg_decompress(grpc_compression_algorithm algorithm, gpr_slice_buffer *input, gpr_slice_buffer *output):&#160;message_compress.c']]],
+ ['grpc_5foauth2_5ftoken_5ffetcher_5fcredentials_5fparse_5fserver_5fresponse',['grpc_oauth2_token_fetcher_credentials_parse_server_response',['../credentials_8h.html#af0dac46697efd780811863ee13c73fbd',1,'grpc_oauth2_token_fetcher_credentials_parse_server_response(const struct grpc_httpcli_response *response, grpc_credentials_md_store **token_md, gpr_timespec *token_lifetime):&#160;credentials.h'],['../credentials_8c.html#a642f68664ea54ce67c7f752c33e01877',1,'grpc_oauth2_token_fetcher_credentials_parse_server_response(const grpc_httpcli_response *response, grpc_credentials_md_store **token_md, gpr_timespec *token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fop_5fstring',['grpc_op_string',['../call__log__batch_8c.html#a20665cb5606e67c3748f0df7c3f93998',1,'call_log_batch.c']]],
+ ['grpc_5fpoll_5fbecome_5fmultipoller',['grpc_poll_become_multipoller',['../pollset__posix_8h.html#ae03dc91376fc7bfb279e74a955782102',1,'pollset_posix.h']]],
+ ['grpc_5fpoll_5fdeadline_5fto_5fmillis_5ftimeout',['grpc_poll_deadline_to_millis_timeout',['../pollset__posix_8h.html#ab8e35054e04edb42c1e665ef6a896fc0',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fadd_5ffd',['grpc_pollset_add_fd',['../pollset__posix_8h.html#add4b6bbce2371decdb574d68b15a81e8',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fdel_5ffd',['grpc_pollset_del_fd',['../pollset__posix_8h.html#a84e9698eaa1ae735fc13d9faf7e073ea',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fdestroy',['grpc_pollset_destroy',['../pollset_8h.html#a66c5028ee13b23f2d3c4db177f5c7d0f',1,'pollset.h']]],
+ ['grpc_5fpollset_5fforce_5fkick',['grpc_pollset_force_kick',['../pollset__posix_8h.html#a1dcd57a12b81e4369bc4c6957ff3837e',1,'pollset_posix.h']]],
+ ['grpc_5fpollset_5fglobal_5finit',['grpc_pollset_global_init',['../iomgr__posix_8h.html#a4011ee1fbdad1603b7e55127594c200a',1,'iomgr_posix.h']]],
+ ['grpc_5fpollset_5fglobal_5fshutdown',['grpc_pollset_global_shutdown',['../iomgr__posix_8h.html#a8d671f6f374e2ed27c2d81c3400e5688',1,'iomgr_posix.h']]],
+ ['grpc_5fpollset_5finit',['grpc_pollset_init',['../pollset_8h.html#abea9f486d280910a6e6aecbe6ca5f40b',1,'pollset.h']]],
+ ['grpc_5fpollset_5fkick',['grpc_pollset_kick',['../pollset_8h.html#a395a3872723c67d877799cdc79ae7f48',1,'pollset.h']]],
+ ['grpc_5fpollset_5fkick_5fconsume',['grpc_pollset_kick_consume',['../pollset__kick__posix_8h.html#a99be47b9ffb41145d43f9c7ca90d4bc3',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fdestroy',['grpc_pollset_kick_destroy',['../pollset__kick__posix_8h.html#adaa67c8f786eed2df0402c6b37f02936',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fglobal_5fdestroy',['grpc_pollset_kick_global_destroy',['../pollset__kick__posix_8h.html#a59b8b056ec1ae7f0692bf26bf2a3d737',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fglobal_5finit',['grpc_pollset_kick_global_init',['../pollset__kick__posix_8h.html#ac0d8bb7edaf2ad8346745db01206c5ed',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fglobal_5finit_5ffallback_5ffd',['grpc_pollset_kick_global_init_fallback_fd',['../pollset__kick__posix_8h.html#a49bdece86b13c8d5785b32fae1609e08',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5finit',['grpc_pollset_kick_init',['../pollset__kick__posix_8h.html#a12982076ee83468851ab4a96502dd32c',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fkick',['grpc_pollset_kick_kick',['../pollset__kick__posix_8h.html#a2eecbc8ba9bc911b87e4061c7786c849',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fpost_5fpoll',['grpc_pollset_kick_post_poll',['../pollset__kick__posix_8h.html#a60bfabb6f5d6c3879607f5fc7634e037',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fkick_5fpre_5fpoll',['grpc_pollset_kick_pre_poll',['../pollset__kick__posix_8h.html#a6b29bc457705925de07822e6d6d1b91b',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fset_5fadd_5ffd',['grpc_pollset_set_add_fd',['../pollset__set__posix_8h.html#a4710efa6246cfb542fc4e6e19f6b480c',1,'pollset_set_posix.h']]],
+ ['grpc_5fpollset_5fset_5fadd_5fpollset',['grpc_pollset_set_add_pollset',['../pollset__set_8h.html#a32cce61c048d3f4ccd8a2f89ccc6bdd2',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fset_5fdel_5ffd',['grpc_pollset_set_del_fd',['../pollset__set__posix_8h.html#aea5df4b32ccbd0fc718384f7f71b9414',1,'pollset_set_posix.h']]],
+ ['grpc_5fpollset_5fset_5fdel_5fpollset',['grpc_pollset_set_del_pollset',['../pollset__set_8h.html#aa17d44c467a104db9bb5150d815212c0',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fset_5fdestroy',['grpc_pollset_set_destroy',['../pollset__set_8h.html#af4b47eef823139b714d759e49495fafd',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fset_5finit',['grpc_pollset_set_init',['../pollset__set_8h.html#a215962a68f3a3a344993f6da6a5f486c',1,'pollset_set.h']]],
+ ['grpc_5fpollset_5fshutdown',['grpc_pollset_shutdown',['../pollset_8h.html#a85616767facacdf95dfc4fe564352e87',1,'pollset.h']]],
+ ['grpc_5fpollset_5fwork',['grpc_pollset_work',['../pollset_8h.html#a8e69570c350199ba682b6f673a63e8dd',1,'pollset.h']]],
+ ['grpc_5fraw_5fbyte_5fbuffer_5fcreate',['grpc_raw_byte_buffer_create',['../byte__buffer_8h.html#a1aaaa0d8a1609166e0b0bb2b42332618',1,'grpc_raw_byte_buffer_create(gpr_slice *slices, size_t nslices):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a1aaaa0d8a1609166e0b0bb2b42332618',1,'grpc_raw_byte_buffer_create(gpr_slice *slices, size_t nslices):&#160;byte_buffer.c']]],
+ ['grpc_5fraw_5fbyte_5fbuffer_5ffrom_5freader',['grpc_raw_byte_buffer_from_reader',['../byte__buffer_8h.html#a9b4f877e32f45e0e704970e89582e0df',1,'grpc_raw_byte_buffer_from_reader(grpc_byte_buffer_reader *reader):&#160;byte_buffer.c'],['../byte__buffer_8c.html#a9b4f877e32f45e0e704970e89582e0df',1,'grpc_raw_byte_buffer_from_reader(grpc_byte_buffer_reader *reader):&#160;byte_buffer.c']]],
+ ['grpc_5fraw_5fcompressed_5fbyte_5fbuffer_5fcreate',['grpc_raw_compressed_byte_buffer_create',['../byte__buffer_8h.html#af9801acc1dbfd02b2c51ed9d504cd12b',1,'grpc_raw_compressed_byte_buffer_create(gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression):&#160;byte_buffer.c'],['../byte__buffer_8c.html#af9801acc1dbfd02b2c51ed9d504cd12b',1,'grpc_raw_compressed_byte_buffer_create(gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression):&#160;byte_buffer.c']]],
+ ['grpc_5frefresh_5ftoken_5fcredentials_5fcreate',['grpc_refresh_token_credentials_create',['../grpc__security_8h.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2',1,'grpc_refresh_token_credentials_create(const char *json_refresh_token):&#160;credentials.c'],['../credentials_8c.html#a7a2440ad02b6a96adbd2c6e5d66fd7d2',1,'grpc_refresh_token_credentials_create(const char *json_refresh_token):&#160;credentials.c']]],
+ ['grpc_5frefresh_5ftoken_5fcredentials_5fcreate_5ffrom_5fauth_5frefresh_5ftoken',['grpc_refresh_token_credentials_create_from_auth_refresh_token',['../credentials_8h.html#af364310c463f2ddc7d714f2dbbd57e0d',1,'grpc_refresh_token_credentials_create_from_auth_refresh_token(grpc_auth_refresh_token token):&#160;credentials.c'],['../credentials_8c.html#a0effe35d7112502e48014662eb7015cf',1,'grpc_refresh_token_credentials_create_from_auth_refresh_token(grpc_auth_refresh_token refresh_token):&#160;credentials.c']]],
+ ['grpc_5fregister_5fresolver_5ftype',['grpc_register_resolver_type',['../resolver__registry_8h.html#a563d9d398ed1757d9c5f78ae2ec7b9d7',1,'grpc_register_resolver_type(const char *scheme, grpc_resolver_factory *factory):&#160;resolver_registry.c'],['../resolver__registry_8c.html#a563d9d398ed1757d9c5f78ae2ec7b9d7',1,'grpc_register_resolver_type(const char *scheme, grpc_resolver_factory *factory):&#160;resolver_registry.c']]],
+ ['grpc_5fregister_5ftracer',['grpc_register_tracer',['../trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db',1,'grpc_register_tracer(const char *name, int *flag):&#160;trace.c'],['../trace_8c.html#a082b7bb1ebe733f60bf2db0c7cd7b0db',1,'grpc_register_tracer(const char *name, int *flag):&#160;trace.c']]],
+ ['grpc_5fresolve_5faddress',['grpc_resolve_address',['../resolve__address_8h.html#ad97dcf547d9b690a9a7de340a84391ea',1,'resolve_address.h']]],
+ ['grpc_5fresolved_5faddresses_5fdestroy',['grpc_resolved_addresses_destroy',['../resolve__address_8h.html#affdc0f6f10389f1a19db7a5edb527b7c',1,'resolve_address.h']]],
+ ['grpc_5fresolver_5fchannel_5fsaw_5ferror',['grpc_resolver_channel_saw_error',['../resolver_8h.html#a118536c3b62613e957e10ce9cb602e6e',1,'grpc_resolver_channel_saw_error(grpc_resolver *resolver, struct sockaddr *failing_address, int failing_address_len):&#160;resolver.c'],['../resolver_8c.html#a118536c3b62613e957e10ce9cb602e6e',1,'grpc_resolver_channel_saw_error(grpc_resolver *resolver, struct sockaddr *failing_address, int failing_address_len):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fcreate',['grpc_resolver_create',['../resolver__registry_8h.html#a42ba392534ac248b5a4ac1f87cd9b3b0',1,'grpc_resolver_create(const char *name, grpc_subchannel_factory *subchannel_factory):&#160;resolver_registry.c'],['../resolver__registry_8c.html#a42ba392534ac248b5a4ac1f87cd9b3b0',1,'grpc_resolver_create(const char *name, grpc_subchannel_factory *subchannel_factory):&#160;resolver_registry.c']]],
+ ['grpc_5fresolver_5ffactory_5fcreate_5fresolver',['grpc_resolver_factory_create_resolver',['../resolver__factory_8h.html#a27c578ca66348965f7d3810d0c6fc65d',1,'grpc_resolver_factory_create_resolver(grpc_resolver_factory *factory, grpc_uri *uri, grpc_subchannel_factory *subchannel_factory):&#160;resolver_factory.c'],['../resolver__factory_8c.html#a27c578ca66348965f7d3810d0c6fc65d',1,'grpc_resolver_factory_create_resolver(grpc_resolver_factory *factory, grpc_uri *uri, grpc_subchannel_factory *subchannel_factory):&#160;resolver_factory.c']]],
+ ['grpc_5fresolver_5ffactory_5fref',['grpc_resolver_factory_ref',['../resolver__factory_8h.html#ad772468e42a97021bb827beb5b2db3ba',1,'grpc_resolver_factory_ref(grpc_resolver_factory *resolver):&#160;resolver_factory.c'],['../resolver__factory_8c.html#ad5938bfb397011e5e7f4f8d048102e9c',1,'grpc_resolver_factory_ref(grpc_resolver_factory *factory):&#160;resolver_factory.c']]],
+ ['grpc_5fresolver_5ffactory_5funref',['grpc_resolver_factory_unref',['../resolver__factory_8h.html#a9a16ab9dc39e97fff0b95ef3fc76904f',1,'grpc_resolver_factory_unref(grpc_resolver_factory *resolver):&#160;resolver_factory.c'],['../resolver__factory_8c.html#aff39a6960a452dbc2537ad83b3cefe84',1,'grpc_resolver_factory_unref(grpc_resolver_factory *factory):&#160;resolver_factory.c']]],
+ ['grpc_5fresolver_5finit',['grpc_resolver_init',['../resolver_8h.html#ac806a2edf4f2073529eec1319db9fde4',1,'grpc_resolver_init(grpc_resolver *resolver, const grpc_resolver_vtable *vtable):&#160;resolver.c'],['../resolver_8c.html#ac806a2edf4f2073529eec1319db9fde4',1,'grpc_resolver_init(grpc_resolver *resolver, const grpc_resolver_vtable *vtable):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fnext',['grpc_resolver_next',['../resolver_8h.html#ac5ef07f9efdd2a39f2239207cc060729',1,'grpc_resolver_next(grpc_resolver *resolver, grpc_client_config **target_config, grpc_iomgr_closure *on_complete):&#160;resolver.c'],['../resolver_8c.html#ac5ef07f9efdd2a39f2239207cc060729',1,'grpc_resolver_next(grpc_resolver *resolver, grpc_client_config **target_config, grpc_iomgr_closure *on_complete):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fref',['grpc_resolver_ref',['../resolver_8h.html#aae02c9a384f3f2c2b598f56014caa211',1,'grpc_resolver_ref(grpc_resolver *policy):&#160;resolver.c'],['../resolver_8c.html#a364d687b496e862cd5830d3aed899f4f',1,'grpc_resolver_ref(grpc_resolver *resolver):&#160;resolver.c']]],
+ ['grpc_5fresolver_5fregistry_5finit',['grpc_resolver_registry_init',['../resolver__registry_8h.html#a10ad765940e4f2ebf9d6bdc6b97d0fb0',1,'grpc_resolver_registry_init(const char *default_prefix):&#160;resolver_registry.c'],['../resolver__registry_8c.html#ac7c093f883b89670df4f0e6a42a9a77c',1,'grpc_resolver_registry_init(const char *default_resolver_scheme):&#160;resolver_registry.c']]],
+ ['grpc_5fresolver_5fregistry_5fshutdown',['grpc_resolver_registry_shutdown',['../resolver__registry_8h.html#a7e9178815fe26123c9413514e1212ca6',1,'grpc_resolver_registry_shutdown(void):&#160;resolver_registry.c'],['../resolver__registry_8c.html#a7e9178815fe26123c9413514e1212ca6',1,'grpc_resolver_registry_shutdown(void):&#160;resolver_registry.c']]],
+ ['grpc_5fresolver_5fshutdown',['grpc_resolver_shutdown',['../resolver_8h.html#ae7b200016c3489c0bb3de525198b435b',1,'grpc_resolver_shutdown(grpc_resolver *resolver):&#160;resolver.c'],['../resolver_8c.html#ae7b200016c3489c0bb3de525198b435b',1,'grpc_resolver_shutdown(grpc_resolver *resolver):&#160;resolver.c']]],
+ ['grpc_5fresolver_5funref',['grpc_resolver_unref',['../resolver_8h.html#a198c3f1a1ef2d6f40680436a2fcaa11d',1,'grpc_resolver_unref(grpc_resolver *policy):&#160;resolver.c'],['../resolver_8c.html#a22b971b1770b476c3791f3f7bd370fd9',1,'grpc_resolver_unref(grpc_resolver *resolver):&#160;resolver.c']]],
+ ['grpc_5fsecure_5fchannel_5fcreate',['grpc_secure_channel_create',['../grpc__security_8h.html#a4d63d4cac74652ec3fac7782acb4a2d4',1,'grpc_secure_channel_create(grpc_credentials *creds, const char *target, const grpc_channel_args *args):&#160;secure_channel_create.c'],['../secure__channel__create_8c.html#a4d63d4cac74652ec3fac7782acb4a2d4',1,'grpc_secure_channel_create(grpc_credentials *creds, const char *target, const grpc_channel_args *args):&#160;secure_channel_create.c']]],
+ ['grpc_5fsecure_5fendpoint_5fcreate',['grpc_secure_endpoint_create',['../secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66',1,'grpc_secure_endpoint_create(struct tsi_frame_protector *protector, grpc_endpoint *to_wrap, gpr_slice *leftover_slices, size_t leftover_nslices):&#160;secure_endpoint.c'],['../secure__endpoint_8c.html#a76ef547d32b0955572a841108518e611',1,'grpc_secure_endpoint_create(struct tsi_frame_protector *protector, grpc_endpoint *transport, gpr_slice *leftover_slices, size_t leftover_nslices):&#160;secure_endpoint.c']]],
+ ['grpc_5fsecurity_5fconnector_5fcheck_5fpeer',['grpc_security_connector_check_peer',['../security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94',1,'grpc_security_connector_check_peer(grpc_security_connector *sc, tsi_peer peer, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c'],['../security__connector_8c.html#aac9a5d6c38755b24c7170789056dec94',1,'grpc_security_connector_check_peer(grpc_security_connector *sc, tsi_peer peer, grpc_security_check_cb cb, void *user_data):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5fcreate_5fhandshaker',['grpc_security_connector_create_handshaker',['../security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde',1,'grpc_security_connector_create_handshaker(grpc_security_connector *sc, tsi_handshaker **handshaker):&#160;security_connector.c'],['../security__connector_8c.html#af81a7b903de0636a73b0e852b36a7fde',1,'grpc_security_connector_create_handshaker(grpc_security_connector *sc, tsi_handshaker **handshaker):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5ffrom_5farg',['grpc_security_connector_from_arg',['../security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca',1,'grpc_security_connector_from_arg(const grpc_arg *arg):&#160;security_connector.c'],['../security__connector_8c.html#aa427ef1fd3d8e58437215f4da2fd87ca',1,'grpc_security_connector_from_arg(const grpc_arg *arg):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5fref',['grpc_security_connector_ref',['../security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4',1,'grpc_security_connector_ref(grpc_security_connector *policy):&#160;security_connector.c'],['../security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127',1,'grpc_security_connector_ref(grpc_security_connector *sc):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5fto_5farg',['grpc_security_connector_to_arg',['../security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a',1,'grpc_security_connector_to_arg(grpc_security_connector *sc):&#160;security_connector.c'],['../security__connector_8c.html#ab609527dad74bcc51e4b8b17b8f47c8a',1,'grpc_security_connector_to_arg(grpc_security_connector *sc):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fconnector_5funref',['grpc_security_connector_unref',['../security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e',1,'grpc_security_connector_unref(grpc_security_connector *policy):&#160;security_connector.c'],['../security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359',1,'grpc_security_connector_unref(grpc_security_connector *sc):&#160;security_connector.c']]],
+ ['grpc_5fsecurity_5fpre_5finit',['grpc_security_pre_init',['../init_8h.html#a7cfa0e02a966bf937b5d69e10fad2ef7',1,'grpc_security_pre_init(void):&#160;init_secure.c'],['../init__secure_8c.html#a7cfa0e02a966bf937b5d69e10fad2ef7',1,'grpc_security_pre_init(void):&#160;init_secure.c']]],
+ ['grpc_5fserver_5fadd_5fhttp2_5fport',['grpc_server_add_http2_port',['../grpc_8h.html#a48cab64480658b97a775b2c7837456f9',1,'grpc_server_add_http2_port(grpc_server *server, const char *addr):&#160;server_chttp2.c'],['../server__chttp2_8c.html#a48cab64480658b97a775b2c7837456f9',1,'grpc_server_add_http2_port(grpc_server *server, const char *addr):&#160;server_chttp2.c']]],
+ ['grpc_5fserver_5fadd_5flistener',['grpc_server_add_listener',['../server_8h.html#afba4e38403fa34a317c44de9bae41105',1,'grpc_server_add_listener(grpc_server *server, void *listener, void(*start)(grpc_server *server, void *arg, grpc_pollset **pollsets, size_t npollsets), void(*destroy)(grpc_server *server, void *arg)):&#160;server.h'],['../server_8c.html#a777b461e0fd2a56acd35caf54f3d88e6',1,'grpc_server_add_listener(grpc_server *server, void *arg, void(*start)(grpc_server *server, void *arg, grpc_pollset **pollsets, size_t pollset_count), void(*destroy)(grpc_server *server, void *arg)):&#160;server.c']]],
+ ['grpc_5fserver_5fadd_5fsecure_5fhttp2_5fport',['grpc_server_add_secure_http2_port',['../grpc__security_8h.html#a5d0db200d00b62b79138472dc9b1fe59',1,'grpc_server_add_secure_http2_port(grpc_server *server, const char *addr, grpc_server_credentials *creds):&#160;server_secure_chttp2.c'],['../server__secure__chttp2_8c.html#a5d0db200d00b62b79138472dc9b1fe59',1,'grpc_server_add_secure_http2_port(grpc_server *server, const char *addr, grpc_server_credentials *creds):&#160;server_secure_chttp2.c']]],
+ ['grpc_5fserver_5fcancel_5fall_5fcalls',['grpc_server_cancel_all_calls',['../grpc_8h.html#ac5c1e4f3e270a7afbc39403fff0dc803',1,'grpc_server_cancel_all_calls(grpc_server *server):&#160;server.c'],['../server_8c.html#ac5c1e4f3e270a7afbc39403fff0dc803',1,'grpc_server_cancel_all_calls(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5fcreate',['grpc_server_create',['../grpc_8h.html#a4036710ea12eccabbbbf050d6bad4cd4',1,'grpc_server_create(const grpc_channel_args *args):&#160;server_create.c'],['../server__create_8c.html#a4036710ea12eccabbbbf050d6bad4cd4',1,'grpc_server_create(const grpc_channel_args *args):&#160;server_create.c']]],
+ ['grpc_5fserver_5fcreate_5ffrom_5ffilters',['grpc_server_create_from_filters',['../server_8h.html#a870e9abac807e8ba2578df7d9526f8c0',1,'grpc_server_create_from_filters(const grpc_channel_filter **filters, size_t filter_count, const grpc_channel_args *args):&#160;server.c'],['../server_8c.html#a870e9abac807e8ba2578df7d9526f8c0',1,'grpc_server_create_from_filters(const grpc_channel_filter **filters, size_t filter_count, const grpc_channel_args *args):&#160;server.c']]],
+ ['grpc_5fserver_5fcredentials_5fcreate_5fsecurity_5fconnector',['grpc_server_credentials_create_security_connector',['../credentials_8h.html#acc8fc30e87ddec6ff87dd6676215755a',1,'grpc_server_credentials_create_security_connector(grpc_server_credentials *creds, grpc_security_connector **sc):&#160;credentials.c'],['../credentials_8c.html#acc8fc30e87ddec6ff87dd6676215755a',1,'grpc_server_credentials_create_security_connector(grpc_server_credentials *creds, grpc_security_connector **sc):&#160;credentials.c']]],
+ ['grpc_5fserver_5fcredentials_5frelease',['grpc_server_credentials_release',['../grpc__security_8h.html#a6e9f9320f4f8d2d534d04ed642f032ea',1,'grpc_server_credentials_release(grpc_server_credentials *creds):&#160;credentials.c'],['../credentials_8c.html#a6e9f9320f4f8d2d534d04ed642f032ea',1,'grpc_server_credentials_release(grpc_server_credentials *creds):&#160;credentials.c']]],
+ ['grpc_5fserver_5fdestroy',['grpc_server_destroy',['../grpc_8h.html#a34cba45da7c32a21ac82305d670e4620',1,'grpc_server_destroy(grpc_server *server):&#160;server.c'],['../server_8c.html#a34cba45da7c32a21ac82305d670e4620',1,'grpc_server_destroy(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5fget_5fchannel_5fargs',['grpc_server_get_channel_args',['../server_8h.html#a263c42634aa706458d691565943c6cae',1,'grpc_server_get_channel_args(grpc_server *server):&#160;server.c'],['../server_8c.html#a263c42634aa706458d691565943c6cae',1,'grpc_server_get_channel_args(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5fhas_5fopen_5fconnections',['grpc_server_has_open_connections',['../server_8h.html#a28a4697b500cd4867a9f6731c8e58a94',1,'grpc_server_has_open_connections(grpc_server *server):&#160;server.c'],['../server_8c.html#a28a4697b500cd4867a9f6731c8e58a94',1,'grpc_server_has_open_connections(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fserver_5flistener_5fdestroy_5fdone',['grpc_server_listener_destroy_done',['../server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9',1,'grpc_server_listener_destroy_done(void *server):&#160;server.c'],['../server_8c.html#a57b25ccc5ec64affd1ade91554a81092',1,'grpc_server_listener_destroy_done(void *s):&#160;server.c']]],
+ ['grpc_5fserver_5flog_5frequest_5fcall',['grpc_server_log_request_call',['../call_8h.html#a731e08efd7f3cab089d2239f0ed931d5',1,'grpc_server_log_request_call(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;call_log_batch.c'],['../call__log__batch_8c.html#a731e08efd7f3cab089d2239f0ed931d5',1,'grpc_server_log_request_call(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;call_log_batch.c']]],
+ ['grpc_5fserver_5flog_5fshutdown',['grpc_server_log_shutdown',['../call_8h.html#a0e7c36965ffbb52c576b6b0bf819ab89',1,'grpc_server_log_shutdown(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;call_log_batch.c'],['../call__log__batch_8c.html#a0e7c36965ffbb52c576b6b0bf819ab89',1,'grpc_server_log_shutdown(char *file, int line, gpr_log_severity severity, grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;call_log_batch.c']]],
+ ['grpc_5fserver_5fregister_5fcompletion_5fqueue',['grpc_server_register_completion_queue',['../grpc_8h.html#ac174712f87fdae4b5757a1370e2a31cb',1,'grpc_server_register_completion_queue(grpc_server *server, grpc_completion_queue *cq):&#160;server.c'],['../server_8c.html#ac174712f87fdae4b5757a1370e2a31cb',1,'grpc_server_register_completion_queue(grpc_server *server, grpc_completion_queue *cq):&#160;server.c']]],
+ ['grpc_5fserver_5fregister_5fmethod',['grpc_server_register_method',['../grpc_8h.html#a283062a2209f464f234b0e645c6fffb2',1,'grpc_server_register_method(grpc_server *server, const char *method, const char *host):&#160;server.c'],['../server_8c.html#a283062a2209f464f234b0e645c6fffb2',1,'grpc_server_register_method(grpc_server *server, const char *method, const char *host):&#160;server.c']]],
+ ['grpc_5fserver_5frequest_5fcall',['grpc_server_request_call',['../grpc_8h.html#a636d8fd8c888ba0a0fefacf8dcab7257',1,'grpc_server_request_call(grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *request_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new):&#160;server.c'],['../server_8c.html#a419670c3509bc3c67c1344be3a1c4dbf',1,'grpc_server_request_call(grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *initial_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;server.c']]],
+ ['grpc_5fserver_5frequest_5fregistered_5fcall',['grpc_server_request_registered_call',['../grpc_8h.html#a7207900db3bba2f1ae2e3f2dfc2822de',1,'grpc_server_request_registered_call(grpc_server *server, void *registered_method, grpc_call **call, gpr_timespec *deadline, grpc_metadata_array *request_metadata, grpc_byte_buffer **optional_payload, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new):&#160;server.c'],['../server_8c.html#a82bc2345fb113c461e255364d8d192b5',1,'grpc_server_request_registered_call(grpc_server *server, void *rm, grpc_call **call, gpr_timespec *deadline, grpc_metadata_array *initial_metadata, grpc_byte_buffer **optional_payload, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag):&#160;server.c']]],
+ ['grpc_5fserver_5fsecurity_5fcontext_5fcreate',['grpc_server_security_context_create',['../security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a',1,'grpc_server_security_context_create(void):&#160;security_context.c'],['../security__context_8c.html#afa8c88dfb1be5add6af3143eeb76460a',1,'grpc_server_security_context_create(void):&#160;security_context.c']]],
+ ['grpc_5fserver_5fsecurity_5fcontext_5fdestroy',['grpc_server_security_context_destroy',['../security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a',1,'grpc_server_security_context_destroy(void *ctx):&#160;security_context.c'],['../security__context_8c.html#a86caf02cd607c3ff6f1e6657ffa5c17a',1,'grpc_server_security_context_destroy(void *ctx):&#160;security_context.c']]],
+ ['grpc_5fserver_5fsetup_5ftransport',['grpc_server_setup_transport',['../server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc',1,'grpc_server_setup_transport(grpc_server *server, grpc_transport *transport, grpc_channel_filter const **extra_filters, size_t num_extra_filters, grpc_mdctx *mdctx, const grpc_channel_args *args):&#160;server.c'],['../server_8c.html#a26fd88680fa7949f4af879acdc249d8d',1,'grpc_server_setup_transport(grpc_server *s, grpc_transport *transport, grpc_channel_filter const **extra_filters, size_t num_extra_filters, grpc_mdctx *mdctx, const grpc_channel_args *args):&#160;server.c']]],
+ ['grpc_5fserver_5fshutdown_5fand_5fnotify',['grpc_server_shutdown_and_notify',['../grpc_8h.html#a56fffa23c1c4bab9a469e2ac607b6db7',1,'grpc_server_shutdown_and_notify(grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;server.c'],['../server_8c.html#a56fffa23c1c4bab9a469e2ac607b6db7',1,'grpc_server_shutdown_and_notify(grpc_server *server, grpc_completion_queue *cq, void *tag):&#160;server.c']]],
+ ['grpc_5fserver_5fstart',['grpc_server_start',['../grpc_8h.html#ac5010d26419e14f5a9ab2fa86a4f7d1e',1,'grpc_server_start(grpc_server *server):&#160;server.c'],['../server_8c.html#ac5010d26419e14f5a9ab2fa86a4f7d1e',1,'grpc_server_start(grpc_server *server):&#160;server.c']]],
+ ['grpc_5fservice_5faccount_5fcredentials_5fcreate',['grpc_service_account_credentials_create',['../grpc__security_8h.html#a15aa83608fad085b6244de659d322b27',1,'grpc_service_account_credentials_create(const char *json_key, const char *scope, gpr_timespec token_lifetime):&#160;credentials.c'],['../credentials_8c.html#a15aa83608fad085b6244de659d322b27',1,'grpc_service_account_credentials_create(const char *json_key, const char *scope, gpr_timespec token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fservice_5faccount_5fjwt_5faccess_5fcredentials_5fcreate',['grpc_service_account_jwt_access_credentials_create',['../grpc__security_8h.html#af26993774cc991debd61e4a84ed49187',1,'grpc_service_account_jwt_access_credentials_create(const char *json_key, gpr_timespec token_lifetime):&#160;credentials.c'],['../credentials_8c.html#af26993774cc991debd61e4a84ed49187',1,'grpc_service_account_jwt_access_credentials_create(const char *json_key, gpr_timespec token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fservice_5faccount_5fjwt_5faccess_5fcredentials_5fcreate_5ffrom_5fauth_5fjson_5fkey',['grpc_service_account_jwt_access_credentials_create_from_auth_json_key',['../credentials_8h.html#a26715660e319377bdfc4f2476ff35505',1,'grpc_service_account_jwt_access_credentials_create_from_auth_json_key(grpc_auth_json_key key, gpr_timespec token_lifetime):&#160;credentials.c'],['../credentials_8c.html#a26715660e319377bdfc4f2476ff35505',1,'grpc_service_account_jwt_access_credentials_create_from_auth_json_key(grpc_auth_json_key key, gpr_timespec token_lifetime):&#160;credentials.c']]],
+ ['grpc_5fset_5fsocket_5fcloexec',['grpc_set_socket_cloexec',['../socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5flow_5flatency',['grpc_set_socket_low_latency',['../socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5fno_5fsigpipe_5fif_5fpossible',['grpc_set_socket_no_sigpipe_if_possible',['../socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5fnonblocking',['grpc_set_socket_nonblocking',['../socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5',1,'socket_utils_posix.h']]],
+ ['grpc_5fset_5fsocket_5freuse_5faddr',['grpc_set_socket_reuse_addr',['../socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79',1,'socket_utils_posix.h']]],
+ ['grpc_5fsetup_5fsecure_5ftransport',['grpc_setup_secure_transport',['../secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8',1,'grpc_setup_secure_transport(grpc_security_connector *connector, grpc_endpoint *nonsecure_endpoint, grpc_secure_transport_setup_done_cb cb, void *user_data):&#160;secure_transport_setup.c'],['../secure__transport__setup_8c.html#abf337cd72839248e089c1646f8fa7bc8',1,'grpc_setup_secure_transport(grpc_security_connector *connector, grpc_endpoint *nonsecure_endpoint, grpc_secure_transport_setup_done_cb cb, void *user_data):&#160;secure_transport_setup.c']]],
+ ['grpc_5fshutdown',['grpc_shutdown',['../grpc_8h.html#af1130720e50ffedd0bb065c84843b032',1,'grpc_shutdown(void):&#160;init.c'],['../init_8c.html#af1130720e50ffedd0bb065c84843b032',1,'grpc_shutdown(void):&#160;init.c']]],
+ ['grpc_5fsockaddr_5fget_5fport',['grpc_sockaddr_get_port',['../sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da',1,'grpc_sockaddr_get_port(const struct sockaddr *addr):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a9b9c605d240e9358a23f29c4cf07b1da',1,'grpc_sockaddr_get_port(const struct sockaddr *addr):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fis_5fv4mapped',['grpc_sockaddr_is_v4mapped',['../sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce',1,'grpc_sockaddr_is_v4mapped(const struct sockaddr *addr, struct sockaddr_in *addr4_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a97d452690214de3809f667f95dda80ce',1,'grpc_sockaddr_is_v4mapped(const struct sockaddr *addr, struct sockaddr_in *addr4_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fis_5fwildcard',['grpc_sockaddr_is_wildcard',['../sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2',1,'grpc_sockaddr_is_wildcard(const struct sockaddr *addr, int *port_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#aed4ad468c36fc0a4531025c5fa2185a2',1,'grpc_sockaddr_is_wildcard(const struct sockaddr *addr, int *port_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fmake_5fwildcard4',['grpc_sockaddr_make_wildcard4',['../sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e',1,'grpc_sockaddr_make_wildcard4(int port, struct sockaddr_in *wild_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a89be072619a282936b8c1f99c5af254e',1,'grpc_sockaddr_make_wildcard4(int port, struct sockaddr_in *wild_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fmake_5fwildcard6',['grpc_sockaddr_make_wildcard6',['../sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8',1,'grpc_sockaddr_make_wildcard6(int port, struct sockaddr_in6 *wild_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a1a8a1c666324ed6d23077a0dd77bd2b8',1,'grpc_sockaddr_make_wildcard6(int port, struct sockaddr_in6 *wild_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fmake_5fwildcards',['grpc_sockaddr_make_wildcards',['../sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721',1,'grpc_sockaddr_make_wildcards(int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a3cb44f54c6743ff32dc31147ca6a6721',1,'grpc_sockaddr_make_wildcards(int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fset_5fport',['grpc_sockaddr_set_port',['../sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d',1,'grpc_sockaddr_set_port(const struct sockaddr *addr, int port):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#ad73cd02c052e82778b7df5378ded462d',1,'grpc_sockaddr_set_port(const struct sockaddr *addr, int port):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fto_5fstring',['grpc_sockaddr_to_string',['../sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464',1,'grpc_sockaddr_to_string(char **out, const struct sockaddr *addr, int normalize):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a400a51bd46384a6e0b28136274765464',1,'grpc_sockaddr_to_string(char **out, const struct sockaddr *addr, int normalize):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fto_5furi',['grpc_sockaddr_to_uri',['../sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91',1,'grpc_sockaddr_to_uri(const struct sockaddr *addr):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a8545a440d2d91365d75ed87720891a91',1,'grpc_sockaddr_to_uri(const struct sockaddr *addr):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsockaddr_5fto_5fv4mapped',['grpc_sockaddr_to_v4mapped',['../sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79',1,'grpc_sockaddr_to_v4mapped(const struct sockaddr *addr, struct sockaddr_in6 *addr6_out):&#160;sockaddr_utils.c'],['../sockaddr__utils_8c.html#a606efe4550fb7947fb36ff6a0231ac79',1,'grpc_sockaddr_to_v4mapped(const struct sockaddr *addr, struct sockaddr_in6 *addr6_out):&#160;sockaddr_utils.c']]],
+ ['grpc_5fsocket_5fnotify_5fon_5fread',['grpc_socket_notify_on_read',['../iocp__windows_8h.html#a08d522cb6d04a6f5895fae78fd645e00',1,'iocp_windows.h']]],
+ ['grpc_5fsocket_5fnotify_5fon_5fwrite',['grpc_socket_notify_on_write',['../iocp__windows_8h.html#a4db8d3b4cc420a58c833e579a94bdd38',1,'iocp_windows.h']]],
+ ['grpc_5fsopb_5fadd_5fbegin_5fmessage',['grpc_sopb_add_begin_message',['../stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9',1,'grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length, gpr_uint32 flags):&#160;stream_op.c'],['../stream__op_8c.html#a6b1565cc1ec9aba1eef5c21318e088b9',1,'grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length, gpr_uint32 flags):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fadd_5fmetadata',['grpc_sopb_add_metadata',['../stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb',1,'grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_metadata_batch metadata):&#160;stream_op.c'],['../stream__op_8c.html#aea2cbf38a752864f62dc8d2cdc58a50a',1,'grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_metadata_batch b):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fadd_5fno_5fop',['grpc_sopb_add_no_op',['../stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850',1,'grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#abe45d7a6778fc0e248e490dfb635d850',1,'grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fadd_5fslice',['grpc_sopb_add_slice',['../stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69',1,'grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice):&#160;stream_op.c'],['../stream__op_8c.html#aa2a412545fb6bb4055f3437f1d261f69',1,'grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fappend',['grpc_sopb_append',['../stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818',1,'grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops, size_t nops):&#160;stream_op.c'],['../stream__op_8c.html#a55100e31b3cc23733ba42bb5e2f38818',1,'grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops, size_t nops):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fdestroy',['grpc_sopb_destroy',['../stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1',1,'grpc_sopb_destroy(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#aef34bb8bc5d02c10304fa93de76604d1',1,'grpc_sopb_destroy(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5finit',['grpc_sopb_init',['../stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935',1,'grpc_sopb_init(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#ac06c5c016030ab760ce1c190ea9c0935',1,'grpc_sopb_init(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fmove_5fto',['grpc_sopb_move_to',['../stream__op_8h.html#abf812a361634fee304b636fccde7c934',1,'grpc_sopb_move_to(grpc_stream_op_buffer *src, grpc_stream_op_buffer *dst):&#160;stream_op.c'],['../stream__op_8c.html#abf812a361634fee304b636fccde7c934',1,'grpc_sopb_move_to(grpc_stream_op_buffer *src, grpc_stream_op_buffer *dst):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5freset',['grpc_sopb_reset',['../stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e',1,'grpc_sopb_reset(grpc_stream_op_buffer *sopb):&#160;stream_op.c'],['../stream__op_8c.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e',1,'grpc_sopb_reset(grpc_stream_op_buffer *sopb):&#160;stream_op.c']]],
+ ['grpc_5fsopb_5fstring',['grpc_sopb_string',['../stream__op_8h.html#a225a70176577da4097ecad0b8c647fee',1,'grpc_sopb_string(grpc_stream_op_buffer *sopb):&#160;transport_op_string.c'],['../transport__op__string_8c.html#a225a70176577da4097ecad0b8c647fee',1,'grpc_sopb_string(grpc_stream_op_buffer *sopb):&#160;transport_op_string.c']]],
+ ['grpc_5fsopb_5fswap',['grpc_sopb_swap',['../stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb',1,'grpc_sopb_swap(grpc_stream_op_buffer *a, grpc_stream_op_buffer *b):&#160;stream_op.c'],['../stream__op_8c.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb',1,'grpc_sopb_swap(grpc_stream_op_buffer *a, grpc_stream_op_buffer *b):&#160;stream_op.c']]],
+ ['grpc_5fssl_5fchannel_5fsecurity_5fconnector_5fcreate',['grpc_ssl_channel_security_connector_create',['../security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d',1,'grpc_ssl_channel_security_connector_create(grpc_credentials *request_metadata_creds, const grpc_ssl_config *config, const char *target_name, const char *overridden_target_name, grpc_channel_security_connector **sc):&#160;security_connector.c'],['../security__connector_8c.html#a6db43510beb4d3953f572cbe203c164d',1,'grpc_ssl_channel_security_connector_create(grpc_credentials *request_metadata_creds, const grpc_ssl_config *config, const char *target_name, const char *overridden_target_name, grpc_channel_security_connector **sc):&#160;security_connector.c']]],
+ ['grpc_5fssl_5fcredentials_5fcreate',['grpc_ssl_credentials_create',['../grpc__security_8h.html#a0d627ca897718091e4ceca5dce3ef10e',1,'grpc_ssl_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pair):&#160;credentials.c'],['../credentials_8c.html#a0d627ca897718091e4ceca5dce3ef10e',1,'grpc_ssl_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pair):&#160;credentials.c']]],
+ ['grpc_5fssl_5fserver_5fcredentials_5fcreate',['grpc_ssl_server_credentials_create',['../grpc__security_8h.html#a3382907a4689c034a6f55bab4d5135b9',1,'grpc_ssl_server_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth):&#160;credentials.c'],['../credentials_8c.html#a3382907a4689c034a6f55bab4d5135b9',1,'grpc_ssl_server_credentials_create(const char *pem_root_certs, grpc_ssl_pem_key_cert_pair *pem_key_cert_pairs, size_t num_key_cert_pairs, int force_client_auth):&#160;credentials.c']]],
+ ['grpc_5fssl_5fserver_5fsecurity_5fconnector_5fcreate',['grpc_ssl_server_security_connector_create',['../security__connector_8h.html#af0fc288920d58432af4285ec56251248',1,'grpc_ssl_server_security_connector_create(const grpc_ssl_server_config *config, grpc_security_connector **sc):&#160;security_connector.c'],['../security__connector_8c.html#af0fc288920d58432af4285ec56251248',1,'grpc_ssl_server_security_connector_create(const grpc_ssl_server_config *config, grpc_security_connector **sc):&#160;security_connector.c']]],
+ ['grpc_5fstream_5fops_5funref_5fowned_5fobjects',['grpc_stream_ops_unref_owned_objects',['../stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d',1,'grpc_stream_ops_unref_owned_objects(grpc_stream_op *ops, size_t nops):&#160;stream_op.c'],['../stream__op_8c.html#af06b21376669ed6bf358f50a57e02d9d',1,'grpc_stream_ops_unref_owned_objects(grpc_stream_op *ops, size_t nops):&#160;stream_op.c']]],
+ ['grpc_5fsubchannel_5fadd_5finterested_5fparty',['grpc_subchannel_add_interested_party',['../subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579',1,'grpc_subchannel_add_interested_party(grpc_subchannel *channel, grpc_pollset *pollset):&#160;subchannel.c'],['../subchannel_8c.html#ad64aa215ea81487204c6598b4f1572ae',1,'grpc_subchannel_add_interested_party(grpc_subchannel *c, grpc_pollset *pollset):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcall_5fget_5fpeer',['grpc_subchannel_call_get_peer',['../subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616',1,'grpc_subchannel_call_get_peer(grpc_subchannel_call *subchannel_call):&#160;subchannel.c'],['../subchannel_8c.html#a552e894b75a9a67f00e4ae312a94cc00',1,'grpc_subchannel_call_get_peer(grpc_subchannel_call *call):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcall_5fprocess_5fop',['grpc_subchannel_call_process_op',['../subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad',1,'grpc_subchannel_call_process_op(grpc_subchannel_call *subchannel_call, grpc_transport_stream_op *op):&#160;subchannel.c'],['../subchannel_8c.html#a0128c4e7cd5939061ea02780e5fa33ae',1,'grpc_subchannel_call_process_op(grpc_subchannel_call *call, grpc_transport_stream_op *op):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcall_5fref',['grpc_subchannel_call_ref',['../subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93',1,'grpc_subchannel_call_ref(grpc_subchannel_call *call):&#160;subchannel.h'],['../subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067',1,'grpc_subchannel_call_ref(grpc_subchannel_call *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcall_5funref',['grpc_subchannel_call_unref',['../subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53',1,'grpc_subchannel_call_unref(grpc_subchannel_call *call):&#160;subchannel.h'],['../subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060',1,'grpc_subchannel_call_unref(grpc_subchannel_call *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcheck_5fconnectivity',['grpc_subchannel_check_connectivity',['../subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709',1,'grpc_subchannel_check_connectivity(grpc_subchannel *channel):&#160;subchannel.c'],['../subchannel_8c.html#a92711f9b7c8df9415249685a9c91f2c9',1,'grpc_subchannel_check_connectivity(grpc_subchannel *c):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcreate',['grpc_subchannel_create',['../subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8',1,'grpc_subchannel_create(grpc_connector *connector, grpc_subchannel_args *args):&#160;subchannel.c'],['../subchannel_8c.html#a5220a721bb5ad91bffbddd12045efff8',1,'grpc_subchannel_create(grpc_connector *connector, grpc_subchannel_args *args):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fcreate_5fcall',['grpc_subchannel_create_call',['../subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d',1,'grpc_subchannel_create_call(grpc_subchannel *subchannel, grpc_pollset *pollset, grpc_subchannel_call **target, grpc_iomgr_closure *notify):&#160;subchannel.c'],['../subchannel_8c.html#aa6b5c676351c4f7f33b903549edab3b7',1,'grpc_subchannel_create_call(grpc_subchannel *c, grpc_pollset *pollset, grpc_subchannel_call **target, grpc_iomgr_closure *notify):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fdel_5finterested_5fparty',['grpc_subchannel_del_interested_party',['../subchannel_8h.html#aa8ea5c658e34de467db80c269231e676',1,'grpc_subchannel_del_interested_party(grpc_subchannel *channel, grpc_pollset *pollset):&#160;subchannel.c'],['../subchannel_8c.html#a72bfe59d8ad11465896034281729279b',1,'grpc_subchannel_del_interested_party(grpc_subchannel *c, grpc_pollset *pollset):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fadd_5fchannel_5farg',['grpc_subchannel_factory_add_channel_arg',['../add__channel__arg_8h.html#aec70a5daa15f33d18edc47ebc0270c34',1,'grpc_subchannel_factory_add_channel_arg(grpc_subchannel_factory *input, const grpc_arg *arg):&#160;add_channel_arg.c'],['../add__channel__arg_8c.html#aec70a5daa15f33d18edc47ebc0270c34',1,'grpc_subchannel_factory_add_channel_arg(grpc_subchannel_factory *input, const grpc_arg *arg):&#160;add_channel_arg.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fcreate_5fsubchannel',['grpc_subchannel_factory_create_subchannel',['../subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20',1,'grpc_subchannel_factory_create_subchannel(grpc_subchannel_factory *factory, grpc_subchannel_args *args):&#160;subchannel_factory.c'],['../subchannel__factory_8c.html#a50ecfa3c06af1f867684d3c238cedf20',1,'grpc_subchannel_factory_create_subchannel(grpc_subchannel_factory *factory, grpc_subchannel_args *args):&#160;subchannel_factory.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fmerge_5fchannel_5fargs',['grpc_subchannel_factory_merge_channel_args',['../merge__channel__args_8h.html#a4dc574355128feee36ad9500f9ae8cc0',1,'grpc_subchannel_factory_merge_channel_args(grpc_subchannel_factory *input, const grpc_channel_args *args):&#160;merge_channel_args.c'],['../merge__channel__args_8c.html#a4dc574355128feee36ad9500f9ae8cc0',1,'grpc_subchannel_factory_merge_channel_args(grpc_subchannel_factory *input, const grpc_channel_args *args):&#160;merge_channel_args.c']]],
+ ['grpc_5fsubchannel_5ffactory_5fref',['grpc_subchannel_factory_ref',['../subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84',1,'grpc_subchannel_factory_ref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c'],['../subchannel__factory_8c.html#a6486ef54aa6fe37d4fe5b7c53aed9a84',1,'grpc_subchannel_factory_ref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c']]],
+ ['grpc_5fsubchannel_5ffactory_5funref',['grpc_subchannel_factory_unref',['../subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82',1,'grpc_subchannel_factory_unref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c'],['../subchannel__factory_8c.html#ac502341f23676007c8ccd5338f942e82',1,'grpc_subchannel_factory_unref(grpc_subchannel_factory *factory):&#160;subchannel_factory.c']]],
+ ['grpc_5fsubchannel_5fnotify_5fon_5fstate_5fchange',['grpc_subchannel_notify_on_state_change',['../subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776',1,'grpc_subchannel_notify_on_state_change(grpc_subchannel *channel, grpc_connectivity_state *state, grpc_iomgr_closure *notify):&#160;subchannel.c'],['../subchannel_8c.html#ac2e59a5c3a44ba0827b27ccba866389b',1,'grpc_subchannel_notify_on_state_change(grpc_subchannel *c, grpc_connectivity_state *state, grpc_iomgr_closure *notify):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fprocess_5ftransport_5fop',['grpc_subchannel_process_transport_op',['../subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1',1,'grpc_subchannel_process_transport_op(grpc_subchannel *subchannel, grpc_transport_op *op):&#160;subchannel.c'],['../subchannel_8c.html#a9b95251da4779ae913c33f380a1c33c4',1,'grpc_subchannel_process_transport_op(grpc_subchannel *c, grpc_transport_op *op):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5fref',['grpc_subchannel_ref',['../subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4',1,'grpc_subchannel_ref(grpc_subchannel *channel):&#160;subchannel.h'],['../subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323',1,'grpc_subchannel_ref(grpc_subchannel *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c']]],
+ ['grpc_5fsubchannel_5funref',['grpc_subchannel_unref',['../subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59',1,'grpc_subchannel_unref(grpc_subchannel *channel):&#160;subchannel.h'],['../subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f',1,'grpc_subchannel_unref(grpc_subchannel *c GRPC_SUBCHANNEL_REF_EXTRA_ARGS):&#160;subchannel.c']]],
+ ['grpc_5ftcp_5fclient_5fconnect',['grpc_tcp_client_connect',['../tcp__client_8h.html#a086207583509b040c4fff779333468cd',1,'tcp_client.h']]],
+ ['grpc_5ftcp_5fcreate',['grpc_tcp_create',['../tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05',1,'grpc_tcp_create(grpc_fd *fd, size_t read_slice_size, const char *peer_string):&#160;tcp_posix.h'],['../tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483',1,'grpc_tcp_create(grpc_winsocket *socket, char *peer_string):&#160;tcp_windows.h']]],
+ ['grpc_5ftcp_5fprepare_5fsocket',['grpc_tcp_prepare_socket',['../tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c',1,'tcp_windows.h']]],
+ ['grpc_5ftcp_5fserver_5fadd_5fport',['grpc_tcp_server_add_port',['../tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fcreate',['grpc_tcp_server_create',['../tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fdestroy',['grpc_tcp_server_destroy',['../tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fget_5ffd',['grpc_tcp_server_get_fd',['../tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fstart',['grpc_tcp_server_start',['../tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7',1,'tcp_server.h']]],
+ ['grpc_5ftime_5faveraged_5fstats_5fadd_5fsample',['grpc_time_averaged_stats_add_sample',['../time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d',1,'grpc_time_averaged_stats_add_sample(grpc_time_averaged_stats *stats, double value):&#160;time_averaged_stats.c'],['../time__averaged__stats_8c.html#a3fc252070ff8ec7010c74774a042e54d',1,'grpc_time_averaged_stats_add_sample(grpc_time_averaged_stats *stats, double value):&#160;time_averaged_stats.c']]],
+ ['grpc_5ftime_5faveraged_5fstats_5finit',['grpc_time_averaged_stats_init',['../time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb',1,'grpc_time_averaged_stats_init(grpc_time_averaged_stats *stats, double init_avg, double regress_weight, double persistence_factor):&#160;time_averaged_stats.c'],['../time__averaged__stats_8c.html#a9b6a0cb59dc0a3c179ae425525dcb4eb',1,'grpc_time_averaged_stats_init(grpc_time_averaged_stats *stats, double init_avg, double regress_weight, double persistence_factor):&#160;time_averaged_stats.c']]],
+ ['grpc_5ftime_5faveraged_5fstats_5fupdate_5faverage',['grpc_time_averaged_stats_update_average',['../time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26',1,'grpc_time_averaged_stats_update_average(grpc_time_averaged_stats *stats):&#160;time_averaged_stats.c'],['../time__averaged__stats_8c.html#a811009e64ef5f5b88021d5aa08ceaf26',1,'grpc_time_averaged_stats_update_average(grpc_time_averaged_stats *stats):&#160;time_averaged_stats.c']]],
+ ['grpc_5ftimer_5fadd_5fimportant_5fmark',['grpc_timer_add_important_mark',['../timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744',1,'timers.h']]],
+ ['grpc_5ftimer_5fadd_5fmark',['grpc_timer_add_mark',['../timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746',1,'timers.h']]],
+ ['grpc_5ftimer_5fbegin',['grpc_timer_begin',['../timers_8h.html#a9ad8a62da486b38462306e41127231ea',1,'timers.h']]],
+ ['grpc_5ftimer_5fend',['grpc_timer_end',['../timers_8h.html#a810b9be124a21ed5c4066f2e74112e74',1,'timers.h']]],
+ ['grpc_5ftimers_5fglobal_5fdestroy',['grpc_timers_global_destroy',['../timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13',1,'grpc_timers_global_destroy(void):&#160;basic_timers.c'],['../basic__timers_8c.html#a3464d3fdd0cc9ab2543195d5ee3fec13',1,'grpc_timers_global_destroy(void):&#160;basic_timers.c']]],
+ ['grpc_5ftimers_5fglobal_5finit',['grpc_timers_global_init',['../timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac',1,'grpc_timers_global_init(void):&#160;basic_timers.c'],['../basic__timers_8c.html#ac34b4d619b9ed067e02e037b21a6feac',1,'grpc_timers_global_init(void):&#160;basic_timers.c']]],
+ ['grpc_5ftracer_5finit',['grpc_tracer_init',['../trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2',1,'grpc_tracer_init(const char *env_var_name):&#160;trace.c'],['../trace_8c.html#a6875f9ce4490e731d36e872ab1b7d580',1,'grpc_tracer_init(const char *env_var):&#160;trace.c']]],
+ ['grpc_5ftracer_5fset_5fenabled',['grpc_tracer_set_enabled',['../grpc_8h.html#ae6984d3f0c3b9bc9a47859fd4dddc350',1,'grpc_tracer_set_enabled(const char *name, int enabled):&#160;trace.c'],['../trace_8c.html#ae6984d3f0c3b9bc9a47859fd4dddc350',1,'grpc_tracer_set_enabled(const char *name, int enabled):&#160;trace.c']]],
+ ['grpc_5ftracer_5fshutdown',['grpc_tracer_shutdown',['../trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2',1,'grpc_tracer_shutdown(void):&#160;trace.c'],['../trace_8c.html#ad5ced3b2457db3a480e13e6e268543d2',1,'grpc_tracer_shutdown(void):&#160;trace.c']]],
+ ['grpc_5ftransport_5fclose',['grpc_transport_close',['../transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e',1,'transport.h']]],
+ ['grpc_5ftransport_5fdestroy',['grpc_transport_destroy',['../transport_8h.html#adb3ef83552276a5161ff6733f8455ae1',1,'grpc_transport_destroy(grpc_transport *transport):&#160;transport.c'],['../transport_8c.html#adb3ef83552276a5161ff6733f8455ae1',1,'grpc_transport_destroy(grpc_transport *transport):&#160;transport.c']]],
+ ['grpc_5ftransport_5fdestroy_5fstream',['grpc_transport_destroy_stream',['../transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af',1,'grpc_transport_destroy_stream(grpc_transport *transport, grpc_stream *stream):&#160;transport.c'],['../transport_8c.html#a21223037b0bc6a92a9e058e20be1b0af',1,'grpc_transport_destroy_stream(grpc_transport *transport, grpc_stream *stream):&#160;transport.c']]],
+ ['grpc_5ftransport_5fget_5fpeer',['grpc_transport_get_peer',['../transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e',1,'grpc_transport_get_peer(grpc_transport *transport):&#160;transport.c'],['../transport_8c.html#ac32bf69379cb94e6f951a4ec45a6157e',1,'grpc_transport_get_peer(grpc_transport *transport):&#160;transport.c']]],
+ ['grpc_5ftransport_5fgoaway',['grpc_transport_goaway',['../transport_8h.html#aea30a551f2d7a27edd9ddc9441523818',1,'transport.h']]],
+ ['grpc_5ftransport_5finit_5fstream',['grpc_transport_init_stream',['../transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc',1,'grpc_transport_init_stream(grpc_transport *transport, grpc_stream *stream, const void *server_data, grpc_transport_stream_op *initial_op):&#160;transport.c'],['../transport_8c.html#aba013c9e53a24f223283fc78cb6ca6cc',1,'grpc_transport_init_stream(grpc_transport *transport, grpc_stream *stream, const void *server_data, grpc_transport_stream_op *initial_op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fperform_5fop',['grpc_transport_perform_op',['../transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3',1,'grpc_transport_perform_op(grpc_transport *transport, grpc_transport_op *op):&#160;transport.c'],['../transport_8c.html#ae52662de3568a1d961e60e83d28e2dc3',1,'grpc_transport_perform_op(grpc_transport *transport, grpc_transport_op *op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fperform_5fstream_5fop',['grpc_transport_perform_stream_op',['../transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b',1,'grpc_transport_perform_stream_op(grpc_transport *transport, grpc_stream *stream, grpc_transport_stream_op *op):&#160;transport.c'],['../transport_8c.html#a81c2ae26b7109481d4538b48c15d5b1b',1,'grpc_transport_perform_stream_op(grpc_transport *transport, grpc_stream *stream, grpc_transport_stream_op *op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fping',['grpc_transport_ping',['../transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc',1,'transport.h']]],
+ ['grpc_5ftransport_5fstream_5fop_5fadd_5fcancellation',['grpc_transport_stream_op_add_cancellation',['../transport_8h.html#ad1deb9664db9760e156951542378fe11',1,'grpc_transport_stream_op_add_cancellation(grpc_transport_stream_op *op, grpc_status_code status, grpc_mdstr *message):&#160;transport.c'],['../transport_8c.html#ad1deb9664db9760e156951542378fe11',1,'grpc_transport_stream_op_add_cancellation(grpc_transport_stream_op *op, grpc_status_code status, grpc_mdstr *message):&#160;transport.c']]],
+ ['grpc_5ftransport_5fstream_5fop_5ffinish_5fwith_5ffailure',['grpc_transport_stream_op_finish_with_failure',['../transport_8h.html#ac5aa9757a292d71026279316979b8e40',1,'grpc_transport_stream_op_finish_with_failure(grpc_transport_stream_op *op):&#160;transport.c'],['../transport_8c.html#ac5aa9757a292d71026279316979b8e40',1,'grpc_transport_stream_op_finish_with_failure(grpc_transport_stream_op *op):&#160;transport.c']]],
+ ['grpc_5ftransport_5fstream_5fop_5fstring',['grpc_transport_stream_op_string',['../transport_8h.html#a058362edba570c120d125091b3c006d2',1,'grpc_transport_stream_op_string(grpc_transport_stream_op *op):&#160;transport_op_string.c'],['../transport__op__string_8c.html#a058362edba570c120d125091b3c006d2',1,'grpc_transport_stream_op_string(grpc_transport_stream_op *op):&#160;transport_op_string.c']]],
+ ['grpc_5ftransport_5fstream_5fsize',['grpc_transport_stream_size',['../transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d',1,'grpc_transport_stream_size(grpc_transport *transport):&#160;transport.c'],['../transport_8c.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d',1,'grpc_transport_stream_size(grpc_transport *transport):&#160;transport.c']]],
+ ['grpc_5furi_5fdestroy',['grpc_uri_destroy',['../uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1',1,'grpc_uri_destroy(grpc_uri *uri):&#160;uri_parser.c'],['../uri__parser_8c.html#af4744a0a3c814548dbbecb79c4620ac1',1,'grpc_uri_destroy(grpc_uri *uri):&#160;uri_parser.c']]],
+ ['grpc_5furi_5fparse',['grpc_uri_parse',['../uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d',1,'grpc_uri_parse(const char *uri_text, int suppress_errors):&#160;uri_parser.c'],['../uri__parser_8c.html#aef57f54325374603bb0510e8b8b5976d',1,'grpc_uri_parse(const char *uri_text, int suppress_errors):&#160;uri_parser.c']]],
+ ['grpc_5fversion_5fstring',['grpc_version_string',['../grpc_8h.html#a250ca547d790874bd7b5ceec25f18c51',1,'grpc_version_string(void):&#160;version.c'],['../version_8c.html#a250ca547d790874bd7b5ceec25f18c51',1,'grpc_version_string(void):&#160;version.c']]],
+ ['grpc_5fwakeup_5ffd_5fconsume_5fwakeup',['grpc_wakeup_fd_consume_wakeup',['../wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fcreate',['grpc_wakeup_fd_create',['../wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fdestroy',['grpc_wakeup_fd_destroy',['../wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fglobal_5fdestroy',['grpc_wakeup_fd_global_destroy',['../wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fglobal_5finit',['grpc_wakeup_fd_global_init',['../wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fglobal_5finit_5fforce_5ffallback',['grpc_wakeup_fd_global_init_force_fallback',['../wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fwakeup',['grpc_wakeup_fd_wakeup',['../wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwinsocket_5fcreate',['grpc_winsocket_create',['../socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5fdestroy',['grpc_winsocket_destroy',['../socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5forphan',['grpc_winsocket_orphan',['../socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5fshutdown',['grpc_winsocket_shutdown',['../socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395',1,'socket_windows.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/functions_2.html b/doc/ref/core.internal/html/search/functions_2.html
new file mode 100644
index 0000000000..78be8b4198
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/functions_2.js b/doc/ref/core.internal/html/search/functions_2.js
new file mode 100644
index 0000000000..51d22b90c7
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['on_5fsimulated_5ftoken_5ffetch_5fdone',['on_simulated_token_fetch_done',['../credentials_8c.html#ac8aefd37c9b6f7639d730ea60960a9e7',1,'credentials.c']]],
+ ['openssl_5fdigest_5ffrom_5falgorithm',['openssl_digest_from_algorithm',['../json__token_8c.html#accf3a429c0f66a88d8df60b6dab3743f',1,'json_token.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/functions_3.html b/doc/ref/core.internal/html/search/functions_3.html
new file mode 100644
index 0000000000..ebf2eebd0f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/functions_3.js b/doc/ref/core.internal/html/search/functions_3.js
new file mode 100644
index 0000000000..392fb66361
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_3.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['pf_5fdestroy',['pf_destroy',['../pick__first_8c.html#ab2197438a4e2ecaee6327c0a642c5bb9',1,'pick_first.c']]],
+ ['pf_5fexit_5fidle',['pf_exit_idle',['../pick__first_8c.html#a114522776c50c119fcb6eaa6241ee748',1,'pick_first.c']]],
+ ['pf_5fpick',['pf_pick',['../pick__first_8c.html#af15f282d4ed6e68ea1289e139c42db9a',1,'pick_first.c']]],
+ ['pf_5fshutdown',['pf_shutdown',['../pick__first_8c.html#a1592bd5626dae37b94c5a9d719beaf17',1,'pick_first.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/functions_4.html b/doc/ref/core.internal/html/search/functions_4.html
new file mode 100644
index 0000000000..7317ea9163
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/functions_4.js b/doc/ref/core.internal/html/search/functions_4.js
new file mode 100644
index 0000000000..d8d8f3dd27
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_4.js
@@ -0,0 +1,31 @@
+var searchData=
+[
+ ['tsi_5fconstruct_5fallocated_5fstring_5fpeer_5fproperty',['tsi_construct_allocated_string_peer_property',['../transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc',1,'tsi_construct_allocated_string_peer_property(const char *name, size_t value_length, tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a8a308346bff8f401be5fb4411995aafc',1,'tsi_construct_allocated_string_peer_property(const char *name, size_t value_length, tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fconstruct_5fpeer',['tsi_construct_peer',['../transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68',1,'tsi_construct_peer(size_t property_count, tsi_peer *peer):&#160;transport_security.c'],['../transport__security_8c.html#a08ce831015f22dfc2b0c9c324f4d3f68',1,'tsi_construct_peer(size_t property_count, tsi_peer *peer):&#160;transport_security.c']]],
+ ['tsi_5fconstruct_5fstring_5fpeer_5fproperty',['tsi_construct_string_peer_property',['../transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb',1,'tsi_construct_string_peer_property(const char *name, const char *value, size_t value_length, tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a77bdd8a1373d9badafe0f9628d613ccb',1,'tsi_construct_string_peer_property(const char *name, const char *value, size_t value_length, tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fconstruct_5fstring_5fpeer_5fproperty_5ffrom_5fcstring',['tsi_construct_string_peer_property_from_cstring',['../transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d',1,'tsi_construct_string_peer_property_from_cstring(const char *name, const char *value, tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a95d8643bd4378f9e648d5155a757ff3d',1,'tsi_construct_string_peer_property_from_cstring(const char *name, const char *value, tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fcreate_5ffake_5fhandshaker',['tsi_create_fake_handshaker',['../fake__transport__security_8h.html#a7ce2a5356ae53a2f4686faa9f32910d3',1,'tsi_create_fake_handshaker(int is_client):&#160;fake_transport_security.c'],['../fake__transport__security_8c.html#a7ce2a5356ae53a2f4686faa9f32910d3',1,'tsi_create_fake_handshaker(int is_client):&#160;fake_transport_security.c']]],
+ ['tsi_5fcreate_5ffake_5fprotector',['tsi_create_fake_protector',['../fake__transport__security_8h.html#a6af0733aaa845a070d6d92e5d79e8932',1,'tsi_create_fake_protector(size_t *max_protected_frame_size):&#160;fake_transport_security.c'],['../fake__transport__security_8c.html#a6af0733aaa845a070d6d92e5d79e8932',1,'tsi_create_fake_protector(size_t *max_protected_frame_size):&#160;fake_transport_security.c']]],
+ ['tsi_5fcreate_5fssl_5fclient_5fhandshaker_5ffactory',['tsi_create_ssl_client_handshaker_factory',['../ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954',1,'tsi_create_ssl_client_handshaker_factory(const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a74245460a2a17181e62578a3c9e3a566',1,'tsi_create_ssl_client_handshaker_factory(const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_list, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c']]],
+ ['tsi_5fcreate_5fssl_5fserver_5fhandshaker_5ffactory',['tsi_create_ssl_server_handshaker_factory',['../ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104',1,'tsi_create_ssl_server_handshaker_factory(const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a90c268a36d1837b23c08ec862b810b4d',1,'tsi_create_ssl_server_handshaker_factory(const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_list, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory):&#160;ssl_transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5fdestroy',['tsi_frame_protector_destroy',['../transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9',1,'tsi_frame_protector_destroy(tsi_frame_protector *self):&#160;transport_security.c'],['../transport__security_8c.html#adfd6e29ec9ee51f095a2fd73bbc222f9',1,'tsi_frame_protector_destroy(tsi_frame_protector *self):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5fprotect',['tsi_frame_protector_protect',['../transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6',1,'tsi_frame_protector_protect(tsi_frame_protector *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size):&#160;transport_security.c'],['../transport__security_8c.html#a5ceba08b6b8e98bc296e3c168cfe7ff6',1,'tsi_frame_protector_protect(tsi_frame_protector *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5fprotect_5fflush',['tsi_frame_protector_protect_flush',['../transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10',1,'tsi_frame_protector_protect_flush(tsi_frame_protector *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size):&#160;transport_security.c'],['../transport__security_8c.html#a97f093ea9700617a4bd64846e1040e10',1,'tsi_frame_protector_protect_flush(tsi_frame_protector *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size):&#160;transport_security.c']]],
+ ['tsi_5fframe_5fprotector_5funprotect',['tsi_frame_protector_unprotect',['../transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f',1,'tsi_frame_protector_unprotect(tsi_frame_protector *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size):&#160;transport_security.c'],['../transport__security_8c.html#af7379ce84c820020001fd1538135f45f',1,'tsi_frame_protector_unprotect(tsi_frame_protector *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fcreate_5fframe_5fprotector',['tsi_handshaker_create_frame_protector',['../transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51',1,'tsi_handshaker_create_frame_protector(tsi_handshaker *self, size_t *max_output_protected_frame_size, tsi_frame_protector **protector):&#160;transport_security.c'],['../transport__security_8c.html#a332227aadf03c58b8ee4089f6f87bde6',1,'tsi_handshaker_create_frame_protector(tsi_handshaker *self, size_t *max_protected_frame_size, tsi_frame_protector **protector):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fdestroy',['tsi_handshaker_destroy',['../transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d',1,'tsi_handshaker_destroy(tsi_handshaker *self):&#160;transport_security.c'],['../transport__security_8c.html#aa86ebc2ea2967a18ff5c6007bb80e28d',1,'tsi_handshaker_destroy(tsi_handshaker *self):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fextract_5fpeer',['tsi_handshaker_extract_peer',['../transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be',1,'tsi_handshaker_extract_peer(tsi_handshaker *self, tsi_peer *peer):&#160;transport_security.c'],['../transport__security_8c.html#acf71ef6d2d7c6934ba7252195fb866be',1,'tsi_handshaker_extract_peer(tsi_handshaker *self, tsi_peer *peer):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fget_5fbytes_5fto_5fsend_5fto_5fpeer',['tsi_handshaker_get_bytes_to_send_to_peer',['../transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35',1,'tsi_handshaker_get_bytes_to_send_to_peer(tsi_handshaker *self, unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c'],['../transport__security_8c.html#a29d1896a9b936a8bd534902bfc074e35',1,'tsi_handshaker_get_bytes_to_send_to_peer(tsi_handshaker *self, unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fget_5fresult',['tsi_handshaker_get_result',['../transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e',1,'tsi_handshaker_get_result(tsi_handshaker *self):&#160;transport_security.c'],['../transport__security_8c.html#ac41531015167b3ac51aa5e201189701e',1,'tsi_handshaker_get_result(tsi_handshaker *self):&#160;transport_security.c']]],
+ ['tsi_5fhandshaker_5fprocess_5fbytes_5ffrom_5fpeer',['tsi_handshaker_process_bytes_from_peer',['../transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0',1,'tsi_handshaker_process_bytes_from_peer(tsi_handshaker *self, const unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c'],['../transport__security_8c.html#add638c90585ef6e5e4418c35a7df9fa0',1,'tsi_handshaker_process_bytes_from_peer(tsi_handshaker *self, const unsigned char *bytes, size_t *bytes_size):&#160;transport_security.c']]],
+ ['tsi_5finit_5fpeer_5fproperty',['tsi_init_peer_property',['../transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1',1,'tsi_init_peer_property(void):&#160;transport_security.c'],['../transport__security_8c.html#ab5d4e3b2905ddbc6fb66be56bd6564b1',1,'tsi_init_peer_property(void):&#160;transport_security.c']]],
+ ['tsi_5fpeer_5fdestruct',['tsi_peer_destruct',['../transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467',1,'tsi_peer_destruct(tsi_peer *self):&#160;transport_security.c'],['../transport__security_8c.html#a2c4bbdf32c13cf926aa28dc464a6f467',1,'tsi_peer_destruct(tsi_peer *self):&#160;transport_security.c']]],
+ ['tsi_5fpeer_5fget_5fproperty_5fby_5fname',['tsi_peer_get_property_by_name',['../security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66',1,'tsi_peer_get_property_by_name(const tsi_peer *peer, const char *name):&#160;security_connector.c'],['../security__connector_8c.html#a4e8c8c71595e5af0861880070356ce66',1,'tsi_peer_get_property_by_name(const tsi_peer *peer, const char *name):&#160;security_connector.c']]],
+ ['tsi_5fpeer_5fproperty_5fdestruct',['tsi_peer_property_destruct',['../transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819',1,'tsi_peer_property_destruct(tsi_peer_property *property):&#160;transport_security.c'],['../transport__security_8c.html#a83e56daafef9ce0d55873f2c63940819',1,'tsi_peer_property_destruct(tsi_peer_property *property):&#160;transport_security.c']]],
+ ['tsi_5fresult_5fto_5fstring',['tsi_result_to_string',['../transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964',1,'tsi_result_to_string(tsi_result result):&#160;transport_security.c'],['../transport__security_8c.html#aaee2576c8d1108c2f28b78bcf5f85964',1,'tsi_result_to_string(tsi_result result):&#160;transport_security.c']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory_5fcreate_5fhandshaker',['tsi_ssl_handshaker_factory_create_handshaker',['../ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142',1,'tsi_ssl_handshaker_factory_create_handshaker(tsi_ssl_handshaker_factory *self, const char *server_name_indication, tsi_handshaker **handshaker):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a640862c021958b7cc4e841d5842b3142',1,'tsi_ssl_handshaker_factory_create_handshaker(tsi_ssl_handshaker_factory *self, const char *server_name_indication, tsi_handshaker **handshaker):&#160;ssl_transport_security.c']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory_5fdestroy',['tsi_ssl_handshaker_factory_destroy',['../ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b',1,'tsi_ssl_handshaker_factory_destroy(tsi_ssl_handshaker_factory *self):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a55e5ff567c916f396a960d9ba259fd5b',1,'tsi_ssl_handshaker_factory_destroy(tsi_ssl_handshaker_factory *self):&#160;ssl_transport_security.c']]],
+ ['tsi_5fssl_5fpeer_5fmatches_5fname',['tsi_ssl_peer_matches_name',['../ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647',1,'tsi_ssl_peer_matches_name(const tsi_peer *peer, const char *name):&#160;ssl_transport_security.c'],['../ssl__transport__security_8c.html#a22edee478b3473e184d77d74c13d9647',1,'tsi_ssl_peer_matches_name(const tsi_peer *peer, const char *name):&#160;ssl_transport_security.c']]],
+ ['tsi_5fssl_5fpeer_5fto_5fauth_5fcontext',['tsi_ssl_peer_to_auth_context',['../security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6',1,'tsi_ssl_peer_to_auth_context(const tsi_peer *peer):&#160;security_connector.c'],['../security__connector_8c.html#a12dbc067a07c36d5219ba31f5dffc8c6',1,'tsi_ssl_peer_to_auth_context(const tsi_peer *peer):&#160;security_connector.c']]],
+ ['tsi_5fstrdup',['tsi_strdup',['../transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72',1,'tsi_strdup(const char *src):&#160;transport_security.c'],['../transport__security_8c.html#a4db31a671b7e77b6ecd14af773154c72',1,'tsi_strdup(const char *src):&#160;transport_security.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/functions_5.html b/doc/ref/core.internal/html/search/functions_5.html
new file mode 100644
index 0000000000..1f1d9ce1b7
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/functions_5.js b/doc/ref/core.internal/html/search/functions_5.js
new file mode 100644
index 0000000000..bb4ad83614
--- /dev/null
+++ b/doc/ref/core.internal/html/search/functions_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['verifier_5fcb_5fctx_5fdestroy',['verifier_cb_ctx_destroy',['../jwt__verifier_8c.html#a6abd17abf83cb50196792f26f82ddb47',1,'jwt_verifier.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/mag_sel.png b/doc/ref/core.internal/html/search/mag_sel.png
new file mode 100644
index 0000000000..81f6040a20
--- /dev/null
+++ b/doc/ref/core.internal/html/search/mag_sel.png
Binary files differ
diff --git a/doc/ref/core.internal/html/search/nomatches.html b/doc/ref/core.internal/html/search/nomatches.html
new file mode 100644
index 0000000000..b1ded27e9a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/nomatches.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="NoMatches">No Matches</div>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/pages_0.html b/doc/ref/core.internal/html/search/pages_0.html
new file mode 100644
index 0000000000..c51c834506
--- /dev/null
+++ b/doc/ref/core.internal/html/search/pages_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="pages_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/pages_0.js b/doc/ref/core.internal/html/search/pages_0.js
new file mode 100644
index 0000000000..19dbe67128
--- /dev/null
+++ b/doc/ref/core.internal/html/search/pages_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['grpc_20core',['GRPC Core',['../index.html',1,'']]]
+];
diff --git a/doc/ref/core.internal/html/search/search.css b/doc/ref/core.internal/html/search/search.css
new file mode 100644
index 0000000000..4d7612ff63
--- /dev/null
+++ b/doc/ref/core.internal/html/search/search.css
@@ -0,0 +1,271 @@
+/*---------------- Search Box */
+
+#FSearchBox {
+ float: left;
+}
+
+#MSearchBox {
+ white-space : nowrap;
+ position: absolute;
+ float: none;
+ display: inline;
+ margin-top: 8px;
+ right: 0px;
+ width: 170px;
+ z-index: 102;
+ background-color: white;
+}
+
+#MSearchBox .left
+{
+ display:block;
+ position:absolute;
+ left:10px;
+ width:20px;
+ height:19px;
+ background:url('search_l.png') no-repeat;
+ background-position:right;
+}
+
+#MSearchSelect {
+ display:block;
+ position:absolute;
+ width:20px;
+ height:19px;
+}
+
+.left #MSearchSelect {
+ left:4px;
+}
+
+.right #MSearchSelect {
+ right:5px;
+}
+
+#MSearchField {
+ display:block;
+ position:absolute;
+ height:19px;
+ background:url('search_m.png') repeat-x;
+ border:none;
+ width:111px;
+ margin-left:20px;
+ padding-left:4px;
+ color: #909090;
+ outline: none;
+ font: 9pt Arial, Verdana, sans-serif;
+}
+
+#FSearchBox #MSearchField {
+ margin-left:15px;
+}
+
+#MSearchBox .right {
+ display:block;
+ position:absolute;
+ right:10px;
+ top:0px;
+ width:20px;
+ height:19px;
+ background:url('search_r.png') no-repeat;
+ background-position:left;
+}
+
+#MSearchClose {
+ display: none;
+ position: absolute;
+ top: 4px;
+ background : none;
+ border: none;
+ margin: 0px 4px 0px 0px;
+ padding: 0px 0px;
+ outline: none;
+}
+
+.left #MSearchClose {
+ left: 6px;
+}
+
+.right #MSearchClose {
+ right: 2px;
+}
+
+.MSearchBoxActive #MSearchField {
+ color: #000000;
+}
+
+/*---------------- Search filter selection */
+
+#MSearchSelectWindow {
+ display: none;
+ position: absolute;
+ left: 0; top: 0;
+ border: 1px solid #90A5CE;
+ background-color: #F9FAFC;
+ z-index: 1;
+ padding-top: 4px;
+ padding-bottom: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+.SelectItem {
+ font: 8pt Arial, Verdana, sans-serif;
+ padding-left: 2px;
+ padding-right: 12px;
+ border: 0px;
+}
+
+span.SelectionMark {
+ margin-right: 4px;
+ font-family: monospace;
+ outline-style: none;
+ text-decoration: none;
+}
+
+a.SelectItem {
+ display: block;
+ outline-style: none;
+ color: #000000;
+ text-decoration: none;
+ padding-left: 6px;
+ padding-right: 12px;
+}
+
+a.SelectItem:focus,
+a.SelectItem:active {
+ color: #000000;
+ outline-style: none;
+ text-decoration: none;
+}
+
+a.SelectItem:hover {
+ color: #FFFFFF;
+ background-color: #3D578C;
+ outline-style: none;
+ text-decoration: none;
+ cursor: pointer;
+ display: block;
+}
+
+/*---------------- Search results window */
+
+iframe#MSearchResults {
+ width: 60ex;
+ height: 15em;
+}
+
+#MSearchResultsWindow {
+ display: none;
+ position: absolute;
+ left: 0; top: 0;
+ border: 1px solid #000;
+ background-color: #EEF1F7;
+}
+
+/* ----------------------------------- */
+
+
+#SRIndex {
+ clear:both;
+ padding-bottom: 15px;
+}
+
+.SREntry {
+ font-size: 10pt;
+ padding-left: 1ex;
+}
+
+.SRPage .SREntry {
+ font-size: 8pt;
+ padding: 1px 5px;
+}
+
+body.SRPage {
+ margin: 5px 2px;
+}
+
+.SRChildren {
+ padding-left: 3ex; padding-bottom: .5em
+}
+
+.SRPage .SRChildren {
+ display: none;
+}
+
+.SRSymbol {
+ font-weight: bold;
+ color: #425E97;
+ font-family: Arial, Verdana, sans-serif;
+ text-decoration: none;
+ outline: none;
+}
+
+a.SRScope {
+ display: block;
+ color: #425E97;
+ font-family: Arial, Verdana, sans-serif;
+ text-decoration: none;
+ outline: none;
+}
+
+a.SRSymbol:focus, a.SRSymbol:active,
+a.SRScope:focus, a.SRScope:active {
+ text-decoration: underline;
+}
+
+span.SRScope {
+ padding-left: 4px;
+}
+
+.SRPage .SRStatus {
+ padding: 2px 5px;
+ font-size: 8pt;
+ font-style: italic;
+}
+
+.SRResult {
+ display: none;
+}
+
+DIV.searchresults {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+/*---------------- External search page results */
+
+.searchresult {
+ background-color: #F0F3F8;
+}
+
+.pages b {
+ color: white;
+ padding: 5px 5px 3px 5px;
+ background-image: url("../tab_a.png");
+ background-repeat: repeat-x;
+ text-shadow: 0 1px 1px #000000;
+}
+
+.pages {
+ line-height: 17px;
+ margin-left: 4px;
+ text-decoration: none;
+}
+
+.hl {
+ font-weight: bold;
+}
+
+#searchresults {
+ margin-bottom: 20px;
+}
+
+.searchpages {
+ margin-top: 10px;
+}
+
diff --git a/doc/ref/core.internal/html/search/search.js b/doc/ref/core.internal/html/search/search.js
new file mode 100644
index 0000000000..8863f99110
--- /dev/null
+++ b/doc/ref/core.internal/html/search/search.js
@@ -0,0 +1,811 @@
+// Search script generated by doxygen
+// Copyright (C) 2009 by Dimitri van Heesch.
+
+// The code in this file is loosly based on main.js, part of Natural Docs,
+// which is Copyright (C) 2003-2008 Greg Valure
+// Natural Docs is licensed under the GPL.
+
+var indexSectionsWithContent =
+{
+ 0: "_abcdefghijklmnopqrstuvwz",
+ 1: "abcdefghijlmnprstvw",
+ 2: "abcdefghijlmnprstuvw",
+ 3: "cgoptv",
+ 4: "abcdefghijklmnopqrstuvw",
+ 5: "acgilnprstw",
+ 6: "abcfgirstw",
+ 7: "abcdeghilmnprstwz",
+ 8: "_acdefghilmnorstu",
+ 9: "g"
+};
+
+var indexSectionNames =
+{
+ 0: "all",
+ 1: "classes",
+ 2: "files",
+ 3: "functions",
+ 4: "variables",
+ 5: "typedefs",
+ 6: "enums",
+ 7: "enumvalues",
+ 8: "defines",
+ 9: "pages"
+};
+
+function convertToId(search)
+{
+ var result = '';
+ for (i=0;i<search.length;i++)
+ {
+ var c = search.charAt(i);
+ var cn = c.charCodeAt(0);
+ if (c.match(/[a-z0-9\u0080-\uFFFF]/))
+ {
+ result+=c;
+ }
+ else if (cn<16)
+ {
+ result+="_0"+cn.toString(16);
+ }
+ else
+ {
+ result+="_"+cn.toString(16);
+ }
+ }
+ return result;
+}
+
+function getXPos(item)
+{
+ var x = 0;
+ if (item.offsetWidth)
+ {
+ while (item && item!=document.body)
+ {
+ x += item.offsetLeft;
+ item = item.offsetParent;
+ }
+ }
+ return x;
+}
+
+function getYPos(item)
+{
+ var y = 0;
+ if (item.offsetWidth)
+ {
+ while (item && item!=document.body)
+ {
+ y += item.offsetTop;
+ item = item.offsetParent;
+ }
+ }
+ return y;
+}
+
+/* A class handling everything associated with the search panel.
+
+ Parameters:
+ name - The name of the global variable that will be
+ storing this instance. Is needed to be able to set timeouts.
+ resultPath - path to use for external files
+*/
+function SearchBox(name, resultsPath, inFrame, label)
+{
+ if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); }
+
+ // ---------- Instance variables
+ this.name = name;
+ this.resultsPath = resultsPath;
+ this.keyTimeout = 0;
+ this.keyTimeoutLength = 500;
+ this.closeSelectionTimeout = 300;
+ this.lastSearchValue = "";
+ this.lastResultsPage = "";
+ this.hideTimeout = 0;
+ this.searchIndex = 0;
+ this.searchActive = false;
+ this.insideFrame = inFrame;
+ this.searchLabel = label;
+
+ // ----------- DOM Elements
+
+ this.DOMSearchField = function()
+ { return document.getElementById("MSearchField"); }
+
+ this.DOMSearchSelect = function()
+ { return document.getElementById("MSearchSelect"); }
+
+ this.DOMSearchSelectWindow = function()
+ { return document.getElementById("MSearchSelectWindow"); }
+
+ this.DOMPopupSearchResults = function()
+ { return document.getElementById("MSearchResults"); }
+
+ this.DOMPopupSearchResultsWindow = function()
+ { return document.getElementById("MSearchResultsWindow"); }
+
+ this.DOMSearchClose = function()
+ { return document.getElementById("MSearchClose"); }
+
+ this.DOMSearchBox = function()
+ { return document.getElementById("MSearchBox"); }
+
+ // ------------ Event Handlers
+
+ // Called when focus is added or removed from the search field.
+ this.OnSearchFieldFocus = function(isActive)
+ {
+ this.Activate(isActive);
+ }
+
+ this.OnSearchSelectShow = function()
+ {
+ var searchSelectWindow = this.DOMSearchSelectWindow();
+ var searchField = this.DOMSearchSelect();
+
+ if (this.insideFrame)
+ {
+ var left = getXPos(searchField);
+ var top = getYPos(searchField);
+ left += searchField.offsetWidth + 6;
+ top += searchField.offsetHeight;
+
+ // show search selection popup
+ searchSelectWindow.style.display='block';
+ left -= searchSelectWindow.offsetWidth;
+ searchSelectWindow.style.left = left + 'px';
+ searchSelectWindow.style.top = top + 'px';
+ }
+ else
+ {
+ var left = getXPos(searchField);
+ var top = getYPos(searchField);
+ top += searchField.offsetHeight;
+
+ // show search selection popup
+ searchSelectWindow.style.display='block';
+ searchSelectWindow.style.left = left + 'px';
+ searchSelectWindow.style.top = top + 'px';
+ }
+
+ // stop selection hide timer
+ if (this.hideTimeout)
+ {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout=0;
+ }
+ return false; // to avoid "image drag" default event
+ }
+
+ this.OnSearchSelectHide = function()
+ {
+ this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
+ this.closeSelectionTimeout);
+ }
+
+ // Called when the content of the search field is changed.
+ this.OnSearchFieldChange = function(evt)
+ {
+ if (this.keyTimeout) // kill running timer
+ {
+ clearTimeout(this.keyTimeout);
+ this.keyTimeout = 0;
+ }
+
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 || e.keyCode==13)
+ {
+ if (e.shiftKey==1)
+ {
+ this.OnSearchSelectShow();
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ child.focus();
+ return;
+ }
+ }
+ return;
+ }
+ else if (window.frames.MSearchResults.searchResults)
+ {
+ var elem = window.frames.MSearchResults.searchResults.NavNext(0);
+ if (elem) elem.focus();
+ }
+ }
+ else if (e.keyCode==27) // Escape out of the search field
+ {
+ this.DOMSearchField().blur();
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.lastSearchValue = '';
+ this.Activate(false);
+ return;
+ }
+
+ // strip whitespaces
+ var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+
+ if (searchValue != this.lastSearchValue) // search value has changed
+ {
+ if (searchValue != "") // non-empty search
+ {
+ // set timer for search update
+ this.keyTimeout = setTimeout(this.name + '.Search()',
+ this.keyTimeoutLength);
+ }
+ else // empty search field
+ {
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.lastSearchValue = '';
+ }
+ }
+ }
+
+ this.SelectItemCount = function(id)
+ {
+ var count=0;
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ count++;
+ }
+ }
+ return count;
+ }
+
+ this.SelectItemSet = function(id)
+ {
+ var i,j=0;
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ var node = child.firstChild;
+ if (j==id)
+ {
+ node.innerHTML='&#8226;';
+ }
+ else
+ {
+ node.innerHTML='&#160;';
+ }
+ j++;
+ }
+ }
+ }
+
+ // Called when an search filter selection is made.
+ // set item with index id as the active item
+ this.OnSelectItem = function(id)
+ {
+ this.searchIndex = id;
+ this.SelectItemSet(id);
+ var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+ if (searchValue!="" && this.searchActive) // something was found -> do a search
+ {
+ this.Search();
+ }
+ }
+
+ this.OnSearchSelectKey = function(evt)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
+ {
+ this.searchIndex++;
+ this.OnSelectItem(this.searchIndex);
+ }
+ else if (e.keyCode==38 && this.searchIndex>0) // Up
+ {
+ this.searchIndex--;
+ this.OnSelectItem(this.searchIndex);
+ }
+ else if (e.keyCode==13 || e.keyCode==27)
+ {
+ this.OnSelectItem(this.searchIndex);
+ this.CloseSelectionWindow();
+ this.DOMSearchField().focus();
+ }
+ return false;
+ }
+
+ // --------- Actions
+
+ // Closes the results window.
+ this.CloseResultsWindow = function()
+ {
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.Activate(false);
+ }
+
+ this.CloseSelectionWindow = function()
+ {
+ this.DOMSearchSelectWindow().style.display = 'none';
+ }
+
+ // Performs a search.
+ this.Search = function()
+ {
+ this.keyTimeout = 0;
+
+ // strip leading whitespace
+ var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+
+ var code = searchValue.toLowerCase().charCodeAt(0);
+ var idxChar = searchValue.substr(0, 1).toLowerCase();
+ if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
+ {
+ idxChar = searchValue.substr(0, 2);
+ }
+
+ var resultsPage;
+ var resultsPageWithSearch;
+ var hasResultsPage;
+
+ var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+ if (idx!=-1)
+ {
+ var hexCode=idx.toString(16);
+ resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html';
+ resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
+ hasResultsPage = true;
+ }
+ else // nothing available for this search term
+ {
+ resultsPage = this.resultsPath + '/nomatches.html';
+ resultsPageWithSearch = resultsPage;
+ hasResultsPage = false;
+ }
+
+ window.frames.MSearchResults.location = resultsPageWithSearch;
+ var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+
+ if (domPopupSearchResultsWindow.style.display!='block')
+ {
+ var domSearchBox = this.DOMSearchBox();
+ this.DOMSearchClose().style.display = 'inline';
+ if (this.insideFrame)
+ {
+ var domPopupSearchResults = this.DOMPopupSearchResults();
+ domPopupSearchResultsWindow.style.position = 'relative';
+ domPopupSearchResultsWindow.style.display = 'block';
+ var width = document.body.clientWidth - 8; // the -8 is for IE :-(
+ domPopupSearchResultsWindow.style.width = width + 'px';
+ domPopupSearchResults.style.width = width + 'px';
+ }
+ else
+ {
+ var domPopupSearchResults = this.DOMPopupSearchResults();
+ var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
+ var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1;
+ domPopupSearchResultsWindow.style.display = 'block';
+ left -= domPopupSearchResults.offsetWidth;
+ domPopupSearchResultsWindow.style.top = top + 'px';
+ domPopupSearchResultsWindow.style.left = left + 'px';
+ }
+ }
+
+ this.lastSearchValue = searchValue;
+ this.lastResultsPage = resultsPage;
+ }
+
+ // -------- Activation Functions
+
+ // Activates or deactivates the search panel, resetting things to
+ // their default values if necessary.
+ this.Activate = function(isActive)
+ {
+ if (isActive || // open it
+ this.DOMPopupSearchResultsWindow().style.display == 'block'
+ )
+ {
+ this.DOMSearchBox().className = 'MSearchBoxActive';
+
+ var searchField = this.DOMSearchField();
+
+ if (searchField.value == this.searchLabel) // clear "Search" term upon entry
+ {
+ searchField.value = '';
+ this.searchActive = true;
+ }
+ }
+ else if (!isActive) // directly remove the panel
+ {
+ this.DOMSearchBox().className = 'MSearchBoxInactive';
+ this.DOMSearchField().value = this.searchLabel;
+ this.searchActive = false;
+ this.lastSearchValue = ''
+ this.lastResultsPage = '';
+ }
+ }
+}
+
+// -----------------------------------------------------------------------
+
+// The class that handles everything on the search results page.
+function SearchResults(name)
+{
+ // The number of matches from the last run of <Search()>.
+ this.lastMatchCount = 0;
+ this.lastKey = 0;
+ this.repeatOn = false;
+
+ // Toggles the visibility of the passed element ID.
+ this.FindChildElement = function(id)
+ {
+ var parentElement = document.getElementById(id);
+ var element = parentElement.firstChild;
+
+ while (element && element!=parentElement)
+ {
+ if (element.nodeName == 'DIV' && element.className == 'SRChildren')
+ {
+ return element;
+ }
+
+ if (element.nodeName == 'DIV' && element.hasChildNodes())
+ {
+ element = element.firstChild;
+ }
+ else if (element.nextSibling)
+ {
+ element = element.nextSibling;
+ }
+ else
+ {
+ do
+ {
+ element = element.parentNode;
+ }
+ while (element && element!=parentElement && !element.nextSibling);
+
+ if (element && element!=parentElement)
+ {
+ element = element.nextSibling;
+ }
+ }
+ }
+ }
+
+ this.Toggle = function(id)
+ {
+ var element = this.FindChildElement(id);
+ if (element)
+ {
+ if (element.style.display == 'block')
+ {
+ element.style.display = 'none';
+ }
+ else
+ {
+ element.style.display = 'block';
+ }
+ }
+ }
+
+ // Searches for the passed string. If there is no parameter,
+ // it takes it from the URL query.
+ //
+ // Always returns true, since other documents may try to call it
+ // and that may or may not be possible.
+ this.Search = function(search)
+ {
+ if (!search) // get search word from URL
+ {
+ search = window.location.search;
+ search = search.substring(1); // Remove the leading '?'
+ search = unescape(search);
+ }
+
+ search = search.replace(/^ +/, ""); // strip leading spaces
+ search = search.replace(/ +$/, ""); // strip trailing spaces
+ search = search.toLowerCase();
+ search = convertToId(search);
+
+ var resultRows = document.getElementsByTagName("div");
+ var matches = 0;
+
+ var i = 0;
+ while (i < resultRows.length)
+ {
+ var row = resultRows.item(i);
+ if (row.className == "SRResult")
+ {
+ var rowMatchName = row.id.toLowerCase();
+ rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+ if (search.length<=rowMatchName.length &&
+ rowMatchName.substr(0, search.length)==search)
+ {
+ row.style.display = 'block';
+ matches++;
+ }
+ else
+ {
+ row.style.display = 'none';
+ }
+ }
+ i++;
+ }
+ document.getElementById("Searching").style.display='none';
+ if (matches == 0) // no results
+ {
+ document.getElementById("NoMatches").style.display='block';
+ }
+ else // at least one result
+ {
+ document.getElementById("NoMatches").style.display='none';
+ }
+ this.lastMatchCount = matches;
+ return true;
+ }
+
+ // return the first item with index index or higher that is visible
+ this.NavNext = function(index)
+ {
+ var focusItem;
+ while (1)
+ {
+ var focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+ {
+ break;
+ }
+ else if (!focusItem) // last element
+ {
+ break;
+ }
+ focusItem=null;
+ index++;
+ }
+ return focusItem;
+ }
+
+ this.NavPrev = function(index)
+ {
+ var focusItem;
+ while (1)
+ {
+ var focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+ {
+ break;
+ }
+ else if (!focusItem) // last element
+ {
+ break;
+ }
+ focusItem=null;
+ index--;
+ }
+ return focusItem;
+ }
+
+ this.ProcessKeys = function(e)
+ {
+ if (e.type == "keydown")
+ {
+ this.repeatOn = false;
+ this.lastKey = e.keyCode;
+ }
+ else if (e.type == "keypress")
+ {
+ if (!this.repeatOn)
+ {
+ if (this.lastKey) this.repeatOn = true;
+ return false; // ignore first keypress after keydown
+ }
+ }
+ else if (e.type == "keyup")
+ {
+ this.lastKey = 0;
+ this.repeatOn = false;
+ }
+ return this.lastKey!=0;
+ }
+
+ this.Nav = function(evt,itemIndex)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) // Up
+ {
+ var newIndex = itemIndex-1;
+ var focusItem = this.NavPrev(newIndex);
+ if (focusItem)
+ {
+ var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+ if (child && child.style.display == 'block') // children visible
+ {
+ var n=0;
+ var tmpElem;
+ while (1) // search for last child
+ {
+ tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+ if (tmpElem)
+ {
+ focusItem = tmpElem;
+ }
+ else // found it!
+ {
+ break;
+ }
+ n++;
+ }
+ }
+ }
+ if (focusItem)
+ {
+ focusItem.focus();
+ }
+ else // return focus to search field
+ {
+ parent.document.getElementById("MSearchField").focus();
+ }
+ }
+ else if (this.lastKey==40) // Down
+ {
+ var newIndex = itemIndex+1;
+ var focusItem;
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem && elem.style.display == 'block') // children visible
+ {
+ focusItem = document.getElementById('Item'+itemIndex+'_c0');
+ }
+ if (!focusItem) focusItem = this.NavNext(newIndex);
+ if (focusItem) focusItem.focus();
+ }
+ else if (this.lastKey==39) // Right
+ {
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'block';
+ }
+ else if (this.lastKey==37) // Left
+ {
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'none';
+ }
+ else if (this.lastKey==27) // Escape
+ {
+ parent.searchBox.CloseResultsWindow();
+ parent.document.getElementById("MSearchField").focus();
+ }
+ else if (this.lastKey==13) // Enter
+ {
+ return true;
+ }
+ return false;
+ }
+
+ this.NavChild = function(evt,itemIndex,childIndex)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) // Up
+ {
+ if (childIndex>0)
+ {
+ var newIndex = childIndex-1;
+ document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+ }
+ else // already at first child, jump to parent
+ {
+ document.getElementById('Item'+itemIndex).focus();
+ }
+ }
+ else if (this.lastKey==40) // Down
+ {
+ var newIndex = childIndex+1;
+ var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+ if (!elem) // last child, jump to parent next parent
+ {
+ elem = this.NavNext(itemIndex+1);
+ }
+ if (elem)
+ {
+ elem.focus();
+ }
+ }
+ else if (this.lastKey==27) // Escape
+ {
+ parent.searchBox.CloseResultsWindow();
+ parent.document.getElementById("MSearchField").focus();
+ }
+ else if (this.lastKey==13) // Enter
+ {
+ return true;
+ }
+ return false;
+ }
+}
+
+function setKeyActions(elem,action)
+{
+ elem.setAttribute('onkeydown',action);
+ elem.setAttribute('onkeypress',action);
+ elem.setAttribute('onkeyup',action);
+}
+
+function setClassAttr(elem,attr)
+{
+ elem.setAttribute('class',attr);
+ elem.setAttribute('className',attr);
+}
+
+function createResults()
+{
+ var results = document.getElementById("SRResults");
+ for (var e=0; e<searchData.length; e++)
+ {
+ var id = searchData[e][0];
+ var srResult = document.createElement('div');
+ srResult.setAttribute('id','SR_'+id);
+ setClassAttr(srResult,'SRResult');
+ var srEntry = document.createElement('div');
+ setClassAttr(srEntry,'SREntry');
+ var srLink = document.createElement('a');
+ srLink.setAttribute('id','Item'+e);
+ setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
+ setClassAttr(srLink,'SRSymbol');
+ srLink.innerHTML = searchData[e][1][0];
+ srEntry.appendChild(srLink);
+ if (searchData[e][1].length==2) // single result
+ {
+ srLink.setAttribute('href',searchData[e][1][1][0]);
+ if (searchData[e][1][1][1])
+ {
+ srLink.setAttribute('target','_parent');
+ }
+ var srScope = document.createElement('span');
+ setClassAttr(srScope,'SRScope');
+ srScope.innerHTML = searchData[e][1][1][2];
+ srEntry.appendChild(srScope);
+ }
+ else // multiple results
+ {
+ srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
+ var srChildren = document.createElement('div');
+ setClassAttr(srChildren,'SRChildren');
+ for (var c=0; c<searchData[e][1].length-1; c++)
+ {
+ var srChild = document.createElement('a');
+ srChild.setAttribute('id','Item'+e+'_c'+c);
+ setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
+ setClassAttr(srChild,'SRScope');
+ srChild.setAttribute('href',searchData[e][1][c+1][0]);
+ if (searchData[e][1][c+1][1])
+ {
+ srChild.setAttribute('target','_parent');
+ }
+ srChild.innerHTML = searchData[e][1][c+1][2];
+ srChildren.appendChild(srChild);
+ }
+ srEntry.appendChild(srChildren);
+ }
+ srResult.appendChild(srEntry);
+ results.appendChild(srResult);
+ }
+}
+
diff --git a/doc/ref/core.internal/html/search/search_l.png b/doc/ref/core.internal/html/search/search_l.png
new file mode 100644
index 0000000000..c872f4da4a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/search_l.png
Binary files differ
diff --git a/doc/ref/core.internal/html/search/search_m.png b/doc/ref/core.internal/html/search/search_m.png
new file mode 100644
index 0000000000..b429a16ba6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/search_m.png
Binary files differ
diff --git a/doc/ref/core.internal/html/search/search_r.png b/doc/ref/core.internal/html/search/search_r.png
new file mode 100644
index 0000000000..97ee8b4396
--- /dev/null
+++ b/doc/ref/core.internal/html/search/search_r.png
Binary files differ
diff --git a/doc/ref/core.internal/html/search/typedefs_0.html b/doc/ref/core.internal/html/search/typedefs_0.html
new file mode 100644
index 0000000000..8d6b78fe9d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_0.js b/doc/ref/core.internal/html/search/typedefs_0.js
new file mode 100644
index 0000000000..7a58c48241
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['arg',['arg',['../cmdline_8c.html#af240efb36795b416de0779ad5d5159e4',1,'cmdline.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_1.html b/doc/ref/core.internal/html/search/typedefs_1.html
new file mode 100644
index 0000000000..455fe2b2b9
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_1.js b/doc/ref/core.internal/html/search/typedefs_1.js
new file mode 100644
index 0000000000..cd3deaf1de
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_1.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['call_5fdata',['call_data',['../server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;server_auth_filter.c'],['../client__channel_8c.html#a9d8dd5943711393112c0fe83c02c0ca8',1,'call_data():&#160;client_channel.c'],['../compress__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;compress_filter.c'],['../connected__channel_8c.html#abf019c14ca61b45a660c2b86b0a0b889',1,'call_data():&#160;connected_channel.c'],['../http__client__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;http_client_filter.c'],['../http__server__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;http_server_filter.c'],['../noop__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1',1,'call_data():&#160;noop_filter.c'],['../server_8c.html#a9d8dd5943711393112c0fe83c02c0ca8',1,'call_data():&#160;server.c']]],
+ ['census_5fcontext',['census_context',['../census_8h.html#a27fc8788690179599713226f1f054736',1,'census.h']]],
+ ['channel_5fdata',['channel_data',['../server__auth__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;server_auth_filter.c'],['../compress__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;compress_filter.c'],['../connected__channel_8c.html#a43362118345c9bbd8b75103f9854a69d',1,'channel_data():&#160;connected_channel.c'],['../http__client__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;http_client_filter.c'],['../http__server__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;http_server_filter.c'],['../noop__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84',1,'channel_data():&#160;noop_filter.c'],['../server_8c.html#a663530098451ca6ac5dd8381e470b512',1,'channel_data():&#160;server.c']]],
+ ['channel_5fregistered_5fmethod',['channel_registered_method',['../server_8c.html#a47b693eb517ae870b0243f6c7be3541f',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_2.html b/doc/ref/core.internal/html/search/typedefs_2.html
new file mode 100644
index 0000000000..fac5dbac55
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_2.js b/doc/ref/core.internal/html/search/typedefs_2.js
new file mode 100644
index 0000000000..c5bfd9b2e0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_2.js
@@ -0,0 +1,138 @@
+var searchData=
+[
+ ['gpr_5fatm',['gpr_atm',['../atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc',1,'gpr_atm():&#160;atm_gcc_atomic.h'],['../atm__gcc__sync_8h.html#aa9e4b16c09888debe306f14e8090b1cc',1,'gpr_atm():&#160;atm_gcc_sync.h'],['../atm__win32_8h.html#aa9e4b16c09888debe306f14e8090b1cc',1,'gpr_atm():&#160;atm_win32.h']]],
+ ['gpr_5fcmdline',['gpr_cmdline',['../cmdline_8h.html#aaad93cd9bfc32c54fc89f7c2f3b74eb6',1,'cmdline.h']]],
+ ['gpr_5fcv',['gpr_cv',['../sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885',1,'gpr_cv():&#160;sync_posix.h'],['../sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d',1,'gpr_cv():&#160;sync_win32.h']]],
+ ['gpr_5fhistogram',['gpr_histogram',['../histogram_8h.html#a7125b0cef0e61a441a17f887dbc073fc',1,'histogram.h']]],
+ ['gpr_5fint16',['gpr_int16',['../port__platform_8h.html#a6c41ac43b02ec37b1e07967a8706e709',1,'port_platform.h']]],
+ ['gpr_5fint32',['gpr_int32',['../port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7',1,'port_platform.h']]],
+ ['gpr_5fint64',['gpr_int64',['../port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181',1,'port_platform.h']]],
+ ['gpr_5fintmax',['gpr_intmax',['../port__platform_8h.html#a3ecb17ae580dbde63199ac206a732139',1,'port_platform.h']]],
+ ['gpr_5fintptr',['gpr_intptr',['../port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2',1,'port_platform.h']]],
+ ['gpr_5flog_5ffunc',['gpr_log_func',['../log_8h.html#a23f29195676c33c61ff08a7f0a3e69b0',1,'log.h']]],
+ ['gpr_5flog_5fseverity',['gpr_log_severity',['../log_8h.html#ad49303346a78cf4881129958214fde8d',1,'log.h']]],
+ ['gpr_5fmu',['gpr_mu',['../sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f',1,'sync_posix.h']]],
+ ['gpr_5fonce',['gpr_once',['../sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f',1,'gpr_once():&#160;sync_posix.h'],['../sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13',1,'gpr_once():&#160;sync_win32.h']]],
+ ['gpr_5fslice',['gpr_slice',['../slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c',1,'slice.h']]],
+ ['gpr_5fslice_5frefcount',['gpr_slice_refcount',['../slice_8h.html#af8841873e741f6cf38b2192147ea4f3e',1,'slice.h']]],
+ ['gpr_5fstack_5flockfree',['gpr_stack_lockfree',['../stack__lockfree_8h.html#a66ea3d52c0bac00af25057468bbd8465',1,'stack_lockfree.h']]],
+ ['gpr_5fsubprocess',['gpr_subprocess',['../subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095',1,'subprocess.h']]],
+ ['gpr_5fthd_5fid',['gpr_thd_id',['../thd_8h.html#a04194350e2fb18edc439ab0a9d355a72',1,'thd.h']]],
+ ['gpr_5ftimespec',['gpr_timespec',['../time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45',1,'time.h']]],
+ ['gpr_5fuint16',['gpr_uint16',['../port__platform_8h.html#abb7bceac4325643af77af51c7b6af371',1,'port_platform.h']]],
+ ['gpr_5fuint32',['gpr_uint32',['../port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9',1,'port_platform.h']]],
+ ['gpr_5fuint64',['gpr_uint64',['../port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6',1,'port_platform.h']]],
+ ['gpr_5fuint8',['gpr_uint8',['../port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0',1,'port_platform.h']]],
+ ['gpr_5fuintmax',['gpr_uintmax',['../port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7',1,'port_platform.h']]],
+ ['gpr_5fuintptr',['gpr_uintptr',['../port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4',1,'port_platform.h']]],
+ ['grpc_5falarm',['grpc_alarm',['../alarm_8h.html#a2a31b5bd57cc9f6b862e9b8ef0ec2bea',1,'alarm.h']]],
+ ['grpc_5fauth_5fcontext',['grpc_auth_context',['../grpc__security_8h.html#aa13f0724cb7ff99995d7f0881c01d553',1,'grpc_security.h']]],
+ ['grpc_5fauth_5fproperty',['grpc_auth_property',['../grpc__security_8h.html#a010fe7d27deaa2ea50b765b48dbad429',1,'grpc_security.h']]],
+ ['grpc_5fauth_5fproperty_5fiterator',['grpc_auth_property_iterator',['../grpc__security_8h.html#a26981fdcb987d885b25d34c7dc66e4cf',1,'grpc_security.h']]],
+ ['grpc_5fbegin_5fmessage',['grpc_begin_message',['../stream__op_8h.html#a6d154e209d826dcf514850c6724d3596',1,'stream_op.h']]],
+ ['grpc_5fbyte_5fbuffer',['grpc_byte_buffer',['../byte__buffer_8h.html#a670951ae03b0a2dc4e50f4e25160fc2e',1,'byte_buffer.h']]],
+ ['grpc_5fbyte_5fbuffer_5freader',['grpc_byte_buffer_reader',['../byte__buffer_8h.html#a16143f22ea46cc7fa6b53e6cb30715f1',1,'byte_buffer.h']]],
+ ['grpc_5fcall',['grpc_call',['../grpc_8h.html#a122f8f4f0a585396d993d9b55848f222',1,'grpc.h']]],
+ ['grpc_5fcall_5felement',['grpc_call_element',['../channel__stack_8h.html#ad4b0603b98c350dc4bfdcc2ba95d5401',1,'channel_stack.h']]],
+ ['grpc_5fcall_5ferror',['grpc_call_error',['../grpc_8h.html#abb51216cb5ac1cfd8ca4d096e060adbb',1,'grpc.h']]],
+ ['grpc_5fchannel',['grpc_channel',['../grpc_8h.html#a432bfa6b9f6603643cdf9de8804c254e',1,'grpc.h']]],
+ ['grpc_5fchannel_5felement',['grpc_channel_element',['../channel__stack_8h.html#aea7892e6dfe1fbf098a7d6deea46d4ca',1,'channel_stack.h']]],
+ ['grpc_5fchannel_5fsecurity_5fconnector',['grpc_channel_security_connector',['../security__connector_8h.html#afbebb4c120eeea2ad96953aae5f656ec',1,'security_connector.h']]],
+ ['grpc_5fchttp2_5fhpack_5fparser',['grpc_chttp2_hpack_parser',['../hpack__parser_8h.html#ae66f95f470e6a67afa580dd7d1d3d39b',1,'hpack_parser.h']]],
+ ['grpc_5fchttp2_5fhpack_5fparser_5fstate',['grpc_chttp2_hpack_parser_state',['../hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507',1,'hpack_parser.h']]],
+ ['grpc_5fchttp2_5foutstanding_5fping',['grpc_chttp2_outstanding_ping',['../internal_8h.html#a4b8e11ec16028f6adaa9355602a9c591',1,'internal.h']]],
+ ['grpc_5fchttp2_5fstream',['grpc_chttp2_stream',['../internal_8h.html#a50089f57f93d9eb16569dd3b63f879d1',1,'internal.h']]],
+ ['grpc_5fchttp2_5fstream_5fparsing',['grpc_chttp2_stream_parsing',['../frame_8h.html#a67486ee57e3d27c619df98c80420f421',1,'frame.h']]],
+ ['grpc_5fchttp2_5ftransport',['grpc_chttp2_transport',['../internal_8h.html#a83a9a1c265dc0fede61598c7cd1aaec2',1,'internal.h']]],
+ ['grpc_5fchttp2_5ftransport_5fparsing',['grpc_chttp2_transport_parsing',['../frame_8h.html#a736ee44646a381e8119085a7803c20bc',1,'frame.h']]],
+ ['grpc_5fclient_5fconfig',['grpc_client_config',['../client__config_8h.html#a5c92ac9b2893cfe73b5be84ddc10367c',1,'client_config.h']]],
+ ['grpc_5fcompletion_5fqueue',['grpc_completion_queue',['../grpc_8h.html#a895faab0e6035445750e43482651ba2f',1,'grpc.h']]],
+ ['grpc_5fcompletion_5ftype',['grpc_completion_type',['../grpc_8h.html#a70454b2958c92c1cd8feeaa45f157b74',1,'grpc.h']]],
+ ['grpc_5fconnectivity_5fstate_5fwatcher',['grpc_connectivity_state_watcher',['../connectivity__state_8h.html#aeda9add40d75e8ee7249a208e38a065a',1,'connectivity_state.h']]],
+ ['grpc_5fconnector',['grpc_connector',['../connector_8h.html#aae174ab59659a89b5e73c565023961bb',1,'connector.h']]],
+ ['grpc_5fconnector_5fvtable',['grpc_connector_vtable',['../connector_8h.html#add8d7e9bf9a65c5580489f9af7951bec',1,'connector.h']]],
+ ['grpc_5fcq_5fcompletion',['grpc_cq_completion',['../completion__queue_8h.html#a3695e8858dba0cab40f3becbf822e014',1,'completion_queue.h']]],
+ ['grpc_5fcredentials',['grpc_credentials',['../grpc__security_8h.html#a17768c857575e4500cdd12bb94d3f33e',1,'grpc_security.h']]],
+ ['grpc_5fcredentials_5fmetadata_5fcb',['grpc_credentials_metadata_cb',['../credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2',1,'credentials.h']]],
+ ['grpc_5fcredentials_5fmetadata_5frequest',['grpc_credentials_metadata_request',['../credentials_8h.html#ad254566b74763fc0ae17e07b230c862b',1,'credentials.h']]],
+ ['grpc_5fdualstack_5fmode',['grpc_dualstack_mode',['../socket__utils__posix_8h.html#a0d07cbe9b082267d5436905dedf86b91',1,'socket_utils_posix.h']]],
+ ['grpc_5fendpoint',['grpc_endpoint',['../endpoint_8h.html#ab0f168d17277b4b5a4d7842eec6ea3ea',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fcb_5fstatus',['grpc_endpoint_cb_status',['../endpoint_8h.html#ae601d949fd51e619ee5312bc2d733236',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fread_5fcb',['grpc_endpoint_read_cb',['../endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fvtable',['grpc_endpoint_vtable',['../endpoint_8h.html#accd077025fc138a98e048238d2efe1b9',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fcb',['grpc_endpoint_write_cb',['../endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a',1,'endpoint.h']]],
+ ['grpc_5fendpoint_5fwrite_5fstatus',['grpc_endpoint_write_status',['../endpoint_8h.html#ae5e35fd14127beb3af459a22d81ac1fd',1,'endpoint.h']]],
+ ['grpc_5fevent',['grpc_event',['../grpc_8h.html#a07990645ca218f6965fd83edf3f421b7',1,'grpc.h']]],
+ ['grpc_5ffd',['grpc_fd',['../fd__posix_8h.html#a9f8a2791dbd9811a996395c3b466509d',1,'fd_posix.h']]],
+ ['grpc_5ffd_5fwatcher',['grpc_fd_watcher',['../fd__posix_8h.html#abfc4bcf6d9e283872acf08eab90f8233',1,'fd_posix.h']]],
+ ['grpc_5ffetch_5foauth2_5ffunc',['grpc_fetch_oauth2_func',['../credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d',1,'credentials.h']]],
+ ['grpc_5fhttpcli_5fcontext',['grpc_httpcli_context',['../httpcli_8h.html#aacb6a69953113d6b548366871b884345',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fget_5foverride',['grpc_httpcli_get_override',['../httpcli_8h.html#a789e91e8c276aedb1c32873c3d6fa217',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fheader',['grpc_httpcli_header',['../httpcli_8h.html#a3b84c74398894ce993b1e32daf468575',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fpost_5foverride',['grpc_httpcli_post_override',['../httpcli_8h.html#a0591ce896f1a3f9b1b86e4eb6e9ac225',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5frequest',['grpc_httpcli_request',['../httpcli_8h.html#a4e0f0352ec7906d948f9dc046f9b4e79',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fresponse',['grpc_httpcli_response',['../httpcli_8h.html#a9b9787db48bc2c77f38575943dc8dad0',1,'httpcli.h']]],
+ ['grpc_5fhttpcli_5fresponse_5fcb',['grpc_httpcli_response_cb',['../httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887',1,'httpcli.h']]],
+ ['grpc_5fiomgr_5fcb_5ffunc',['grpc_iomgr_cb_func',['../iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3',1,'iomgr.h']]],
+ ['grpc_5fiomgr_5fclosure',['grpc_iomgr_closure',['../iomgr_8h.html#ab34430c3d713794f01b7d6114ad4db87',1,'iomgr.h']]],
+ ['grpc_5fiomgr_5fobject',['grpc_iomgr_object',['../iomgr__internal_8h.html#a67a15c8c93d8195f1a6036d26b871814',1,'iomgr_internal.h']]],
+ ['grpc_5fioreq_5fcompletion_5ffunc',['grpc_ioreq_completion_func',['../call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b',1,'call.h']]],
+ ['grpc_5fjson',['grpc_json',['../json_8h.html#ae8825a1aedd3c601c1db76275b0091eb',1,'json.h']]],
+ ['grpc_5fjson_5freader',['grpc_json_reader',['../json__reader_8h.html#a2e4389a352e99df3e5d9cb59a6c14929',1,'json_reader.h']]],
+ ['grpc_5fjson_5freader_5fvtable',['grpc_json_reader_vtable',['../json__reader_8h.html#ad0e9eed0713ae7021f4b72a0d45784b2',1,'json_reader.h']]],
+ ['grpc_5fjson_5fwriter',['grpc_json_writer',['../json__writer_8h.html#aa24bdcefdd09a31b2fa23fbaf4060dc9',1,'json_writer.h']]],
+ ['grpc_5fjson_5fwriter_5fvtable',['grpc_json_writer_vtable',['../json__writer_8h.html#a96f60637ee2643ea745d9746065d2c51',1,'json_writer.h']]],
+ ['grpc_5fjwt_5fclaims',['grpc_jwt_claims',['../jwt__verifier_8h.html#a3998a024a5d44465e9f4f5e56666f1a4',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fencode_5fand_5fsign_5foverride',['grpc_jwt_encode_and_sign_override',['../json__token_8h.html#acf73be11be357bfd35a30b845e26118f',1,'json_token.h']]],
+ ['grpc_5fjwt_5fverification_5fdone_5fcb',['grpc_jwt_verification_done_cb',['../jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2',1,'jwt_verifier.h']]],
+ ['grpc_5fjwt_5fverifier',['grpc_jwt_verifier',['../jwt__verifier_8h.html#a1bd823cc55eb0ce26b62aa69ca916cc0',1,'jwt_verifier.h']]],
+ ['grpc_5fkick_5ffd_5finfo',['grpc_kick_fd_info',['../pollset__kick__posix_8h.html#ac232fa28f35b012cc710033c351ee3d5',1,'pollset_kick_posix.h']]],
+ ['grpc_5flb_5fcompletion',['grpc_lb_completion',['../lb__policy_8h.html#a82191ae9ee04740368256ebfe25ec9d5',1,'lb_policy.h']]],
+ ['grpc_5flb_5fpolicy',['grpc_lb_policy',['../lb__policy_8h.html#aa2bf7da355b0faa3fe532f83899e3e2c',1,'lb_policy.h']]],
+ ['grpc_5flb_5fpolicy_5fvtable',['grpc_lb_policy_vtable',['../lb__policy_8h.html#a3319e96c3d9a520883e74ddf112f7fd2',1,'lb_policy.h']]],
+ ['grpc_5flinked_5fmdelem',['grpc_linked_mdelem',['../stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2',1,'stream_op.h']]],
+ ['grpc_5fmdctx',['grpc_mdctx',['../metadata_8h.html#a3d670d2ea84f975e9ff4758ceaf0742d',1,'metadata.h']]],
+ ['grpc_5fmdelem',['grpc_mdelem',['../metadata_8h.html#a90dde22c13b91f78568735a7f666992e',1,'metadata.h']]],
+ ['grpc_5fmdelem_5flist',['grpc_mdelem_list',['../stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2',1,'stream_op.h']]],
+ ['grpc_5fmdstr',['grpc_mdstr',['../metadata_8h.html#a37a4eca36e6506776f4c60c598dd01f5',1,'metadata.h']]],
+ ['grpc_5fmetadata',['grpc_metadata',['../grpc_8h.html#a1da84eaead787d991c5a0c87aed7c30b',1,'grpc.h']]],
+ ['grpc_5fmetadata_5fbatch',['grpc_metadata_batch',['../stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410',1,'stream_op.h']]],
+ ['grpc_5fop',['grpc_op',['../grpc_8h.html#a6556a58ca45ad5132b89c770cf875215',1,'grpc.h']]],
+ ['grpc_5fplatform_5fbecome_5fmultipoller_5ftype',['grpc_platform_become_multipoller_type',['../pollset__posix_8h.html#a9b5fd5fc969bf6e0c45e5f49b1827bbd',1,'pollset_posix.h']]],
+ ['grpc_5fpollset',['grpc_pollset',['../pollset__posix_8h.html#a3651117ed8881e20c179f0c677c622ad',1,'grpc_pollset():&#160;pollset_posix.h'],['../pollset__windows_8h.html#a3651117ed8881e20c179f0c677c622ad',1,'grpc_pollset():&#160;pollset_windows.h']]],
+ ['grpc_5fpollset_5fkick_5fstate',['grpc_pollset_kick_state',['../pollset__kick__posix_8h.html#a18aca8f917c9aae06f6f84b8700afca1',1,'pollset_kick_posix.h']]],
+ ['grpc_5fpollset_5fset',['grpc_pollset_set',['../pollset__set__posix_8h.html#a5ad060e47c139ab007fe34b33fdf27d7',1,'grpc_pollset_set():&#160;pollset_set_posix.h'],['../pollset__set__windows_8h.html#a5ad060e47c139ab007fe34b33fdf27d7',1,'grpc_pollset_set():&#160;pollset_set_windows.h']]],
+ ['grpc_5fpollset_5fvtable',['grpc_pollset_vtable',['../pollset__posix_8h.html#a93b9c2aef29b7ffe733779b8d4c32db1',1,'pollset_posix.h']]],
+ ['grpc_5fprecise_5fclock',['grpc_precise_clock',['../timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2',1,'timers_preciseclock.h']]],
+ ['grpc_5fresolve_5fcb',['grpc_resolve_cb',['../resolve__address_8h.html#acac9db416b80e9bc82bbd0e1408cc3e0',1,'resolve_address.h']]],
+ ['grpc_5fresolver',['grpc_resolver',['../resolver_8h.html#ab98013b9b8e8c28771dc39013667f2b3',1,'resolver.h']]],
+ ['grpc_5fresolver_5ffactory',['grpc_resolver_factory',['../resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2',1,'resolver_factory.h']]],
+ ['grpc_5fresolver_5ffactory_5fvtable',['grpc_resolver_factory_vtable',['../resolver__factory_8h.html#abf04e4004b01653a0274a3a0d175ab1b',1,'resolver_factory.h']]],
+ ['grpc_5fresolver_5fvtable',['grpc_resolver_vtable',['../resolver_8h.html#aa9af03422b3cea75b4dae7725beab911',1,'resolver.h']]],
+ ['grpc_5fsecure_5ftransport_5fsetup_5fdone_5fcb',['grpc_secure_transport_setup_done_cb',['../secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8',1,'secure_transport_setup.h']]],
+ ['grpc_5fsecurity_5fcheck_5fcb',['grpc_security_check_cb',['../security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa',1,'security_connector.h']]],
+ ['grpc_5fsecurity_5fconnector',['grpc_security_connector',['../security__connector_8h.html#a243897cc56b3cff21887ba4c53e52539',1,'security_connector.h']]],
+ ['grpc_5fserver',['grpc_server',['../grpc_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8',1,'grpc.h']]],
+ ['grpc_5fserver_5fcredentials',['grpc_server_credentials',['../grpc__security_8h.html#aa724192e56fdc03827846f16752deccc',1,'grpc_security.h']]],
+ ['grpc_5fserver_5fsecure_5fstate',['grpc_server_secure_state',['../server__secure__chttp2_8c.html#a5867481af652d517f32b61834205f2b0',1,'server_secure_chttp2.c']]],
+ ['grpc_5fstream',['grpc_stream',['../transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449',1,'transport.h']]],
+ ['grpc_5fstream_5fop',['grpc_stream_op',['../stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127',1,'stream_op.h']]],
+ ['grpc_5fstream_5fop_5fbuffer',['grpc_stream_op_buffer',['../stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5',1,'stream_op.h']]],
+ ['grpc_5fstream_5fop_5fcode',['grpc_stream_op_code',['../stream__op_8h.html#aae7f77961eb1741340666865ab0c5fc7',1,'stream_op.h']]],
+ ['grpc_5fstream_5fstate',['grpc_stream_state',['../transport_8h.html#ad2bffd8c4adc3f1131752a17710d8477',1,'transport.h']]],
+ ['grpc_5fsubchannel',['grpc_subchannel',['../subchannel_8h.html#a6d36bd247fd79f7c8a2788d04f622a06',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5fargs',['grpc_subchannel_args',['../subchannel_8h.html#a1ef8f51fcaea0bb29010f164b4429a55',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5fcall',['grpc_subchannel_call',['../subchannel_8h.html#a007a93252a4a76631336ab840c18ee7d',1,'subchannel.h']]],
+ ['grpc_5fsubchannel_5ffactory',['grpc_subchannel_factory',['../subchannel__factory_8h.html#a0881f059aa8f26e71eb479eed9d06785',1,'subchannel_factory.h']]],
+ ['grpc_5fsubchannel_5ffactory_5fvtable',['grpc_subchannel_factory_vtable',['../subchannel__factory_8h.html#a032cc20ff8747dbc985aa2b85b8f7abf',1,'subchannel_factory.h']]],
+ ['grpc_5ftcp_5fserver',['grpc_tcp_server',['../tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d',1,'tcp_server.h']]],
+ ['grpc_5ftcp_5fserver_5fcb',['grpc_tcp_server_cb',['../tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9',1,'tcp_server.h']]],
+ ['grpc_5ftransport',['grpc_transport',['../transport_8h.html#a7ba3f709ee3b451e434c67acf7fb7451',1,'transport.h']]],
+ ['grpc_5ftransport_5fop',['grpc_transport_op',['../transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf',1,'transport.h']]],
+ ['grpc_5ftransport_5fstream_5fop',['grpc_transport_stream_op',['../transport_8h.html#a425321242c0f56ca08e74a4afcbdd017',1,'transport.h']]],
+ ['grpc_5ftransport_5fvtable',['grpc_transport_vtable',['../transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed',1,'transport_impl.h']]],
+ ['grpc_5fwakeup_5ffd_5finfo',['grpc_wakeup_fd_info',['../wakeup__fd__posix_8h.html#a5b7e6c1bff52dd231ecb17a6716c3815',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwakeup_5ffd_5fvtable',['grpc_wakeup_fd_vtable',['../wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fwinsocket',['grpc_winsocket',['../socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a',1,'socket_windows.h']]],
+ ['grpc_5fwinsocket_5fcallback_5finfo',['grpc_winsocket_callback_info',['../socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc',1,'socket_windows.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_3.html b/doc/ref/core.internal/html/search/typedefs_3.html
new file mode 100644
index 0000000000..9cb52e4673
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_3.js b/doc/ref/core.internal/html/search/typedefs_3.js
new file mode 100644
index 0000000000..5d72983ad9
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['internal_5fmetadata',['internal_metadata',['../metadata_8c.html#a5de9c52bec44c8dd9a46d9575c4336ed',1,'metadata.c']]],
+ ['internal_5fstring',['internal_string',['../metadata_8c.html#ac4804488e22d084fbaf91101dab8c1ee',1,'metadata.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_4.html b/doc/ref/core.internal/html/search/typedefs_4.html
new file mode 100644
index 0000000000..64c6ccef13
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_4.js b/doc/ref/core.internal/html/search/typedefs_4.js
new file mode 100644
index 0000000000..a2d284f50e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_4.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['listener',['listener',['../server_8c.html#a0a81ac863a31441ba5e8e2fc6be04f2c',1,'server.c']]],
+ ['lockfree_5fnode',['lockfree_node',['../stack__lockfree_8c.html#a64e6ad783031985682ffda6b0c912bb6',1,'stack_lockfree.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_5.html b/doc/ref/core.internal/html/search/typedefs_5.html
new file mode 100644
index 0000000000..e014348b9a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_5.js b/doc/ref/core.internal/html/search/typedefs_5.js
new file mode 100644
index 0000000000..7dc52c0562
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['new_5fslice_5frefcount',['new_slice_refcount',['../slice_8c.html#a58022d982381d1f2d8125f9f24e2e1ae',1,'slice.c']]],
+ ['new_5fwith_5flen_5fslice_5frefcount',['new_with_len_slice_refcount',['../slice_8c.html#a07dd4d3601f8c54de26721289ba4d822',1,'slice.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_6.html b/doc/ref/core.internal/html/search/typedefs_6.html
new file mode 100644
index 0000000000..25d6aef5d4
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_6.js b/doc/ref/core.internal/html/search/typedefs_6.js
new file mode 100644
index 0000000000..fa79db55e4
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['pending_5fpick',['pending_pick',['../pick__first_8c.html#ad479509ed6c18dc54a54d231ec73a4e6',1,'pick_first.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_7.html b/doc/ref/core.internal/html/search/typedefs_7.html
new file mode 100644
index 0000000000..77c19301ea
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_7.js b/doc/ref/core.internal/html/search/typedefs_7.js
new file mode 100644
index 0000000000..d28b7c9c22
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_7.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['registered_5fcall',['registered_call',['../channel_8c.html#a52a88ba75481c926895932b8b05951c2',1,'channel.c']]],
+ ['registered_5fmethod',['registered_method',['../server_8c.html#a6f8273ccf99ef212028d3488d579cf3b',1,'server.c']]],
+ ['request_5fmatcher',['request_matcher',['../server_8c.html#a7c5e0489837d1efdf2f3fdb7087b59d4',1,'server.c']]],
+ ['requested_5fcall',['requested_call',['../server_8c.html#a9b3e4fcd769f2a62cbbbde867715ef2c',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_8.html b/doc/ref/core.internal/html/search/typedefs_8.html
new file mode 100644
index 0000000000..9ed4ee3201
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_8.js b/doc/ref/core.internal/html/search/typedefs_8.js
new file mode 100644
index 0000000000..18a1bb686d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['shutdown_5ftag',['shutdown_tag',['../server_8c.html#a292b677b1a61ecd5c4608340fa647346',1,'server.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_9.html b/doc/ref/core.internal/html/search/typedefs_9.html
new file mode 100644
index 0000000000..83eeb277f0
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_9.js b/doc/ref/core.internal/html/search/typedefs_9.js
new file mode 100644
index 0000000000..df477182a3
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_9.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['tcp_5fendpoint_5flist',['tcp_endpoint_list',['../server__secure__chttp2_8c.html#ac7944e456bcd1ed1ea7e112ee396e6aa',1,'server_secure_chttp2.c']]],
+ ['tracer',['tracer',['../trace_8c.html#aff327d037f1cb69bc5c5c25a73b63104',1,'trace.c']]],
+ ['tsi_5fframe_5fprotector',['tsi_frame_protector',['../transport__security__interface_8h.html#a39ae4fe62f4ebc278c7738d6eda50dc8',1,'transport_security_interface.h']]],
+ ['tsi_5fhandshaker',['tsi_handshaker',['../transport__security__interface_8h.html#a37dc2869b4b8fbc2347d4e37a7f7a971',1,'transport_security_interface.h']]],
+ ['tsi_5fpeer_5fproperty',['tsi_peer_property',['../transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be',1,'transport_security_interface.h']]],
+ ['tsi_5fssl_5fhandshaker_5ffactory',['tsi_ssl_handshaker_factory',['../ssl__transport__security_8h.html#a33648ab82d52fddf97cd254ab14cad32',1,'ssl_transport_security.h']]]
+];
diff --git a/doc/ref/core.internal/html/search/typedefs_a.html b/doc/ref/core.internal/html/search/typedefs_a.html
new file mode 100644
index 0000000000..6e5cb06822
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/typedefs_a.js b/doc/ref/core.internal/html/search/typedefs_a.js
new file mode 100644
index 0000000000..a9b7a8807b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/typedefs_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['waiting_5ffor_5fconnect',['waiting_for_connect',['../subchannel_8c.html#a5c5a0a02a82c51b4df27922770a17516',1,'subchannel.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_0.html b/doc/ref/core.internal/html/search/variables_0.html
new file mode 100644
index 0000000000..1b8adc9b33
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_0.js b/doc/ref/core.internal/html/search/variables_0.js
new file mode 100644
index 0000000000..7f91ca2d0b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_0.js
@@ -0,0 +1,44 @@
+var searchData=
+[
+ ['accept_5fstream',['accept_stream',['../structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a',1,'grpc_chttp2_transport']]],
+ ['accept_5fstream_5fuser_5fdata',['accept_stream_user_data',['../structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f',1,'grpc_chttp2_transport']]],
+ ['accepting_5fstream',['accepting_stream',['../structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e',1,'grpc_chttp2_transport']]],
+ ['access_5ftoken_5fmd',['access_token_md',['../structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be',1,'grpc_oauth2_token_fetcher_credentials::access_token_md()'],['../structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09',1,'grpc_access_token_credentials::access_token_md()'],['../structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693',1,'grpc_fake_oauth2_credentials::access_token_md()']]],
+ ['active',['active',['../structgrpc__subchannel.html#a9095183eaf77899e3b932d3445cfa45b',1,'grpc_subchannel']]],
+ ['active_5fversion',['active_version',['../structgrpc__subchannel.html#a6569eb7df7abc7fd022ff8c1a6ce2ae1',1,'grpc_subchannel']]],
+ ['add_5ffd',['add_fd',['../structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5',1,'grpc_pollset_vtable']]],
+ ['add_5fto_5fpollset',['add_to_pollset',['../structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556',1,'grpc_endpoint_vtable']]],
+ ['add_5fto_5fpollset_5fset',['add_to_pollset_set',['../structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c',1,'grpc_endpoint_vtable']]],
+ ['added_5fto_5fiocp',['added_to_iocp',['../structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47',1,'grpc_winsocket']]],
+ ['addr',['addr',['../structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834',1,'grpc_connect_in_args::addr()'],['../structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb',1,'grpc_subchannel_args::addr()'],['../structgrpc__resolved__address.html#a664035b0fc073c4a49f5e7c1cc765c9d',1,'grpc_resolved_address::addr()'],['../structsockaddr__resolver.html#a35fd9ba04c766da4556c76e6f32a6356',1,'sockaddr_resolver::addr()'],['../structgrpc__subchannel.html#a1133699340905f7c7f8c50fc97591647',1,'grpc_subchannel::addr()']]],
+ ['addr_5flen',['addr_len',['../structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b',1,'grpc_connect_in_args::addr_len()'],['../structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026',1,'grpc_subchannel_args::addr_len()'],['../structsockaddr__resolver.html#acad714ee68d2e23a4157f49f7fc35e91',1,'sockaddr_resolver::addr_len()'],['../structgrpc__subchannel.html#ab74ce5a1e1067a508e74048ec68aea10',1,'grpc_subchannel::addr_len()']]],
+ ['addresses',['addresses',['../structinternal__request.html#a0ab2a9ca4e299dc1f8fa41de2e3384b0',1,'internal_request']]],
+ ['addrs',['addrs',['../structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c',1,'grpc_resolved_addresses']]],
+ ['after_5fprioritization',['after_prioritization',['../structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0',1,'grpc_chttp2_hpack_parser']]],
+ ['aggregate_5ftotal_5fweight',['aggregate_total_weight',['../structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1',1,'grpc_time_averaged_stats']]],
+ ['aggregate_5fweighted_5favg',['aggregate_weighted_avg',['../structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab',1,'grpc_time_averaged_stats']]],
+ ['alarm',['alarm',['../structgrpc__subchannel.html#af42dd9bca8055a7afb3415f857ca28fa',1,'grpc_subchannel::alarm()'],['../structgrpc__call.html#a673a0cdde6bc7ebe5ff66820b8bd0b91',1,'grpc_call::alarm()'],['../structstate__watcher.html#a550220a27c14e026329a260cd581ece2',1,'state_watcher::alarm()']]],
+ ['alarm_5fcapacity',['alarm_capacity',['../structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd',1,'grpc_alarm_heap']]],
+ ['alarm_5fcount',['alarm_count',['../structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5',1,'grpc_alarm_heap']]],
+ ['alarms',['alarms',['../structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82',1,'grpc_alarm_heap']]],
+ ['alg',['alg',['../structjose__header.html#a1f2a1e1efa6f64762c67f7c688790c0d',1,'jose_header']]],
+ ['allocated',['allocated',['../structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e',1,'grpc_credentials_md_store::allocated()'],['../structjson__writer__userdata.html#a6be58e44bfcd53828551b919df38489d',1,'json_writer_userdata::allocated()']]],
+ ['allocated_5fcompletions',['allocated_completions',['../structgrpc__call.html#a7fa8c9ad3543546625b2aaa7d2853c05',1,'grpc_call']]],
+ ['allocated_5fmappings',['allocated_mappings',['../structgrpc__jwt__verifier.html#adcf1fd004d97c7345bffbbfbb5983e3c',1,'grpc_jwt_verifier']]],
+ ['allocated_5fsize',['allocated_size',['../structtsi__fake__frame.html#ac48b3f97ad8df8b87cf38b75d843591b',1,'tsi_fake_frame']]],
+ ['alpn_5fprotocol_5flist',['alpn_protocol_list',['../structtsi__ssl__client__handshaker__factory.html#a92aea4cb778959043703fcc3623c68a9',1,'tsi_ssl_client_handshaker_factory::alpn_protocol_list()'],['../structtsi__ssl__server__handshaker__factory.html#a02579737ef9a57855da159c54c05955f',1,'tsi_ssl_server_handshaker_factory::alpn_protocol_list()']]],
+ ['alpn_5fprotocol_5flist_5flength',['alpn_protocol_list_length',['../structtsi__ssl__client__handshaker__factory.html#a63415a7f73f99c3ccee2addc915c9482',1,'tsi_ssl_client_handshaker_factory::alpn_protocol_list_length()'],['../structtsi__ssl__server__handshaker__factory.html#a1dd579a38c0ab5d7f1304b26a838954b',1,'tsi_ssl_server_handshaker_factory::alpn_protocol_list_length()']]],
+ ['amount',['amount',['../structgrpc__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2',1,'grpc_chttp2_window_update_parser']]],
+ ['announce_5fwindow',['announce_window',['../structgrpc__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17',1,'grpc_chttp2_stream_writing']]],
+ ['arg',['arg',['../structlistener.html#a979a29a26af9ef7a83a22f0cdd7fe1a4',1,'listener']]],
+ ['args',['args',['../structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76',1,'grpc_channel_args::args()'],['../structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081',1,'grpc_subchannel_args::args()'],['../structconnector.html#ad3d70fc61b888fcb246a4a307b16c4ec',1,'connector::args()'],['../structgrpc__subchannel.html#a9ffccab543a55f5ea53d9075f8d88079',1,'grpc_subchannel::args()'],['../structgpr__cmdline.html#a7966fa04e7e92065675c49535ea9c078',1,'gpr_cmdline::args()']]],
+ ['argv0',['argv0',['../structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e',1,'gpr_cmdline']]],
+ ['async_5fsetup_5ftask',['async_setup_task',['../structcall__data.html#ab21ef8aafd3c095825805e29e69670ce',1,'call_data']]],
+ ['atm',['atm',['../unionlockfree__node.html#a8bac5e680ab1fce893f7727f7a0be892',1,'lockfree_node']]],
+ ['aud',['aud',['../structgrpc__jwt__claims.html#ab3aeb778bc0983824534ffa0c1e51f9c',1,'grpc_jwt_claims']]],
+ ['audience',['audience',['../structverifier__cb__ctx.html#afdbd6e54ed44e9938991b0ed1915ed2d',1,'verifier_cb_ctx']]],
+ ['auth_5fcontext',['auth_context',['../structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17',1,'grpc_security_connector::auth_context()'],['../structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c',1,'grpc_client_security_context::auth_context()'],['../structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1',1,'grpc_server_security_context::auth_context()']]],
+ ['authority',['authority',['../structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7',1,'grpc_uri::authority()'],['../structcall__data.html#a216c8a3e91a659b6ad5f3de09bbf8ff0',1,'call_data::authority()'],['../structregistered__call.html#aa41fdf7362b58db7148acb228df62408',1,'registered_call::authority()']]],
+ ['authority_5fkey',['authority_key',['../structchannel__data.html#abff9ead49754255e5fe5f5767634b553',1,'channel_data']]],
+ ['authority_5fstring',['authority_string',['../structchannel__data.html#a65b7bac5d0844808a6d6b399ca1d234f',1,'channel_data::authority_string()'],['../structgrpc__channel.html#a9ad924bb3cc339c10d106f48b9a4a959',1,'grpc_channel::authority_string()']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_1.html b/doc/ref/core.internal/html/search/variables_1.html
new file mode 100644
index 0000000000..78f63cd1eb
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_1.js b/doc/ref/core.internal/html/search/variables_1.js
new file mode 100644
index 0000000000..6ed7b4a362
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_1.js
@@ -0,0 +1,31 @@
+var searchData=
+[
+ ['backoff_5fdelta',['backoff_delta',['../structgrpc__subchannel.html#a337c8cb56f9a249ca181ddc1f5999af5',1,'grpc_subchannel']]],
+ ['base',['base',['../structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4',1,'grpc_ssl_credentials::base()'],['../structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71',1,'grpc_ssl_server_credentials::base()'],['../structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4',1,'grpc_service_account_jwt_access_credentials::base()'],['../structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5',1,'grpc_oauth2_token_fetcher_credentials::base()'],['../structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0',1,'grpc_service_account_credentials::base()'],['../structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e',1,'grpc_refresh_token_credentials::base()'],['../structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b',1,'grpc_access_token_credentials::base()'],['../structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901',1,'grpc_fake_oauth2_credentials::base()'],['../structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d',1,'grpc_iam_credentials::base()'],['../structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2',1,'grpc_composite_credentials::base()'],['../structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08',1,'grpc_channel_security_connector::base()'],['../structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f',1,'grpc_chttp2_transport::base()'],['../structgrpc__httpcli__ssl__channel__security__connector.html#a4da06be1278854b4447140407d81db25',1,'grpc_httpcli_ssl_channel_security_connector::base()'],['../structsecure__endpoint.html#ac85eec4e82c343cb9fd03c8dea0a08bb',1,'secure_endpoint::base()'],['../structgrpc__fake__channel__security__connector.html#a3a30ba1484411dcedb12607e1a523431',1,'grpc_fake_channel_security_connector::base()'],['../structgrpc__ssl__channel__security__connector.html#af7253d985a9b58d3f7a363d05fdb148c',1,'grpc_ssl_channel_security_connector::base()'],['../structgrpc__ssl__server__security__connector.html#a458d7df65c42b6df819570e79f750907',1,'grpc_ssl_server_security_connector::base()'],['../structconnector.html#a073303affdd652e8688303df9a126bd2',1,'connector::base()'],['../structsubchannel__factory.html#a58fdbc6cebefc2d0f5a75081bee7b676',1,'subchannel_factory::base()'],['../structtsi__fake__handshaker.html#ac20760acd01b20d55b2f92b6a8a139da',1,'tsi_fake_handshaker::base()'],['../structtsi__fake__frame__protector.html#a1f23e2443125ab322674638a71832620',1,'tsi_fake_frame_protector::base()'],['../structtsi__ssl__client__handshaker__factory.html#a66026b4b56a25d198d4aafa959da8413',1,'tsi_ssl_client_handshaker_factory::base()'],['../structtsi__ssl__server__handshaker__factory.html#a68655e93122b5b856ecb840526ff86d9',1,'tsi_ssl_server_handshaker_factory::base()'],['../structtsi__ssl__handshaker.html#a21ae1da6ec22caf8229b148e11aad657',1,'tsi_ssl_handshaker::base()'],['../structtsi__ssl__frame__protector.html#a7d015792be7227bfd44a6a17dc08aa72',1,'tsi_ssl_frame_protector::base()'],['../structpick__first__lb__policy.html#a3e8f7088400929001aa4b589a3f79f79',1,'pick_first_lb_policy::base()'],['../structdns__resolver.html#a135f51d63ab8d730d7ba491f0d94b6f6',1,'dns_resolver::base()'],['../structsockaddr__resolver.html#a92a0b91dca1a2ecdb5eea739a8038c82',1,'sockaddr_resolver::base()'],['../structmerge__args__factory.html#a10d01f7c94efbd37682c4c2af19a21e8',1,'merge_args_factory::base()'],['../structmalloc__refcount.html#a9443dc5946fa32f480286c87d5dc3686',1,'malloc_refcount::base()']]],
+ ['base64_5fand_5fhuffman',['base64_and_huffman',['../structinternal__string.html#abfafee0983fc1c6c1e38c8e539d41999',1,'internal_string']]],
+ ['base64_5fbuffer',['base64_buffer',['../structgrpc__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e',1,'grpc_chttp2_hpack_parser']]],
+ ['batch',['batch',['../structrequested__call.html#a664afa5ffde3750f0ff04f69813fbcd2',1,'requested_call']]],
+ ['batch_5fnum_5fsamples',['batch_num_samples',['../structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb',1,'grpc_time_averaged_stats']]],
+ ['batch_5ftotal_5fvalue',['batch_total_value',['../structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b',1,'grpc_time_averaged_stats']]],
+ ['begin_5fmessage',['begin_message',['../structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f',1,'grpc_stream_op']]],
+ ['binary',['binary',['../structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f',1,'grpc_chttp2_hpack_parser']]],
+ ['bind_5fpollset',['bind_pollset',['../structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4',1,'grpc_transport_stream_op::bind_pollset()'],['../structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2',1,'grpc_transport_op::bind_pollset()']]],
+ ['bind_5fpollset_5fset',['bind_pollset_set',['../structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3',1,'grpc_transport_op']]],
+ ['bits',['bits',['../structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88',1,'grpc_chttp2_huffsym::bits()'],['../structb64__huff__sym.html#ab216d5e5b8fdb4ccfd9a4843aa389b81',1,'b64_huff_sym::bits()']]],
+ ['body',['body',['../structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90',1,'grpc_httpcli_response']]],
+ ['body_5fcapacity',['body_capacity',['../structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628',1,'grpc_httpcli_parser']]],
+ ['body_5flength',['body_length',['../structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb',1,'grpc_httpcli_response']]],
+ ['bound_5fpollset',['bound_pollset',['../structgrpc__call.html#a3cd66ac4c2f69f16f6037fc63f0d49db',1,'grpc_call']]],
+ ['broadcast',['broadcast',['../structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3',1,'grpc_lb_policy_vtable']]],
+ ['bucket_5fnext',['bucket_next',['../structinternal__string.html#a821c2b13cb1eea1ed3e36e867b62f3ba',1,'internal_string::bucket_next()'],['../structinternal__metadata.html#aadcd0104b419227943fcd4a53920777e',1,'internal_metadata::bucket_next()']]],
+ ['buckets',['buckets',['../structgpr__histogram.html#abc707964e4925f4b7abf4c69daaaef73',1,'gpr_histogram']]],
+ ['buffer',['buffer',['../structjose__header.html#af14380ad49201179d4ad6e3fa7a0e58b',1,'jose_header::buffer()'],['../structgrpc__jwt__claims.html#a62be74275bf0b7d887d70229bb9e497b',1,'grpc_jwt_claims::buffer()'],['../structtsi__ssl__frame__protector.html#a3df125b5b712526ea26ba5dbaa8a71ee',1,'tsi_ssl_frame_protector::buffer()']]],
+ ['buffer_5fin',['buffer_in',['../structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22',1,'grpc_byte_buffer_reader']]],
+ ['buffer_5foffset',['buffer_offset',['../structtsi__ssl__frame__protector.html#a8d6f4e3e06cec85370146dae562a572f',1,'tsi_ssl_frame_protector']]],
+ ['buffer_5fout',['buffer_out',['../structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47',1,'grpc_byte_buffer_reader']]],
+ ['buffer_5fsize',['buffer_size',['../structtsi__ssl__frame__protector.html#a1a3705245461fa77c84d7cb3806b1840',1,'tsi_ssl_frame_protector']]],
+ ['buffered_5fmetadata',['buffered_metadata',['../structgrpc__call.html#ae501d7b947eb7a73170ccc5272e83c15',1,'grpc_call']]],
+ ['byte',['byte',['../structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33',1,'grpc_chttp2_ping_parser::byte()'],['../structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665',1,'grpc_chttp2_rst_stream_parser::byte()'],['../structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79',1,'grpc_chttp2_window_update_parser::byte()']]],
+ ['bytes',['bytes',['../structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59',1,'grpc_byte_buffer_queue::bytes()'],['../structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864',1,'gpr_slice::bytes()'],['../structgpr__slice.html#a39592633c4ad594a15b3a52aadff398d',1,'gpr_slice::bytes()']]],
+ ['bytes_5ftransfered',['bytes_transfered',['../structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e',1,'grpc_winsocket_callback_info']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_10.html b/doc/ref/core.internal/html/search/variables_10.html
new file mode 100644
index 0000000000..c43ead3a78
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_10.js b/doc/ref/core.internal/html/search/variables_10.js
new file mode 100644
index 0000000000..f1c017a157
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_10.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['qbuf',['qbuf',['../structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4',1,'grpc_chttp2_transport_global::qbuf()'],['../structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308',1,'grpc_chttp2_transport_parsing::qbuf()']]],
+ ['queue_5fdeadline_5fcap',['queue_deadline_cap',['../structshard__type.html#a561cd2753aeec34ba62c823ca9471168',1,'shard_type']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_11.html b/doc/ref/core.internal/html/search/variables_11.html
new file mode 100644
index 0000000000..d9dbba9077
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_11.js b/doc/ref/core.internal/html/search/variables_11.js
new file mode 100644
index 0000000000..927e904532
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_11.js
@@ -0,0 +1,66 @@
+var searchData=
+[
+ ['r',['r',['../structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a',1,'grpc_httpcli_parser']]],
+ ['random',['random',['../structgrpc__subchannel.html#aaf1f3f4c177860b9b000fea1c67e4af6',1,'grpc_subchannel']]],
+ ['raw',['raw',['../structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6',1,'grpc_byte_buffer']]],
+ ['rc',['rc',['../structnew__slice__refcount.html#ac72a90414d0021e8902d5cd9e5010f1b',1,'new_slice_refcount::rc()'],['../structnew__with__len__slice__refcount.html#a059da4cf3d67bbf0f8407872ee4c583b',1,'new_with_len_slice_refcount::rc()']]],
+ ['read_5fcb',['read_cb',['../structsecure__endpoint.html#a1abae10ca6f256c0ebc655e68f1d5a47',1,'secure_endpoint']]],
+ ['read_5fchar',['read_char',['../structgrpc__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca',1,'grpc_json_reader_vtable']]],
+ ['read_5fclosed',['read_closed',['../structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a',1,'grpc_chttp2_stream_global']]],
+ ['read_5ffd',['read_fd',['../structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86',1,'grpc_wakeup_fd_info']]],
+ ['read_5finfo',['read_info',['../structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb',1,'grpc_winsocket']]],
+ ['read_5fstaging_5fbuffer',['read_staging_buffer',['../structsecure__endpoint.html#acb9f223fa1653bb697b63e21226c2915',1,'secure_endpoint']]],
+ ['read_5fstate',['read_state',['../structgrpc__call.html#a9f26a9a6519f11d88d97cd0b1f92c440',1,'grpc_call']]],
+ ['read_5fuser_5fdata',['read_user_data',['../structsecure__endpoint.html#ae9adc2f043f1b89821897f926bd95ff5',1,'secure_endpoint']]],
+ ['read_5fwatcher',['read_watcher',['../structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27',1,'grpc_fd']]],
+ ['reading_5faction',['reading_action',['../structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885',1,'grpc_chttp2_transport']]],
+ ['reading_5fmessage',['reading_message',['../structgrpc__call.html#a9db5a5b3f304f49fef8c5ed3ce754761',1,'grpc_call']]],
+ ['readst',['readst',['../structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0',1,'grpc_fd']]],
+ ['reason_5fbytes',['reason_bytes',['../structgrpc__chttp2__rst__stream__parser.html#a254db3891d5bf60dec2f27a5ee6ef496',1,'grpc_chttp2_rst_stream_parser']]],
+ ['received_5fclose',['received_close',['../structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b',1,'grpc_chttp2_stream_parsing']]],
+ ['receiving',['receiving',['../structgrpc__call.html#a95e4aaa4d6cd6b6f1568282178ba3682',1,'grpc_call']]],
+ ['recv_5fclose_5fon_5fserver',['recv_close_on_server',['../structgrpc__op.html#af327bcd87b609572c39ca6bfe8dbd9f1',1,'grpc_op']]],
+ ['recv_5fdone_5fclosure',['recv_done_closure',['../structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c',1,'grpc_chttp2_stream_global']]],
+ ['recv_5finitial_5fmetadata',['recv_initial_metadata',['../structgrpc__op.html#a81ebfcab8db61dd485b88cafc51f2749',1,'grpc_op']]],
+ ['recv_5fmessage',['recv_message',['../structgrpc__op.html#afca6c4cc5b0c2629bb559d2037907ac1',1,'grpc_op::recv_message()'],['../uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0',1,'grpc_ioreq_data::recv_message()']]],
+ ['recv_5fmetadata',['recv_metadata',['../uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8',1,'grpc_ioreq_data']]],
+ ['recv_5fops',['recv_ops',['../structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991',1,'grpc_transport_stream_op::recv_ops()'],['../structcall__data.html#a5a77f05f0ebe7e2fa851cb29f4175fd2',1,'call_data::recv_ops()'],['../structgrpc__call.html#a77c3749f20284b1a9a836286a470a08e',1,'grpc_call::recv_ops()']]],
+ ['recv_5fstate',['recv_state',['../structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc',1,'grpc_transport_stream_op::recv_state()'],['../structgrpc__call.html#a23a473fb241cc663a16873d18690535b',1,'grpc_call::recv_state()'],['../structcall__data.html#a58e1bd0d7508078f1e2ffae518f284c9',1,'call_data::recv_state()']]],
+ ['recv_5fstatus',['recv_status',['../uniongrpc__ioreq__data.html#ab9788c1a37dea6052f004111bc67d6e7',1,'grpc_ioreq_data']]],
+ ['recv_5fstatus_5fdetails',['recv_status_details',['../uniongrpc__ioreq__data.html#acddc8869b041b695c617cb46e941859e',1,'grpc_ioreq_data']]],
+ ['recv_5fstatus_5fon_5fclient',['recv_status_on_client',['../structgrpc__op.html#a42f88554cd082ce8c66560ea24d8a8e3',1,'grpc_op']]],
+ ['ref',['ref',['../structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15',1,'grpc_connector_vtable::ref()'],['../structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527',1,'grpc_resolver_factory_vtable::ref()'],['../structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed',1,'grpc_subchannel_factory_vtable::ref()'],['../structsecure__endpoint.html#a02863c0d02a5776bee65747c5553f517',1,'secure_endpoint::ref()'],['../structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7',1,'gpr_slice_refcount::ref()']]],
+ ['refcnt',['refcnt',['../structinternal__metadata.html#af658b2849de44285d529f4aa4da956f4',1,'internal_metadata']]],
+ ['refcount',['refcount',['../structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694',1,'grpc_credentials_md_store::refcount()'],['../structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6',1,'grpc_credentials::refcount()'],['../structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19',1,'grpc_security_connector::refcount()'],['../structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae',1,'grpc_auth_context::refcount()'],['../structgrpc__server__secure__state.html#ae73c249bbe0e5c30a103fe4fa2ec1f13',1,'grpc_server_secure_state::refcount()'],['../structinternal__string.html#a9e0174af2b64a5b66e09080c92a0aec2',1,'internal_string::refcount()'],['../structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24',1,'gpr_slice::refcount()']]],
+ ['refcounted',['refcounted',['../structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102',1,'gpr_slice']]],
+ ['refresh_5ftoken',['refresh_token',['../structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb',1,'grpc_refresh_token_credentials::refresh_token()'],['../structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12',1,'grpc_auth_refresh_token::refresh_token()']]],
+ ['refs',['refs',['../structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485',1,'grpc_lb_policy::refs()'],['../structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233',1,'grpc_resolver::refs()'],['../structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69',1,'grpc_chttp2_transport::refs()'],['../structconnector.html#ab2f6962cb7eff201b6b79655d8bace00',1,'connector::refs()'],['../structsubchannel__factory.html#a32ce0e8c21b78563576c8a620251a3f5',1,'subchannel_factory::refs()'],['../structgrpc__client__config.html#a176869d426cb1799e6eeebeb9cefd7e2',1,'grpc_client_config::refs()'],['../structdns__resolver.html#ab33e01167cedc1126007318a3c71238e',1,'dns_resolver::refs()'],['../structsockaddr__resolver.html#ae6ff58914bcf9afa2399f39fdd27ad5f',1,'sockaddr_resolver::refs()'],['../structconnection.html#a4f45cf20601ceebe1381dc83f1dbf516',1,'connection::refs()'],['../structgrpc__subchannel.html#ab4a1c366594861d4aa0da8b4ec9a3475',1,'grpc_subchannel::refs()'],['../structgrpc__subchannel__call.html#a74891e108fd0a94a2915e828c2a172c5',1,'grpc_subchannel_call::refs()'],['../structmerge__args__factory.html#aae69ffa567a7a04cf4c0f9f8eba0b852',1,'merge_args_factory::refs()'],['../structgrpc__channel.html#acc936d967cd122b7b5300387e8ea0abe',1,'grpc_channel::refs()'],['../structinternal__string.html#a870bec6b963c65fedd1290747c207650',1,'internal_string::refs()'],['../structgrpc__mdctx.html#a2764b3ed2bf9e59845aa9e1f02857d25',1,'grpc_mdctx::refs()'],['../structnew__slice__refcount.html#a2baa2f77ff0fd04fe3aa6b80c573e8fe',1,'new_slice_refcount::refs()'],['../structnew__with__len__slice__refcount.html#ae68449b1a65da5e9561a4762f5601fa3',1,'new_with_len_slice_refcount::refs()'],['../structmalloc__refcount.html#adcdbbc75e835cbf6fc50025880f5e569',1,'malloc_refcount::refs()']]],
+ ['refst',['refst',['../structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1',1,'grpc_fd']]],
+ ['registered',['registered',['../structrequested__call.html#a7ee06556aae0a6e22ca157a961c484ce',1,'requested_call']]],
+ ['registered_5fcall_5fmu',['registered_call_mu',['../structgrpc__channel.html#aa59a21ba43df1a848efbc177cd5725cd',1,'grpc_channel']]],
+ ['registered_5fcalls',['registered_calls',['../structgrpc__channel.html#ac92f7c7b4dd87743f30a16aaaf91f061',1,'grpc_channel']]],
+ ['registered_5fmethod',['registered_method',['../structrequested__call.html#ae210a8bd23019d2008f1eb9ab1320eae',1,'requested_call']]],
+ ['registered_5fmethod_5fmax_5fprobes',['registered_method_max_probes',['../structchannel__data.html#aa9b814136d8be896321481e78098008b',1,'channel_data']]],
+ ['registered_5fmethod_5fslots',['registered_method_slots',['../structchannel__data.html#a707bff2830ad502cdd36ec18235f12e1',1,'channel_data']]],
+ ['registered_5fmethods',['registered_methods',['../structchannel__data.html#a0c63e5d9500bc02961af18685479fc89',1,'channel_data::registered_methods()'],['../structgrpc__server.html#addf8e1f57942da0e5f7235668c0968bd',1,'grpc_server::registered_methods()']]],
+ ['regress_5fweight',['regress_weight',['../structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d',1,'grpc_time_averaged_stats']]],
+ ['remaining_5finput',['remaining_input',['../structjson__reader__userdata.html#a3535b10b322fe1063463bbddadcbad61',1,'json_reader_userdata']]],
+ ['remaining_5fslice_5fbytes',['remaining_slice_bytes',['../structcall__data.html#a69fca2329317c8cf3d9c215334b2aa40',1,'call_data']]],
+ ['request_5fdata',['request_data',['../structgrpc__call.html#a7d8e4ea86a2539b59f762ba97652bd8d',1,'grpc_call']]],
+ ['request_5fflags',['request_flags',['../structgrpc__call.html#a43f9cd5720841b99ea69fd94aed0ee13',1,'grpc_call']]],
+ ['request_5ffreelist',['request_freelist',['../structgrpc__server.html#a70a23bf1b0e885d055f0c45382e7110a',1,'grpc_server']]],
+ ['request_5fmatcher',['request_matcher',['../structregistered__method.html#af4a01615a9970b99e38cacf58ed49da0',1,'registered_method']]],
+ ['request_5fmetadata_5fcreds',['request_metadata_creds',['../structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d',1,'grpc_channel_security_connector']]],
+ ['request_5fset',['request_set',['../structgrpc__call.html#adace21c70dcd672521c08f0465e33c95',1,'grpc_call']]],
+ ['request_5ftext',['request_text',['../structinternal__request.html#a17b242a8f7682f8438f357c5c7f05f67',1,'internal_request']]],
+ ['requested_5fcalls',['requested_calls',['../structgrpc__server.html#ac582d8e154ce4f8a326bcf3a76f235e6',1,'grpc_server']]],
+ ['requests',['requests',['../structrequest__matcher.html#a5f69adf001614b2fda3756100b3ba60d',1,'request_matcher::requests()'],['../structrequest__killer.html#ae9c50f145796c60343bdc4100a79c231',1,'request_killer::requests()']]],
+ ['resolved_5fconfig',['resolved_config',['../structdns__resolver.html#a368c90c0b364fd6b3459ca6ef25cfd6d',1,'dns_resolver']]],
+ ['resolved_5fversion',['resolved_version',['../structdns__resolver.html#aee7098ec311fd223ceb6e57e8bfdd2fc',1,'dns_resolver']]],
+ ['resolver',['resolver',['../structchannel__data.html#a8cf393ab5da1a500d6c6f8543c408682',1,'channel_data']]],
+ ['resolving',['resolving',['../structdns__resolver.html#abc4a241cfa112a6b430d39749a2f6faf',1,'dns_resolver']]],
+ ['result',['result',['../structconnector.html#a9b15773040e783143121ad19ad3582d8',1,'connector::result()'],['../structtsi__fake__handshaker.html#a7dc6f4f013c03d3aa669c3a2fb9a761c',1,'tsi_fake_handshaker::result()'],['../structtsi__ssl__handshaker.html#a12ec1007039ee18e12dee8b2fd2670b7',1,'tsi_ssl_handshaker::result()']]],
+ ['root_5fchannel_5fdata',['root_channel_data',['../structgrpc__server.html#ab9a64dbadf2655aa804caae0fbefe47d',1,'grpc_server']]],
+ ['rst_5fstream',['rst_stream',['../structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04',1,'grpc_chttp2_transport_parsing']]],
+ ['rst_5fstream_5freason',['rst_stream_reason',['../structgrpc__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2',1,'grpc_chttp2_stream_parsing']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_12.html b/doc/ref/core.internal/html/search/variables_12.html
new file mode 100644
index 0000000000..faca26f37a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_12.js b/doc/ref/core.internal/html/search/variables_12.js
new file mode 100644
index 0000000000..0bb369589a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_12.js
@@ -0,0 +1,121 @@
+var searchData=
+[
+ ['saw_5frst_5fstream',['saw_rst_stream',['../structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b',1,'grpc_chttp2_stream_parsing']]],
+ ['sc',['sc',['../structgrpc__server__secure__state.html#ad912fd9fa1531a5f016f83e49c768512',1,'grpc_server_secure_state']]],
+ ['scheme',['scheme',['../structgrpc__uri.html#a6163de89ece765552254810174fdfc32',1,'grpc_uri::scheme()'],['../structcall__data.html#aa63048a662dd766734726542dba0f27a',1,'call_data::scheme()'],['../structchannel__data.html#ac7a621172aad5d1876691fb987a670e6',1,'channel_data::scheme()'],['../structregistered__resolver.html#a8b53ba24e4ee032d66224f3588bceaba',1,'registered_resolver::scheme()']]],
+ ['scope',['scope',['../structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f',1,'grpc_service_account_credentials']]],
+ ['secure_5fendpoint',['secure_endpoint',['../structgrpc__secure__transport__setup.html#ae7e2e65bef91a9804fe95a47c4bfb8cb',1,'grpc_secure_transport_setup']]],
+ ['secure_5fpeer_5fname',['secure_peer_name',['../structgrpc__httpcli__ssl__channel__security__connector.html#a12192010723cff00bb4e87c9704ad768',1,'grpc_httpcli_ssl_channel_security_connector']]],
+ ['security_5fconnector',['security_connector',['../structchannel__data.html#a78473c478d6fbbb716fb77864c94efd6',1,'channel_data::security_connector()'],['../structchannel__data.html#a524d21c79ca4cf1ff1833c50197a9f1b',1,'channel_data::security_connector()'],['../structconnector.html#a83d8a5c7e3b72cdee46c36cca81d5cb0',1,'connector::security_connector()'],['../structsubchannel__factory.html#a9b700fff25d9d9c6739dfbed18ce5e2b',1,'subchannel_factory::security_connector()']]],
+ ['security_5fcontext_5fset',['security_context_set',['../structcall__data.html#a74f306e56988bd7e20d0116829ce4128',1,'call_data']]],
+ ['seen_5fauthority',['seen_authority',['../structcall__data.html#a5f3505d88df4cba5a1ed776c46b88b7e',1,'call_data']]],
+ ['seen_5fgoaway',['seen_goaway',['../structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829',1,'grpc_chttp2_transport_global']]],
+ ['seen_5fpath',['seen_path',['../structcall__data.html#acb1130d03f1fd0db1cf0d8d1fc10866e',1,'call_data']]],
+ ['seen_5fpost',['seen_post',['../structcall__data.html#aea6244f4fd9d2e7ccb5615b9f5ea5fe0',1,'call_data']]],
+ ['seen_5fscheme',['seen_scheme',['../structcall__data.html#a502cf8ae568f38ae501877458e399796',1,'call_data']]],
+ ['seen_5fte_5ftrailers',['seen_te_trailers',['../structcall__data.html#a54d050afd0c9cc8d05a561034602f280',1,'call_data']]],
+ ['selected',['selected',['../structpick__first__lb__policy.html#ad4fd8d1ef626d9c42f631317921634ef',1,'pick_first_lb_policy']]],
+ ['send_5fclosed',['send_closed',['../structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0',1,'grpc_chttp2_stream_writing']]],
+ ['send_5fdeadline',['send_deadline',['../structgrpc__call.html#a5de7c68ffa6939ff2e1c43c4cd418315',1,'grpc_call']]],
+ ['send_5fdone_5fclosure',['send_done_closure',['../structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905',1,'grpc_chttp2_stream_global']]],
+ ['send_5fgoaway',['send_goaway',['../structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704',1,'grpc_transport_op']]],
+ ['send_5finitial_5fmetadata',['send_initial_metadata',['../structgrpc__op.html#a8e6202e19130ecb872de211a95dcee83',1,'grpc_op::send_initial_metadata()'],['../structgrpc__call.html#a96ac69dc425de5924edd871f93338112',1,'grpc_call::send_initial_metadata()']]],
+ ['send_5finitial_5fmetadata_5fcount',['send_initial_metadata_count',['../structgrpc__call.html#abb6adc9d5f666a056c89172f506fcc3d',1,'grpc_call']]],
+ ['send_5fmessage',['send_message',['../structgrpc__op.html#a3b6c1b3456306a802f6eb0e3e8d0e434',1,'grpc_op::send_message()'],['../uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45',1,'grpc_ioreq_data::send_message()']]],
+ ['send_5fmetadata',['send_metadata',['../uniongrpc__ioreq__data.html#a4b9337cc24e8b42caa5c1502be083952',1,'grpc_ioreq_data']]],
+ ['send_5fops',['send_ops',['../structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691',1,'grpc_transport_stream_op::send_ops()'],['../structgrpc__call.html#ab17467642afa4f6c1c27bb9013093592',1,'grpc_call::send_ops()']]],
+ ['send_5fping',['send_ping',['../structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286',1,'grpc_transport_op']]],
+ ['send_5fstatus',['send_status',['../uniongrpc__ioreq__data.html#a3711b0c39c293284a4e4897f74c974ab',1,'grpc_ioreq_data']]],
+ ['send_5fstatus_5ffrom_5fserver',['send_status_from_server',['../structgrpc__op.html#afe7b3ae8f4c495a187f155a5fd6956bb',1,'grpc_op']]],
+ ['sending',['sending',['../structgrpc__call.html#a7d64e836e0421c8129ac75e477271ef8',1,'grpc_call']]],
+ ['sent_5fauthority',['sent_authority',['../structcall__data.html#aab616ade799853e16e5e35ee3a16ffbc',1,'call_data']]],
+ ['sent_5fgoaway',['sent_goaway',['../structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8',1,'grpc_chttp2_transport_global']]],
+ ['sent_5finitial_5fmetadata',['sent_initial_metadata',['../structcall__data.html#aded44c7ecaa861e2a4a39380b172368a',1,'call_data']]],
+ ['sent_5flocal_5fsettings',['sent_local_settings',['../structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d',1,'grpc_chttp2_transport_global']]],
+ ['sent_5fstatus',['sent_status',['../structcall__data.html#a8b65de65391e41536ccf959f6b6a751d',1,'call_data']]],
+ ['server',['server',['../structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2',1,'grpc_endpoint_pair::server()'],['../structgrpc__server__secure__state.html#a81df8ea928391a76a30197cce0235455',1,'grpc_server_secure_state::server()'],['../structrequested__call.html#ad3fbf352005312d002348e26038d8fb0',1,'requested_call::server()'],['../structchannel__data.html#a52e6bd3f94f7bc6b7a5696532f747d8c',1,'channel_data::server()']]],
+ ['server_5fon_5frecv',['server_on_recv',['../structcall__data.html#aa02e9d60f24965068bc073ec4870bcb4',1,'call_data']]],
+ ['server_5fregistered_5fmethod',['server_registered_method',['../structchannel__registered__method.html#a3d7e5ca9b211c76e489ddc6602da3509',1,'channel_registered_method']]],
+ ['service_5furl',['service_url',['../structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb',1,'grpc_service_account_jwt_access_credentials::service_url()'],['../structgrpc__composite__credentials__metadata__context.html#a7041c3ef3e78168d24699294470422e4',1,'grpc_composite_credentials_metadata_context::service_url()']]],
+ ['set_5faccept_5fstream',['set_accept_stream',['../structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8',1,'grpc_transport_op']]],
+ ['set_5faccept_5fstream_5fuser_5fdata',['set_accept_stream_user_data',['../structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f',1,'grpc_transport_op']]],
+ ['set_5ffalse',['set_false',['../structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6',1,'grpc_json_reader_vtable']]],
+ ['set_5fkey',['set_key',['../structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7',1,'grpc_json_reader_vtable']]],
+ ['set_5fnull',['set_null',['../structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff',1,'grpc_json_reader_vtable']]],
+ ['set_5fnumber',['set_number',['../structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596',1,'grpc_json_reader_vtable']]],
+ ['set_5fstate_5fmu',['set_state_mu',['../structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30',1,'grpc_fd']]],
+ ['set_5fstring',['set_string',['../structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4',1,'grpc_json_reader_vtable']]],
+ ['set_5ftrue',['set_true',['../structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e',1,'grpc_json_reader_vtable']]],
+ ['set_5fvalue',['set_value',['../uniongrpc__ioreq__data.html#aedb6839ded1488cf3bd6905345fba0d2',1,'grpc_ioreq_data']]],
+ ['settings',['settings',['../structgrpc__chttp2__transport__global.html#ab25f0c4b45d1c12d29eaf856e7b1b4a7',1,'grpc_chttp2_transport_global::settings()'],['../structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31',1,'grpc_chttp2_transport_parsing::settings()'],['../structgrpc__chttp2__transport__parsing.html#a629d17756af481ff81ea339acb751751',1,'grpc_chttp2_transport_parsing::settings()']]],
+ ['settings_5fack_5freceived',['settings_ack_received',['../structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586',1,'grpc_chttp2_transport_parsing']]],
+ ['settings_5fupdated',['settings_updated',['../structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013',1,'grpc_chttp2_transport_parsing']]],
+ ['severity',['severity',['../structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc',1,'gpr_log_func_args']]],
+ ['shard_5fqueue_5findex',['shard_queue_index',['../structshard__type.html#a2024ca8c92ce9d378aa5aa551126a9c1',1,'shard_type']]],
+ ['shutdown',['shutdown',['../structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6',1,'grpc_lb_policy_vtable::shutdown()'],['../structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae',1,'grpc_resolver_vtable::shutdown()'],['../structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6',1,'grpc_endpoint_vtable::shutdown()'],['../structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a',1,'grpc_fd::shutdown()'],['../structpick__first__lb__policy.html#a2818821a8daa60e92637357811aea7d4',1,'pick_first_lb_policy::shutdown()'],['../structgrpc__completion__queue.html#a4d6f10502b79874124dc63169f4366d6',1,'grpc_completion_queue::shutdown()']]],
+ ['shutdown_5fcalled',['shutdown_called',['../structgrpc__completion__queue.html#a81ae0a3f77b40e2a21370e641e9f73e4',1,'grpc_completion_queue']]],
+ ['shutdown_5fclosure',['shutdown_closure',['../structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a',1,'grpc_winsocket']]],
+ ['shutdown_5fclosures',['shutdown_closures',['../structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa',1,'grpc_fd']]],
+ ['shutdown_5fdone_5farg',['shutdown_done_arg',['../structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d',1,'grpc_pollset']]],
+ ['shutdown_5fdone_5fcb',['shutdown_done_cb',['../structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7',1,'grpc_pollset']]],
+ ['shutdown_5fflag',['shutdown_flag',['../structgrpc__server.html#aac6a14f451724678ba63c9f9a153dc33',1,'grpc_server']]],
+ ['shutdown_5fpublished',['shutdown_published',['../structgrpc__server.html#a6d04ab898c0d58f111975211c8d202ba',1,'grpc_server']]],
+ ['shutdown_5ftags',['shutdown_tags',['../structgrpc__server.html#ab0ca72c038ccce56c33539dc5f321864',1,'grpc_server']]],
+ ['shutting_5fdown',['shutting_down',['../structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c',1,'grpc_pollset']]],
+ ['signature',['signature',['../structverifier__cb__ctx.html#a78cd1bf7eb4ac6484ceeaf778ad6e2df',1,'verifier_cb_ctx']]],
+ ['signed_5fdata',['signed_data',['../structverifier__cb__ctx.html#a65de5acf17b58f8a142466750e1b558b',1,'verifier_cb_ctx']]],
+ ['simple',['simple',['../structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f',1,'grpc_chttp2_transport_parsing']]],
+ ['size',['size',['../structtsi__fake__frame.html#a59d8fa5e8e076fca91b8c1fa1572d9cf',1,'tsi_fake_frame']]],
+ ['sizeof_5fcall_5fdata',['sizeof_call_data',['../structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc',1,'grpc_channel_filter']]],
+ ['sizeof_5fchannel_5fdata',['sizeof_channel_data',['../structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4',1,'grpc_channel_filter']]],
+ ['sizeof_5fstream',['sizeof_stream',['../structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f',1,'grpc_transport_vtable']]],
+ ['slice',['slice',['../structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e',1,'grpc_mdstr::slice()'],['../structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee',1,'grpc_stream_op::slice()'],['../structshutdown__cleanup__args.html#ac171669ceb843c70885925c549867e5c',1,'shutdown_cleanup_args::slice()'],['../structinternal__string.html#aafd8da96270b4377198d99bc51f2ac9b',1,'internal_string::slice()']]],
+ ['slice_5fbuffer',['slice_buffer',['../structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae',1,'grpc_byte_buffer']]],
+ ['slices',['slices',['../structcall__data.html#a765c539d2737d435cf434241edda82f9',1,'call_data::slices()'],['../structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba',1,'gpr_slice_buffer::slices()']]],
+ ['socket',['socket',['../structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d',1,'grpc_winsocket']]],
+ ['sopb',['sopb',['../structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120',1,'grpc_chttp2_stream_writing']]],
+ ['ssl',['ssl',['../structtsi__ssl__handshaker.html#a1dbdafd7f92dad04fe09c4648e5ee952',1,'tsi_ssl_handshaker::ssl()'],['../structtsi__ssl__frame__protector.html#a64129d003fe330c56c39496361bd9e5f',1,'tsi_ssl_frame_protector::ssl()']]],
+ ['ssl_5fcontext',['ssl_context',['../structtsi__ssl__client__handshaker__factory.html#a455d6ff556cd36c93ab91a0ef013ed9a',1,'tsi_ssl_client_handshaker_factory']]],
+ ['ssl_5fcontext_5fcount',['ssl_context_count',['../structtsi__ssl__server__handshaker__factory.html#a6aa4d962f3466b7cb16abd04b0266c2c',1,'tsi_ssl_server_handshaker_factory']]],
+ ['ssl_5fcontext_5fx509_5fsubject_5fnames',['ssl_context_x509_subject_names',['../structtsi__ssl__server__handshaker__factory.html#a9877f06340c6acaa2db8deb38ac03209',1,'tsi_ssl_server_handshaker_factory']]],
+ ['ssl_5fcontexts',['ssl_contexts',['../structtsi__ssl__server__handshaker__factory.html#a31163c22828f9e7467a4cf8ec6e79244',1,'tsi_ssl_server_handshaker_factory']]],
+ ['start',['start',['../structlistener.html#a5fb6be7cbe102bcb09c1d26db4a26fb2',1,'listener']]],
+ ['start_5ftransport_5fop',['start_transport_op',['../structgrpc__channel__filter.html#aa3508daf2442c8bc11529d0295798819',1,'grpc_channel_filter']]],
+ ['start_5ftransport_5fstream_5fop',['start_transport_stream_op',['../structgrpc__channel__filter.html#a089c1e5997b329703ccaaf633722a6c5',1,'grpc_channel_filter']]],
+ ['started_5fpicking',['started_picking',['../structpick__first__lb__policy.html#a8eff3397ca43852b04a3be5b5e03a6ce',1,'pick_first_lb_policy']]],
+ ['state',['state',['../structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305',1,'grpc_httpcli_parser::state()'],['../structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245',1,'grpc_json_reader::state()'],['../structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab',1,'grpc_chttp2_data_parser::state()'],['../structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589',1,'grpc_chttp2_goaway_parser::state()'],['../structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4',1,'grpc_chttp2_settings_parser::state()'],['../structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4',1,'grpc_chttp2_hpack_parser::state()'],['../structlb__policy__connectivity__watcher.html#ac37e7a5f39e7f99381837601b8d0d7d5',1,'lb_policy_connectivity_watcher::state()'],['../structcall__data.html#a394da9a4876df32b91b8891303695a5d',1,'call_data::state()'],['../structstate__watcher.html#a3a1c09d1740e9cc49f81e4ac4f8bf4bd',1,'state_watcher::state()'],['../structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9',1,'gpr_event::state()'],['../structgpr__cmdline.html#acb165b9b6f98c942dd65d66f1c95a806',1,'gpr_cmdline::state()']]],
+ ['state_5fmu',['state_mu',['../structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551',1,'grpc_winsocket']]],
+ ['state_5ftracker',['state_tracker',['../structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857',1,'grpc_chttp2_transport::state_tracker()'],['../structchannel__data.html#ab56a403060ce2596d204cc024baea99d',1,'channel_data::state_tracker()'],['../structpick__first__lb__policy.html#a4b686da7cdddd0893e3d36c213bd274a',1,'pick_first_lb_policy::state_tracker()'],['../structgrpc__subchannel.html#af9e337eebe13100918b0c1178233d64d',1,'grpc_subchannel::state_tracker()']]],
+ ['static_5fents',['static_ents',['../structgrpc__chttp2__hptbl.html#afe1cceb7c0988d6c29df983ad3764344',1,'grpc_chttp2_hptbl']]],
+ ['stats',['stats',['../structshard__type.html#a700e0afbcbed737607bac82970c61601',1,'shard_type']]],
+ ['status',['status',['../structgrpc__op.html#ae0d5a9db463391c0897914ef2d016b25',1,'grpc_op::status()'],['../structgrpc__op.html#a70d62415f6768533c2190e53f1c5baf4',1,'grpc_op::status()'],['../structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243',1,'grpc_httpcli_response::status()'],['../structcall__data.html#af1e73bf35274521a98f39316fddf3deb',1,'call_data::status()'],['../structchannel__data.html#aed19c41ead3b51daafdbf78a983c1877',1,'channel_data::status()'],['../structgrpc__call.html#ac4f49d27f54bd1436da3ad7cfe662639',1,'grpc_call::status()']]],
+ ['status_5fdetails',['status_details',['../structgrpc__op.html#ae460836040d79eb2bd0a6d581b36c461',1,'grpc_op::status_details()'],['../structgrpc__op.html#ab993dfc7b33c61f06f26a4efc0aefca6',1,'grpc_op::status_details()']]],
+ ['status_5fdetails_5fcapacity',['status_details_capacity',['../structgrpc__op.html#a6cacd1d5311683ee077931c94a9dd6e9',1,'grpc_op']]],
+ ['status_5fkey',['status_key',['../structchannel__data.html#aa193724e83bed60e8f8f1a7a1cb0ca0f',1,'channel_data']]],
+ ['status_5flink',['status_link',['../structgrpc__call.html#acb6f13c9a524b29da7f4a760332dea6d',1,'grpc_call']]],
+ ['status_5fnot_5ffound',['status_not_found',['../structchannel__data.html#aa61798f024b686a60598011b688a5302',1,'channel_data']]],
+ ['status_5fok',['status_ok',['../structchannel__data.html#a5d2922163981387d63fcc086acc40bc1',1,'channel_data']]],
+ ['str',['str',['../structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c',1,'grpc_chttp2_hpack_parser_string::str()'],['../structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe',1,'grpc_chttp2_hpack_parser::str()']]],
+ ['str_5fgrpc_5ftimeout',['str_grpc_timeout',['../structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c',1,'grpc_chttp2_transport_parsing']]],
+ ['stream_5fid',['stream_id',['../structframer__state.html#a568da28436bbdcbf1a1eb321cf064651',1,'framer_state']]],
+ ['strgot',['strgot',['../structgrpc__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6',1,'grpc_chttp2_hpack_parser']]],
+ ['string',['string',['../structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8',1,'grpc_arg::string()'],['../structjson__reader__userdata.html#aab7c5997934c699371c79b5a613a877e',1,'json_reader_userdata::string()']]],
+ ['string_5fadd_5fchar',['string_add_char',['../structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19',1,'grpc_json_reader_vtable']]],
+ ['string_5fadd_5futf32',['string_add_utf32',['../structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612',1,'grpc_json_reader_vtable']]],
+ ['string_5fclear',['string_clear',['../structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303',1,'grpc_json_reader_vtable']]],
+ ['string_5flen',['string_len',['../structjson__writer__userdata.html#a321162f4c1f6c7cb60676fa6a1eb3c18',1,'json_writer_userdata']]],
+ ['string_5fptr',['string_ptr',['../structjson__reader__userdata.html#a6afccb66b4dac7cb2db6ef4c8d0e073b',1,'json_reader_userdata']]],
+ ['strlen',['strlen',['../structgrpc__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab',1,'grpc_chttp2_hpack_parser']]],
+ ['strs',['strs',['../structgpr__strvec.html#a6c928c402061e0a51346155669029795',1,'gpr_strvec']]],
+ ['strtab',['strtab',['../structgrpc__mdctx.html#ad2eeb34c05c392c75ca79c62e0a91644',1,'grpc_mdctx']]],
+ ['strtab_5fcapacity',['strtab_capacity',['../structgrpc__mdctx.html#a1ac53c8c3069ff245cd33243094b21af',1,'grpc_mdctx']]],
+ ['strtab_5fcount',['strtab_count',['../structgrpc__mdctx.html#a19a486374bb3cc0c61ad53868423bce5',1,'grpc_mdctx']]],
+ ['sub',['sub',['../structgrpc__jwt__claims.html#a298ff2d584fdee85bd9de0b52c72a1bd',1,'grpc_jwt_claims']]],
+ ['subchannel',['subchannel',['../structconnection.html#ac46b9b593d187793cf2685550b615dc7',1,'connection::subchannel()'],['../structstate__watcher.html#ab1de71efe9c462d4692acedd9da69db3',1,'state_watcher::subchannel()'],['../structwaiting__for__connect.html#a6992a59790cdc05659227b1ea7b8650d',1,'waiting_for_connect::subchannel()']]],
+ ['subchannel_5fcall',['subchannel_call',['../structcall__data.html#a68077448625c53fa5dab0a717c0a77b2',1,'call_data']]],
+ ['subchannel_5ffactory',['subchannel_factory',['../structdns__resolver.html#ad80a689714c3c2d68bba566d1c5ae236',1,'dns_resolver::subchannel_factory()'],['../structsockaddr__resolver.html#ae68e3b93926c4d132ca5c05a752b1e59',1,'sockaddr_resolver::subchannel_factory()']]],
+ ['subchannels',['subchannels',['../structpick__first__lb__policy.html#a359affbda6360c97745389a1c036afbf',1,'pick_first_lb_policy']]],
+ ['success',['success',['../structgrpc__event.html#a99d4215e5df50869af320b1cca5540db',1,'grpc_event::success()'],['../structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0',1,'grpc_iomgr_closure::success()'],['../structcompute__engine__detector.html#a952441665ae667415c4eed612ec5f25b',1,'compute_engine_detector::success()'],['../structcompleted__request.html#a5512a2663c0d87f40b1e493b0bf9dd6b',1,'completed_request::success()'],['../structreqinfo__master.html#a638b15223a3d12acea6adf081d2a43a9',1,'reqinfo_master::success()'],['../structstate__watcher.html#a0e2c034f2582615aa9c6949879289cc2',1,'state_watcher::success()']]],
+ ['sum',['sum',['../structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a',1,'gpr_histogram']]],
+ ['sum_5fof_5fsquares',['sum_of_squares',['../structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1',1,'gpr_histogram']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_13.html b/doc/ref/core.internal/html/search/variables_13.html
new file mode 100644
index 0000000000..3e6377437e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_13.js b/doc/ref/core.internal/html/search/variables_13.js
new file mode 100644
index 0000000000..998d5a842f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_13.js
@@ -0,0 +1,33 @@
+var searchData=
+[
+ ['table',['table',['../structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17',1,'grpc_chttp2_hpack_parser']]],
+ ['table_5felem_5fsize',['table_elem_size',['../structgrpc__chttp2__hpack__compressor.html#a067f49c14e2c169678f44c10a7e4ee2e',1,'grpc_chttp2_hpack_compressor']]],
+ ['table_5felems',['table_elems',['../structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6',1,'grpc_chttp2_hpack_compressor']]],
+ ['table_5fsize',['table_size',['../structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425',1,'grpc_chttp2_hpack_compressor']]],
+ ['tag',['tag',['../structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201',1,'grpc_event::tag()'],['../structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e',1,'grpc_cq_completion::tag()'],['../structstate__watcher.html#a67d44afd79ad20ec97e2e43f538f6d77',1,'state_watcher::tag()'],['../structrequested__call.html#abcebc67ebdd3f7230b72cbb324049ff4',1,'requested_call::tag()'],['../structshutdown__tag.html#a632bfe333648e7440bf13caa5eaa48c0',1,'shutdown_tag::tag()']]],
+ ['tail',['tail',['../structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620',1,'grpc_chttp2_stream_list::tail()'],['../structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193',1,'grpc_mdelem_list::tail()']]],
+ ['tail_5fremote_5findex',['tail_remote_index',['../structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893',1,'grpc_chttp2_hpack_compressor']]],
+ ['target',['target',['../structpending__pick.html#aa395cbb07c193eaa41d0463f46067fec',1,'pending_pick::target()'],['../structwaiting__for__connect.html#afa5ba6604f746da394b505f116e764f6',1,'waiting_for_connect::target()'],['../structgrpc__channel.html#ac84ed7ccb6f221068ee55b5e6c073543',1,'grpc_channel::target()']]],
+ ['target_5fconfig',['target_config',['../structdns__resolver.html#a757b9b42d89d961103798397c2cddefb',1,'dns_resolver::target_config()'],['../structsockaddr__resolver.html#ad9d11ab81955963bff8db90903241efa',1,'sockaddr_resolver::target_config()']]],
+ ['target_5fname',['target_name',['../structgrpc__ssl__channel__security__connector.html#ac86e0e283bad7b35d30cec32ed042a5b',1,'grpc_ssl_channel_security_connector']]],
+ ['target_5fsettings',['target_settings',['../structgrpc__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528',1,'grpc_chttp2_settings_parser']]],
+ ['tcp',['tcp',['../structgrpc__server__secure__state.html#a8c4788f633b14cc2d49c26d9172b0b69',1,'grpc_server_secure_state']]],
+ ['tcp_5fendpoint',['tcp_endpoint',['../structtcp__endpoint__list.html#a1de9aaa649c6d84c81c676171676b862',1,'tcp_endpoint_list']]],
+ ['te_5ftrailers',['te_trailers',['../structcall__data.html#a8cfc1a2d2dab43a5bddc26df4801721b',1,'call_data::te_trailers()'],['../structchannel__data.html#a141ad0e139c47b491a219ad68b263c2b',1,'channel_data::te_trailers()']]],
+ ['temp',['temp',['../structhuff__out.html#a29fa27e52be848917a68702c97e75d3b',1,'huff_out']]],
+ ['temp_5flength',['temp_length',['../structhuff__out.html#a47f24dd352a07a9a7124319d8222090e',1,'huff_out']]],
+ ['timeout_5fkey_5fstr',['timeout_key_str',['../structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1',1,'grpc_chttp2_hpack_compressor']]],
+ ['token_5fexpiration',['token_expiration',['../structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13',1,'grpc_oauth2_token_fetcher_credentials']]],
+ ['token_5flifetime',['token_lifetime',['../structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae',1,'grpc_service_account_credentials']]],
+ ['top',['top',['../structjson__reader__userdata.html#ac4f75823aab9f46c2541424046742c13',1,'json_reader_userdata']]],
+ ['trace_5fid',['trace_id',['../structcensus__context.html#af2f543e5253035ca31b883c23453c918',1,'census_context']]],
+ ['trailing_5fmetadata',['trailing_metadata',['../structgrpc__op.html#a521b48faec3b3f7646a877055f118d47',1,'grpc_op::trailing_metadata()'],['../structgrpc__op.html#abb4d84434a0b74283c8b5d8d6501baf1',1,'grpc_op::trailing_metadata()']]],
+ ['trailing_5fmetadata_5fcount',['trailing_metadata_count',['../structgrpc__op.html#a4b9454278c105e08d54142adff37b5ab',1,'grpc_op']]],
+ ['transport',['transport',['../structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9',1,'grpc_connect_out_args::transport()'],['../structconnected__channel__channel__data.html#a7f95ecc760083ad9d72bada84f33ca6b',1,'connected_channel_channel_data::transport()']]],
+ ['triggered',['triggered',['../structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f',1,'grpc_alarm']]],
+ ['tsi_5ftracing_5fenabled',['tsi_tracing_enabled',['../transport__security_8h.html#a4e3d547c54325370492151543325e23c',1,'tsi_tracing_enabled():&#160;transport_security.c'],['../transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c',1,'tsi_tracing_enabled():&#160;transport_security.c'],['../transport__security_8c.html#a4e3d547c54325370492151543325e23c',1,'tsi_tracing_enabled():&#160;transport_security.c']]],
+ ['tv_5fnsec',['tv_nsec',['../structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268',1,'gpr_timespec']]],
+ ['tv_5fsec',['tv_sec',['../structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e',1,'gpr_timespec']]],
+ ['typ',['typ',['../structjose__header.html#a62661b991df1e33a832d0bf7449ab2d4',1,'jose_header']]],
+ ['type',['type',['../structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8',1,'grpc_byte_buffer::type()'],['../structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4',1,'grpc_arg::type()'],['../structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7',1,'grpc_event::type()'],['../structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b',1,'grpc_credentials::type()'],['../structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c',1,'grpc_server_credentials::type()'],['../structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52',1,'grpc_auth_json_key::type()'],['../structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e',1,'grpc_auth_refresh_token::type()'],['../structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e',1,'grpc_json::type()'],['../structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580',1,'grpc_stream_op::type()'],['../structrequested__call.html#a45da072fe9d7a970fe7880d9d2671e4c',1,'requested_call::type()'],['../structarg.html#ac42f6b11ab4ceee17be7871636e06dca',1,'arg::type()']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_14.html b/doc/ref/core.internal/html/search/variables_14.html
new file mode 100644
index 0000000000..4e0b24b3ad
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_14.js b/doc/ref/core.internal/html/search/variables_14.js
new file mode 100644
index 0000000000..afff2c28d7
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_14.js
@@ -0,0 +1,19 @@
+var searchData=
+[
+ ['unannounced_5fincoming_5fwindow',['unannounced_incoming_window',['../structgrpc__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9',1,'grpc_chttp2_stream_global']]],
+ ['unicode_5fchar',['unicode_char',['../structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562',1,'grpc_json_reader']]],
+ ['unicode_5fhigh_5fsurrogate',['unicode_high_surrogate',['../structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1',1,'grpc_json_reader']]],
+ ['unprotect',['unprotect',['../structtsi__frame__protector__vtable.html#aa4c1c5ad2e0299585050a3d11247e91e',1,'tsi_frame_protector_vtable']]],
+ ['unprotect_5fframe',['unprotect_frame',['../structtsi__fake__frame__protector.html#ac3e7c2d5e9b3f81c75772f328243db00',1,'tsi_fake_frame_protector']]],
+ ['unref',['unref',['../structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9',1,'grpc_connector_vtable::unref()'],['../structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e',1,'grpc_resolver_factory_vtable::unref()'],['../structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a',1,'grpc_subchannel_factory_vtable::unref()'],['../structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00',1,'gpr_slice_refcount::unref()']]],
+ ['unregistered_5frequest_5fmatcher',['unregistered_request_matcher',['../structgrpc__server.html#a8114e3dda6d6f5ec9257b5a5343b9821',1,'grpc_server']]],
+ ['unused',['unused',['../structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c',1,'grpc_pollset_set::unused()'],['../structcall__data.html#ab6ed893c5caa5b86338edf8b97bd77d8',1,'call_data::unused()'],['../structconnected__channel__call__data.html#ab7364ac5f5abf2c67075fd09e829cffd',1,'connected_channel_call_data::unused()'],['../structchannel__data.html#af5333a0c2b420d203cbe8a1a5e270efb',1,'channel_data::unused()']]],
+ ['url_5fscheme',['url_scheme',['../structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca',1,'grpc_security_connector']]],
+ ['use_5fssl',['use_ssl',['../structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3',1,'grpc_httpcli_request::use_ssl()'],['../structinternal__request.html#a0d17604038fc0b611296561b66cb46c5',1,'internal_request::use_ssl()']]],
+ ['user_5fagent',['user_agent',['../structcall__data.html#ab58bbaa2f8f054f606d919abce3f4716',1,'call_data::user_agent()'],['../structchannel__data.html#a9fd48ef186ac5f36381e9e873a1e2602',1,'channel_data::user_agent()']]],
+ ['user_5fcb',['user_cb',['../structverifier__cb__ctx.html#acb4e5c28f3b0d9270a28dc0c730123fa',1,'verifier_cb_ctx']]],
+ ['user_5fdata',['user_data',['../uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331',1,'grpc_ioreq_data::user_data()'],['../structinternal__request.html#aa47b4bb5697930b25831fbc2fc9ae16e',1,'internal_request::user_data()'],['../structgrpc__credentials__metadata__request.html#afba92ff6e76a2b87d1b4b6e0d8531b87',1,'grpc_credentials_metadata_request::user_data()'],['../structgrpc__composite__credentials__metadata__context.html#aa7ca5d9fca93b8a99acc2119f36b8ce6',1,'grpc_composite_credentials_metadata_context::user_data()'],['../structverifier__cb__ctx.html#a9ceed8c4de3dcf252fdaf7347c0b93a8',1,'verifier_cb_ctx::user_data()'],['../structgrpc__secure__transport__setup.html#a8c39ff96c74f4adc29fc0ba7e79f849c',1,'grpc_secure_transport_setup::user_data()'],['../structcompleted__request.html#a0f293e59a3e7c87f6cc59694a9b567ac',1,'completed_request::user_data()'],['../structreqinfo__master.html#aeaa50a715a0fc681a87daae3e3b72c9d',1,'reqinfo_master::user_data()'],['../structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef',1,'internal_metadata::user_data()'],['../structnew__slice__refcount.html#a0476a0932ddf32f1cdd04cdd585fda68',1,'new_slice_refcount::user_data()'],['../structnew__with__len__slice__refcount.html#a47821f141ea3ddf0c13dd7d5bed35dda',1,'new_with_len_slice_refcount::user_data()']]],
+ ['user_5fdestroy',['user_destroy',['../structnew__slice__refcount.html#abe796cd680fb136eff9fa49f96bbd3e8',1,'new_slice_refcount::user_destroy()'],['../structnew__with__len__slice__refcount.html#ac8dc1c24ebd5fee4f034679b05177755',1,'new_with_len_slice_refcount::user_destroy()']]],
+ ['user_5flength',['user_length',['../structnew__with__len__slice__refcount.html#ab9f2fc163ee3e185eda913129ffb4546',1,'new_with_len_slice_refcount']]],
+ ['userdata',['userdata',['../structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc',1,'grpc_json_reader::userdata()'],['../structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31',1,'grpc_json_writer::userdata()']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_15.html b/doc/ref/core.internal/html/search/variables_15.html
new file mode 100644
index 0000000000..d0520f25dc
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_15.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_15.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_15.js b/doc/ref/core.internal/html/search/variables_15.js
new file mode 100644
index 0000000000..83351bcc03
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_15.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['value',['value',['../structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e',1,'grpc_auth_property::value()'],['../structgrpc__arg.html#ad2be4ee606c82fc084af1661d30f6f7f',1,'grpc_arg::value()'],['../structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36',1,'grpc_metadata::value()'],['../structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179',1,'census_stat::value()'],['../structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa',1,'grpc_httpcli_header::value()'],['../structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841',1,'grpc_credentials_md::value()'],['../structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6',1,'tsi_peer_property::value()'],['../structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4',1,'grpc_call_context_element::value()'],['../structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44',1,'grpc_json::value()'],['../structgrpc__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327',1,'grpc_chttp2_settings_parser::value()'],['../structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e',1,'grpc_chttp2_hpack_parser::value()'],['../structgrpc__chttp2__hpack__parser.html#a5291e99e19d95c5e130b62958750adef',1,'grpc_chttp2_hpack_parser::value()'],['../structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1',1,'grpc_mdelem::value()'],['../structinternal__metadata.html#abef02b106cd8bcee80c9d5ee375fe537',1,'internal_metadata::value()'],['../structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a',1,'gpr_stats_counter::value()'],['../structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1',1,'gpr_gcc_thread_local::value()'],['../structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798',1,'gpr_msvc_thread_local::value()'],['../structarg.html#a688d0385c96e5d5d7cb1a7342f9b4497',1,'arg::value()'],['../hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d',1,'value():&#160;hpack_table.c']]],
+ ['value_5flength',['value_length',['../structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101',1,'grpc_auth_property::value_length()'],['../structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f',1,'grpc_metadata::value_length()']]],
+ ['values',['values',['../structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824',1,'grpc_chttp2_stream_map']]],
+ ['verifier',['verifier',['../structverifier__cb__ctx.html#ac60d07b1cc9322f01f2f76f462188737',1,'verifier_cb_ctx']]],
+ ['version',['version',['../structstate__watcher.html#adb6d0b4ffa782421e6f0898f8b13d4e8',1,'state_watcher']]],
+ ['vtable',['vtable',['../structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e',1,'grpc_credentials::vtable()'],['../structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63',1,'grpc_server_credentials::vtable()'],['../structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1',1,'grpc_security_connector::vtable()'],['../structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619',1,'tsi_frame_protector::vtable()'],['../structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958',1,'tsi_handshaker::vtable()'],['../structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec',1,'grpc_connector::vtable()'],['../structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a',1,'grpc_lb_policy::vtable()'],['../structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386',1,'grpc_resolver::vtable()'],['../structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3',1,'grpc_resolver_factory::vtable()'],['../structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51',1,'grpc_subchannel_factory::vtable()'],['../structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7',1,'grpc_endpoint::vtable()'],['../structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887',1,'grpc_pollset::vtable()'],['../structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5',1,'grpc_json_reader::vtable()'],['../structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b',1,'grpc_json_writer::vtable()'],['../structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007',1,'grpc_transport::vtable()']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_16.html b/doc/ref/core.internal/html/search/variables_16.html
new file mode 100644
index 0000000000..2df8937cf1
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_16.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_16.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_16.js b/doc/ref/core.internal/html/search/variables_16.js
new file mode 100644
index 0000000000..70a11df302
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_16.js
@@ -0,0 +1,30 @@
+var searchData=
+[
+ ['waiters',['waiters',['../structgpr__cancellable.html#a99dfebf899cae60307fb8b83e8cfdb43',1,'gpr_cancellable']]],
+ ['waiting',['waiting',['../structgrpc__subchannel.html#a86222e4f70c6a36a9345ce2388f94e22',1,'grpc_subchannel']]],
+ ['waiting_5ffor_5fconfig_5fclosures',['waiting_for_config_closures',['../structchannel__data.html#ac701a31115f0dcb435265a106baf619f',1,'channel_data']]],
+ ['waiting_5fop',['waiting_op',['../structcall__data.html#a95c7079af1a663431de6bfe8e919cff7',1,'call_data']]],
+ ['wakeup',['wakeup',['../structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f',1,'grpc_wakeup_fd_vtable']]],
+ ['wakeup_5ffd',['wakeup_fd',['../structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479',1,'grpc_kick_fd_info']]],
+ ['watcher_5fmu',['watcher_mu',['../structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b',1,'grpc_fd']]],
+ ['watchers',['watchers',['../structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd',1,'grpc_connectivity_state_tracker']]],
+ ['window_5fupdate',['window_update',['../structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d',1,'grpc_chttp2_transport_parsing']]],
+ ['wrapped',['wrapped',['../structmerge__args__factory.html#aecaa1e5ad4e5838355a2f1515943e378',1,'merge_args_factory']]],
+ ['wrapped_5fendpoint',['wrapped_endpoint',['../structgrpc__secure__transport__setup.html#a6718bd343a57770498f8bfcfeefbaf9a',1,'grpc_secure_transport_setup']]],
+ ['wrapped_5fep',['wrapped_ep',['../structsecure__endpoint.html#aee294803f06c5d38dac97d2933d52e94',1,'secure_endpoint']]],
+ ['write',['write',['../structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739',1,'grpc_endpoint_vtable']]],
+ ['write_5fcb',['write_cb',['../structsecure__endpoint.html#a0d57c837c3b9281454f2629845162de0',1,'secure_endpoint']]],
+ ['write_5ffd',['write_fd',['../structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f',1,'grpc_wakeup_fd_info']]],
+ ['write_5finfo',['write_info',['../structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6',1,'grpc_winsocket']]],
+ ['write_5fstaging_5fbuffer',['write_staging_buffer',['../structsecure__endpoint.html#a9349d713abd0f17c41579a9c149629c2',1,'secure_endpoint']]],
+ ['write_5fstate',['write_state',['../structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9',1,'grpc_chttp2_stream_global::write_state()'],['../structgrpc__call.html#a9a08d62d6d129d629c2cbe25511983ac',1,'grpc_call::write_state()']]],
+ ['write_5fuser_5fdata',['write_user_data',['../structsecure__endpoint.html#ae444fbf4226a8118b5cac6f71d043124',1,'secure_endpoint']]],
+ ['write_5fwatcher',['write_watcher',['../structgrpc__fd.html#ae2395965de88538f112be69c21307d01',1,'grpc_fd']]],
+ ['writest',['writest',['../structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676',1,'grpc_fd']]],
+ ['writing',['writing',['../structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf',1,'grpc_chttp2_transport::writing()'],['../structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e',1,'grpc_chttp2_stream::writing()']]],
+ ['writing_5faction',['writing_action',['../structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224',1,'grpc_chttp2_transport']]],
+ ['writing_5factive',['writing_active',['../structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b',1,'grpc_chttp2_transport']]],
+ ['writing_5fnow',['writing_now',['../structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c',1,'grpc_chttp2_stream_global']]],
+ ['written_5finitial_5fmetadata',['written_initial_metadata',['../structcall__data.html#a5fccfa4c3448bcfd28f80b2caad5485b',1,'call_data']]],
+ ['wsa_5ferror',['wsa_error',['../structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29',1,'grpc_winsocket_callback_info']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_2.html b/doc/ref/core.internal/html/search/variables_2.html
new file mode 100644
index 0000000000..ea80d20140
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_2.js b/doc/ref/core.internal/html/search/variables_2.js
new file mode 100644
index 0000000000..c68d322f3e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_2.js
@@ -0,0 +1,109 @@
+var searchData=
+[
+ ['cache_5fmu',['cache_mu',['../structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94',1,'grpc_service_account_jwt_access_credentials']]],
+ ['cached',['cached',['../structgrpc__service__account__jwt__access__credentials.html#a8c7e6a306aa24aaefa9f96982fdaafbd',1,'grpc_service_account_jwt_access_credentials']]],
+ ['call',['call',['../structfinished__loose__op__allocated__args.html#a39f5408992820aa61c3aa11e378612d3',1,'finished_loose_op_allocated_args::call()'],['../structrequested__call.html#a0995465df7da49fbbb591d8b03dd1de2',1,'requested_call::call()'],['../structcall__data.html#a5512e8a6ddade275bc9b64ef48de3036',1,'call_data::call()']]],
+ ['call_5fdata',['call_data',['../structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04',1,'grpc_call_element']]],
+ ['call_5fhost_5fcheck_5fis_5fasync',['call_host_check_is_async',['../structgrpc__fake__channel__security__connector.html#af6c4c25382f598179b3b50d4a90a0584',1,'grpc_fake_channel_security_connector']]],
+ ['call_5fstack_5fsize',['call_stack_size',['../structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2',1,'grpc_channel_stack']]],
+ ['called_5fshutdown',['called_shutdown',['../structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53',1,'grpc_pollset']]],
+ ['cancel_5falarm',['cancel_alarm',['../structgrpc__call.html#a8ecae45b11c6194a51ccd17b0ae1a724',1,'grpc_call']]],
+ ['cancel_5fwith_5fstatus',['cancel_with_status',['../structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf',1,'grpc_transport_stream_op::cancel_with_status()'],['../structgrpc__call.html#a52b7e350723f5cd4a577a86a4b72f026',1,'grpc_call::cancel_with_status()']]],
+ ['cancelled',['cancelled',['../structgrpc__op.html#ae5a9717d4a69c46f343381596e223874',1,'grpc_op::cancelled()'],['../structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312',1,'grpc_chttp2_stream_global::cancelled()'],['../structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2',1,'gpr_cancellable::cancelled()']]],
+ ['cancelled_5fstatus',['cancelled_status',['../structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098',1,'grpc_chttp2_stream_global']]],
+ ['capacity',['capacity',['../structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97',1,'grpc_metadata_array::capacity()'],['../structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9',1,'grpc_bbq_array::capacity()'],['../structgrpc__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613',1,'grpc_chttp2_hpack_parser_string::capacity()'],['../structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd',1,'grpc_chttp2_incoming_metadata_buffer::capacity()'],['../structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef',1,'grpc_chttp2_stream_map::capacity()'],['../structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772',1,'grpc_stream_op_buffer::capacity()'],['../structrequest__killer.html#aef7c9b567894a3f6af2ebaed400fff42',1,'request_killer::capacity()'],['../structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e',1,'gpr_slice_buffer::capacity()'],['../structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd',1,'gpr_strvec::capacity()'],['../structdump__out.html#ad4ef0a9a3b2494b534b9fcba9d349f21',1,'dump_out::capacity()']]],
+ ['cb',['cb',['../structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd',1,'grpc_alarm::cb()'],['../structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1',1,'grpc_iomgr_closure::cb()'],['../structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1',1,'grpc_winsocket_callback_info::cb()'],['../structgrpc__credentials__metadata__request.html#afd521fb44c2c0a7aaab92243f606c67e',1,'grpc_credentials_metadata_request::cb()'],['../structgrpc__composite__credentials__metadata__context.html#a14c42c56de0c02fcaca7103953411ce0',1,'grpc_composite_credentials_metadata_context::cb()'],['../structgrpc__secure__transport__setup.html#a1bf28f7192cd4fe30e4daaf306545e9c',1,'grpc_secure_transport_setup::cb()']]],
+ ['cb_5farg',['cb_arg',['../structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3',1,'grpc_alarm::cb_arg()'],['../structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293',1,'grpc_iomgr_closure::cb_arg()']]],
+ ['cert_5fchain',['cert_chain',['../structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656',1,'grpc_ssl_pem_key_cert_pair']]],
+ ['chained',['chained',['../structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6',1,'grpc_auth_context']]],
+ ['chand',['chand',['../structlb__policy__connectivity__watcher.html#a8c4c66e260e9c93b8ce9b4a129e581e5',1,'lb_policy_connectivity_watcher']]],
+ ['channel',['channel',['../structgrpc__call.html#aefaa9e839c97ca63876add3d3a04a94d',1,'grpc_call::channel()'],['../structstate__watcher.html#a0b0df5ad70d6a91a268452e03a885404',1,'state_watcher::channel()'],['../structchannel__data.html#aa44b8e02dfe6cd2b3823c51f9559dc29',1,'channel_data::channel()']]],
+ ['channel_5fargs',['channel_args',['../structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab',1,'grpc_connect_in_args::channel_args()'],['../structgrpc__server.html#ab1ef57d52ade4e4f8eb0e26b42ea48a4',1,'grpc_server::channel_args()']]],
+ ['channel_5fcallback',['channel_callback',['../structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb',1,'grpc_chttp2_transport']]],
+ ['channel_5fconnectivity_5fchanged',['channel_connectivity_changed',['../structchannel__data.html#a026ed08d4fb85fff5a0f332d3a35cf17',1,'channel_data']]],
+ ['channel_5fdata',['channel_data',['../structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d',1,'grpc_channel_element::channel_data()'],['../structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b',1,'grpc_call_element::channel_data()']]],
+ ['channel_5ffilter_5fcount',['channel_filter_count',['../structgrpc__server.html#a090ca3cc3f02e7b51d8c089f6c675ac2',1,'grpc_server']]],
+ ['channel_5ffilters',['channel_filters',['../structgrpc__server.html#a2da21f54a2ad688793d6c753ea74ec02',1,'grpc_server']]],
+ ['channel_5fsaw_5ferror',['channel_saw_error',['../structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b',1,'grpc_resolver_vtable']]],
+ ['channels',['channels',['../structchannel__broadcaster.html#ad8aee8e6b39c0a74c47bc518fe60e0d7',1,'channel_broadcaster']]],
+ ['check_5favailability',['check_availability',['../structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04',1,'grpc_wakeup_fd_vtable']]],
+ ['check_5fcall_5fhost',['check_call_host',['../structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e',1,'grpc_channel_security_connector']]],
+ ['check_5fconnectivity',['check_connectivity',['../structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25',1,'grpc_lb_policy_vtable']]],
+ ['check_5fpeer',['check_peer',['../structgrpc__security__connector__vtable.html#aee8169e56a02a5cb55d68bcc6d0d56de',1,'grpc_security_connector_vtable']]],
+ ['checking_5fconnectivity',['checking_connectivity',['../structpick__first__lb__policy.html#a27c07323206631d5b7b021bfc2fb13d8',1,'pick_first_lb_policy']]],
+ ['checking_5fsubchannel',['checking_subchannel',['../structpick__first__lb__policy.html#a71958e25ab870a0f4436c07fed4585da',1,'pick_first_lb_policy']]],
+ ['child',['child',['../structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71',1,'grpc_json']]],
+ ['claims',['claims',['../structverifier__cb__ctx.html#a47babe5494185ee4fd95e92a8309fa26',1,'verifier_cb_ctx']]],
+ ['client',['client',['../structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c',1,'grpc_endpoint_pair']]],
+ ['client_5femail',['client_email',['../structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b',1,'grpc_auth_json_key']]],
+ ['client_5fid',['client_id',['../structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462',1,'grpc_auth_json_key::client_id()'],['../structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c',1,'grpc_auth_refresh_token::client_id()']]],
+ ['client_5fsecret',['client_secret',['../structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4',1,'grpc_auth_refresh_token']]],
+ ['clock',['clock',['../structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75',1,'grpc_precise_clock']]],
+ ['clock_5ftype',['clock_type',['../structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff',1,'gpr_timespec']]],
+ ['closed',['closed',['../structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e',1,'grpc_fd::closed()'],['../structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405',1,'grpc_chttp2_transport::closed()']]],
+ ['closure',['closure',['../structwaiting__call.html#ad8d9537c7523e3c09e5fcd4cf0bb1124',1,'waiting_call::closure()'],['../structstate__watcher.html#ab806a249c408b4412fc03ed0a5ede4c9',1,'state_watcher::closure()'],['../structfinished__loose__op__allocated__args.html#a1bf518b8de4a386cbf55698134e8c485',1,'finished_loose_op_allocated_args::closure()'],['../structshutdown__cleanup__args.html#a42d1e24f7cc5d51db75df17263950c9a',1,'shutdown_cleanup_args::closure()']]],
+ ['code',['code',['../uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1',1,'grpc_ioreq_data::code()'],['../structreceived__status.html#a5adb1c689f796d0055094addbc8b31c2',1,'received_status::code()']]],
+ ['complete_5fmask',['complete_mask',['../structreqinfo__master.html#a42a5da5664f298a2ff5c94760f69ffb3',1,'reqinfo_master']]],
+ ['completed_5fhead',['completed_head',['../structgrpc__completion__queue.html#a484ad9fad34b51c8ab2e0f6a144e6d5e',1,'grpc_completion_queue']]],
+ ['completed_5frequests',['completed_requests',['../structgrpc__call.html#af82a58a0e542b5acd8bc4b1e50842ddd',1,'grpc_call']]],
+ ['completed_5ftail',['completed_tail',['../structgrpc__completion__queue.html#a82c067060ebf5ff91bc9ec961b414fa2',1,'grpc_completion_queue']]],
+ ['completing',['completing',['../structgrpc__call.html#a0ad5b28a10c5453b5fcd3cbf5e9ec0cc',1,'grpc_call']]],
+ ['completion',['completion',['../structrequested__call.html#a4ab625b5e4dc9670ef586c4d245858f5',1,'requested_call::completion()'],['../structshutdown__tag.html#a659b6448a029795dd262462d5f679609',1,'shutdown_tag::completion()']]],
+ ['completion_5fmu',['completion_mu',['../structgrpc__call.html#aaf50407acc01602b67f4e442b3a3121d',1,'grpc_call']]],
+ ['completion_5fstorage',['completion_storage',['../structstate__watcher.html#a1d65436328c649d7f029b98e54d50588',1,'state_watcher']]],
+ ['completions',['completions',['../structgrpc__call.html#ad48e9f752753814bf9ee0233c392fccd',1,'grpc_call']]],
+ ['composite_5fcreds',['composite_creds',['../structgrpc__composite__credentials__metadata__context.html#aa01c70e7c7cd7ac2071c933c4ca4ed65',1,'grpc_composite_credentials_metadata_context']]],
+ ['compression',['compression',['../structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399',1,'grpc_byte_buffer']]],
+ ['compression_5falgorithm',['compression_algorithm',['../structcall__data.html#a9f593ec03211bdc3ede0b4da81d4354f',1,'call_data::compression_algorithm()'],['../structgrpc__call.html#afa14a32dc253da1909a2dd6e44304fdc',1,'grpc_call::compression_algorithm()']]],
+ ['compression_5falgorithm_5fstorage',['compression_algorithm_storage',['../structcall__data.html#ad33eb76b6d73d8a4475ff69ff4e8964c',1,'call_data']]],
+ ['concurrent_5fstream_5fcount',['concurrent_stream_count',['../structgrpc__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995',1,'grpc_chttp2_transport_global']]],
+ ['config',['config',['../structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06',1,'grpc_ssl_credentials::config()'],['../structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3',1,'grpc_ssl_server_credentials::config()']]],
+ ['connect',['connect',['../structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078',1,'grpc_connector_vtable']]],
+ ['connected',['connected',['../structgrpc__subchannel.html#a69b581893484f0f728b780c5a9152bf4',1,'grpc_subchannel']]],
+ ['connecting',['connecting',['../structgrpc__subchannel.html#a084840ded6075b823c3572c504694635',1,'grpc_subchannel']]],
+ ['connecting_5fresult',['connecting_result',['../structgrpc__subchannel.html#a71c47f21609f3dab29311d422360665f',1,'grpc_subchannel']]],
+ ['connection',['connection',['../structgrpc__subchannel__call.html#a1eb7f2be785456f81008f984d80f8ac6',1,'grpc_subchannel_call']]],
+ ['connection_5fwindow_5ftarget',['connection_window_target',['../structgrpc__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06',1,'grpc_chttp2_transport_global']]],
+ ['connectivity_5fchanged',['connectivity_changed',['../structpick__first__lb__policy.html#a54f466dc5e968d2b3a8f8fe6511d2c56',1,'pick_first_lb_policy']]],
+ ['connectivity_5fstate',['connectivity_state',['../structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d',1,'grpc_transport_op::connectivity_state()'],['../structstate__watcher.html#a2777b6c363f7d4262252bc4aaf515d43',1,'state_watcher::connectivity_state()'],['../structchannel__data.html#ace61d17706353a536bd079f18d54564f',1,'channel_data::connectivity_state()']]],
+ ['connector',['connector',['../structgrpc__secure__transport__setup.html#a494b76f3257449ed5eb88e0a52194324',1,'grpc_secure_transport_setup::connector()'],['../structgrpc__subchannel.html#a9439dd93e3b5078fb1e2669c327ed984',1,'grpc_subchannel::connector()']]],
+ ['connector_5fcreds',['connector_creds',['../structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637',1,'grpc_composite_credentials']]],
+ ['consume',['consume',['../structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e',1,'grpc_wakeup_fd_vtable']]],
+ ['container_5fbegins',['container_begins',['../structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4',1,'grpc_json_reader_vtable']]],
+ ['container_5fempty',['container_empty',['../structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381',1,'grpc_json_writer']]],
+ ['container_5fends',['container_ends',['../structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec',1,'grpc_json_reader_vtable']]],
+ ['container_5fjust_5fbegun',['container_just_begun',['../structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3',1,'grpc_json_reader']]],
+ ['content_5ftype',['content_type',['../structcall__data.html#a4169f3d34c6e55c4bba43a86241bf1ea',1,'call_data::content_type()'],['../structchannel__data.html#a7d6e2d61b1f1dc47be825afbdb0b1176',1,'channel_data::content_type()']]],
+ ['contents',['contents',['../unionlockfree__node.html#a4cf276073deb1a941a409b19bb78f5c4',1,'lockfree_node']]],
+ ['context',['context',['../structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae',1,'grpc_transport_stream_op::context()'],['../structinternal__request.html#a0a0fbaaabcd158b4fb0ff6c8b2d4879f',1,'internal_request::context()'],['../structgrpc__call.html#a91cd558ccf432aa44bbe813c4acd022c',1,'grpc_call::context()'],['../structinternal__string.html#a1bfe57ac1191b1278d4a61d34edbf1d7',1,'internal_string::context()'],['../structinternal__metadata.html#a19b31328660cdb5c8a8bf821094871c5',1,'internal_metadata::context()']]],
+ ['continuation',['continuation',['../structwaiting__for__connect.html#a8289e332e8b65421a161e607bb637f51',1,'waiting_for_connect']]],
+ ['copy',['copy',['../structgrpc__arg.html#abef4f8be0109b19fcbe7f614f1243303',1,'grpc_arg']]],
+ ['count',['count',['../structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4',1,'grpc_metadata_array::count()'],['../structgrpc__op.html#ac5983d0a5d60c26ca2d1b37d31ba2e2a',1,'grpc_op::count()'],['../structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67',1,'grpc_channel_stack::count()'],['../structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a',1,'grpc_call_stack::count()'],['../structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2',1,'grpc_bbq_array::count()'],['../uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a',1,'grpc_ioreq_data::count()'],['../structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd',1,'grpc_chttp2_incoming_metadata_buffer::count()'],['../structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8',1,'grpc_chttp2_stream_map::count()'],['../structrequest__killer.html#ae3dd02f0f46905f3d7a7b88193ca0af6',1,'request_killer::count()'],['../structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff',1,'gpr_slice_buffer::count()'],['../structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470',1,'gpr_refcount::count()'],['../structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387',1,'gpr_strvec::count()'],['../structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d',1,'gpr_histogram::count()']]],
+ ['counter',['counter',['../structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1',1,'grpc_pollset']]],
+ ['cq',['cq',['../structgrpc__call.html#ae24201f3b8347e790898e3bc2ae1ad09',1,'grpc_call::cq()'],['../structstate__watcher.html#ae85d1a92c4f1e6a4eff3bcb356ff8204',1,'state_watcher::cq()'],['../structshutdown__tag.html#afca3fb84e8cde4f0b5f3e18905f555e9',1,'shutdown_tag::cq()']]],
+ ['cq_5fbound_5fto_5fcall',['cq_bound_to_call',['../structrequested__call.html#a7294f3532a1f72151e0ef3634f518431',1,'requested_call']]],
+ ['cq_5fcount',['cq_count',['../structgrpc__server.html#a0a49b61d38a3aee3f080087cf4b1f92d',1,'grpc_server']]],
+ ['cq_5ffor_5fnotification',['cq_for_notification',['../structrequested__call.html#a3b4918a8f8c79ab768156dc658e21b83',1,'requested_call']]],
+ ['cq_5fnew',['cq_new',['../structcall__data.html#a253926f346f7783d43ad5791ac70bba2',1,'call_data']]],
+ ['cqs',['cqs',['../structgrpc__server.html#a87495e0b247e92860d6c2a6504cf5528',1,'grpc_server']]],
+ ['create',['create',['../structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e',1,'grpc_wakeup_fd_vtable']]],
+ ['create_5fframe_5fprotector',['create_frame_protector',['../structtsi__handshaker__vtable.html#a071e3b76f8ddec1c89f9131c923f3648',1,'tsi_handshaker_vtable']]],
+ ['create_5fhandshaker',['create_handshaker',['../structgrpc__security__connector__vtable.html#ae1202bdafbea18af0fe2b0e6c11ae636',1,'grpc_security_connector_vtable::create_handshaker()'],['../structtsi__ssl__handshaker__factory.html#a44a633a0520c8561b5c63f97742daaef',1,'tsi_ssl_handshaker_factory::create_handshaker()']]],
+ ['create_5fresolver',['create_resolver',['../structgrpc__resolver__factory__vtable.html#a59d7eb4c9cb95b6ba33628c30b948f10',1,'grpc_resolver_factory_vtable']]],
+ ['create_5fsecurity_5fconnector',['create_security_connector',['../structgrpc__credentials__vtable.html#a7bbb5a8658e7f2295ed816f7f60e6f00',1,'grpc_credentials_vtable::create_security_connector()'],['../structgrpc__server__credentials__vtable.html#af56836a7d92bb4475b92d5991eb9c30d',1,'grpc_server_credentials_vtable::create_security_connector()']]],
+ ['create_5fsubchannel',['create_subchannel',['../structgrpc__subchannel__factory__vtable.html#a25972ec53ef7aa219669847b7cbb515d',1,'grpc_subchannel_factory_vtable']]],
+ ['creds',['creds',['../structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf',1,'grpc_client_security_context::creds()'],['../structcall__data.html#a163b0cfa0e971a064e4ad6f35001f8ed',1,'call_data::creds()'],['../structgrpc__credentials__metadata__request.html#a7cf76389aba6b2f8ae6fcb00f59bff98',1,'grpc_credentials_metadata_request::creds()']]],
+ ['creds_5farray',['creds_array',['../structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231',1,'grpc_credentials_array']]],
+ ['creds_5findex',['creds_index',['../structgrpc__composite__credentials__metadata__context.html#af3232f00703210b60772c4dd1c727a56',1,'grpc_composite_credentials_metadata_context']]],
+ ['cs',['cs',['../structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c',1,'gpr_mu']]],
+ ['ctx',['ctx',['../structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58',1,'grpc_auth_property_iterator']]],
+ ['cur_5farg',['cur_arg',['../structgpr__cmdline.html#aa4b1fcaf802c2ca83c9e2213b8283297',1,'gpr_cmdline']]],
+ ['cur_5fframe_5ftype',['cur_frame_type',['../structframer__state.html#ab6d529c8b0d12ca60075d0c9e29d037b',1,'framer_state']]],
+ ['cur_5fline',['cur_line',['../structgrpc__httpcli__parser.html#a8524fc39d4fa476bf3133e922edf092c',1,'grpc_httpcli_parser']]],
+ ['cur_5fline_5flength',['cur_line_length',['../structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e',1,'grpc_httpcli_parser']]],
+ ['current',['current',['../structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f',1,'grpc_byte_buffer_reader::current()'],['../structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f',1,'grpc_connectivity_state_watcher::current()']]],
+ ['current_5fcontainer',['current_container',['../structjson__reader__userdata.html#a46c3b03cc1ca3fbeeb76f726ce844bf2',1,'json_reader_userdata']]],
+ ['current_5fstate',['current_state',['../structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e',1,'grpc_connectivity_state_tracker']]],
+ ['current_5fvalue',['current_value',['../structjson__reader__userdata.html#ab1069140339bf83ea323ac0ac696cc8c',1,'json_reader_userdata']]],
+ ['cv',['cv',['../structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844',1,'grpc_pollset::cv()'],['../structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459',1,'gpr_cancellable_list_::cv()']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_3.html b/doc/ref/core.internal/html/search/variables_3.html
new file mode 100644
index 0000000000..0dca26f47b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_3.js b/doc/ref/core.internal/html/search/variables_3.js
new file mode 100644
index 0000000000..3bf91ebf56
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_3.js
@@ -0,0 +1,35 @@
+var searchData=
+[
+ ['data',['data',['../structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f',1,'grpc_byte_buffer::data()'],['../structgrpc__op.html#a39a29ba59e6482692adfcdef46ec66ad',1,'grpc_op::data()'],['../structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55',1,'tsi_peer_property::data()'],['../structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621',1,'grpc_pollset::data()'],['../structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51',1,'grpc_bbq_array::data()'],['../structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61',1,'grpc_ioreq::data()'],['../structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9',1,'grpc_stream_op::data()'],['../structtsi__fake__frame.html#a4c55725c3501776bccf3dc63dc3c0301',1,'tsi_fake_frame::data()'],['../structrequested__call.html#a1814382d48854b3ce31b0aef9c4b4c7e',1,'requested_call::data()'],['../structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da',1,'gpr_slice::data()'],['../structdump__out.html#aaceca2e7d88a29bcd3593c5cba3e8a3a',1,'dump_out::data()']]],
+ ['data_5fparser',['data_parser',['../structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54',1,'grpc_chttp2_stream_parsing']]],
+ ['deadline',['deadline',['../structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15',1,'grpc_call_details::deadline()'],['../structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c',1,'grpc_connect_in_args::deadline()'],['../structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126',1,'grpc_alarm::deadline()'],['../structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589',1,'grpc_chttp2_incoming_metadata_buffer::deadline()'],['../structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04',1,'grpc_metadata_batch::deadline()'],['../structinternal__request.html#a3b0a573ccd8ac3d01b0b3668e39a2e61',1,'internal_request::deadline()'],['../structcall__data.html#a9ca8837431c3942aa3b18092e314632c',1,'call_data::deadline()'],['../structrequested__call.html#a7b0834c5a24427fbe79fb77ffd103cc8',1,'requested_call::deadline()']]],
+ ['debug_5fdata',['debug_data',['../structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e',1,'grpc_chttp2_goaway_parser']]],
+ ['debug_5flength',['debug_length',['../structgrpc__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23',1,'grpc_chttp2_goaway_parser']]],
+ ['debug_5fpos',['debug_pos',['../structgrpc__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce',1,'grpc_chttp2_goaway_parser']]],
+ ['default_5fauthority',['default_authority',['../structchannel__data.html#a51d18a12253f4520179c5f04cc9f4c48',1,'channel_data']]],
+ ['default_5fcompression_5falgorithm',['default_compression_algorithm',['../structchannel__data.html#acc452310378fb56c38c296cdfdde14e3',1,'channel_data']]],
+ ['default_5fport',['default_port',['../structdns__resolver.html#ad3a4ce330d39e62347c8d230dc0431f4',1,'dns_resolver']]],
+ ['default_5fvalue',['default_value',['../structgrpc__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb',1,'grpc_chttp2_setting_parameters']]],
+ ['deframe_5fstate',['deframe_state',['../structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250',1,'grpc_chttp2_transport_parsing']]],
+ ['del_5ffd',['del_fd',['../structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60',1,'grpc_pollset_vtable']]],
+ ['depth',['depth',['../structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4',1,'grpc_json_reader::depth()'],['../structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995',1,'grpc_json_writer::depth()']]],
+ ['description',['description',['../structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d',1,'gpr_cmdline']]],
+ ['destroy',['destroy',['../structgrpc__arg.html#a15c9a748974a6ac525074f3ed1e04eb4',1,'grpc_arg::destroy()'],['../structgrpc__credentials__vtable.html#a95766dfd1880536b6b891b18514b5720',1,'grpc_credentials_vtable::destroy()'],['../structgrpc__server__credentials__vtable.html#a78347ce536f6c1885d49a6cd5106eade',1,'grpc_server_credentials_vtable::destroy()'],['../structgrpc__security__connector__vtable.html#acd16feb960e41e1920c193017a135704',1,'grpc_security_connector_vtable::destroy()'],['../structtsi__frame__protector__vtable.html#ac47686a0367046026dc8b97050ec2cdf',1,'tsi_frame_protector_vtable::destroy()'],['../structtsi__handshaker__vtable.html#a6ddd06eccb4d0576a3daba0ee98f45d8',1,'tsi_handshaker_vtable::destroy()'],['../structgrpc__call__context__element.html#a896c4d5b89848f2f14678745b6162f94',1,'grpc_call_context_element::destroy()'],['../structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c',1,'grpc_lb_policy_vtable::destroy()'],['../structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7',1,'grpc_resolver_vtable::destroy()'],['../structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c',1,'grpc_endpoint_vtable::destroy()'],['../structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815',1,'grpc_pollset_vtable::destroy()'],['../structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2',1,'grpc_wakeup_fd_vtable::destroy()'],['../structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf',1,'grpc_transport_vtable::destroy()'],['../structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a',1,'tsi_ssl_handshaker_factory::destroy()'],['../structlistener.html#add425fdd17452e62c09d047e24a3034f',1,'listener::destroy()']]],
+ ['destroy_5fcall_5felem',['destroy_call_elem',['../structgrpc__channel__filter.html#a347e5451860788a084735e66b1684312',1,'grpc_channel_filter']]],
+ ['destroy_5fcalled',['destroy_called',['../structgrpc__call.html#af72cb94597b41817f2c12e8d4ac5ae95',1,'grpc_call']]],
+ ['destroy_5fchannel_5felem',['destroy_channel_elem',['../structgrpc__channel__filter.html#a7ab39b0d83fd44c9e3be4b930e6b60e2',1,'grpc_channel_filter']]],
+ ['destroy_5fclosure',['destroy_closure',['../structgrpc__call.html#a2cac7abed2fe85b3ddbdde40931ed793',1,'grpc_call::destroy_closure()'],['../structgrpc__channel.html#ae6dda10ffe354ceefda810573f5e80e9',1,'grpc_channel::destroy_closure()']]],
+ ['destroy_5fstream',['destroy_stream',['../structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b',1,'grpc_transport_vtable']]],
+ ['destroy_5fuser_5fdata',['destroy_user_data',['../structinternal__metadata.html#a5377f467bb28c9b4774d896b44d8c6a2',1,'internal_metadata']]],
+ ['destroying',['destroying',['../structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f',1,'grpc_chttp2_transport']]],
+ ['details',['details',['../uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6',1,'grpc_ioreq_data::details()'],['../uniongrpc__ioreq__data.html#aabf2513498a2eee60eec1d1d70968169',1,'grpc_ioreq_data::details()'],['../structcall__data.html#a178c22c4c266e3ffd0583f3ed9bc749f',1,'call_data::details()'],['../structreceived__status.html#a6b73f215e5290bb6660c25e34c07ca72',1,'received_status::details()'],['../structrequested__call.html#a65cfbe1bb43697b7cc762ca44fa94c1b',1,'requested_call::details()']]],
+ ['details_5fcapacity',['details_capacity',['../uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468',1,'grpc_ioreq_data']]],
+ ['details_5flink',['details_link',['../structgrpc__call.html#a932212dbec6334868cf997dd275c2192',1,'grpc_call']]],
+ ['dirtied_5flocal_5fsettings',['dirtied_local_settings',['../structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e',1,'grpc_chttp2_transport_global']]],
+ ['disconnect',['disconnect',['../structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b',1,'grpc_transport_op']]],
+ ['disconnected',['disconnected',['../structgrpc__subchannel.html#aeb64d3a8c4d1f0c3b75cda0f97d80c5c',1,'grpc_subchannel']]],
+ ['done',['done',['../structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64',1,'grpc_cq_completion']]],
+ ['done_5farg',['done_arg',['../structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a',1,'grpc_cq_completion']]],
+ ['drain_5fpos',['drain_pos',['../structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b',1,'grpc_byte_buffer_queue']]],
+ ['draining',['draining',['../structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b',1,'grpc_byte_buffer_queue']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_4.html b/doc/ref/core.internal/html/search/variables_4.html
new file mode 100644
index 0000000000..400e8e9b41
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_4.js b/doc/ref/core.internal/html/search/variables_4.js
new file mode 100644
index 0000000000..e0f3c73df3
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_4.js
@@ -0,0 +1,25 @@
+var searchData=
+[
+ ['elem',['elem',['../structcall__data.html#a7042d8feb119d4fcce1258c5eddca8ff',1,'call_data::elem()'],['../structwaiting__call.html#af0c24ed1b79604b43d7a669331adcbc4',1,'waiting_call::elem()']]],
+ ['elems',['elems',['../structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92',1,'grpc_chttp2_incoming_metadata_buffer::elems()'],['../structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d',1,'grpc_chttp2_incoming_metadata_live_op_buffer::elems()']]],
+ ['email_5fdomain',['email_domain',['../structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df',1,'grpc_jwt_verifier_email_domain_key_url_mapping::email_domain()'],['../structemail__key__mapping.html#a379069d9b6baffade9583b28046eab90',1,'email_key_mapping::email_domain()']]],
+ ['endpoint_5freading',['endpoint_reading',['../structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905',1,'grpc_chttp2_transport']]],
+ ['entries',['entries',['../structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5',1,'grpc_credentials_md_store::entries()'],['../structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1',1,'gpr_stack_lockfree::entries()']]],
+ ['entries_5felems',['entries_elems',['../structgrpc__chttp2__hpack__compressor.html#a028e3752a9b203d820e194029f6df186',1,'grpc_chttp2_hpack_compressor']]],
+ ['entries_5fkeys',['entries_keys',['../structgrpc__chttp2__hpack__compressor.html#a80cc9b5282b637b3facbb68cf1038125',1,'grpc_chttp2_hpack_compressor']]],
+ ['ents',['ents',['../structgrpc__chttp2__hptbl.html#af14d20a9a16ee86be7d9f18b2f5334eb',1,'grpc_chttp2_hptbl']]],
+ ['ep',['ep',['../structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff',1,'grpc_chttp2_transport::ep()'],['../structinternal__request.html#af6443badea586cce9b4e3112832760c7',1,'internal_request::ep()']]],
+ ['error_5fcode',['error_code',['../structgrpc__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5',1,'grpc_chttp2_goaway_parser']]],
+ ['error_5fmsg_5fkey',['error_msg_key',['../structchannel__data.html#a214f33e78aafbbac774ea95c2e9dc8b3',1,'channel_data']]],
+ ['error_5fstatus_5fset',['error_status_set',['../structgrpc__call.html#a5cb38ade0e31380920c4afe56eea7b85',1,'grpc_call']]],
+ ['escaped_5fstring_5fwas_5fkey',['escaped_string_was_key',['../structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107',1,'grpc_json_reader']]],
+ ['exit_5fidle',['exit_idle',['../structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301',1,'grpc_lb_policy_vtable']]],
+ ['exit_5fidle_5fwhen_5flb_5fpolicy_5farrives',['exit_idle_when_lb_policy_arrives',['../structchannel__data.html#a3fe0f0347e1953376cd84db85bba9917',1,'channel_data']]],
+ ['exp',['exp',['../structgrpc__jwt__claims.html#adb8933c8e007a5864aea01e258637594',1,'grpc_jwt_claims']]],
+ ['expect_5fcontinuation_5fstream_5fid',['expect_continuation_stream_id',['../structgrpc__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060',1,'grpc_chttp2_transport_parsing']]],
+ ['extra_5farg',['extra_arg',['../structgpr__cmdline.html#a1109c69ceb7d9c2ae8f374377690b4cb',1,'gpr_cmdline']]],
+ ['extra_5farg_5fhelp',['extra_arg_help',['../structgpr__cmdline.html#ab1e7d3da9d7dac50a04411059cf856fb',1,'gpr_cmdline']]],
+ ['extra_5farg_5fname',['extra_arg_name',['../structgpr__cmdline.html#abc1adda9fabb39a4cb8beba086aaa8b5',1,'gpr_cmdline']]],
+ ['extra_5farg_5fuser_5fdata',['extra_arg_user_data',['../structgpr__cmdline.html#afcf2c751450c2b09eea9ac769ddb2f11',1,'gpr_cmdline']]],
+ ['extract_5fpeer',['extract_peer',['../structtsi__handshaker__vtable.html#ab34c8028cf54bc2b0ee1e5ab95578541',1,'tsi_handshaker_vtable']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_5.html b/doc/ref/core.internal/html/search/variables_5.html
new file mode 100644
index 0000000000..7f1241f94b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_5.js b/doc/ref/core.internal/html/search/variables_5.js
new file mode 100644
index 0000000000..a2ae94a83c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_5.js
@@ -0,0 +1,31 @@
+var searchData=
+[
+ ['factory',['factory',['../structregistered__resolver.html#a19447c6e94f1739efdfdf0928f62a1bb',1,'registered_resolver']]],
+ ['fd',['fd',['../structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc',1,'grpc_fd_watcher::fd()'],['../structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32',1,'grpc_fd::fd()'],['../structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc',1,'grpc_pollset::fd()']]],
+ ['fd_5fcapacity',['fd_capacity',['../structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec',1,'grpc_pollset_set']]],
+ ['fd_5fcount',['fd_count',['../structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6',1,'grpc_pollset_set']]],
+ ['fd_5flist',['fd_list',['../structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772',1,'grpc_pollset_kick_state']]],
+ ['fds',['fds',['../structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6',1,'grpc_pollset_set']]],
+ ['fetch_5ffunc',['fetch_func',['../structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54',1,'grpc_oauth2_token_fetcher_credentials']]],
+ ['file',['file',['../structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89',1,'gpr_log_func_args']]],
+ ['filling',['filling',['../structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c',1,'grpc_byte_buffer_queue']]],
+ ['filter',['filter',['../structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3',1,'grpc_channel_element::filter()'],['../structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8',1,'grpc_call_element::filter()']]],
+ ['filter_5fcount',['filter_count',['../structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128',1,'grpc_subchannel_args']]],
+ ['filter_5felems',['filter_elems',['../structgrpc__chttp2__hpack__compressor.html#a387e0eb34c64c7faaf16e0f2f3ad4d0e',1,'grpc_chttp2_hpack_compressor']]],
+ ['filter_5felems_5fsum',['filter_elems_sum',['../structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8',1,'grpc_chttp2_hpack_compressor']]],
+ ['filters',['filters',['../structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2',1,'grpc_connect_out_args::filters()'],['../structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab',1,'grpc_subchannel_args::filters()'],['../structgrpc__subchannel.html#a9de51c82bda25cff592acbe7b2866a32',1,'grpc_subchannel::filters()']]],
+ ['finish_5fdestroy_5fchannel_5fclosure',['finish_destroy_channel_closure',['../structchannel__data.html#acecc0d7f7ae20cc71b53692eb20a0a92',1,'channel_data']]],
+ ['finish_5fshutdown',['finish_shutdown',['../structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8',1,'grpc_pollset_vtable']]],
+ ['first_5fent',['first_ent',['../structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77',1,'grpc_chttp2_hptbl']]],
+ ['flag',['flag',['../structtracer.html#a7cb129f30976377f84c881d419094573',1,'tracer']]],
+ ['flags',['flags',['../structgrpc__op.html#a9e6087665c90f146e5570f12c66d04fb',1,'grpc_op::flags()'],['../structgrpc__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1',1,'grpc_ioreq::flags()'],['../structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b',1,'grpc_begin_message::flags()'],['../structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c',1,'gpr_thd_options::flags()']]],
+ ['force_5fclient_5fauth',['force_client_auth',['../structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007',1,'grpc_ssl_server_config']]],
+ ['force_5fsend_5fsettings',['force_send_settings',['../structgrpc__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027',1,'grpc_chttp2_transport_global']]],
+ ['frame_5fprotector_5fcreated',['frame_protector_created',['../structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec',1,'tsi_handshaker']]],
+ ['frame_5fsize',['frame_size',['../structgrpc__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a',1,'grpc_chttp2_data_parser']]],
+ ['frame_5ftype',['frame_type',['../structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865',1,'grpc_chttp2_data_parser']]],
+ ['free',['free',['../structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece',1,'grpc_chttp2_stream_map']]],
+ ['free_5fspace',['free_space',['../structjson__writer__userdata.html#a7bb26b7e7b6783d61265705d79c87e03',1,'json_writer_userdata']]],
+ ['freelist_5fnext',['freelist_next',['../structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d',1,'grpc_fd']]],
+ ['from_5fssl',['from_ssl',['../structtsi__ssl__handshaker.html#a92fd97e3dc2041f61cf9e99b51f5a8e8',1,'tsi_ssl_handshaker::from_ssl()'],['../structtsi__ssl__frame__protector.html#a5d6ce8a49205271885618a79964a6b73',1,'tsi_ssl_frame_protector::from_ssl()']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_6.html b/doc/ref/core.internal/html/search/variables_6.html
new file mode 100644
index 0000000000..7536df8d5a
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_6.js b/doc/ref/core.internal/html/search/variables_6.js
new file mode 100644
index 0000000000..93564ecb84
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_6.js
@@ -0,0 +1,50 @@
+var searchData=
+[
+ ['garbage',['garbage',['../structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc',1,'grpc_metadata_batch']]],
+ ['get_5fbytes_5fto_5fsend_5fto_5fpeer',['get_bytes_to_send_to_peer',['../structtsi__handshaker__vtable.html#a78c12cd8f2a53cc2bd32367a725f48ff',1,'tsi_handshaker_vtable']]],
+ ['get_5fpeer',['get_peer',['../structgrpc__channel__filter.html#a6ddcbc355118eca15b48ee15476d2ace',1,'grpc_channel_filter::get_peer()'],['../structgrpc__endpoint__vtable.html#a01e48582c45e2e7033e344d253316911',1,'grpc_endpoint_vtable::get_peer()'],['../structgrpc__transport__vtable.html#a763d8c95adc9c74dae02a58557e001ed',1,'grpc_transport_vtable::get_peer()']]],
+ ['get_5frequest_5fmetadata',['get_request_metadata',['../structgrpc__credentials__vtable.html#a14795750df563c75436add4e7c05603d',1,'grpc_credentials_vtable']]],
+ ['get_5fresult',['get_result',['../structtsi__handshaker__vtable.html#af65c4700c22e71ecb09a94ae951d2bf3',1,'tsi_handshaker_vtable']]],
+ ['global',['global',['../structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694',1,'grpc_chttp2_transport::global()'],['../structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5',1,'grpc_chttp2_stream::global()']]],
+ ['goaway_5ferror',['goaway_error',['../structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5flast_5fstream_5findex',['goaway_last_stream_index',['../structgrpc__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5fmessage',['goaway_message',['../structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293',1,'grpc_transport_op']]],
+ ['goaway_5fparser',['goaway_parser',['../structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5freceived',['goaway_received',['../structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5',1,'grpc_chttp2_transport_parsing']]],
+ ['goaway_5fstatus',['goaway_status',['../structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f',1,'grpc_transport_op']]],
+ ['goaway_5ftext',['goaway_text',['../structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8',1,'grpc_chttp2_transport_parsing']]],
+ ['got_5finitial_5fmetadata',['got_initial_metadata',['../structcall__data.html#a7bda5a1466231baa3df0059573579b9b',1,'call_data::got_initial_metadata()'],['../structcall__data.html#a6bd5678f8f7fb5e1c91f0b98ced36147',1,'call_data::got_initial_metadata()']]],
+ ['got_5fkey',['got_key',['../structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed',1,'grpc_json_writer']]],
+ ['grpc_5fchttp2_5fhuffsyms',['grpc_chttp2_huffsyms',['../huffsyms_8h.html#a03277352c8049d68a2ab3e26086aa79c',1,'grpc_chttp2_huffsyms():&#160;huffsyms.c'],['../huffsyms_8c.html#a8cbea7cb59b983d744943eab38e8d55f',1,'grpc_chttp2_huffsyms():&#160;huffsyms.c']]],
+ ['grpc_5fchttp2_5fsettings_5fparameters',['grpc_chttp2_settings_parameters',['../frame__settings_8h.html#a61e84df9b71280ea1a733437d9de8f37',1,'grpc_chttp2_settings_parameters():&#160;frame_settings.c'],['../frame__settings_8c.html#a61e84df9b71280ea1a733437d9de8f37',1,'grpc_chttp2_settings_parameters():&#160;frame_settings.c']]],
+ ['grpc_5fclient_5fauth_5ffilter',['grpc_client_auth_filter',['../auth__filters_8h.html#ab5f3c640585f742a46197f407218c194',1,'grpc_client_auth_filter():&#160;client_auth_filter.c'],['../client__auth__filter_8c.html#ab5f3c640585f742a46197f407218c194',1,'grpc_client_auth_filter():&#160;client_auth_filter.c']]],
+ ['grpc_5fclient_5fcensus_5ffilter',['grpc_client_census_filter',['../census__filter_8h.html#a8b0a34120ce851f7a8f539c3a14eecb4',1,'census_filter.h']]],
+ ['grpc_5fclient_5fchannel_5ffilter',['grpc_client_channel_filter',['../client__channel_8h.html#a8c2292b3b1d26b9c4c296c106bfa96b1',1,'grpc_client_channel_filter():&#160;client_channel.c'],['../client__channel_8c.html#a8c2292b3b1d26b9c4c296c106bfa96b1',1,'grpc_client_channel_filter():&#160;client_channel.c']]],
+ ['grpc_5fcompress_5ffilter',['grpc_compress_filter',['../compress__filter_8h.html#a6e0ba3e22587af99125faa43ee943c88',1,'grpc_compress_filter():&#160;compress_filter.c'],['../compress__filter_8c.html#a6e0ba3e22587af99125faa43ee943c88',1,'grpc_compress_filter():&#160;compress_filter.c']]],
+ ['grpc_5fcompression_5falgorithm_5fstring',['grpc_compression_algorithm_string',['../structgrpc__channel.html#afd8f60fef22e201f1e1ba3b00f285602',1,'grpc_channel']]],
+ ['grpc_5fconnected_5fchannel_5ffilter',['grpc_connected_channel_filter',['../connected__channel_8h.html#a30c8116a24cf1e555af53c1296d10b39',1,'grpc_connected_channel_filter():&#160;connected_channel.c'],['../connected__channel_8c.html#a30c8116a24cf1e555af53c1296d10b39',1,'grpc_connected_channel_filter():&#160;connected_channel.c']]],
+ ['grpc_5fconnectivity_5fstate_5ftrace',['grpc_connectivity_state_trace',['../connectivity__state_8h.html#aae556e492df3eb9d23c5bc5728b6662c',1,'grpc_connectivity_state_trace():&#160;connectivity_state.c'],['../connectivity__state_8c.html#aae556e492df3eb9d23c5bc5728b6662c',1,'grpc_connectivity_state_trace():&#160;connectivity_state.c']]],
+ ['grpc_5fflowctl_5ftrace',['grpc_flowctl_trace',['../internal_8h.html#afd0f83d780e8ddeac885163c45aab0a8',1,'grpc_flowctl_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8h.html#afd0f83d780e8ddeac885163c45aab0a8',1,'grpc_flowctl_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#afd0f83d780e8ddeac885163c45aab0a8',1,'grpc_flowctl_trace():&#160;chttp2_transport.c']]],
+ ['grpc_5fforbid_5fdualstack_5fsockets_5ffor_5ftesting',['grpc_forbid_dualstack_sockets_for_testing',['../socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757',1,'socket_utils_posix.h']]],
+ ['grpc_5fhttp_5fclient_5ffilter',['grpc_http_client_filter',['../http__client__filter_8h.html#a0c9d14fbc933d24f599b259ccfea9324',1,'grpc_http_client_filter():&#160;http_client_filter.c'],['../http__client__filter_8c.html#a0c9d14fbc933d24f599b259ccfea9324',1,'grpc_http_client_filter():&#160;http_client_filter.c']]],
+ ['grpc_5fhttp_5fserver_5ffilter',['grpc_http_server_filter',['../http__server__filter_8h.html#af08554bdf22a17e82db905b74a959503',1,'grpc_http_server_filter():&#160;http_server_filter.c'],['../http__server__filter_8c.html#af08554bdf22a17e82db905b74a959503',1,'grpc_http_server_filter():&#160;http_server_filter.c']]],
+ ['grpc_5fhttp_5ftrace',['grpc_http_trace',['../internal_8h.html#a6bb76c8188f883af2fb738233abdeea0',1,'grpc_http_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8h.html#a6bb76c8188f883af2fb738233abdeea0',1,'grpc_http_trace():&#160;chttp2_transport.c'],['../chttp2__transport_8c.html#a6bb76c8188f883af2fb738233abdeea0',1,'grpc_http_trace():&#160;chttp2_transport.c']]],
+ ['grpc_5fjwt_5fverifier_5fclock_5fskew',['grpc_jwt_verifier_clock_skew',['../jwt__verifier_8h.html#a7d1ae2ff5b43188c302d75bb3ed761f7',1,'grpc_jwt_verifier_clock_skew():&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#a7d1ae2ff5b43188c302d75bb3ed761f7',1,'grpc_jwt_verifier_clock_skew():&#160;jwt_verifier.c']]],
+ ['grpc_5fjwt_5fverifier_5fmax_5fdelay',['grpc_jwt_verifier_max_delay',['../jwt__verifier_8h.html#ab4a9cfed667421b6a1393e52d073a282',1,'grpc_jwt_verifier_max_delay():&#160;jwt_verifier.c'],['../jwt__verifier_8c.html#ab4a9cfed667421b6a1393e52d073a282',1,'grpc_jwt_verifier_max_delay():&#160;jwt_verifier.c']]],
+ ['grpc_5fmax_5fauth_5ftoken_5flifetime',['grpc_max_auth_token_lifetime',['../grpc__security_8h.html#a6112c5b60b1c0197531f80fdc56f7772',1,'grpc_max_auth_token_lifetime():&#160;json_token.c'],['../json__token_8c.html#a6112c5b60b1c0197531f80fdc56f7772',1,'grpc_max_auth_token_lifetime():&#160;json_token.c']]],
+ ['grpc_5fmessage_5fstring',['grpc_message_string',['../structgrpc__channel.html#aa00f6e53c4b732654311f194aa2f3957',1,'grpc_channel']]],
+ ['grpc_5fno_5fop_5ffilter',['grpc_no_op_filter',['../noop__filter_8h.html#afe35aa05a877e7cbc5a42c9aa0574e87',1,'grpc_no_op_filter():&#160;noop_filter.c'],['../noop__filter_8c.html#afe35aa05a877e7cbc5a42c9aa0574e87',1,'grpc_no_op_filter():&#160;noop_filter.c']]],
+ ['grpc_5fpipe_5fwakeup_5ffd_5fvtable',['grpc_pipe_wakeup_fd_vtable',['../wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882',1,'wakeup_fd_pipe.h']]],
+ ['grpc_5fplatform_5fbecome_5fmultipoller',['grpc_platform_become_multipoller',['../pollset__posix_8h.html#aabee8316b743b1cc1673093989a7104a',1,'pollset_posix.h']]],
+ ['grpc_5fscheme',['grpc_scheme',['../structchannel__data.html#a24aa2dd2d7925c382b290e2417efabc7',1,'channel_data']]],
+ ['grpc_5fserver_5fauth_5ffilter',['grpc_server_auth_filter',['../auth__filters_8h.html#a2041d6372525de50a18f156d1b94cfae',1,'grpc_server_auth_filter():&#160;server_auth_filter.c'],['../server__auth__filter_8c.html#a2041d6372525de50a18f156d1b94cfae',1,'grpc_server_auth_filter():&#160;server_auth_filter.c']]],
+ ['grpc_5fserver_5fcensus_5ffilter',['grpc_server_census_filter',['../census__filter_8h.html#a710f293782b7b759efd8bf5acd011963',1,'census_filter.h']]],
+ ['grpc_5fspecialized_5fwakeup_5ffd_5fvtable',['grpc_specialized_wakeup_fd_vtable',['../wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42',1,'wakeup_fd_posix.h']]],
+ ['grpc_5fstatus_5felem',['grpc_status_elem',['../structgrpc__channel.html#ad50abb90c5f7ef77e51f8387b06451f9',1,'grpc_channel']]],
+ ['grpc_5fstatus_5fstring',['grpc_status_string',['../structgrpc__channel.html#a4b3d99e4664ffe3399d29f61f7063600',1,'grpc_channel']]],
+ ['grpc_5fsurface_5ftrace',['grpc_surface_trace',['../surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5',1,'grpc_surface_trace():&#160;surface_trace.c'],['../surface__trace_8c.html#aa4f3485a1e8307d80c59a22e5b20f7a5',1,'grpc_surface_trace():&#160;surface_trace.c']]],
+ ['grpc_5ftcp_5ftrace',['grpc_tcp_trace',['../tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb',1,'tcp_posix.h']]],
+ ['grpc_5ftrace_5fbatch',['grpc_trace_batch',['../call_8h.html#a9fa9c0e067be7cfea08021b019544382',1,'grpc_trace_batch():&#160;call_log_batch.c'],['../call__log__batch_8c.html#a9fa9c0e067be7cfea08021b019544382',1,'grpc_trace_batch():&#160;call_log_batch.c']]],
+ ['grpc_5ftrace_5fchannel',['grpc_trace_channel',['../channel__stack_8h.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4',1,'grpc_trace_channel():&#160;channel_stack.c'],['../channel__stack_8c.html#a7ee4da676e51ccc09f1e53fbf4d7e0d4',1,'grpc_trace_channel():&#160;channel_stack.c']]],
+ ['grpc_5ftrace_5fsecure_5fendpoint',['grpc_trace_secure_endpoint',['../secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd',1,'grpc_trace_secure_endpoint():&#160;secure_endpoint.c'],['../secure__endpoint_8c.html#a7778bdc8c40adac0dc536fe255b75fbd',1,'grpc_trace_secure_endpoint():&#160;secure_endpoint.c']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_7.html b/doc/ref/core.internal/html/search/variables_7.html
new file mode 100644
index 0000000000..66186a6994
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_7.js b/doc/ref/core.internal/html/search/variables_7.js
new file mode 100644
index 0000000000..938acae4e6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_7.js
@@ -0,0 +1,41 @@
+var searchData=
+[
+ ['handshake_5fbuffer',['handshake_buffer',['../structgrpc__secure__transport__setup.html#a4ac21c122779d771e91d59bc1c74a723',1,'grpc_secure_transport_setup']]],
+ ['handshake_5fbuffer_5fsize',['handshake_buffer_size',['../structgrpc__secure__transport__setup.html#a0edef695f006557a299ea4384f3a5438',1,'grpc_secure_transport_setup']]],
+ ['handshaker',['handshaker',['../structgrpc__secure__transport__setup.html#acb477ffb68f62bc22048abef085575c3',1,'grpc_secure_transport_setup']]],
+ ['handshaker_5ffactory',['handshaker_factory',['../structgrpc__httpcli__ssl__channel__security__connector.html#a4ec68b3563b321823c2386381727b9c6',1,'grpc_httpcli_ssl_channel_security_connector::handshaker_factory()'],['../structgrpc__ssl__channel__security__connector.html#aea121da234d473666c85221663f00241',1,'grpc_ssl_channel_security_connector::handshaker_factory()'],['../structgrpc__ssl__server__security__connector.html#aa18f372b18a7dc70e96cc6cf751d58e3',1,'grpc_ssl_server_security_connector::handshaker_factory()']]],
+ ['handshaking_5ftcp_5fendpoints',['handshaking_tcp_endpoints',['../structgrpc__server__secure__state.html#acba74fb1730945adb6b8d60421321b26',1,'grpc_server_secure_state']]],
+ ['has_5fbase64_5fand_5fhuffman_5fencoded',['has_base64_and_huffman_encoded',['../structinternal__string.html#ad30156b9bc8f7fc9c60b09e3dcaef00a',1,'internal_string']]],
+ ['has_5fcompression_5falgorithm',['has_compression_algorithm',['../structcall__data.html#a69baa5f9149f7edadc3c8e5fc2c82aa8',1,'call_data']]],
+ ['has_5fpending_5fiocp',['has_pending_iocp',['../structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294',1,'grpc_winsocket_callback_info']]],
+ ['has_5frequest_5fmetadata',['has_request_metadata',['../structgrpc__credentials__vtable.html#acd487d7cf9dab42866c366a212ef4b15',1,'grpc_credentials_vtable']]],
+ ['has_5frequest_5fmetadata_5fonly',['has_request_metadata_only',['../structgrpc__credentials__vtable.html#a2028660c297e6e08be99e09f068921e7',1,'grpc_credentials_vtable']]],
+ ['has_5fvalue',['has_value',['../structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7',1,'grpc_chttp2_hptbl_find_result']]],
+ ['hash',['hash',['../structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d',1,'grpc_mdstr::hash()'],['../structinternal__string.html#abc9b5ed558b39ad7c3265964778b3b98',1,'internal_string::hash()']]],
+ ['hash_5fseed',['hash_seed',['../structgrpc__mdctx.html#a7ac9fbdc8d9e07461ae46e89de5dec68',1,'grpc_mdctx']]],
+ ['have_5falarm',['have_alarm',['../structgrpc__subchannel.html#a04c16f8c09717fcda07708f4d2924e30',1,'grpc_subchannel::have_alarm()'],['../structgrpc__call.html#a8ef6ebfaceedd93d50960c7e11a279b2',1,'grpc_call::have_alarm()']]],
+ ['have_5fread_5fbyte',['have_read_byte',['../structinternal__request.html#aff291a650e0020e9a09beb9cc64298f9',1,'internal_request']]],
+ ['hc_5fon_5frecv',['hc_on_recv',['../structcall__data.html#ab0f1ff70c9a8a72f5eb2e778fe709baf',1,'call_data']]],
+ ['hdr_5fcapacity',['hdr_capacity',['../structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77',1,'grpc_httpcli_parser']]],
+ ['hdr_5fcount',['hdr_count',['../structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0',1,'grpc_httpcli_request::hdr_count()'],['../structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e',1,'grpc_httpcli_response::hdr_count()']]],
+ ['hdrs',['hdrs',['../structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6',1,'grpc_httpcli_request::hdrs()'],['../structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d',1,'grpc_httpcli_response::hdrs()']]],
+ ['head',['head',['../structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73',1,'grpc_chttp2_stream_list::head()'],['../structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a',1,'grpc_mdelem_list::head()'],['../structgpr__stack__lockfree.html#a63a10f40dc93803a1d97846f659860eb',1,'gpr_stack_lockfree::head()']]],
+ ['header',['header',['../structverifier__cb__ctx.html#a300805c3f085e1a830e26030a0c823ad',1,'verifier_cb_ctx']]],
+ ['header_5feof',['header_eof',['../structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50',1,'grpc_chttp2_transport_parsing']]],
+ ['header_5fidx',['header_idx',['../structframer__state.html#a8f1aacf4453938a5e335e77c6d775dc1',1,'framer_state']]],
+ ['heap',['heap',['../structshard__type.html#ae212a2061cff7c73ff1c208174272070',1,'shard_type']]],
+ ['heap_5findex',['heap_index',['../structgrpc__alarm.html#adef760998486aa79b9637e95a83e061b',1,'grpc_alarm']]],
+ ['help',['help',['../structarg.html#a7c3bb14ce3710281f4f5c511961823df',1,'arg']]],
+ ['host',['host',['../structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631',1,'grpc_call_details::host()'],['../structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d',1,'grpc_httpcli_request::host()'],['../structinternal__request.html#ab545c1a0948fde5ebcf3a38e4bb2e976',1,'internal_request::host()'],['../structcall__data.html#a5b3ab9bd0e3c549bf9ad739f0011b995',1,'call_data::host()'],['../structchannel__registered__method.html#a6f9cc4376a5b8955a060f089720f2e9d',1,'channel_registered_method::host()'],['../structregistered__method.html#ac8947363747871cca9a921739b686545',1,'registered_method::host()']]],
+ ['host_5fcapacity',['host_capacity',['../structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1',1,'grpc_call_details']]],
+ ['host_5fkey',['host_key',['../structchannel__data.html#acf1f4e1f7664686d2c41072763080cf6',1,'channel_data']]],
+ ['hpack_5fcompressor',['hpack_compressor',['../structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460',1,'grpc_chttp2_transport_writing']]],
+ ['hpack_5fparser',['hpack_parser',['../structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d',1,'grpc_chttp2_transport_parsing']]],
+ ['hs_5fon_5frecv',['hs_on_recv',['../structcall__data.html#a449389cf74cdadc8a00b52990c7052d5',1,'call_data']]],
+ ['http_5fctx',['http_ctx',['../structgrpc__jwt__verifier.html#a0dbb6661ebad9689425e9a3e24c67a3d',1,'grpc_jwt_verifier']]],
+ ['http_5fscheme',['http_scheme',['../structchannel__data.html#a76cf628a9f2165700655595e349dc71c',1,'channel_data']]],
+ ['httpcli_5fcontext',['httpcli_context',['../structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8',1,'grpc_oauth2_token_fetcher_credentials']]],
+ ['https_5fscheme',['https_scheme',['../structchannel__data.html#a64d3d8ab7ed7ca08eb8e1e1823051d97',1,'channel_data']]],
+ ['huff',['huff',['../structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5',1,'grpc_chttp2_hpack_parser']]],
+ ['huff_5fstate',['huff_state',['../structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c',1,'grpc_chttp2_hpack_parser']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_8.html b/doc/ref/core.internal/html/search/variables_8.html
new file mode 100644
index 0000000000..aa13bf24a5
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_8.js b/doc/ref/core.internal/html/search/variables_8.js
new file mode 100644
index 0000000000..d0481036ad
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_8.js
@@ -0,0 +1,66 @@
+var searchData=
+[
+ ['iam_5fmd',['iam_md',['../structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8',1,'grpc_iam_credentials']]],
+ ['iat',['iat',['../structgrpc__jwt__claims.html#a4f50dadfd0a2d3493065b5b4faf84fef',1,'grpc_jwt_claims']]],
+ ['id',['id',['../structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3',1,'census_stat::id()'],['../structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745',1,'grpc_chttp2_settings_parser::id()'],['../structgrpc__chttp2__outstanding__ping.html#a3cf40734ac72489211630654aaa02bd9',1,'grpc_chttp2_outstanding_ping::id()'],['../structgrpc__chttp2__stream__global.html#af978119004439db266373fc347d553d4',1,'grpc_chttp2_stream_global::id()'],['../structgrpc__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832',1,'grpc_chttp2_stream_writing::id()'],['../structgrpc__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83',1,'grpc_chttp2_stream_parsing::id()']]],
+ ['in_5farray',['in_array',['../structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438',1,'grpc_json_reader']]],
+ ['in_5fflight_5fcbs',['in_flight_cbs',['../structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2',1,'grpc_pollset']]],
+ ['in_5fobject',['in_object',['../structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6',1,'grpc_json_reader']]],
+ ['in_5fstream_5fmap',['in_stream_map',['../structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4',1,'grpc_chttp2_stream_global']]],
+ ['inactive_5fwatcher_5froot',['inactive_watcher_root',['../structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8',1,'grpc_fd']]],
+ ['included',['included',['../structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95',1,'grpc_chttp2_stream']]],
+ ['incoming',['incoming',['../structtsi__fake__handshaker.html#a88e5531bc9e28f480211209fe0d68e14',1,'tsi_fake_handshaker']]],
+ ['incoming_5fconfiguration',['incoming_configuration',['../structchannel__data.html#a2b20db607d1a87fa17b260cac4a121f0',1,'channel_data']]],
+ ['incoming_5fframe_5fflags',['incoming_frame_flags',['../structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fframe_5fsize',['incoming_frame_size',['../structgrpc__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fframe_5ftype',['incoming_frame_type',['../structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fmessage',['incoming_message',['../structgrpc__call.html#a98eafd66de3d31324c7a9c113dfb9a56',1,'grpc_call']]],
+ ['incoming_5fmessage_5fflags',['incoming_message_flags',['../structgrpc__call.html#a4c3b082e465f93d090d6f523e197b43a',1,'grpc_call']]],
+ ['incoming_5fmessage_5flength',['incoming_message_length',['../structgrpc__call.html#a51fb682fa9024d09b2e137edb2fc13d0',1,'grpc_call']]],
+ ['incoming_5fmetadata',['incoming_metadata',['../structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5',1,'grpc_chttp2_stream_global::incoming_metadata()'],['../structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc',1,'grpc_chttp2_stream_parsing::incoming_metadata()']]],
+ ['incoming_5fqueue',['incoming_queue',['../structgrpc__call.html#ae217707d3befc054ac994f12de9e10bb',1,'grpc_call']]],
+ ['incoming_5fsettings',['incoming_settings',['../structgrpc__chttp2__settings__parser.html#a4b6b73681cb815b663dda8008ff3d519',1,'grpc_chttp2_settings_parser']]],
+ ['incoming_5fsopb',['incoming_sopb',['../structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c',1,'grpc_chttp2_data_parser::incoming_sopb()'],['../structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e',1,'grpc_chttp2_stream_global::incoming_sopb()']]],
+ ['incoming_5fstream',['incoming_stream',['../structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fstream_5fid',['incoming_stream_id',['../structgrpc__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732',1,'grpc_chttp2_transport_parsing']]],
+ ['incoming_5fwindow',['incoming_window',['../structgrpc__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3',1,'grpc_chttp2_transport_global::incoming_window()'],['../structgrpc__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498',1,'grpc_chttp2_transport_parsing::incoming_window()'],['../structgrpc__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363',1,'grpc_chttp2_stream_global::incoming_window()'],['../structgrpc__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622',1,'grpc_chttp2_stream_parsing::incoming_window()']]],
+ ['incoming_5fwindow_5fdelta',['incoming_window_delta',['../structgrpc__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9',1,'grpc_chttp2_transport_parsing::incoming_window_delta()'],['../structgrpc__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed',1,'grpc_chttp2_stream_parsing::incoming_window_delta()']]],
+ ['indent',['indent',['../structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de',1,'grpc_json_writer']]],
+ ['index',['index',['../structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6',1,'grpc_auth_property_iterator::index()'],['../structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb',1,'grpc_byte_buffer_reader::index()'],['../structgrpc__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef',1,'grpc_chttp2_hpack_parser::index()'],['../structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea',1,'grpc_chttp2_hptbl_find_result::index()'],['../structlockfree__node__contents.html#a928cde9bc69482abb79427725c16b8f7',1,'lockfree_node_contents::index()']]],
+ ['indices_5felems',['indices_elems',['../structgrpc__chttp2__hpack__compressor.html#ae15305b7ada7f6b084088b9ab64240a1',1,'grpc_chttp2_hpack_compressor']]],
+ ['indices_5fkeys',['indices_keys',['../structgrpc__chttp2__hpack__compressor.html#abd71f91eced6cc4bfdef970d00bbe808',1,'grpc_chttp2_hpack_compressor']]],
+ ['init_5favg',['init_avg',['../structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224',1,'grpc_time_averaged_stats']]],
+ ['init_5fcall_5felem',['init_call_elem',['../structgrpc__channel__filter.html#aea34a13bc660ba869d4c18ed6cd21c2b',1,'grpc_channel_filter']]],
+ ['init_5fchannel_5felem',['init_channel_elem',['../structgrpc__channel__filter.html#a7171b1634e5a7d42880f68ae1a4f875a',1,'grpc_channel_filter']]],
+ ['init_5fstream',['init_stream',['../structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f',1,'grpc_transport_vtable']]],
+ ['initial_5fmetadata',['initial_metadata',['../structrequested__call.html#a813caeee0e35952179d319607847c7b7',1,'requested_call']]],
+ ['initial_5fwindow_5fupdate',['initial_window_update',['../structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c',1,'grpc_chttp2_transport_parsing']]],
+ ['inlined',['inlined',['../structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28',1,'gpr_slice::inlined()'],['../structgpr__slice__buffer.html#adb678a23dc27e50c478bc48d365420e2',1,'gpr_slice_buffer::inlined()']]],
+ ['inlined_5fops',['inlined_ops',['../structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301',1,'grpc_stream_op_buffer']]],
+ ['inner',['inner',['../structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805',1,'grpc_composite_credentials']]],
+ ['input',['input',['../structjson__reader__userdata.html#abccbf0e7d9695f00948288df13ba4c7e',1,'json_reader_userdata']]],
+ ['input_5fbuffer',['input_buffer',['../structsecure__endpoint.html#abc32a14befcf93c3a16dcb9e8fa66ef4',1,'secure_endpoint']]],
+ ['integer',['integer',['../structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554',1,'grpc_arg']]],
+ ['interested_5fparties',['interested_parties',['../structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac',1,'grpc_connect_in_args']]],
+ ['internal_5fdata',['internal_data',['../structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553',1,'grpc_metadata']]],
+ ['internal_5frefcount',['internal_refcount',['../structgrpc__call.html#a8aedf0fd044d8d985172fd02293ed55d',1,'grpc_call::internal_refcount()'],['../structgrpc__server.html#ab5c3bf8e55920a90654d31c6a0836e93',1,'grpc_server::internal_refcount()']]],
+ ['into_5fssl',['into_ssl',['../structtsi__ssl__handshaker.html#a6d79399d2bf72081032843d9800dcaa6',1,'tsi_ssl_handshaker::into_ssl()'],['../structtsi__ssl__frame__protector.html#ac1162fd08a5da7a1c5f142251beb9934',1,'tsi_ssl_frame_protector::into_ssl()']]],
+ ['invalid_5fvalue_5fbehavior',['invalid_value_behavior',['../structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df',1,'grpc_chttp2_setting_parameters']]],
+ ['iomgr_5fobj',['iomgr_obj',['../structinternal__request.html#a16edaecfecf5937255d86d07ab3be4d0',1,'internal_request']]],
+ ['iomgr_5fobject',['iomgr_object',['../structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc',1,'grpc_fd::iomgr_object()'],['../structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6',1,'grpc_winsocket::iomgr_object()']]],
+ ['is_5fack',['is_ack',['../structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c',1,'grpc_chttp2_ping_parser::is_ack()'],['../structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec',1,'grpc_chttp2_settings_parser::is_ack()']]],
+ ['is_5fasync',['is_async',['../structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806',1,'grpc_fake_oauth2_credentials']]],
+ ['is_5fboundary',['is_boundary',['../structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec',1,'grpc_chttp2_hpack_parser']]],
+ ['is_5fclient',['is_client',['../structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e',1,'grpc_chttp2_transport_global::is_client()'],['../structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57',1,'grpc_chttp2_transport_writing::is_client()'],['../structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58',1,'grpc_chttp2_transport_parsing::is_client()'],['../structtsi__fake__handshaker.html#ab3817b146f5d0d09232581e33bfd50f0',1,'tsi_fake_handshaker::is_client()'],['../structgrpc__call.html#a5a4810b490545e9b18b488bef197314f',1,'grpc_call::is_client()'],['../structgrpc__channel.html#a4bfedb17fb28f088111e21abd9c2c4cc',1,'grpc_channel::is_client()']]],
+ ['is_5fclient_5fside',['is_client_side',['../structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd',1,'grpc_security_connector']]],
+ ['is_5fconnection_5fupdate',['is_connection_update',['../structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca',1,'grpc_chttp2_window_update_parser']]],
+ ['is_5fdone',['is_done',['../structcompute__engine__detector.html#a1b82128e01e4041639ff7e3f5286207d',1,'compute_engine_detector']]],
+ ['is_5feof',['is_eof',['../structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b',1,'grpc_chttp2_hpack_parser']]],
+ ['is_5fframe_5fcompressed',['is_frame_compressed',['../structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7',1,'grpc_chttp2_data_parser']]],
+ ['is_5flast_5fframe',['is_last_frame',['../structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e',1,'grpc_chttp2_data_parser']]],
+ ['is_5flast_5fsend',['is_last_send',['../structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f',1,'grpc_transport_stream_op']]],
+ ['is_5fserver_5fcq',['is_server_cq',['../structgrpc__completion__queue.html#a495f730490aa5625bb7ce2604ee8e6d7',1,'grpc_completion_queue']]],
+ ['is_5fset',['is_set',['../structreceived__status.html#a39555cb7bcc2ccf18854bd73136c9c03',1,'received_status']]],
+ ['is_5fshutdown',['is_shutdown',['../structgrpc__server__secure__state.html#aea11767a6c8e97a44574e8e3a368deec',1,'grpc_server_secure_state']]],
+ ['iss',['iss',['../structgrpc__jwt__claims.html#a69f31f01a0d1cac4f79f0a46ed4e6593',1,'grpc_jwt_claims']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_9.html b/doc/ref/core.internal/html/search/variables_9.html
new file mode 100644
index 0000000000..78cc249f7d
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_9.js b/doc/ref/core.internal/html/search/variables_9.js
new file mode 100644
index 0000000000..f01bc408a2
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_9.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['json',['json',['../structgrpc__jwt__claims.html#add6f381accf815cd0b7385fded17fae5',1,'grpc_jwt_claims']]],
+ ['jti',['jti',['../structgrpc__jwt__claims.html#abf5af69634298aaeeae5a0a2e6ef60f9',1,'grpc_jwt_claims']]],
+ ['jwt_5fexpiration',['jwt_expiration',['../structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a',1,'grpc_service_account_jwt_access_credentials']]],
+ ['jwt_5flifetime',['jwt_lifetime',['../structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126',1,'grpc_service_account_jwt_access_credentials']]],
+ ['jwt_5fmd',['jwt_md',['../structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533',1,'grpc_service_account_jwt_access_credentials']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_a.html b/doc/ref/core.internal/html/search/variables_a.html
new file mode 100644
index 0000000000..592abaa33c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_a.js b/doc/ref/core.internal/html/search/variables_a.js
new file mode 100644
index 0000000000..4db97b4ca6
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_a.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['key',['key',['../structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968',1,'grpc_arg::key()'],['../structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7',1,'grpc_metadata::key()'],['../structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e',1,'grpc_httpcli_header::key()'],['../structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53',1,'grpc_credentials_md::key()'],['../structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32',1,'grpc_service_account_jwt_access_credentials::key()'],['../structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd',1,'grpc_service_account_credentials::key()'],['../structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6',1,'grpc_json::key()'],['../structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10',1,'grpc_chttp2_hpack_parser::key()'],['../structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94',1,'grpc_mdelem::key()'],['../structjson__reader__userdata.html#ac7750253670b78b205a06c2e371ac418',1,'json_reader_userdata::key()'],['../structinternal__metadata.html#a1ef3f9e31e4380c0ec8fce01714c0fa3',1,'internal_metadata::key()'],['../structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece',1,'gpr_pthread_thread_local::key()'],['../hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542',1,'key():&#160;hpack_table.c']]],
+ ['key_5furl_5fprefix',['key_url_prefix',['../structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec',1,'grpc_jwt_verifier_email_domain_key_url_mapping::key_url_prefix()'],['../structemail__key__mapping.html#a0c0fa6aa94861adf3c6a4f5f9579d37a',1,'email_key_mapping::key_url_prefix()']]],
+ ['keys',['keys',['../structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6',1,'grpc_chttp2_stream_map']]],
+ ['kick',['kick',['../structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc',1,'grpc_pollset_vtable']]],
+ ['kick_5fstate',['kick_state',['../structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f',1,'grpc_pollset']]],
+ ['kicked',['kicked',['../structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8',1,'grpc_pollset_kick_state']]],
+ ['kid',['kid',['../structjose__header.html#ae38087aaf6d4e0670bb5deda4375f719',1,'jose_header']]],
+ ['kill_5fzombie_5fclosure',['kill_zombie_closure',['../structcall__data.html#a2a1ef01585059d467002ce70f6fa03d1',1,'call_data']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_b.html b/doc/ref/core.internal/html/search/variables_b.html
new file mode 100644
index 0000000000..78052a1e03
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_b.js b/doc/ref/core.internal/html/search/variables_b.js
new file mode 100644
index 0000000000..99b1bbdb6f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_b.js
@@ -0,0 +1,22 @@
+var searchData=
+[
+ ['last_5fent',['last_ent',['../structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b',1,'grpc_chttp2_hptbl']]],
+ ['last_5fincoming_5fstream_5fid',['last_incoming_stream_id',['../structgrpc__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362',1,'grpc_chttp2_transport_global::last_incoming_stream_id()'],['../structgrpc__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542',1,'grpc_chttp2_transport_parsing::last_incoming_stream_id()']]],
+ ['last_5fsend_5fcontains',['last_send_contains',['../structgrpc__call.html#a4428a5f3615eb7ed703cb5650c379225',1,'grpc_call']]],
+ ['last_5fshutdown_5fmessage_5ftime',['last_shutdown_message_time',['../structgrpc__server.html#aba4f032ca63d1a654bd2a7776dfb6b6f',1,'grpc_server']]],
+ ['last_5fstream_5fid',['last_stream_id',['../structgrpc__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be',1,'grpc_chttp2_goaway_parser']]],
+ ['last_5fwas_5fheader',['last_was_header',['../structframer__state.html#a81d1d4409a7212a9da08212e55772b20',1,'framer_state']]],
+ ['lb_5fpolicy',['lb_policy',['../structchannel__data.html#a3cbf28a9634e67af5aea0af6363e4d94',1,'channel_data::lb_policy()'],['../structlb__policy__connectivity__watcher.html#a2e56bc230933c8ee0f5dbacf58e1805c',1,'lb_policy_connectivity_watcher::lb_policy()'],['../structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9',1,'grpc_client_config::lb_policy()']]],
+ ['lb_5fpolicy_5ffactory',['lb_policy_factory',['../structdns__resolver.html#a9e7953dbbac44c59c5f8d2946e4295f7',1,'dns_resolver::lb_policy_factory()'],['../structsockaddr__resolver.html#a3d3d40590716456f336738170ad3f3e8',1,'sockaddr_resolver::lb_policy_factory()']]],
+ ['left_5fovers',['left_overs',['../structgrpc__secure__transport__setup.html#ac057ddae29de167423a28ff357acab20',1,'grpc_secure_transport_setup']]],
+ ['leftover_5fbytes',['leftover_bytes',['../structsecure__endpoint.html#a46eca04c2167e2d459c0a7aab630bf8a',1,'secure_endpoint']]],
+ ['len',['len',['../structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56',1,'grpc_resolved_address']]],
+ ['length',['length',['../structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7',1,'tsi_peer_property::length()'],['../structgrpc__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5',1,'grpc_chttp2_hpack_parser_string::length()'],['../structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88',1,'grpc_chttp2_huffsym::length()'],['../structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0',1,'grpc_begin_message::length()'],['../structb64__huff__sym.html#a32397c9284689efd11eb89236d8d69e2',1,'b64_huff_sym::length()'],['../structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5',1,'gpr_slice::length()'],['../structgpr__slice.html#acd3242f89b2999d12788e65337662cf3',1,'gpr_slice::length()'],['../structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3',1,'gpr_slice_buffer::length()'],['../structdump__out.html#ae5a2d8bf503113afc8d2da2cb36d70ad',1,'dump_out::length()']]],
+ ['line',['line',['../structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb',1,'gpr_log_func_args']]],
+ ['links',['links',['../structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624',1,'grpc_chttp2_stream']]],
+ ['list',['list',['../structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d',1,'grpc_metadata_batch::list()'],['../structshard__type.html#a9e5f5db6f2eb96346ad17f43f731b31f',1,'shard_type::list()']]],
+ ['listeners',['listeners',['../structgrpc__server.html#a8034614967f908b2de453975996bdb7f',1,'grpc_server']]],
+ ['listeners_5fdestroyed',['listeners_destroyed',['../structgrpc__server.html#aa36374d7075e4d6af2c2c2cb8dc26552',1,'grpc_server']]],
+ ['lists',['lists',['../structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a',1,'grpc_chttp2_transport']]],
+ ['locked',['locked',['../structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342',1,'gpr_mu']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_c.html b/doc/ref/core.internal/html/search/variables_c.html
new file mode 100644
index 0000000000..b2260e465b
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_c.js b/doc/ref/core.internal/html/search/variables_c.js
new file mode 100644
index 0000000000..ece87af05c
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_c.js
@@ -0,0 +1,45 @@
+var searchData=
+[
+ ['mappings',['mappings',['../structgrpc__jwt__verifier.html#a1d15c7406be10b7fc86775320b2afac4',1,'grpc_jwt_verifier']]],
+ ['master',['master',['../structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275',1,'grpc_subchannel_args::master()'],['../structsubchannel__factory.html#ab7945d086262563fdde51b250893e428',1,'subchannel_factory::master()'],['../structchannel__data.html#a185d2abf35cf1fbdaa13b4fb097bda5e',1,'channel_data::master()'],['../structgrpc__subchannel.html#a7662fa59b78e15ce10c272651e82b70d',1,'grpc_subchannel::master()']]],
+ ['masters',['masters',['../structgrpc__call.html#a6a0e7c0825db8dc7561af44663cbd75d',1,'grpc_call']]],
+ ['max_5fbytes',['max_bytes',['../structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b',1,'grpc_chttp2_hptbl']]],
+ ['max_5fframe_5fsize',['max_frame_size',['../structtsi__fake__frame__protector.html#a03f274c6362a35ad486d91fdac777816',1,'tsi_fake_frame_protector']]],
+ ['max_5fmessage_5flength',['max_message_length',['../structgrpc__channel.html#af25859261f7e57e5c5f2bbafda64dbf1',1,'grpc_channel']]],
+ ['max_5fpossible',['max_possible',['../structgpr__histogram.html#af94ad5cd243aff89bbe7b0a9918dab77',1,'gpr_histogram']]],
+ ['max_5frecv_5fbytes',['max_recv_bytes',['../structgrpc__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7',1,'grpc_chttp2_stream_global::max_recv_bytes()'],['../structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b',1,'grpc_transport_stream_op::max_recv_bytes()']]],
+ ['max_5frequested_5fcalls',['max_requested_calls',['../structgrpc__server.html#aaaa9b2a91b6e3edd7ebb0b194110f403',1,'grpc_server']]],
+ ['max_5fseen',['max_seen',['../structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1',1,'gpr_histogram']]],
+ ['max_5fvalue',['max_value',['../structgrpc__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001',1,'grpc_chttp2_setting_parameters']]],
+ ['maybe_5fwork',['maybe_work',['../structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f',1,'grpc_pollset_vtable']]],
+ ['md',['md',['../structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715',1,'grpc_linked_mdelem']]],
+ ['md_5fctx',['md_ctx',['../structchannel__data.html#ad12b240dea3a1193fa08327ef1e4553e',1,'channel_data']]],
+ ['md_5felems',['md_elems',['../structgrpc__composite__credentials__metadata__context.html#a5102b59e552251b072c0ac96020b43ea',1,'grpc_composite_credentials_metadata_context']]],
+ ['md_5flinks',['md_links',['../structcall__data.html#a0cb931b8950cc5841edf1156ca861600',1,'call_data']]],
+ ['mdctx',['mdctx',['../structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477',1,'grpc_subchannel_args::mdctx()'],['../structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b',1,'grpc_chttp2_hptbl::mdctx()'],['../structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c',1,'grpc_chttp2_hpack_compressor::mdctx()'],['../structsubchannel__factory.html#a920af9d40dedd8ba5eb2f64648eb5008',1,'subchannel_factory::mdctx()'],['../structchannel__data.html#a8ccd22d950d3fda54a0f338d55d1f813',1,'channel_data::mdctx()'],['../structgrpc__subchannel.html#a2e2040552b5320c9a91a6e080760f96a',1,'grpc_subchannel::mdctx()']]],
+ ['mdelem_5fcompression_5falgorithms',['mdelem_compression_algorithms',['../structchannel__data.html#a4af222359dc97dc96780402413bb015d',1,'channel_data']]],
+ ['mdstr_5foutgoing_5fcompression_5falgorithm_5fkey',['mdstr_outgoing_compression_algorithm_key',['../structchannel__data.html#aeb493774aec5abf500f8ef36b99553d6',1,'channel_data']]],
+ ['mdstr_5frequest_5fcompression_5falgorithm_5fkey',['mdstr_request_compression_algorithm_key',['../structchannel__data.html#a9c1ff3982fc4510f367df5a35960abcb',1,'channel_data']]],
+ ['mdtab',['mdtab',['../structgrpc__mdctx.html#adff99895d519ab72b9c66a23de57156c',1,'grpc_mdctx']]],
+ ['mdtab_5fcapacity',['mdtab_capacity',['../structgrpc__mdctx.html#ab79559486a14c29803dd0f6464afe2df',1,'grpc_mdctx']]],
+ ['mdtab_5fcount',['mdtab_count',['../structgrpc__mdctx.html#af513520e504950d327e9a41cb1781779',1,'grpc_mdctx']]],
+ ['mdtab_5ffree',['mdtab_free',['../structgrpc__mdctx.html#a42820dc23bdea76b0d2a7e7db3d64131',1,'grpc_mdctx']]],
+ ['mem_5fused',['mem_used',['../structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878',1,'grpc_chttp2_hptbl']]],
+ ['merge_5fargs',['merge_args',['../structsubchannel__factory.html#a0538fbb1dc64ec4ab487326b64792bde',1,'subchannel_factory::merge_args()'],['../structmerge__args__factory.html#a973c42ea64bda49e62c9648f1d9eb919',1,'merge_args_factory::merge_args()']]],
+ ['message',['message',['../structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b',1,'gpr_log_func_args']]],
+ ['metadata',['metadata',['../structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe',1,'grpc_metadata_array::metadata()'],['../structgrpc__op.html#a2e0f0c709658960593d5a36915c8d079',1,'grpc_op::metadata()'],['../uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968',1,'grpc_ioreq_data::metadata()'],['../structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464',1,'grpc_stream_op::metadata()']]],
+ ['metadata_5fcontext',['metadata_context',['../structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e',1,'grpc_connect_in_args::metadata_context()'],['../structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2',1,'grpc_chttp2_transport::metadata_context()'],['../structgrpc__call.html#a1fcf672edf744df8c192aba2da0da3f2',1,'grpc_call::metadata_context()'],['../structgrpc__channel.html#a715d3ad3606de80c57ea96570e364ec8',1,'grpc_channel::metadata_context()']]],
+ ['method',['method',['../structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5',1,'grpc_call_details::method()'],['../structcall__data.html#a7d9cd71936be176040c5f69a78d695b0',1,'call_data::method()'],['../structcall__data.html#a296c3fce88125964cfc50c927249bc4a',1,'call_data::method()'],['../structchannel__data.html#a78079d15b762dcc791e6e996951d9f6a',1,'channel_data::method()'],['../structchannel__registered__method.html#a7d2b4e40ba59b8b98e1b06b94f7345f1',1,'channel_registered_method::method()'],['../structregistered__method.html#a84540106ff6f3763d9ada701667cf77d',1,'registered_method::method()']]],
+ ['method_5fcapacity',['method_capacity',['../structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0',1,'grpc_call_details']]],
+ ['method_5fpost',['method_post',['../structchannel__data.html#a05461a751cad059d57ccd5ed3c698fd7',1,'channel_data']]],
+ ['min_5fdeadline',['min_deadline',['../structshard__type.html#a16cac3c86f6ac95b49f7a8b703dc4f07',1,'shard_type']]],
+ ['min_5fseen',['min_seen',['../structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf',1,'gpr_histogram']]],
+ ['min_5fvalue',['min_value',['../structgrpc__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82',1,'grpc_chttp2_setting_parameters']]],
+ ['mu',['mu',['../structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45',1,'grpc_oauth2_token_fetcher_credentials::mu()'],['../structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a',1,'grpc_pollset_kick_state::mu()'],['../structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924',1,'grpc_pollset::mu()'],['../structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703',1,'grpc_pollset_set::mu()'],['../structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e',1,'grpc_chttp2_transport::mu()'],['../structgrpc__server__secure__state.html#a6572a200d1489334fa4af215ccffa717',1,'grpc_server_secure_state::mu()'],['../structpick__first__lb__policy.html#a5bc2719af90ffde998983bdeeacfd764',1,'pick_first_lb_policy::mu()'],['../structdns__resolver.html#aa1661d76a33a19a305d5edb1b354ce8a',1,'dns_resolver::mu()'],['../structsockaddr__resolver.html#a9ac37ca23a45425c9af702236f53c81d',1,'sockaddr_resolver::mu()'],['../structgrpc__subchannel.html#a020e44ce2c4d73d26c63a4ec9f2f3e14',1,'grpc_subchannel::mu()'],['../structshard__type.html#ae0271c419d83a06ab69fe48ce3e3196b',1,'shard_type::mu()'],['../structgrpc__call.html#a0641698dba5cf939dbc61e2a6019199c',1,'grpc_call::mu()'],['../structstate__watcher.html#a39ac8f332dc6a1b6a9bf0815b6912327',1,'state_watcher::mu()'],['../structgrpc__mdctx.html#a3c1051440f8ce4c48c38a08f5a478c4e',1,'grpc_mdctx::mu()'],['../structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282',1,'gpr_cancellable_list_::mu()'],['../structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f',1,'gpr_cancellable::mu()']]],
+ ['mu_5fcall',['mu_call',['../structgrpc__server.html#a4d89504a094de15aa4a208c0159d904b',1,'grpc_server']]],
+ ['mu_5fconfig',['mu_config',['../structchannel__data.html#a925aa059f74c20ba06718d45b78382af',1,'channel_data']]],
+ ['mu_5fglobal',['mu_global',['../structgrpc__server.html#a2f291ce57ed6540efe5c99e607be3a27',1,'grpc_server']]],
+ ['mu_5fstate',['mu_state',['../structcall__data.html#aa671a127b29c32228f221a6121515a64',1,'call_data']]],
+ ['mu_5fuser_5fdata',['mu_user_data',['../structinternal__metadata.html#a04fa79f6da10ebdc3c337277b0997657',1,'internal_metadata']]],
+ ['multiplier',['multiplier',['../structgpr__histogram.html#aa3b6846c10a297bf1a9706ab348ffead',1,'gpr_histogram']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_d.html b/doc/ref/core.internal/html/search/variables_d.html
new file mode 100644
index 0000000000..f47799968f
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_d.js b/doc/ref/core.internal/html/search/variables_d.js
new file mode 100644
index 0000000000..f90a0aadd1
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_d.js
@@ -0,0 +1,33 @@
+var searchData=
+[
+ ['naddrs',['naddrs',['../structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8',1,'grpc_resolved_addresses']]],
+ ['name',['name',['../structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7',1,'grpc_auth_property_iterator::name()'],['../structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27',1,'grpc_auth_property::name()'],['../structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67',1,'tsi_peer_property::name()'],['../structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6',1,'grpc_channel_filter::name()'],['../structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf',1,'grpc_iomgr_object::name()'],['../structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f',1,'grpc_chttp2_setting_parameters::name()'],['../structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8',1,'grpc_connectivity_state_tracker::name()'],['../structdns__resolver.html#a5670dbafe81b9e38af022bd5cf907fa3',1,'dns_resolver::name()'],['../structtracer.html#a08a3bb14c306ce7394df6a5bb56e6eb3',1,'tracer::name()'],['../structarg.html#a19d6eebdcc5e2c4679c5f77760adb5dc',1,'arg::name()']]],
+ ['nbf',['nbf',['../structgrpc__jwt__claims.html#a294f9a7e9e2cc0820c469b7b340c980a',1,'grpc_jwt_claims']]],
+ ['need_5fmask',['need_mask',['../structreqinfo__master.html#af1092f7b58950276ec6b35da0f7e1fd5',1,'reqinfo_master']]],
+ ['needs_5fdraining',['needs_draining',['../structtsi__fake__frame.html#a5c19114ec65853283cf5234b8bef611b',1,'tsi_fake_frame']]],
+ ['needs_5fincoming_5fmessage',['needs_incoming_message',['../structtsi__fake__handshaker.html#a5b5522b09970836d1867fc4c08411c91',1,'tsi_fake_handshaker']]],
+ ['new_5fstream_5fmap',['new_stream_map',['../structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca',1,'grpc_chttp2_transport']]],
+ ['next',['next',['../structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0',1,'grpc_resolver_vtable::next()'],['../structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab',1,'grpc_alarm::next()'],['../structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae',1,'grpc_fd_watcher::next()'],['../structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef',1,'grpc_iomgr_closure::next()'],['../structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c',1,'grpc_iomgr_object::next()'],['../structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f',1,'grpc_kick_fd_info::next()'],['../structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2',1,'grpc_json::next()'],['../structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948',1,'grpc_cq_completion::next()'],['../structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de',1,'grpc_chttp2_stream_link::next()'],['../structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f',1,'grpc_chttp2_outstanding_ping::next()'],['../structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388',1,'grpc_connectivity_state_watcher::next()'],['../structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef',1,'grpc_linked_mdelem::next()'],['../structtcp__endpoint__list.html#aaeb000e9fe236631fc1355b657a9e1fe',1,'tcp_endpoint_list::next()'],['../structpending__pick.html#abecbb432724c24c523d0cfda19f7b1c1',1,'pending_pick::next()'],['../structwaiting__for__connect.html#a62c2a3b3fa576054930f40d722716438',1,'waiting_for_connect::next()'],['../structtracer.html#aec6b92c7c58fec94b57b7a2385c3c3c1',1,'tracer::next()'],['../structregistered__call.html#a81f1e87dddb1f37ff09a9aaa56ca62cd',1,'registered_call::next()'],['../structlistener.html#afd926873c32f6f18eff932b871c7a9d7',1,'listener::next()'],['../structcall__link.html#a61d52b76dfba4d08d6c453392dea6947',1,'call_link::next()'],['../structchannel__data.html#a7cbc7853658b85e4f62f37a71189a3d7',1,'channel_data::next()'],['../structregistered__method.html#a662f0ff612e8211e1ac2ff2bc7350776',1,'registered_method::next()'],['../structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a',1,'gpr_cancellable_list_::next()'],['../structarg.html#a5e585c92ebdfcf1c6d966d887d07f7ff',1,'arg::next()']]],
+ ['next_5faddress',['next_address',['../structinternal__request.html#a76357b043a6e64d3254650151c2795bb',1,'internal_request']]],
+ ['next_5fattempt',['next_attempt',['../structgrpc__subchannel.html#a6ee4fc265d48aad4c76411a80001ac5c',1,'grpc_subchannel']]],
+ ['next_5fcompletion',['next_completion',['../structdns__resolver.html#a6ed64036e71eb1ee7dc886adb51820d6',1,'dns_resolver::next_completion()'],['../structsockaddr__resolver.html#acd7a423835a4be78a041f895bba3b421',1,'sockaddr_resolver::next_completion()']]],
+ ['next_5fmessage_5fto_5fsend',['next_message_to_send',['../structtsi__fake__handshaker.html#ab343e56591aa9bae847d1af36534ecbe',1,'tsi_fake_handshaker']]],
+ ['next_5fstate',['next_state',['../structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1',1,'grpc_chttp2_hpack_parser']]],
+ ['next_5fstream_5fid',['next_stream_id',['../structgrpc__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f',1,'grpc_chttp2_transport_global::next_stream_id()'],['../structgrpc__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9',1,'grpc_chttp2_transport_parsing::next_stream_id()']]],
+ ['nops',['nops',['../structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b',1,'grpc_stream_op_buffer']]],
+ ['notify',['notify',['../structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f',1,'grpc_connectivity_state_watcher::notify()'],['../structconnector.html#ae73053d157c31e9015427d56228e7123',1,'connector::notify()'],['../structwaiting__for__connect.html#a8e497a44e87d2780b2f7dbd2dd006526',1,'waiting_for_connect::notify()']]],
+ ['notify_5fon_5fread',['notify_on_read',['../structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2',1,'grpc_endpoint_vtable']]],
+ ['notify_5fon_5fstate_5fchange',['notify_on_state_change',['../structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed',1,'grpc_lb_policy_vtable']]],
+ ['num_5fargs',['num_args',['../structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde',1,'grpc_channel_args']]],
+ ['num_5fbuckets',['num_buckets',['../structgpr__histogram.html#a039f2094c3aea146aaf6a9a75bc5ab12',1,'gpr_histogram']]],
+ ['num_5fchannels',['num_channels',['../structchannel__broadcaster.html#a0b95a339b9c30a54d2f33b336be1c0c9',1,'channel_broadcaster']]],
+ ['num_5fcompleted_5frequests',['num_completed_requests',['../structgrpc__call.html#ae92d9e5f96d5e80d9c480ab79e051ada',1,'grpc_call']]],
+ ['num_5fcreds',['num_creds',['../structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96',1,'grpc_credentials_array']]],
+ ['num_5fentries',['num_entries',['../structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259',1,'grpc_credentials_md_store']]],
+ ['num_5fents',['num_ents',['../structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1',1,'grpc_chttp2_hptbl']]],
+ ['num_5ffilters',['num_filters',['../structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3',1,'grpc_connect_out_args::num_filters()'],['../structgrpc__subchannel.html#a0d8559ba4069f1940a92d6d58d4f4009',1,'grpc_subchannel::num_filters()']]],
+ ['num_5fkey_5fcert_5fpairs',['num_key_cert_pairs',['../structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c',1,'grpc_ssl_server_config']]],
+ ['num_5fmappings',['num_mappings',['../structgrpc__jwt__verifier.html#a5c116d4a596479e9acb28be8c5adc3b5',1,'grpc_jwt_verifier']]],
+ ['num_5fshutdown_5ftags',['num_shutdown_tags',['../structgrpc__server.html#afd8d25139f82d26ce567e4a1a786b54b',1,'grpc_server']]],
+ ['num_5fsubchannels',['num_subchannels',['../structpick__first__lb__policy.html#a39415d22c1bb4ace43e7abc6331f08e1',1,'pick_first_lb_policy']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_e.html b/doc/ref/core.internal/html/search/variables_e.html
new file mode 100644
index 0000000000..1165006622
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_e.js b/doc/ref/core.internal/html/search/variables_e.js
new file mode 100644
index 0000000000..2fda9d24e3
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_e.js
@@ -0,0 +1,48 @@
+var searchData=
+[
+ ['obfuscated',['obfuscated',['../structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f',1,'grpc_metadata']]],
+ ['offset',['offset',['../structtsi__fake__frame.html#ab1fe06dcec5ebffc85112c9a726ed3f6',1,'tsi_fake_frame']]],
+ ['on_5fchanged',['on_changed',['../structlb__policy__connectivity__watcher.html#ab9bd1ed9605d5f575ea8e2ce51ed597c',1,'lb_policy_connectivity_watcher']]],
+ ['on_5fcomplete',['on_complete',['../structpending__pick.html#a754316904bce1aec5d5afcc61b2b5abe',1,'pending_pick::on_complete()'],['../structcompleted__request.html#a2abd9edaf87e7b33717d655f9651a26a',1,'completed_request::on_complete()'],['../structreqinfo__master.html#a77f3e6ff12d266f5e2d0b49ed590a344',1,'reqinfo_master::on_complete()'],['../structstate__watcher.html#a3bd085c4cbd7f167fa42b7191f502d39',1,'state_watcher::on_complete()']]],
+ ['on_5fconfig_5fchanged',['on_config_changed',['../structchannel__data.html#a5a8db474fbde3443ad862229ef3be367',1,'channel_data']]],
+ ['on_5fconnectivity_5fstate_5fchange',['on_connectivity_state_change',['../structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953',1,'grpc_transport_op']]],
+ ['on_5fconsumed',['on_consumed',['../structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93',1,'grpc_transport_stream_op::on_consumed()'],['../structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a',1,'grpc_transport_op::on_consumed()']]],
+ ['on_5fdone_5fbind',['on_done_bind',['../structgrpc__call.html#a14ae475238cf1ae8b2d022c7a6b755b7',1,'grpc_call']]],
+ ['on_5fdone_5fclosure',['on_done_closure',['../structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f',1,'grpc_fd']]],
+ ['on_5fdone_5frecv',['on_done_recv',['../structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479',1,'grpc_transport_stream_op::on_done_recv()'],['../structcall__data.html#a3c7f4d12b26ecd073c992c56fa9c098d',1,'call_data::on_done_recv()'],['../structgrpc__call.html#a7397b6f80ed39e5e5b3cf1c68e88e959',1,'grpc_call::on_done_recv()']]],
+ ['on_5fdone_5fsend',['on_done_send',['../structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07',1,'grpc_transport_stream_op::on_done_send()'],['../structgrpc__call.html#a4cef85f8e845ae1f24f043e5d853a843',1,'grpc_call::on_done_send()']]],
+ ['on_5fheader',['on_header',['../structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f',1,'grpc_chttp2_hpack_parser']]],
+ ['on_5fheader_5fuser_5fdata',['on_header_user_data',['../structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b',1,'grpc_chttp2_hpack_parser']]],
+ ['on_5frecv',['on_recv',['../structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c',1,'grpc_chttp2_outstanding_ping']]],
+ ['on_5fresponse',['on_response',['../structinternal__request.html#a4679ca2c4587920feca983ac852ef2b6',1,'internal_request']]],
+ ['on_5fsimulated_5ftoken_5ffetch_5fdone_5fclosure',['on_simulated_token_fetch_done_closure',['../structgrpc__credentials__metadata__request.html#a31c83ca54622158600b17ebcc6047af8',1,'grpc_credentials_metadata_request']]],
+ ['one_5fon_5flog_5fmultiplier',['one_on_log_multiplier',['../structgpr__histogram.html#a63929f09cc7a7feedf7b1f330b0458c3',1,'gpr_histogram']]],
+ ['op',['op',['../structgrpc__op.html#a702bcecc2462646b6740ed7c05f42115',1,'grpc_op::op()'],['../structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0',1,'grpc_ioreq::op()'],['../structcall__data.html#a0d259211de98a88e11c71fa93abd2877',1,'call_data::op()']]],
+ ['op_5fid',['op_id',['../structcensus__context.html#ab46ba00da079c14fed8259bae560fdac',1,'census_context']]],
+ ['op_5fmd_5fidx',['op_md_idx',['../structcall__data.html#aaa6841afd5ac22f2538e950688f8e67b',1,'call_data']]],
+ ['opaque',['opaque',['../structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154',1,'grpc_winsocket_callback_info']]],
+ ['opaque_5f8bytes',['opaque_8bytes',['../structgrpc__chttp2__ping__parser.html#a338f5adfa9a1236094e16c36c5cd5b4e',1,'grpc_chttp2_ping_parser']]],
+ ['ops',['ops',['../structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975',1,'grpc_stream_op_buffer']]],
+ ['optional_5fpayload',['optional_payload',['../structrequested__call.html#a5c928486fa8b32b8ff89a672de5b4e2c',1,'requested_call']]],
+ ['orphan',['orphan',['../structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08',1,'grpc_winsocket']]],
+ ['out',['out',['../structhuff__out.html#a2d501bd162d6a335c51b2250e3f1bfef',1,'huff_out']]],
+ ['outbuf',['outbuf',['../structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0',1,'grpc_chttp2_transport_writing']]],
+ ['outgoing',['outgoing',['../structtsi__fake__handshaker.html#aa25567cc12e88a59cbf9ba3b51d90223',1,'tsi_fake_handshaker']]],
+ ['outgoing_5fsopb',['outgoing_sopb',['../structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d',1,'grpc_chttp2_stream_global']]],
+ ['outgoing_5fwindow',['outgoing_window',['../structgrpc__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7',1,'grpc_chttp2_transport_global::outgoing_window()'],['../structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec',1,'grpc_chttp2_stream_global::outgoing_window()']]],
+ ['outgoing_5fwindow_5fupdate',['outgoing_window_update',['../structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a',1,'grpc_chttp2_transport_parsing::outgoing_window_update()'],['../structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196',1,'grpc_chttp2_stream_parsing::outgoing_window_update()']]],
+ ['output',['output',['../structjson__writer__userdata.html#a1f55aaf048a0ff4414110e154133867d',1,'json_writer_userdata::output()'],['../structframer__state.html#ac6ebee785ebffe4a16a2ccd010ad08d6',1,'framer_state::output()']]],
+ ['output_5fbuffer',['output_buffer',['../structsecure__endpoint.html#a901c720fdbd311bbaea1e91b441a0d61',1,'secure_endpoint']]],
+ ['output_5fchar',['output_char',['../structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2',1,'grpc_json_writer_vtable']]],
+ ['output_5flength_5fat_5fstart_5fof_5fframe',['output_length_at_start_of_frame',['../structframer__state.html#a268504b075ec06de3ff0abb7ee7e589b',1,'framer_state']]],
+ ['output_5fstring',['output_string',['../structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e',1,'grpc_json_writer_vtable']]],
+ ['output_5fstring_5fwith_5flen',['output_string_with_len',['../structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd',1,'grpc_json_writer_vtable']]],
+ ['outstanding',['outstanding',['../structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc',1,'grpc_winsocket_callback_info']]],
+ ['outstanding_5fmetadata',['outstanding_metadata',['../structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0',1,'grpc_chttp2_stream_global']]],
+ ['overlapped',['overlapped',['../structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09',1,'grpc_winsocket_callback_info']]],
+ ['overridden_5ftarget_5fname',['overridden_target_name',['../structgrpc__ssl__channel__security__connector.html#aaa9e644fdf517be178f1543922ddbe9a',1,'grpc_ssl_channel_security_connector']]],
+ ['owned_5fmetadata',['owned_metadata',['../structgrpc__call.html#a3d2b2ada096589b52bfafa00be6e25b2',1,'grpc_call']]],
+ ['owned_5fmetadata_5fcapacity',['owned_metadata_capacity',['../structgrpc__call.html#a34cb5caca97e3b28ed0d321d9d38f6c8',1,'grpc_call']]],
+ ['owned_5fmetadata_5fcount',['owned_metadata_count',['../structgrpc__call.html#acc8804b9c6ee72c862e9eba7518a48ee',1,'grpc_call']]],
+ ['owning_5frefs',['owning_refs',['../structgrpc__completion__queue.html#aae47cbaaca85ca3f9e7cb2317709f8e6',1,'grpc_completion_queue']]]
+];
diff --git a/doc/ref/core.internal/html/search/variables_f.html b/doc/ref/core.internal/html/search/variables_f.html
new file mode 100644
index 0000000000..537dd7c28e
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/core.internal/html/search/variables_f.js b/doc/ref/core.internal/html/search/variables_f.js
new file mode 100644
index 0000000000..12c6fcceca
--- /dev/null
+++ b/doc/ref/core.internal/html/search/variables_f.js
@@ -0,0 +1,67 @@
+var searchData=
+[
+ ['p',['p',['../structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d',1,'grpc_arg']]],
+ ['parent',['parent',['../structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba',1,'grpc_json']]],
+ ['parser',['parser',['../structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61',1,'grpc_chttp2_transport_parsing::parser()'],['../structinternal__request.html#a2de0ab3497414fd48d1a180c4473cfab',1,'internal_request::parser()']]],
+ ['parser_5fdata',['parser_data',['../structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442',1,'grpc_chttp2_transport_parsing']]],
+ ['parsing',['parsing',['../structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae',1,'grpc_chttp2_hpack_parser::parsing()'],['../structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c',1,'grpc_chttp2_transport::parsing()'],['../structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9',1,'grpc_chttp2_stream::parsing()']]],
+ ['parsing_5factive',['parsing_active',['../structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3',1,'grpc_chttp2_transport']]],
+ ['parsing_5fstream_5fmap',['parsing_stream_map',['../structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937',1,'grpc_chttp2_transport']]],
+ ['path',['path',['../structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa',1,'grpc_httpcli_request::path()'],['../structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f',1,'grpc_uri::path()'],['../structregistered__call.html#a9abf9cadc3985fe0eacd827dcb857ea5',1,'registered_call::path()'],['../structcall__data.html#a6bcb3a806a24c9818f835251b97c01f8',1,'call_data::path()']]],
+ ['path_5fkey',['path_key',['../structchannel__data.html#ad664631571a7160913f62e95368bbb2d',1,'channel_data']]],
+ ['path_5fstring',['path_string',['../structchannel__data.html#a3b2675d97ec1d95dc4cde4db5b00e0e7',1,'channel_data::path_string()'],['../structgrpc__channel.html#ad55dee766f5bae6c7bc00ad07bcb4b04',1,'grpc_channel::path_string()']]],
+ ['peer',['peer',['../structgrpc__ssl__channel__security__connector.html#a8624078f54a0cf3dfdd47f4a0ac81042',1,'grpc_ssl_channel_security_connector']]],
+ ['peer_5fidentity_5fproperty_5fname',['peer_identity_property_name',['../structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33',1,'grpc_auth_context']]],
+ ['peer_5fstring',['peer_string',['../structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7',1,'grpc_chttp2_transport']]],
+ ['pem_5fcert_5fchain',['pem_cert_chain',['../structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696',1,'grpc_ssl_config']]],
+ ['pem_5fcert_5fchain_5fsize',['pem_cert_chain_size',['../structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03',1,'grpc_ssl_config']]],
+ ['pem_5fcert_5fchains',['pem_cert_chains',['../structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270',1,'grpc_ssl_server_config']]],
+ ['pem_5fcert_5fchains_5fsizes',['pem_cert_chains_sizes',['../structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0',1,'grpc_ssl_server_config']]],
+ ['pem_5fprivate_5fkey',['pem_private_key',['../structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a',1,'grpc_ssl_config']]],
+ ['pem_5fprivate_5fkey_5fsize',['pem_private_key_size',['../structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820',1,'grpc_ssl_config']]],
+ ['pem_5fprivate_5fkeys',['pem_private_keys',['../structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49',1,'grpc_ssl_server_config']]],
+ ['pem_5fprivate_5fkeys_5fsizes',['pem_private_keys_sizes',['../structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c',1,'grpc_ssl_server_config']]],
+ ['pem_5froot_5fcerts',['pem_root_certs',['../structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41',1,'grpc_ssl_config::pem_root_certs()'],['../structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d',1,'grpc_ssl_server_config::pem_root_certs()']]],
+ ['pem_5froot_5fcerts_5fsize',['pem_root_certs_size',['../structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561',1,'grpc_ssl_config::pem_root_certs_size()'],['../structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121',1,'grpc_ssl_server_config::pem_root_certs_size()']]],
+ ['pending_5fclosures_5fhead',['pending_closures_head',['../structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84',1,'grpc_chttp2_transport_global']]],
+ ['pending_5fclosures_5ftail',['pending_closures_tail',['../structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf',1,'grpc_chttp2_transport_global']]],
+ ['pending_5fevents',['pending_events',['../structgrpc__completion__queue.html#a613cc61628fa742f363fb3125e8550db',1,'grpc_completion_queue']]],
+ ['pending_5fhead',['pending_head',['../structrequest__matcher.html#aa302d9766527338ff4b416b59bbe1db2',1,'request_matcher']]],
+ ['pending_5fnext',['pending_next',['../structcall__data.html#ad76af7080f636ebaa53a1575af62094e',1,'call_data']]],
+ ['pending_5fpicks',['pending_picks',['../structpick__first__lb__policy.html#a017af289ea4d9b9b392eadec3356ff56',1,'pick_first_lb_policy']]],
+ ['pending_5ftail',['pending_tail',['../structrequest__matcher.html#a87b7e22827aea02c49a435f8aff3cdfe',1,'request_matcher']]],
+ ['perform_5fop',['perform_op',['../structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4',1,'grpc_transport_vtable']]],
+ ['perform_5fstream_5fop',['perform_stream_op',['../structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab',1,'grpc_transport_vtable']]],
+ ['persistence_5ffactor',['persistence_factor',['../structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602',1,'grpc_time_averaged_stats']]],
+ ['phase',['phase',['../structstate__watcher.html#a02cd41caaad234931890c2f4740bf345',1,'state_watcher']]],
+ ['pick',['pick',['../structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f',1,'grpc_lb_policy_vtable']]],
+ ['picked_5fchannel',['picked_channel',['../structcall__data.html#a96231ab5cca907d5638687fc2d64cccb',1,'call_data']]],
+ ['ping',['ping',['../structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30',1,'grpc_chttp2_transport_parsing']]],
+ ['ping_5fcounter',['ping_counter',['../structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7',1,'grpc_chttp2_transport_global']]],
+ ['pings',['pings',['../structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad',1,'grpc_chttp2_transport_global::pings()'],['../structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b',1,'grpc_chttp2_transport_parsing::pings()']]],
+ ['pointer',['pointer',['../structgrpc__arg.html#a85b5bbfbdec09ae46cff15628096137a',1,'grpc_arg']]],
+ ['pollset',['pollset',['../structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6',1,'grpc_fd_watcher::pollset()'],['../structinternal__request.html#aba6c008fc3a067827acf1dea8d88dec7',1,'internal_request::pollset()'],['../structcall__data.html#ab3a66a414a73ad49d82a87935ec0c08e',1,'call_data::pollset()'],['../structgrpc__composite__credentials__metadata__context.html#a826b0b290b5335867fb0299e75006083',1,'grpc_composite_credentials_metadata_context::pollset()'],['../structcompute__engine__detector.html#aadec91057716658d818c9dd3ead90ccd',1,'compute_engine_detector::pollset()'],['../structverifier__cb__ctx.html#a66c16d6c5a98e27b0bdc901f4f2f010a',1,'verifier_cb_ctx::pollset()'],['../structpending__pick.html#afcad270e19b4e1e0a709426ca42e01fe',1,'pending_pick::pollset()'],['../structwaiting__for__connect.html#a18622a8e1fc008c3c9e97d0ae72a4369',1,'waiting_for_connect::pollset()'],['../structgrpc__completion__queue.html#aea3ae4f771564833e6082e50c4ebbbdc',1,'grpc_completion_queue::pollset()']]],
+ ['pollset_5fcapacity',['pollset_capacity',['../structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7',1,'grpc_pollset_set']]],
+ ['pollset_5fcount',['pollset_count',['../structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9',1,'grpc_pollset_set']]],
+ ['pollset_5fset',['pollset_set',['../structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2',1,'grpc_httpcli_context::pollset_set()'],['../structchannel__data.html#ac98d4251e7919399dc6504b3ac6d8977',1,'channel_data::pollset_set()'],['../structgrpc__subchannel.html#a5d4cf69a350aa223319ed1d916ae55d0',1,'grpc_subchannel::pollset_set()']]],
+ ['pollsets',['pollsets',['../structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb',1,'grpc_pollset_set::pollsets()'],['../structgrpc__server.html#a747c9f6abd58918d40735615ad95e434',1,'grpc_server::pollsets()']]],
+ ['prev',['prev',['../structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97',1,'grpc_alarm::prev()'],['../structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465',1,'grpc_fd_watcher::prev()'],['../structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d',1,'grpc_iomgr_object::prev()'],['../structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44',1,'grpc_kick_fd_info::prev()'],['../structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee',1,'grpc_json::prev()'],['../structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400',1,'grpc_chttp2_stream_link::prev()'],['../structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6',1,'grpc_chttp2_outstanding_ping::prev()'],['../structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0',1,'grpc_linked_mdelem::prev()'],['../structcall__link.html#abbc2f63926a688bd3fc03f5df8705bc3',1,'call_link::prev()'],['../structchannel__data.html#afbde4416755c3c9a0b7d0021e8e290c5',1,'channel_data::prev()'],['../structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4',1,'gpr_cancellable_list_::prev()']]],
+ ['private_5fkey',['private_key',['../structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72',1,'grpc_ssl_pem_key_cert_pair::private_key()'],['../structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2',1,'grpc_auth_json_key::private_key()']]],
+ ['private_5fkey_5fid',['private_key_id',['../structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4',1,'grpc_auth_json_key']]],
+ ['process_5fbytes_5ffrom_5fpeer',['process_bytes_from_peer',['../structtsi__handshaker__vtable.html#aefed0ec53fa68de5417c720357c50a38',1,'tsi_handshaker_vtable']]],
+ ['properties',['properties',['../structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7',1,'grpc_auth_context::properties()'],['../structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a',1,'tsi_peer::properties()']]],
+ ['property_5fcount',['property_count',['../structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b',1,'grpc_auth_context::property_count()'],['../structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8',1,'tsi_peer::property_count()']]],
+ ['protect',['protect',['../structtsi__frame__protector__vtable.html#aa9c6a8a8c0154365f7a62924e1ad458f',1,'tsi_frame_protector_vtable']]],
+ ['protect_5fflush',['protect_flush',['../structtsi__frame__protector__vtable.html#a4dc40054ebcebc5d9bc87a63adce0614',1,'tsi_frame_protector_vtable']]],
+ ['protect_5fframe',['protect_frame',['../structtsi__fake__frame__protector.html#a279c6e7620230ba5c790f7063846dbce',1,'tsi_fake_frame_protector']]],
+ ['protector',['protector',['../structsecure__endpoint.html#a43b8ec6db9164ca64be2b1629822d5ec',1,'secure_endpoint']]],
+ ['protector_5fmu',['protector_mu',['../structsecure__endpoint.html#a4fa8c5008b701606701d1d93c989961e',1,'secure_endpoint']]],
+ ['ptr',['ptr',['../structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009',1,'grpc_pollset']]],
+ ['publish_5fsopb',['publish_sopb',['../structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe',1,'grpc_chttp2_stream_global']]],
+ ['publish_5fstate',['publish_state',['../structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3',1,'grpc_chttp2_stream_global']]],
+ ['published',['published',['../structsockaddr__resolver.html#a38967133a685f7d20effceaaeec54e5e',1,'sockaddr_resolver']]],
+ ['published_5fcancelled',['published_cancelled',['../structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be',1,'grpc_chttp2_stream_global']]],
+ ['published_5fstate',['published_state',['../structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665',1,'grpc_chttp2_stream_global']]],
+ ['published_5fversion',['published_version',['../structdns__resolver.html#aaf1729e3f0480a378eb4689e6105454b',1,'dns_resolver']]],
+ ['pushed',['pushed',['../structgpr__stack__lockfree.html#a2e9bcdf7ab0d5eba90feec6754a7884a',1,'gpr_stack_lockfree']]]
+];
diff --git a/doc/ref/core.internal/html/secure__channel__create_8c.html b/doc/ref/core.internal/html/secure__channel__create_8c.html
new file mode 100644
index 0000000000..c8bf00aa86
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__channel__create_8c.html
@@ -0,0 +1,183 @@
+<!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: src/core/surface/secure_channel_create.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">secure_channel_create.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="client__channel_8h_source.html">src/core/channel/client_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="compress__filter_8h_source.html">src/core/channel/compress_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="http__client__filter_8h_source.html">src/core/channel/http_client_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolver__registry_8h_source.html">src/core/client_config/resolver_registry.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="tcp__client_8h_source.html">src/core/iomgr/tcp_client.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="auth__filters_8h_source.html">src/core/security/auth_filters.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="secure__transport__setup_8h_source.html">src/core/security/secure_transport_setup.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html">connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html">subchannel_factory</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a9b1446343e6c9b066f546fcb7b33fba2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__channel__create_8c.html#a9b1446343e6c9b066f546fcb7b33fba2">MAX_FILTERS</a>&#160;&#160;&#160;3</td></tr>
+<tr class="separator:a9b1446343e6c9b066f546fcb7b33fba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4d63d4cac74652ec3fac7782acb4a2d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__channel__create_8c.html#a4d63d4cac74652ec3fac7782acb4a2d4">grpc_secure_channel_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds, const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a4d63d4cac74652ec3fac7782acb4a2d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a9b1446343e6c9b066f546fcb7b33fba2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_FILTERS&#160;&#160;&#160;3</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4d63d4cac74652ec3fac7782acb4a2d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_secure_channel_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/secure__endpoint_8c.html b/doc/ref/core.internal/html/secure__endpoint_8c.html
new file mode 100644
index 0000000000..2248796c04
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__endpoint_8c.html
@@ -0,0 +1,199 @@
+<!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: src/core/security/secure_endpoint.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">secure_endpoint.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="secure__endpoint_8h_source.html">src/core/security/secure_endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html">secure_endpoint</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a323532623f3183502482bb853c503353"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8c.html#a323532623f3183502482bb853c503353">STAGING_BUFFER_SIZE</a>&#160;&#160;&#160;8192</td></tr>
+<tr class="separator:a323532623f3183502482bb853c503353"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a76ef547d32b0955572a841108518e611"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8c.html#a76ef547d32b0955572a841108518e611">grpc_secure_endpoint_create</a> (struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *protector, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *transport, <a class="el" href="structgpr__slice.html">gpr_slice</a> *leftover_slices, size_t leftover_nslices)</td></tr>
+<tr class="separator:a76ef547d32b0955572a841108518e611"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7778bdc8c40adac0dc536fe255b75fbd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8c.html#a7778bdc8c40adac0dc536fe255b75fbd">grpc_trace_secure_endpoint</a> = 0</td></tr>
+<tr class="separator:a7778bdc8c40adac0dc536fe255b75fbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a323532623f3183502482bb853c503353"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STAGING_BUFFER_SIZE&#160;&#160;&#160;8192</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a76ef547d32b0955572a841108518e611"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_secure_endpoint_create </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>protector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>leftover_slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>leftover_nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7778bdc8c40adac0dc536fe255b75fbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_trace_secure_endpoint = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/secure__endpoint_8h.html b/doc/ref/core.internal/html/secure__endpoint_8h.html
new file mode 100644
index 0000000000..3d4fbbb2e6
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__endpoint_8h.html
@@ -0,0 +1,169 @@
+<!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: src/core/security/secure_endpoint.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">secure_endpoint.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="secure__endpoint_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae8cdf93fdcca82849830e6f333807f66"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66">grpc_secure_endpoint_create</a> (struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *protector, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *to_wrap, <a class="el" href="structgpr__slice.html">gpr_slice</a> *leftover_slices, size_t leftover_nslices)</td></tr>
+<tr class="separator:ae8cdf93fdcca82849830e6f333807f66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a7778bdc8c40adac0dc536fe255b75fbd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd">grpc_trace_secure_endpoint</a></td></tr>
+<tr class="separator:a7778bdc8c40adac0dc536fe255b75fbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae8cdf93fdcca82849830e6f333807f66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_secure_endpoint_create </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>protector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>to_wrap</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>leftover_slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>leftover_nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a7778bdc8c40adac0dc536fe255b75fbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_trace_secure_endpoint</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/secure__endpoint_8h_source.html b/doc/ref/core.internal/html/secure__endpoint_8h_source.html
new file mode 100644
index 0000000000..955bff5141
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__endpoint_8h_source.html
@@ -0,0 +1,155 @@
+<!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: src/core/security/secure_endpoint.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">secure_endpoint.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="secure__endpoint_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_SECURE_ENDPOINT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_SECURE_ENDPOINT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">struct </span><a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd">grpc_trace_secure_endpoint</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* Takes ownership of protector and to_wrap, and refs leftover_slices. */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66">grpc_secure_endpoint_create</a>(</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">struct</span> <a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a> *protector, <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *to_wrap,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *leftover_slices, <span class="keywordtype">size_t</span> leftover_nslices);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_SECURE_ENDPOINT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structtsi__frame__protector_html"><div class="ttname"><a href="structtsi__frame__protector.html">tsi_frame_protector</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:65</div></div>
+<div class="ttc" id="secure__endpoint_8h_html_a7778bdc8c40adac0dc536fe255b75fbd"><div class="ttname"><a href="secure__endpoint_8h.html#a7778bdc8c40adac0dc536fe255b75fbd">grpc_trace_secure_endpoint</a></div><div class="ttdeci">int grpc_trace_secure_endpoint</div><div class="ttdef"><b>Definition:</b> secure_endpoint.c:68</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="secure__endpoint_8h_html_ae8cdf93fdcca82849830e6f333807f66"><div class="ttname"><a href="secure__endpoint_8h.html#ae8cdf93fdcca82849830e6f333807f66">grpc_secure_endpoint_create</a></div><div class="ttdeci">grpc_endpoint * grpc_secure_endpoint_create(struct tsi_frame_protector *protector, grpc_endpoint *to_wrap, gpr_slice *leftover_slices, size_t leftover_nslices)</div><div class="ttdef"><b>Definition:</b> secure_endpoint.c:351</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/secure__transport__setup_8c.html b/doc/ref/core.internal/html/secure__transport__setup_8c.html
new file mode 100644
index 0000000000..08b16c7cf5
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__transport__setup_8c.html
@@ -0,0 +1,177 @@
+<!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: src/core/security/secure_transport_setup.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">secure_transport_setup.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="secure__transport__setup_8h_source.html">src/core/security/secure_transport_setup.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="secure__endpoint_8h_source.html">src/core/security/secure_endpoint.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html">grpc_secure_transport_setup</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7faeebb3ced4358f4e7db1428923b013"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__transport__setup_8c.html#a7faeebb3ced4358f4e7db1428923b013">GRPC_INITIAL_HANDSHAKE_BUFFER_SIZE</a>&#160;&#160;&#160;256</td></tr>
+<tr class="separator:a7faeebb3ced4358f4e7db1428923b013"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abf337cd72839248e089c1646f8fa7bc8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__transport__setup_8c.html#abf337cd72839248e089c1646f8fa7bc8">grpc_setup_secure_transport</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="el" href="structconnector.html">connector</a>, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *nonsecure_endpoint, <a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:abf337cd72839248e089c1646f8fa7bc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a7faeebb3ced4358f4e7db1428923b013"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_INITIAL_HANDSHAKE_BUFFER_SIZE&#160;&#160;&#160;256</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="abf337cd72839248e089c1646f8fa7bc8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_setup_secure_transport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>nonsecure_endpoint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/secure__transport__setup_8h.html b/doc/ref/core.internal/html/secure__transport__setup_8h.html
new file mode 100644
index 0000000000..bcb2e8f4cf
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__transport__setup_8h.html
@@ -0,0 +1,169 @@
+<!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: src/core/security/secure_transport_setup.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">secure_transport_setup.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+</div>
+<p><a href="secure__transport__setup_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a87e784b2a78827a00d144f0fcd119ed8"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a> )(void *user_data, <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> status, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *wrapped_endpoint, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="el" href="structsecure__endpoint.html">secure_endpoint</a>)</td></tr>
+<tr class="separator:a87e784b2a78827a00d144f0fcd119ed8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abf337cd72839248e089c1646f8fa7bc8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8">grpc_setup_secure_transport</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="el" href="structconnector.html">connector</a>, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *nonsecure_endpoint, <a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:abf337cd72839248e089c1646f8fa7bc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a87e784b2a78827a00d144f0fcd119ed8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_secure_transport_setup_done_cb)(void *user_data, <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> status, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *wrapped_endpoint, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="el" href="structsecure__endpoint.html">secure_endpoint</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="abf337cd72839248e089c1646f8fa7bc8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_setup_secure_transport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>nonsecure_endpoint</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/secure__transport__setup_8h_source.html b/doc/ref/core.internal/html/secure__transport__setup_8h_source.html
new file mode 100644
index 0000000000..e9030c4570
--- /dev/null
+++ b/doc/ref/core.internal/html/secure__transport__setup_8h_source.html
@@ -0,0 +1,161 @@
+<!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: src/core/security/secure_transport_setup.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">secure_transport_setup.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="secure__transport__setup_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_SECURE_TRANSPORT_SETUP_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_SECURE_TRANSPORT_SETUP_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="security__connector_8h.html">src/core/security/security_connector.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* --- Secure transport setup --- */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* Ownership of the secure_endpoint is transfered. */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8"> 43</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a>)(</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">void</span> *user_data, <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> status,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *wrapped_endpoint, <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="structsecure__endpoint.html">secure_endpoint</a>);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Calls the callback upon completion. */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8">grpc_setup_secure_transport</a>(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="code" href="structconnector.html">connector</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *nonsecure_endpoint,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a> cb,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_SECURE_TRANSPORT_SETUP_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structsecure__endpoint_html"><div class="ttname"><a href="structsecure__endpoint.html">secure_endpoint</a></div><div class="ttdef"><b>Definition:</b> secure_endpoint.c:46</div></div>
+<div class="ttc" id="secure__transport__setup_8h_html_abf337cd72839248e089c1646f8fa7bc8"><div class="ttname"><a href="secure__transport__setup_8h.html#abf337cd72839248e089c1646f8fa7bc8">grpc_setup_secure_transport</a></div><div class="ttdeci">void grpc_setup_secure_transport(grpc_security_connector *connector, grpc_endpoint *nonsecure_endpoint, grpc_secure_transport_setup_done_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> secure_transport_setup.c:271</div></div>
+<div class="ttc" id="structconnector_html"><div class="ttname"><a href="structconnector.html">connector</a></div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:54</div></div>
+<div class="ttc" id="secure__transport__setup_8h_html_a87e784b2a78827a00d144f0fcd119ed8"><div class="ttname"><a href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a></div><div class="ttdeci">void(* grpc_secure_transport_setup_done_cb)(void *user_data, grpc_security_status status, grpc_endpoint *wrapped_endpoint, grpc_endpoint *secure_endpoint)</div><div class="ttdef"><b>Definition:</b> secure_transport_setup.h:43</div></div>
+<div class="ttc" id="security__connector_8h_html"><div class="ttname"><a href="security__connector_8h.html">security_connector.h</a></div></div>
+<div class="ttc" id="structgrpc__security__connector_html"><div class="ttname"><a href="structgrpc__security__connector.html">grpc_security_connector</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:75</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a></div><div class="ttdeci">grpc_security_status</div><div class="ttdef"><b>Definition:</b> security_connector.h:43</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/security__connector_8c.html b/doc/ref/core.internal/html/security__connector_8c.html
new file mode 100644
index 0000000000..62cc8be080
--- /dev/null
+++ b/doc/ref/core.internal/html/security__connector_8c.html
@@ -0,0 +1,534 @@
+<!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: src/core/security/security_connector.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">security_connector.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="secure__endpoint_8h_source.html">src/core/security/secure_endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__context_8h_source.html">src/core/security/security_context.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="env_8h_source.html">src/core/support/env.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="file_8h_source.html">src/core/support/file.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alpn_8h_source.html">src/core/transport/chttp2/alpn.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="host__port_8h_source.html">grpc/support/host_port.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="fake__transport__security_8h_source.html">src/core/tsi/fake_transport_security.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="ssl__transport__security_8h_source.html">src/core/tsi/ssl_transport_security.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__channel__security__connector.html">grpc_fake_channel_security_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__channel__security__connector.html">grpc_ssl_channel_security_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__security__connector.html">grpc_ssl_server_security_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab67f630ea3179d8d418fddcdc0deef5c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#ab67f630ea3179d8d418fddcdc0deef5c">GRPC_SSL_CIPHER_SUITES</a></td></tr>
+<tr class="separator:ab67f630ea3179d8d418fddcdc0deef5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4e8c8c71595e5af0861880070356ce66"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a4e8c8c71595e5af0861880070356ce66">tsi_peer_get_property_by_name</a> (const <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer, const char *name)</td></tr>
+<tr class="separator:a4e8c8c71595e5af0861880070356ce66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af81a7b903de0636a73b0e852b36a7fde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#af81a7b903de0636a73b0e852b36a7fde">grpc_security_connector_create_handshaker</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td></tr>
+<tr class="separator:af81a7b903de0636a73b0e852b36a7fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac9a5d6c38755b24c7170789056dec94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#aac9a5d6c38755b24c7170789056dec94">grpc_security_connector_check_peer</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__peer.html">tsi_peer</a> peer, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:aac9a5d6c38755b24c7170789056dec94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a845341440590ee81647b56575eb60168"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a845341440590ee81647b56575eb60168">grpc_channel_security_connector_check_call_host</a> (<a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *sc, const char *host, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a845341440590ee81647b56575eb60168"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04d7906ef7ce6c00705b20f19841c127"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127">grpc_security_connector_ref</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc)</td></tr>
+<tr class="separator:a04d7906ef7ce6c00705b20f19841c127"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a5781bf75358deab0cb2259c6be6359"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359">grpc_security_connector_unref</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc)</td></tr>
+<tr class="separator:a8a5781bf75358deab0cb2259c6be6359"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab609527dad74bcc51e4b8b17b8f47c8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__arg.html">grpc_arg</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#ab609527dad74bcc51e4b8b17b8f47c8a">grpc_security_connector_to_arg</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc)</td></tr>
+<tr class="separator:ab609527dad74bcc51e4b8b17b8f47c8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa427ef1fd3d8e58437215f4da2fd87ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#aa427ef1fd3d8e58437215f4da2fd87ca">grpc_security_connector_from_arg</a> (const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:aa427ef1fd3d8e58437215f4da2fd87ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7db9da4604178cb7e640e744da4b733c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a7db9da4604178cb7e640e744da4b733c">grpc_find_security_connector_in_args</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a7db9da4604178cb7e640e744da4b733c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe2c43cab618ad3b036645d9aa506f12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#abe2c43cab618ad3b036645d9aa506f12">grpc_fake_channel_security_connector_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, int call_host_check_is_async)</td></tr>
+<tr class="separator:abe2c43cab618ad3b036645d9aa506f12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45a42c3c0b40593ac1b8025ba1875417"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a45a42c3c0b40593ac1b8025ba1875417">grpc_fake_server_security_connector_create</a> (void)</td></tr>
+<tr class="separator:a45a42c3c0b40593ac1b8025ba1875417"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12dbc067a07c36d5219ba31f5dffc8c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a12dbc067a07c36d5219ba31f5dffc8c6">tsi_ssl_peer_to_auth_context</a> (const <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:a12dbc067a07c36d5219ba31f5dffc8c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a341f454443268ca27e5cc01219b93fef"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a341f454443268ca27e5cc01219b93fef">grpc_get_default_ssl_roots</a> (const unsigned char **pem_root_certs)</td></tr>
+<tr class="separator:a341f454443268ca27e5cc01219b93fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6db43510beb4d3953f572cbe203c164d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#a6db43510beb4d3953f572cbe203c164d">grpc_ssl_channel_security_connector_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, const <a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a> *config, const char *target_name, const char *overridden_target_name, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc)</td></tr>
+<tr class="separator:a6db43510beb4d3953f572cbe203c164d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0fc288920d58432af4285ec56251248"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8c.html#af0fc288920d58432af4285ec56251248">grpc_ssl_server_security_connector_create</a> (const <a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> *config, <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc)</td></tr>
+<tr class="separator:af0fc288920d58432af4285ec56251248"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ab67f630ea3179d8d418fddcdc0deef5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SSL_CIPHER_SUITES</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="stringliteral">&quot;ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-&quot;</span> \</div>
+<div class="line"> <span class="stringliteral">&quot;SHA384:ECDHE-RSA-AES256-GCM-SHA384&quot;</span></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a845341440590ee81647b56575eb60168"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_channel_security_connector_check_call_host </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abe2c43cab618ad3b036645d9aa506f12"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>* grpc_fake_channel_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata_creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>call_host_check_is_async</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a45a42c3c0b40593ac1b8025ba1875417"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_fake_server_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7db9da4604178cb7e640e744da4b733c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_find_security_connector_in_args </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a341f454443268ca27e5cc01219b93fef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_get_default_ssl_roots </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aac9a5d6c38755b24c7170789056dec94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_security_connector_check_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a>&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af81a7b903de0636a73b0e852b36a7fde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_security_connector_create_handshaker </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **&#160;</td>
+ <td class="paramname"><em>handshaker</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa427ef1fd3d8e58437215f4da2fd87ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_security_connector_from_arg </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td>
+ <td class="paramname"><em>arg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a04d7906ef7ce6c00705b20f19841c127"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_security_connector_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab609527dad74bcc51e4b8b17b8f47c8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__arg.html">grpc_arg</a> grpc_security_connector_to_arg </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8a5781bf75358deab0cb2259c6be6359"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_security_connector_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6db43510beb4d3953f572cbe203c164d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_ssl_channel_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata_creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a> *&#160;</td>
+ <td class="paramname"><em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>overridden_target_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0fc288920d58432af4285ec56251248"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_ssl_server_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> *&#160;</td>
+ <td class="paramname"><em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e8c8c71595e5af0861880070356ce66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>* tsi_peer_get_property_by_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12dbc067a07c36d5219ba31f5dffc8c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* tsi_ssl_peer_to_auth_context </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/security__connector_8h.html b/doc/ref/core.internal/html/security__connector_8h.html
new file mode 100644
index 0000000000..32267cafbc
--- /dev/null
+++ b/doc/ref/core.internal/html/security__connector_8h.html
@@ -0,0 +1,689 @@
+<!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: src/core/security/security_connector.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">security_connector.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc__security_8h_source.html">grpc/grpc_security.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+</div>
+<p><a href="security__connector_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a9e0af76d139286bef4c720bde3a7a6c0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a9e0af76d139286bef4c720bde3a7a6c0">GRPC_SSL_URL_SCHEME</a>&#160;&#160;&#160;&quot;https&quot;</td></tr>
+<tr class="separator:a9e0af76d139286bef4c720bde3a7a6c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac2af4901dde1db04846ccc7bde22272"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#aac2af4901dde1db04846ccc7bde22272">GRPC_FAKE_SECURITY_URL_SCHEME</a>&#160;&#160;&#160;&quot;http+fake_security&quot;</td></tr>
+<tr class="separator:aac2af4901dde1db04846ccc7bde22272"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a047c420294c8769e4512f17d0573e353"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a047c420294c8769e4512f17d0573e353">GRPC_SECURITY_CONNECTOR_ARG</a>&#160;&#160;&#160;&quot;grpc.security_connector&quot;</td></tr>
+<tr class="separator:a047c420294c8769e4512f17d0573e353"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bb32899b45edd908bb61e45db59c460"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a5bb32899b45edd908bb61e45db59c460">GRPC_SECURITY_CONNECTOR_REF</a>(p, r)&#160;&#160;&#160;<a class="el" href="security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127">grpc_security_connector_ref</a>((p))</td></tr>
+<tr class="separator:a5bb32899b45edd908bb61e45db59c460"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1950bc24ce082a50d66b0cd505c069ee"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a1950bc24ce082a50d66b0cd505c069ee">GRPC_SECURITY_CONNECTOR_UNREF</a>(p, r)&#160;&#160;&#160;<a class="el" href="security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359">grpc_security_connector_unref</a>((p))</td></tr>
+<tr class="separator:a1950bc24ce082a50d66b0cd505c069ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a243897cc56b3cff21887ba4c53e52539"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a243897cc56b3cff21887ba4c53e52539">grpc_security_connector</a></td></tr>
+<tr class="separator:a243897cc56b3cff21887ba4c53e52539"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c65e5934491f893a10fb5062f0e08fa"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> )(void *user_data, <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> status)</td></tr>
+<tr class="separator:a2c65e5934491f893a10fb5062f0e08fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbebb4c120eeea2ad96953aae5f656ec"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#afbebb4c120eeea2ad96953aae5f656ec">grpc_channel_security_connector</a></td></tr>
+<tr class="separator:afbebb4c120eeea2ad96953aae5f656ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a7a71a61785f1c3b13704bb735d2645f9"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> { <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b">GRPC_SECURITY_OK</a> = 0,
+<a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8">GRPC_SECURITY_PENDING</a>,
+<a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba">GRPC_SECURITY_ERROR</a>
+ }</td></tr>
+<tr class="separator:a7a71a61785f1c3b13704bb735d2645f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a49e56e5d195b8935306b58dd80cf1ae4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4">grpc_security_connector_ref</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *policy)</td></tr>
+<tr class="separator:a49e56e5d195b8935306b58dd80cf1ae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b6de27f6cdaa1aefddca2679545ee5e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e">grpc_security_connector_unref</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *policy)</td></tr>
+<tr class="separator:a9b6de27f6cdaa1aefddca2679545ee5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af81a7b903de0636a73b0e852b36a7fde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde">grpc_security_connector_create_handshaker</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td></tr>
+<tr class="separator:af81a7b903de0636a73b0e852b36a7fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac9a5d6c38755b24c7170789056dec94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94">grpc_security_connector_check_peer</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__peer.html">tsi_peer</a> peer, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:aac9a5d6c38755b24c7170789056dec94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab609527dad74bcc51e4b8b17b8f47c8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__arg.html">grpc_arg</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a">grpc_security_connector_to_arg</a> (<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc)</td></tr>
+<tr class="separator:ab609527dad74bcc51e4b8b17b8f47c8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa427ef1fd3d8e58437215f4da2fd87ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca">grpc_security_connector_from_arg</a> (const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:aa427ef1fd3d8e58437215f4da2fd87ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7db9da4604178cb7e640e744da4b733c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c">grpc_find_security_connector_in_args</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a7db9da4604178cb7e640e744da4b733c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a845341440590ee81647b56575eb60168"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a845341440590ee81647b56575eb60168">grpc_channel_security_connector_check_call_host</a> (<a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *sc, const char *host, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a845341440590ee81647b56575eb60168"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe2c43cab618ad3b036645d9aa506f12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12">grpc_fake_channel_security_connector_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, int call_host_check_is_async)</td></tr>
+<tr class="separator:abe2c43cab618ad3b036645d9aa506f12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45a42c3c0b40593ac1b8025ba1875417"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417">grpc_fake_server_security_connector_create</a> (void)</td></tr>
+<tr class="separator:a45a42c3c0b40593ac1b8025ba1875417"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6db43510beb4d3953f572cbe203c164d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d">grpc_ssl_channel_security_connector_create</a> (<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, const <a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a> *config, const char *target_name, const char *overridden_target_name, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc)</td></tr>
+<tr class="separator:a6db43510beb4d3953f572cbe203c164d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a341f454443268ca27e5cc01219b93fef"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a341f454443268ca27e5cc01219b93fef">grpc_get_default_ssl_roots</a> (const unsigned char **pem_root_certs)</td></tr>
+<tr class="separator:a341f454443268ca27e5cc01219b93fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0fc288920d58432af4285ec56251248"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#af0fc288920d58432af4285ec56251248">grpc_ssl_server_security_connector_create</a> (const <a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> *config, <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc)</td></tr>
+<tr class="separator:af0fc288920d58432af4285ec56251248"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e8c8c71595e5af0861880070356ce66"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66">tsi_peer_get_property_by_name</a> (const <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer, const char *name)</td></tr>
+<tr class="separator:a4e8c8c71595e5af0861880070356ce66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12dbc067a07c36d5219ba31f5dffc8c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6">tsi_ssl_peer_to_auth_context</a> (const <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:a12dbc067a07c36d5219ba31f5dffc8c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aac2af4901dde1db04846ccc7bde22272"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_FAKE_SECURITY_URL_SCHEME&#160;&#160;&#160;&quot;http+fake_security&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a047c420294c8769e4512f17d0573e353"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SECURITY_CONNECTOR_ARG&#160;&#160;&#160;&quot;grpc.security_connector&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5bb32899b45edd908bb61e45db59c460"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SECURITY_CONNECTOR_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="security__connector_8c.html#a04d7906ef7ce6c00705b20f19841c127">grpc_security_connector_ref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1950bc24ce082a50d66b0cd505c069ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SECURITY_CONNECTOR_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="security__connector_8c.html#a8a5781bf75358deab0cb2259c6be6359">grpc_security_connector_unref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9e0af76d139286bef4c720bde3a7a6c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SSL_URL_SCHEME&#160;&#160;&#160;&quot;https&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="afbebb4c120eeea2ad96953aae5f656ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2c65e5934491f893a10fb5062f0e08fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_security_check_cb)(void *user_data, <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> status)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a243897cc56b3cff21887ba4c53e52539"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a7a71a61785f1c3b13704bb735d2645f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b"></a>GRPC_SECURITY_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8"></a>GRPC_SECURITY_PENDING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba"></a>GRPC_SECURITY_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a845341440590ee81647b56575eb60168"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_channel_security_connector_check_call_host </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abe2c43cab618ad3b036645d9aa506f12"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>* grpc_fake_channel_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata_creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>call_host_check_is_async</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a45a42c3c0b40593ac1b8025ba1875417"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_fake_server_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7db9da4604178cb7e640e744da4b733c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_find_security_connector_in_args </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a341f454443268ca27e5cc01219b93fef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_get_default_ssl_roots </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aac9a5d6c38755b24c7170789056dec94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_security_connector_check_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a>&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af81a7b903de0636a73b0e852b36a7fde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_security_connector_create_handshaker </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **&#160;</td>
+ <td class="paramname"><em>handshaker</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa427ef1fd3d8e58437215f4da2fd87ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_security_connector_from_arg </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td>
+ <td class="paramname"><em>arg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a49e56e5d195b8935306b58dd80cf1ae4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_security_connector_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab609527dad74bcc51e4b8b17b8f47c8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__arg.html">grpc_arg</a> grpc_security_connector_to_arg </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>sc</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b6de27f6cdaa1aefddca2679545ee5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_security_connector_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6db43510beb4d3953f572cbe203c164d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_ssl_channel_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata_creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a> *&#160;</td>
+ <td class="paramname"><em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>target_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>overridden_target_name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0fc288920d58432af4285ec56251248"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> grpc_ssl_server_security_connector_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> *&#160;</td>
+ <td class="paramname"><em>config</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **&#160;</td>
+ <td class="paramname"><em>sc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e8c8c71595e5af0861880070356ce66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>* tsi_peer_get_property_by_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12dbc067a07c36d5219ba31f5dffc8c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* tsi_ssl_peer_to_auth_context </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/security__connector_8h_source.html b/doc/ref/core.internal/html/security__connector_8h_source.html
new file mode 100644
index 0000000000..ca414d8d86
--- /dev/null
+++ b/doc/ref/core.internal/html/security__connector_8h_source.html
@@ -0,0 +1,381 @@
+<!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: src/core/security/security_connector.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">security_connector.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="security__connector_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_SECURITY_CONNECTOR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_SECURITY_CONNECTOR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc__security_8h.html">grpc/grpc_security.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport__security__interface_8h.html">src/core/tsi/transport_security_interface.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* --- status enum. --- */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9"> 43</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b"> 44</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b">GRPC_SECURITY_OK</a> = 0,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8"> 45</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8">GRPC_SECURITY_PENDING</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba"> 46</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba">GRPC_SECURITY_ERROR</a></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* --- URL schemes. --- */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a9e0af76d139286bef4c720bde3a7a6c0"> 51</a></span>&#160;<span class="preprocessor">#define GRPC_SSL_URL_SCHEME &quot;https&quot;</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="security__connector_8h.html#aac2af4901dde1db04846ccc7bde22272"> 52</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_FAKE_SECURITY_URL_SCHEME &quot;http+fake_security&quot;</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* --- security_connector object. ---</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> A security connector object represents away to configure the underlying</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> transport security mechanism and check the resulting trusted peer. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a243897cc56b3cff21887ba4c53e52539"> 59</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a047c420294c8769e4512f17d0573e353"> 61</a></span>&#160;<span class="preprocessor">#define GRPC_SECURITY_CONNECTOR_ARG &quot;grpc.security_connector&quot;</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa"> 63</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a>)(<span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> status);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__security__connector__vtable.html"> 66</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__security__connector__vtable.html#acd16feb960e41e1920c193017a135704"> 67</a></span>&#160; void (*destroy)(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc__security__connector__vtable.html#ae1202bdafbea18af0fe2b0e6c11ae636"> 68</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> (*create_handshaker)(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__security__connector__vtable.html#aee8169e56a02a5cb55d68bcc6d0d56de"> 70</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> (*check_peer)(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="code" href="structtsi__peer.html">tsi_peer</a> peer,</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;} <a class="code" href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__security__connector.html"> 75</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1"> 76</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a> *<a class="code" href="structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1">vtable</a>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19"> 77</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19">refcount</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd"> 78</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd">is_client_side</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca"> 79</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca">url_scheme</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17"> 80</a></span>&#160; <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17">auth_context</a>; <span class="comment">/* Populated after the peer is checked. */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;};</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* Refcounting. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#ifdef GRPC_SECURITY_CONNECTOR_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SECURITY_CONNECTOR_REF(p, r) \</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor"> grpc_security_connector_ref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SECURITY_CONNECTOR_UNREF(p, r) \</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"> grpc_security_connector_unref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span><a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="code" href="security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4">grpc_security_connector_ref</a>(</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *policy, <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e">grpc_security_connector_unref</a>(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *policy,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a5bb32899b45edd908bb61e45db59c460"> 96</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SECURITY_CONNECTOR_REF(p, r) grpc_security_connector_ref((p))</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="security__connector_8h.html#a1950bc24ce082a50d66b0cd505c069ee"> 97</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SECURITY_CONNECTOR_UNREF(p, r) grpc_security_connector_unref((p))</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"></span><a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="code" href="security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4">grpc_security_connector_ref</a>(</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *policy);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e">grpc_security_connector_unref</a>(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *policy);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* Handshake creation. */</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde">grpc_security_connector_create_handshaker</a>(</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="code" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment">/* Check the peer.</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> Implementations can choose to check the peer either synchronously or</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> asynchronously. In the first case, a successful call will return</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> GRPC_SECURITY_OK. In the asynchronous case, the call will return</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> GRPC_SECURITY_PENDING unless an error is detected early on.</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> Ownership of the peer is transfered.</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94">grpc_security_connector_check_peer</a>(</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="code" href="structtsi__peer.html">tsi_peer</a> peer, <a class="code" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">/* Util to encapsulate the connector in a channel arg. */</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<a class="code" href="structgrpc__arg.html">grpc_arg</a> <a class="code" href="security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a">grpc_security_connector_to_arg</a>(<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment">/* Util to get the connector from a channel arg. */</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="code" href="security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca">grpc_security_connector_from_arg</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__arg.html">grpc_arg</a> *<a class="code" href="structarg.html">arg</a>);</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">/* Util to find the connector from channel args. */</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="code" href="security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c">grpc_find_security_connector_in_args</a>(</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment">/* --- channel_security_connector object. ---</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> A channel security connector object represents away to configure the</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> underlying transport security mechanism on the client side. */</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="security__connector_8h.html#afbebb4c120eeea2ad96953aae5f656ec"> 133</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> <a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="structgrpc__channel__security__connector.html"> 135</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> {</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08"> 136</a></span>&#160; <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> <a class="code" href="structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08">base</a>; <span class="comment">/* requires is_client_side to be non 0. */</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d"> 137</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d">request_metadata_creds</a>;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e"> 138</a></span>&#160; <a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> (*<a class="code" href="structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e">check_call_host</a>)(<a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *sc,</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *host,</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;};</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment">/* Checks that the host that will be set for a call is acceptable.</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> Implementations can choose do the check either synchronously or</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> asynchronously. In the first case, a successful call will return</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> GRPC_SECURITY_OK. In the asynchronous case, the call will return</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> GRPC_SECURITY_PENDING unless an error is detected early on. */</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="security__connector_8h.html#a845341440590ee81647b56575eb60168">grpc_channel_security_connector_check_call_host</a>(</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *sc, <span class="keyword">const</span> <span class="keywordtype">char</span> *host,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment">/* --- Creation security connectors. --- */</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment">/* For TESTING ONLY!</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> Creates a fake connector that emulates real channel security. */</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *<a class="code" href="security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12">grpc_fake_channel_security_connector_create</a>(</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, <span class="keywordtype">int</span> call_host_check_is_async);</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment">/* For TESTING ONLY!</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> Creates a fake connector that emulates real server security. */</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> *<a class="code" href="security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417">grpc_fake_server_security_connector_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment">/* Config for ssl clients. */</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html"> 165</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a"> 166</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a">pem_private_key</a>;</div>
+<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820"> 167</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820">pem_private_key_size</a>;</div>
+<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696"> 168</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696">pem_cert_chain</a>;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03"> 169</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03">pem_cert_chain_size</a>;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41"> 170</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41">pem_root_certs</a>;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561"> 171</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561">pem_root_certs_size</a>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;} <a class="code" href="structgrpc__ssl__config.html">grpc_ssl_config</a>;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment">/* Creates an SSL channel_security_connector.</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> - request_metadata_creds is the credentials object which metadata</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> will be sent with each request. This parameter can be NULL.</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> - config is the SSL config to be used for the SSL channel establishment.</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> - is_client should be 0 for a server or a non-0 value for a client.</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"> - secure_peer_name is the secure peer name that should be checked in</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> grpc_channel_security_connector_check_peer. This parameter may be NULL in</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> which case the peer name will not be checked. Note that if this parameter</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment"> is not NULL, then, pem_root_certs should not be NULL either.</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment"> - sc is a pointer on the connector to be created.</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment"> This function returns GRPC_SECURITY_OK in case of success or a</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> specific error code otherwise.</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d">grpc_ssl_channel_security_connector_create</a>(</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, <span class="keyword">const</span> <a class="code" href="structgrpc__ssl__config.html">grpc_ssl_config</a> *config,</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *target_name, <span class="keyword">const</span> <span class="keywordtype">char</span> *overridden_target_name,</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <a class="code" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc);</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment">/* Gets the default ssl roots. */</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="security__connector_8h.html#a341f454443268ca27e5cc01219b93fef">grpc_get_default_ssl_roots</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **pem_root_certs);</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment">/* Config for ssl servers. */</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html"> 196</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49"> 197</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **<a class="code" href="structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49">pem_private_keys</a>;</div>
+<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c"> 198</a></span>&#160; <span class="keywordtype">size_t</span> *<a class="code" href="structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c">pem_private_keys_sizes</a>;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270"> 199</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> **<a class="code" href="structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270">pem_cert_chains</a>;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0"> 200</a></span>&#160; <span class="keywordtype">size_t</span> *<a class="code" href="structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0">pem_cert_chains_sizes</a>;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c"> 201</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c">num_key_cert_pairs</a>;</div>
+<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d"> 202</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d">pem_root_certs</a>;</div>
+<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121"> 203</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121">pem_root_certs_size</a>;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007"> 204</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007">force_client_auth</a>;</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;} <a class="code" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a>;</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment">/* Creates an SSL server_security_connector.</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> - config is the SSL config to be used for the SSL channel establishment.</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> - sc is a pointer on the connector to be created.</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> This function returns GRPC_SECURITY_OK in case of success or a</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment"> specific error code otherwise.</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<a class="code" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a> <a class="code" href="security__connector_8h.html#af0fc288920d58432af4285ec56251248">grpc_ssl_server_security_connector_create</a>(</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> *config, <a class="code" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc);</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="comment">/* Util. */</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="keyword">const</span> <a class="code" href="structtsi__peer__property.html">tsi_peer_property</a> *<a class="code" href="security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66">tsi_peer_get_property_by_name</a>(<span class="keyword">const</span> <a class="code" href="structtsi__peer.html">tsi_peer</a> *peer,</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment">/* Exposed for testing only. */</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6">tsi_ssl_peer_to_auth_context</a>(<span class="keyword">const</span> <a class="code" href="structtsi__peer.html">tsi_peer</a> *peer);</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_SECURITY_CONNECTOR_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__auth__context_html"><div class="ttname"><a href="structgrpc__auth__context.html">grpc_auth_context</a></div><div class="ttdef"><b>Definition:</b> security_context.h:49</div></div>
+<div class="ttc" id="structgrpc__security__connector__vtable_html"><div class="ttname"><a href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:66</div></div>
+<div class="ttc" id="security__connector_8h_html_abe2c43cab618ad3b036645d9aa506f12"><div class="ttname"><a href="security__connector_8h.html#abe2c43cab618ad3b036645d9aa506f12">grpc_fake_channel_security_connector_create</a></div><div class="ttdeci">grpc_channel_security_connector * grpc_fake_channel_security_connector_create(grpc_credentials *request_metadata_creds, int call_host_check_is_async)</div><div class="ttdef"><b>Definition:</b> security_connector.c:295</div></div>
+<div class="ttc" id="structgrpc__security__connector_html_a233f3e3ad0edc94fa25b0b3c8bb839bd"><div class="ttname"><a href="structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd">grpc_security_connector::is_client_side</a></div><div class="ttdeci">int is_client_side</div><div class="ttdef"><b>Definition:</b> security_connector.h:78</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html_a6b04c3f33486e242c3309904cd99b696"><div class="ttname"><a href="structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696">grpc_ssl_config::pem_cert_chain</a></div><div class="ttdeci">unsigned char * pem_cert_chain</div><div class="ttdef"><b>Definition:</b> security_connector.h:168</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html_a4344083d7120a2d304fe83b390aff820"><div class="ttname"><a href="structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820">grpc_ssl_config::pem_private_key_size</a></div><div class="ttdeci">size_t pem_private_key_size</div><div class="ttdef"><b>Definition:</b> security_connector.h:167</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html_ab4c3e2cdc5bd272e0ef18fed777b8c9a"><div class="ttname"><a href="structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a">grpc_ssl_config::pem_private_key</a></div><div class="ttdeci">unsigned char * pem_private_key</div><div class="ttdef"><b>Definition:</b> security_connector.h:166</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="security__connector_8h_html_a2c65e5934491f893a10fb5062f0e08fa"><div class="ttname"><a href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a></div><div class="ttdeci">void(* grpc_security_check_cb)(void *user_data, grpc_security_status status)</div><div class="ttdef"><b>Definition:</b> security_connector.h:63</div></div>
+<div class="ttc" id="security__connector_8h_html_af0fc288920d58432af4285ec56251248"><div class="ttname"><a href="security__connector_8h.html#af0fc288920d58432af4285ec56251248">grpc_ssl_server_security_connector_create</a></div><div class="ttdeci">grpc_security_status grpc_ssl_server_security_connector_create(const grpc_ssl_server_config *config, grpc_security_connector **sc)</div><div class="ttdef"><b>Definition:</b> security_connector.c:623</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="structgrpc__security__connector_html_a6f687c76fd94573412f97c9f3f0abf19"><div class="ttname"><a href="structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19">grpc_security_connector::refcount</a></div><div class="ttdeci">gpr_refcount refcount</div><div class="ttdef"><b>Definition:</b> security_connector.h:77</div></div>
+<div class="ttc" id="structgrpc__channel__security__connector_html_ac8633820dab73e1d4a083010865ece08"><div class="ttname"><a href="structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08">grpc_channel_security_connector::base</a></div><div class="ttdeci">grpc_security_connector base</div><div class="ttdef"><b>Definition:</b> security_connector.h:136</div></div>
+<div class="ttc" id="structgrpc__security__connector_html_a5e474c23ba9e2e50bd9f21f0b05d30ca"><div class="ttname"><a href="structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca">grpc_security_connector::url_scheme</a></div><div class="ttdeci">const char * url_scheme</div><div class="ttdef"><b>Definition:</b> security_connector.h:79</div></div>
+<div class="ttc" id="security__connector_8h_html_a49e56e5d195b8935306b58dd80cf1ae4"><div class="ttname"><a href="security__connector_8h.html#a49e56e5d195b8935306b58dd80cf1ae4">grpc_security_connector_ref</a></div><div class="ttdeci">grpc_security_connector * grpc_security_connector_ref(grpc_security_connector *policy)</div><div class="ttdef"><b>Definition:</b> security_connector.c:136</div></div>
+<div class="ttc" id="security__connector_8h_html_a4e8c8c71595e5af0861880070356ce66"><div class="ttname"><a href="security__connector_8h.html#a4e8c8c71595e5af0861880070356ce66">tsi_peer_get_property_by_name</a></div><div class="ttdeci">const tsi_peer_property * tsi_peer_get_property_by_name(const tsi_peer *peer, const char *name)</div><div class="ttdef"><b>Definition:</b> security_connector.c:87</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_a14d965b9fbe9438e7342be1df0fe6270"><div class="ttname"><a href="structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270">grpc_ssl_server_config::pem_cert_chains</a></div><div class="ttdeci">unsigned char ** pem_cert_chains</div><div class="ttdef"><b>Definition:</b> security_connector.h:199</div></div>
+<div class="ttc" id="transport__security__interface_8h_html"><div class="ttname"><a href="transport__security__interface_8h.html">transport_security_interface.h</a></div></div>
+<div class="ttc" id="security__connector_8h_html_a845341440590ee81647b56575eb60168"><div class="ttname"><a href="security__connector_8h.html#a845341440590ee81647b56575eb60168">grpc_channel_security_connector_check_call_host</a></div><div class="ttdeci">grpc_security_status grpc_channel_security_connector_check_call_host(grpc_channel_security_connector *sc, const char *host, grpc_security_check_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> security_connector.c:120</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_a7ff49477b3bd20af5d25fc436eaf599c"><div class="ttname"><a href="structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c">grpc_ssl_server_config::pem_private_keys_sizes</a></div><div class="ttdeci">size_t * pem_private_keys_sizes</div><div class="ttdef"><b>Definition:</b> security_connector.h:198</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_a57b9e21a656edb763257610059fb0ab0"><div class="ttname"><a href="structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0">grpc_ssl_server_config::pem_cert_chains_sizes</a></div><div class="ttdeci">size_t * pem_cert_chains_sizes</div><div class="ttdef"><b>Definition:</b> security_connector.h:200</div></div>
+<div class="ttc" id="structgrpc__arg_html"><div class="ttname"><a href="structgrpc__arg.html">grpc_arg</a></div><div class="ttdoc">A single argument... </div><div class="ttdef"><b>Definition:</b> grpc.h:91</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="security__connector_8h_html_a6db43510beb4d3953f572cbe203c164d"><div class="ttname"><a href="security__connector_8h.html#a6db43510beb4d3953f572cbe203c164d">grpc_ssl_channel_security_connector_create</a></div><div class="ttdeci">grpc_security_status grpc_ssl_channel_security_connector_create(grpc_credentials *request_metadata_creds, const grpc_ssl_config *config, const char *target_name, const char *overridden_target_name, grpc_channel_security_connector **sc)</div><div class="ttdef"><b>Definition:</b> security_connector.c:544</div></div>
+<div class="ttc" id="grpc__security_8h_html"><div class="ttname"><a href="grpc__security_8h.html">grpc_security.h</a></div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_ace03c26aa233e1a8b96a064aac885f49"><div class="ttname"><a href="structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49">grpc_ssl_server_config::pem_private_keys</a></div><div class="ttdeci">unsigned char ** pem_private_keys</div><div class="ttdef"><b>Definition:</b> security_connector.h:197</div></div>
+<div class="ttc" id="security__connector_8h_html_a9b6de27f6cdaa1aefddca2679545ee5e"><div class="ttname"><a href="security__connector_8h.html#a9b6de27f6cdaa1aefddca2679545ee5e">grpc_security_connector_unref</a></div><div class="ttdeci">void grpc_security_connector_unref(grpc_security_connector *policy)</div><div class="ttdef"><b>Definition:</b> security_connector.c:153</div></div>
+<div class="ttc" id="structgrpc__credentials_html"><div class="ttname"><a href="structgrpc__credentials.html">grpc_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:145</div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9a0c645b0a4e922f4dbfbb08a7e1a0caba">GRPC_SECURITY_ERROR</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:46</div></div>
+<div class="ttc" id="structtsi__peer_html"><div class="ttname"><a href="structtsi__peer.html">tsi_peer</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:192</div></div>
+<div class="ttc" id="structgrpc__channel__security__connector_html_a56bc3c048e45431ae50bdfec49f22f3d"><div class="ttname"><a href="structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d">grpc_channel_security_connector::request_metadata_creds</a></div><div class="ttdeci">grpc_credentials * request_metadata_creds</div><div class="ttdef"><b>Definition:</b> security_connector.h:137</div></div>
+<div class="ttc" id="security__connector_8h_html_a341f454443268ca27e5cc01219b93fef"><div class="ttname"><a href="security__connector_8h.html#a341f454443268ca27e5cc01219b93fef">grpc_get_default_ssl_roots</a></div><div class="ttdeci">size_t grpc_get_default_ssl_roots(const unsigned char **pem_root_certs)</div><div class="ttdef"><b>Definition:</b> security_connector.c:535</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html_a54b70603e0c6d26023796000ed33e561"><div class="ttname"><a href="structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561">grpc_ssl_config::pem_root_certs_size</a></div><div class="ttdeci">size_t pem_root_certs_size</div><div class="ttdef"><b>Definition:</b> security_connector.h:171</div></div>
+<div class="ttc" id="security__connector_8h_html_aa427ef1fd3d8e58437215f4da2fd87ca"><div class="ttname"><a href="security__connector_8h.html#aa427ef1fd3d8e58437215f4da2fd87ca">grpc_security_connector_from_arg</a></div><div class="ttdeci">grpc_security_connector * grpc_security_connector_from_arg(const grpc_arg *arg)</div><div class="ttdef"><b>Definition:</b> security_connector.c:177</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html"><div class="ttname"><a href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:196</div></div>
+<div class="ttc" id="security__connector_8h_html_ab609527dad74bcc51e4b8b17b8f47c8a"><div class="ttname"><a href="security__connector_8h.html#ab609527dad74bcc51e4b8b17b8f47c8a">grpc_security_connector_to_arg</a></div><div class="ttdeci">grpc_arg grpc_security_connector_to_arg(grpc_security_connector *sc)</div><div class="ttdef"><b>Definition:</b> security_connector.c:167</div></div>
+<div class="ttc" id="structgrpc__security__connector_html"><div class="ttname"><a href="structgrpc__security__connector.html">grpc_security_connector</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:75</div></div>
+<div class="ttc" id="structgrpc__security__connector_html_a72b9f6efab0a70571f579d129f2bffd1"><div class="ttname"><a href="structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1">grpc_security_connector::vtable</a></div><div class="ttdeci">const grpc_security_connector_vtable * vtable</div><div class="ttdef"><b>Definition:</b> security_connector.h:76</div></div>
+<div class="ttc" id="structgrpc__channel__security__connector_html"><div class="ttname"><a href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:135</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html_a1bcd383a60b8b391dddcb2ca592b0e41"><div class="ttname"><a href="structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41">grpc_ssl_config::pem_root_certs</a></div><div class="ttdeci">unsigned char * pem_root_certs</div><div class="ttdef"><b>Definition:</b> security_connector.h:170</div></div>
+<div class="ttc" id="structgrpc__channel__security__connector_html_a4b44a11ba7945991dce2a16a79a6735e"><div class="ttname"><a href="structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e">grpc_channel_security_connector::check_call_host</a></div><div class="ttdeci">grpc_security_status(* check_call_host)(grpc_channel_security_connector *sc, const char *host, grpc_security_check_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> security_connector.h:138</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_ab76e4dcbf44740943a062be40d253007"><div class="ttname"><a href="structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007">grpc_ssl_server_config::force_client_auth</a></div><div class="ttdeci">int force_client_auth</div><div class="ttdef"><b>Definition:</b> security_connector.h:204</div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9aec1f6f449a3260705affe2f4496386e8">GRPC_SECURITY_PENDING</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:45</div></div>
+<div class="ttc" id="security__connector_8h_html_af81a7b903de0636a73b0e852b36a7fde"><div class="ttname"><a href="security__connector_8h.html#af81a7b903de0636a73b0e852b36a7fde">grpc_security_connector_create_handshaker</a></div><div class="ttdeci">grpc_security_status grpc_security_connector_create_handshaker(grpc_security_connector *sc, tsi_handshaker **handshaker)</div><div class="ttdef"><b>Definition:</b> security_connector.c:104</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html"><div class="ttname"><a href="structgrpc__ssl__config.html">grpc_ssl_config</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:165</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_ae31aacae823523aef8549144b4b5db4d"><div class="ttname"><a href="structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d">grpc_ssl_server_config::pem_root_certs</a></div><div class="ttdeci">unsigned char * pem_root_certs</div><div class="ttdef"><b>Definition:</b> security_connector.h:202</div></div>
+<div class="ttc" id="security__connector_8h_html_aac9a5d6c38755b24c7170789056dec94"><div class="ttname"><a href="security__connector_8h.html#aac9a5d6c38755b24c7170789056dec94">grpc_security_connector_check_peer</a></div><div class="ttdeci">grpc_security_status grpc_security_connector_check_peer(grpc_security_connector *sc, tsi_peer peer, grpc_security_check_cb cb, void *user_data)</div><div class="ttdef"><b>Definition:</b> security_connector.c:110</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="security__connector_8h_html_a12dbc067a07c36d5219ba31f5dffc8c6"><div class="ttname"><a href="security__connector_8h.html#a12dbc067a07c36d5219ba31f5dffc8c6">tsi_ssl_peer_to_auth_context</a></div><div class="ttdeci">grpc_auth_context * tsi_ssl_peer_to_auth_context(const tsi_peer *peer)</div><div class="ttdef"><b>Definition:</b> security_connector.c:409</div></div>
+<div class="ttc" id="structtsi__handshaker_html"><div class="ttname"><a href="structtsi__handshaker.html">tsi_handshaker</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:86</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_a1ff730874dd4a4833f84574490c0a121"><div class="ttname"><a href="structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121">grpc_ssl_server_config::pem_root_certs_size</a></div><div class="ttdeci">size_t pem_root_certs_size</div><div class="ttdef"><b>Definition:</b> security_connector.h:203</div></div>
+<div class="ttc" id="structgrpc__security__connector_html_a076a1d251960f6c9c3b173d1d8eb9a17"><div class="ttname"><a href="structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17">grpc_security_connector::auth_context</a></div><div class="ttdeci">grpc_auth_context * auth_context</div><div class="ttdef"><b>Definition:</b> security_connector.h:80</div></div>
+<div class="ttc" id="security__connector_8h_html_a45a42c3c0b40593ac1b8025ba1875417"><div class="ttname"><a href="security__connector_8h.html#a45a42c3c0b40593ac1b8025ba1875417">grpc_fake_server_security_connector_create</a></div><div class="ttdeci">grpc_security_connector * grpc_fake_server_security_connector_create(void)</div><div class="ttdef"><b>Definition:</b> security_connector.c:311</div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a></div><div class="ttdeci">grpc_security_status</div><div class="ttdef"><b>Definition:</b> security_connector.h:43</div></div>
+<div class="ttc" id="structgrpc__ssl__server__config_html_aa029cf135a1f9a4cb69644762e3ec65c"><div class="ttname"><a href="structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c">grpc_ssl_server_config::num_key_cert_pairs</a></div><div class="ttdeci">size_t num_key_cert_pairs</div><div class="ttdef"><b>Definition:</b> security_connector.h:201</div></div>
+<div class="ttc" id="structgrpc__ssl__config_html_a926d124256bc0e43526d3d9d64069b03"><div class="ttname"><a href="structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03">grpc_ssl_config::pem_cert_chain_size</a></div><div class="ttdeci">size_t pem_cert_chain_size</div><div class="ttdef"><b>Definition:</b> security_connector.h:169</div></div>
+<div class="ttc" id="security__connector_8h_html_a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b"><div class="ttname"><a href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9afbd22370d0c11fb36d465b65321a846b">GRPC_SECURITY_OK</a></div><div class="ttdef"><b>Definition:</b> security_connector.h:44</div></div>
+<div class="ttc" id="structtsi__peer__property_html"><div class="ttname"><a href="structtsi__peer__property.html">tsi_peer_property</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:184</div></div>
+<div class="ttc" id="security__connector_8h_html_a7db9da4604178cb7e640e744da4b733c"><div class="ttname"><a href="security__connector_8h.html#a7db9da4604178cb7e640e744da4b733c">grpc_find_security_connector_in_args</a></div><div class="ttdeci">grpc_security_connector * grpc_find_security_connector_in_args(const grpc_channel_args *args)</div><div class="ttdef"><b>Definition:</b> security_connector.c:187</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/security__context_8c.html b/doc/ref/core.internal/html/security__context_8c.html
new file mode 100644
index 0000000000..78633f1877
--- /dev/null
+++ b/doc/ref/core.internal/html/security__context_8c.html
@@ -0,0 +1,511 @@
+<!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: src/core/security/security_context.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">security_context.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="security__context_8h_source.html">src/core/security/security_context.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="grpc__security_8h_source.html">grpc/grpc_security.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a56de54ae2563e67e236c10e8fa419f60"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a56de54ae2563e67e236c10e8fa419f60">grpc_call_set_credentials</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *creds)</td></tr>
+<tr class="separator:a56de54ae2563e67e236c10e8fa419f60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b439e6d2875c8b5e2e901a959f6a2fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a0b439e6d2875c8b5e2e901a959f6a2fe">grpc_call_auth_context</a> (<a class="el" href="structgrpc__call.html">grpc_call</a> *call)</td></tr>
+<tr class="separator:a0b439e6d2875c8b5e2e901a959f6a2fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2eea99f76030b21ad58afdf615f4d2b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a2eea99f76030b21ad58afdf615f4d2b9">grpc_auth_context_release</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *context)</td></tr>
+<tr class="separator:a2eea99f76030b21ad58afdf615f4d2b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ca11372b407a42724f5d13e36409c03"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__security__context.html">grpc_client_security_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a7ca11372b407a42724f5d13e36409c03">grpc_client_security_context_create</a> (void)</td></tr>
+<tr class="separator:a7ca11372b407a42724f5d13e36409c03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a794b8453091b440bafd21e00cf0f7236"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a794b8453091b440bafd21e00cf0f7236">grpc_client_security_context_destroy</a> (void *ctx)</td></tr>
+<tr class="separator:a794b8453091b440bafd21e00cf0f7236"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa8c88dfb1be5add6af3143eeb76460a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__security__context.html">grpc_server_security_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#afa8c88dfb1be5add6af3143eeb76460a">grpc_server_security_context_create</a> (void)</td></tr>
+<tr class="separator:afa8c88dfb1be5add6af3143eeb76460a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86caf02cd607c3ff6f1e6657ffa5c17a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a86caf02cd607c3ff6f1e6657ffa5c17a">grpc_server_security_context_destroy</a> (void *ctx)</td></tr>
+<tr class="separator:a86caf02cd607c3ff6f1e6657ffa5c17a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab81f0d925a8aefc04349a849e63d9d25"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#ab81f0d925a8aefc04349a849e63d9d25">grpc_auth_context_create</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *chained, size_t property_count)</td></tr>
+<tr class="separator:ab81f0d925a8aefc04349a849e63d9d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a449824176a9f6c79ee461e476f409aec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a449824176a9f6c79ee461e476f409aec">grpc_auth_context_ref</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:a449824176a9f6c79ee461e476f409aec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a12ed60416acacf11756afc6b2bcf33"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33">grpc_auth_context_unref</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:a0a12ed60416acacf11756afc6b2bcf33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac05022ccd5b972ba089950437727ff23"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#ac05022ccd5b972ba089950437727ff23">grpc_auth_context_peer_identity_property_name</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:ac05022ccd5b972ba089950437727ff23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af33fe6681dedb389edbf708020680093"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#af33fe6681dedb389edbf708020680093">grpc_auth_context_peer_is_authenticated</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:af33fe6681dedb389edbf708020680093"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaad9fed074f7aebed63ed075bb6ff780"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#aaad9fed074f7aebed63ed075bb6ff780">grpc_auth_context_property_iterator</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:aaad9fed074f7aebed63ed075bb6ff780"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac20e3890d5e5e0de6ae6b5cb57cae1ae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#ac20e3890d5e5e0de6ae6b5cb57cae1ae">grpc_auth_property_iterator_next</a> (<a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> *it)</td></tr>
+<tr class="separator:ac20e3890d5e5e0de6ae6b5cb57cae1ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5298ac64614986581fc314f63fa9afd7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a5298ac64614986581fc314f63fa9afd7">grpc_auth_context_find_properties_by_name</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx, const char *name)</td></tr>
+<tr class="separator:a5298ac64614986581fc314f63fa9afd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a144c6f3a56c8592489b3978e0c5caced"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a144c6f3a56c8592489b3978e0c5caced">grpc_auth_context_peer_identity</a> (const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *ctx)</td></tr>
+<tr class="separator:a144c6f3a56c8592489b3978e0c5caced"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ffe10ffd7c0397eb9656a5017ba0e58"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a9ffe10ffd7c0397eb9656a5017ba0e58">grpc_auth_property_init_from_cstring</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a9ffe10ffd7c0397eb9656a5017ba0e58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a816adda9cd16c9f8087a1f11b1f7154a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a816adda9cd16c9f8087a1f11b1f7154a">grpc_auth_property_init</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, size_t value_length)</td></tr>
+<tr class="separator:a816adda9cd16c9f8087a1f11b1f7154a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9721c8f46ab15103ee4f69cf49c04195"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8c.html#a9721c8f46ab15103ee4f69cf49c04195">grpc_auth_property_reset</a> (<a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *property)</td></tr>
+<tr class="separator:a9721c8f46ab15103ee4f69cf49c04195"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab81f0d925a8aefc04349a849e63d9d25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_auth_context_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>chained</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>property_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5298ac64614986581fc314f63fa9afd7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> grpc_auth_context_find_properties_by_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a144c6f3a56c8592489b3978e0c5caced"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> grpc_auth_context_peer_identity </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac05022ccd5b972ba089950437727ff23"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_auth_context_peer_identity_property_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af33fe6681dedb389edbf708020680093"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_auth_context_peer_is_authenticated </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaad9fed074f7aebed63ed075bb6ff780"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> grpc_auth_context_property_iterator </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a449824176a9f6c79ee461e476f409aec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_auth_context_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2eea99f76030b21ad58afdf615f4d2b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_context_release </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a12ed60416acacf11756afc6b2bcf33"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_context_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a816adda9cd16c9f8087a1f11b1f7154a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> grpc_auth_property_init </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ffe10ffd7c0397eb9656a5017ba0e58"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> grpc_auth_property_init_from_cstring </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac20e3890d5e5e0de6ae6b5cb57cae1ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>* grpc_auth_property_iterator_next </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__property__iterator.html">grpc_auth_property_iterator</a> *&#160;</td>
+ <td class="paramname"><em>it</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9721c8f46ab15103ee4f69cf49c04195"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_property_reset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0b439e6d2875c8b5e2e901a959f6a2fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_call_auth_context </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a56de54ae2563e67e236c10e8fa419f60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_call_set_credentials </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ca11372b407a42724f5d13e36409c03"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__security__context.html">grpc_client_security_context</a>* grpc_client_security_context_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a794b8453091b440bafd21e00cf0f7236"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_security_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afa8c88dfb1be5add6af3143eeb76460a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__security__context.html">grpc_server_security_context</a>* grpc_server_security_context_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86caf02cd607c3ff6f1e6657ffa5c17a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_security_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/security__context_8h.html b/doc/ref/core.internal/html/security__context_8h.html
new file mode 100644
index 0000000000..162f227e11
--- /dev/null
+++ b/doc/ref/core.internal/html/security__context_8h.html
@@ -0,0 +1,396 @@
+<!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: src/core/security/security_context.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">security_context.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+</div>
+<p><a href="security__context_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__client__security__context.html">grpc_client_security_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__security__context.html">grpc_server_security_context</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a3df5d42b28934cbeb932f18d61a8fe77"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a3df5d42b28934cbeb932f18d61a8fe77">GRPC_AUTH_CONTEXT_REF</a>(p, r)&#160;&#160;&#160;<a class="el" href="security__context_8c.html#a449824176a9f6c79ee461e476f409aec">grpc_auth_context_ref</a>((p))</td></tr>
+<tr class="separator:a3df5d42b28934cbeb932f18d61a8fe77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6b74ab5e3a697c5a93529609bdb2668"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#ae6b74ab5e3a697c5a93529609bdb2668">GRPC_AUTH_CONTEXT_UNREF</a>(p, r)&#160;&#160;&#160;<a class="el" href="security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33">grpc_auth_context_unref</a>((p))</td></tr>
+<tr class="separator:ae6b74ab5e3a697c5a93529609bdb2668"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ab81f0d925a8aefc04349a849e63d9d25"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25">grpc_auth_context_create</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *chained, size_t property_count)</td></tr>
+<tr class="separator:ab81f0d925a8aefc04349a849e63d9d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafcd59997402fd705818b3ce8e374623"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#aafcd59997402fd705818b3ce8e374623">grpc_auth_context_ref</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *policy)</td></tr>
+<tr class="separator:aafcd59997402fd705818b3ce8e374623"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19e637927ac80502fe6093a2669674da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a19e637927ac80502fe6093a2669674da">grpc_auth_context_unref</a> (<a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *policy)</td></tr>
+<tr class="separator:a19e637927ac80502fe6093a2669674da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ffe10ffd7c0397eb9656a5017ba0e58"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58">grpc_auth_property_init_from_cstring</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a9ffe10ffd7c0397eb9656a5017ba0e58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a816adda9cd16c9f8087a1f11b1f7154a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a">grpc_auth_property_init</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, size_t value_length)</td></tr>
+<tr class="separator:a816adda9cd16c9f8087a1f11b1f7154a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9721c8f46ab15103ee4f69cf49c04195"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195">grpc_auth_property_reset</a> (<a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *property)</td></tr>
+<tr class="separator:a9721c8f46ab15103ee4f69cf49c04195"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ca11372b407a42724f5d13e36409c03"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__security__context.html">grpc_client_security_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a7ca11372b407a42724f5d13e36409c03">grpc_client_security_context_create</a> (void)</td></tr>
+<tr class="separator:a7ca11372b407a42724f5d13e36409c03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a794b8453091b440bafd21e00cf0f7236"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a794b8453091b440bafd21e00cf0f7236">grpc_client_security_context_destroy</a> (void *ctx)</td></tr>
+<tr class="separator:a794b8453091b440bafd21e00cf0f7236"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa8c88dfb1be5add6af3143eeb76460a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__security__context.html">grpc_server_security_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a">grpc_server_security_context_create</a> (void)</td></tr>
+<tr class="separator:afa8c88dfb1be5add6af3143eeb76460a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86caf02cd607c3ff6f1e6657ffa5c17a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a">grpc_server_security_context_destroy</a> (void *ctx)</td></tr>
+<tr class="separator:a86caf02cd607c3ff6f1e6657ffa5c17a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a3df5d42b28934cbeb932f18d61a8fe77"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_AUTH_CONTEXT_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="security__context_8c.html#a449824176a9f6c79ee461e476f409aec">grpc_auth_context_ref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae6b74ab5e3a697c5a93529609bdb2668"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_AUTH_CONTEXT_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="security__context_8c.html#a0a12ed60416acacf11756afc6b2bcf33">grpc_auth_context_unref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab81f0d925a8aefc04349a849e63d9d25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_auth_context_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>chained</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>property_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aafcd59997402fd705818b3ce8e374623"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_auth_context_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19e637927ac80502fe6093a2669674da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_context_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td>
+ <td class="paramname"><em>policy</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a816adda9cd16c9f8087a1f11b1f7154a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> grpc_auth_property_init </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ffe10ffd7c0397eb9656a5017ba0e58"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> grpc_auth_property_init_from_cstring </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9721c8f46ab15103ee4f69cf49c04195"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_auth_property_reset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ca11372b407a42724f5d13e36409c03"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__security__context.html">grpc_client_security_context</a>* grpc_client_security_context_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a794b8453091b440bafd21e00cf0f7236"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_client_security_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afa8c88dfb1be5add6af3143eeb76460a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__security__context.html">grpc_server_security_context</a>* grpc_server_security_context_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86caf02cd607c3ff6f1e6657ffa5c17a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_security_context_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/security__context_8h_source.html b/doc/ref/core.internal/html/security__context_8h_source.html
new file mode 100644
index 0000000000..5e62d29b8b
--- /dev/null
+++ b/doc/ref/core.internal/html/security__context_8h_source.html
@@ -0,0 +1,240 @@
+<!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: src/core/security/security_context.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">security_context.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="security__context_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SECURITY_SECURITY_CONTEXT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SECURITY_SECURITY_CONTEXT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="credentials_8h.html">src/core/security/credentials.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* --- grpc_auth_context ---</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> High level authentication context object. Can optionally be chained. */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* Property names are always NULL terminated. */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__auth__context.html"> 49</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6"> 50</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6">chained</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7"> 51</a></span>&#160; <a class="code" href="structgrpc__auth__property.html">grpc_auth_property</a> *<a class="code" href="structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7">properties</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b"> 52</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b">property_count</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae"> 53</a></span>&#160; <a class="code" href="structgpr__refcount.html">gpr_refcount</a> <a class="code" href="structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae">refcount</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33"> 54</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33">peer_identity_property_name</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;};</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment">/* Constructor. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25">grpc_auth_context_create</a>(<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6">chained</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b">property_count</a>);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* Refcounting. */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#ifdef GRPC_AUTH_CONTEXT_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_AUTH_CONTEXT_REF(p, r) \</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"> grpc_auth_context_ref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_AUTH_CONTEXT_UNREF(p, r) \</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"> grpc_auth_context_unref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span><a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="security__context_8h.html#aafcd59997402fd705818b3ce8e374623">grpc_auth_context_ref</a>(<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *policy,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__context_8h.html#a19e637927ac80502fe6093a2669674da">grpc_auth_context_unref</a>(<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *policy, <span class="keyword">const</span> <span class="keywordtype">char</span> *file,</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">int</span> line, <span class="keyword">const</span> <span class="keywordtype">char</span> *reason);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="security__context_8h.html#a3df5d42b28934cbeb932f18d61a8fe77"> 73</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_AUTH_CONTEXT_REF(p, r) grpc_auth_context_ref((p))</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="security__context_8h.html#ae6b74ab5e3a697c5a93529609bdb2668"> 74</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_AUTH_CONTEXT_UNREF(p, r) grpc_auth_context_unref((p))</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span><a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="security__context_8h.html#aafcd59997402fd705818b3ce8e374623">grpc_auth_context_ref</a>(<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *policy);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__context_8h.html#a19e637927ac80502fe6093a2669674da">grpc_auth_context_unref</a>(<a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *policy);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<a class="code" href="structgrpc__auth__property.html">grpc_auth_property</a> <a class="code" href="security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58">grpc_auth_property_init_from_cstring</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<a class="code" href="structgrpc__auth__property.html">grpc_auth_property</a> <a class="code" href="security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a">grpc_auth_property_init</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">size_t</span> value_length);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195">grpc_auth_property_reset</a>(<a class="code" href="structgrpc__auth__property.html">grpc_auth_property</a> *property);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* --- grpc_client_security_context ---</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> Internal client-side security context. */</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="structgrpc__client__security__context.html"> 91</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf"> 92</a></span>&#160; <a class="code" href="structgrpc__credentials.html">grpc_credentials</a> *<a class="code" href="structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf">creds</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c"> 93</a></span>&#160; <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c">auth_context</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;} <a class="code" href="structgrpc__client__security__context.html">grpc_client_security_context</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<a class="code" href="structgrpc__client__security__context.html">grpc_client_security_context</a> *<a class="code" href="security__context_8h.html#a7ca11372b407a42724f5d13e36409c03">grpc_client_security_context_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__context_8h.html#a794b8453091b440bafd21e00cf0f7236">grpc_client_security_context_destroy</a>(<span class="keywordtype">void</span> *ctx);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment">/* --- grpc_server_security_context ---</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> Internal server-side security context. */</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structgrpc__server__security__context.html"> 103</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1"> 104</a></span>&#160; <a class="code" href="structgrpc__auth__context.html">grpc_auth_context</a> *<a class="code" href="structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1">auth_context</a>;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;} <a class="code" href="structgrpc__server__security__context.html">grpc_server_security_context</a>;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<a class="code" href="structgrpc__server__security__context.html">grpc_server_security_context</a> *<a class="code" href="security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a">grpc_server_security_context_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="keywordtype">void</span> <a class="code" href="security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a">grpc_server_security_context_destroy</a>(<span class="keywordtype">void</span> *ctx);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SECURITY_SECURITY_CONTEXT_H */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__auth__context_html"><div class="ttname"><a href="structgrpc__auth__context.html">grpc_auth_context</a></div><div class="ttdef"><b>Definition:</b> security_context.h:49</div></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="security__context_8h_html_a86caf02cd607c3ff6f1e6657ffa5c17a"><div class="ttname"><a href="security__context_8h.html#a86caf02cd607c3ff6f1e6657ffa5c17a">grpc_server_security_context_destroy</a></div><div class="ttdeci">void grpc_server_security_context_destroy(void *ctx)</div><div class="ttdef"><b>Definition:</b> security_context.c:113</div></div>
+<div class="ttc" id="security__context_8h_html_a9721c8f46ab15103ee4f69cf49c04195"><div class="ttname"><a href="security__context_8h.html#a9721c8f46ab15103ee4f69cf49c04195">grpc_auth_property_reset</a></div><div class="ttdeci">void grpc_auth_property_reset(grpc_auth_property *property)</div><div class="ttdef"><b>Definition:</b> security_context.c:252</div></div>
+<div class="ttc" id="security__context_8h_html_a816adda9cd16c9f8087a1f11b1f7154a"><div class="ttname"><a href="security__context_8h.html#a816adda9cd16c9f8087a1f11b1f7154a">grpc_auth_property_init</a></div><div class="ttdeci">grpc_auth_property grpc_auth_property_init(const char *name, const char *value, size_t value_length)</div><div class="ttdef"><b>Definition:</b> security_context.c:241</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="structgrpc__auth__context_html_aab537c748115de425b595d9efddc6f5b"><div class="ttname"><a href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b">grpc_auth_context::property_count</a></div><div class="ttdeci">size_t property_count</div><div class="ttdef"><b>Definition:</b> security_context.h:52</div></div>
+<div class="ttc" id="structgrpc__auth__context_html_a1f00929fc059a0445eb61cbe73deaaae"><div class="ttname"><a href="structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae">grpc_auth_context::refcount</a></div><div class="ttdeci">gpr_refcount refcount</div><div class="ttdef"><b>Definition:</b> security_context.h:53</div></div>
+<div class="ttc" id="security__context_8h_html_aafcd59997402fd705818b3ce8e374623"><div class="ttname"><a href="security__context_8h.html#aafcd59997402fd705818b3ce8e374623">grpc_auth_context_ref</a></div><div class="ttdeci">grpc_auth_context * grpc_auth_context_ref(grpc_auth_context *policy)</div><div class="ttdef"><b>Definition:</b> security_context.c:144</div></div>
+<div class="ttc" id="security__context_8h_html_a794b8453091b440bafd21e00cf0f7236"><div class="ttname"><a href="security__context_8h.html#a794b8453091b440bafd21e00cf0f7236">grpc_client_security_context_destroy</a></div><div class="ttdeci">void grpc_client_security_context_destroy(void *ctx)</div><div class="ttdef"><b>Definition:</b> security_context.c:97</div></div>
+<div class="ttc" id="structgrpc__client__security__context_html_add1cf1d4ba571e2a7de7bbe9bcdeda7c"><div class="ttname"><a href="structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c">grpc_client_security_context::auth_context</a></div><div class="ttdeci">grpc_auth_context * auth_context</div><div class="ttdef"><b>Definition:</b> security_context.h:93</div></div>
+<div class="ttc" id="structgrpc__credentials_html"><div class="ttname"><a href="structgrpc__credentials.html">grpc_credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:145</div></div>
+<div class="ttc" id="structgrpc__auth__context_html_a7090965e44ac9d847543646be11f13c7"><div class="ttname"><a href="structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7">grpc_auth_context::properties</a></div><div class="ttdeci">grpc_auth_property * properties</div><div class="ttdef"><b>Definition:</b> security_context.h:51</div></div>
+<div class="ttc" id="structgrpc__client__security__context_html_ae5d745d248626f77d4cb57d351fc2edf"><div class="ttname"><a href="structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf">grpc_client_security_context::creds</a></div><div class="ttdeci">grpc_credentials * creds</div><div class="ttdef"><b>Definition:</b> security_context.h:92</div></div>
+<div class="ttc" id="security__context_8h_html_a9ffe10ffd7c0397eb9656a5017ba0e58"><div class="ttname"><a href="security__context_8h.html#a9ffe10ffd7c0397eb9656a5017ba0e58">grpc_auth_property_init_from_cstring</a></div><div class="ttdeci">grpc_auth_property grpc_auth_property_init_from_cstring(const char *name, const char *value)</div><div class="ttdef"><b>Definition:</b> security_context.c:232</div></div>
+<div class="ttc" id="structgrpc__auth__context_html_aaf39bb67f8b5344fffac5595eee45fe6"><div class="ttname"><a href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6">grpc_auth_context::chained</a></div><div class="ttdeci">struct grpc_auth_context * chained</div><div class="ttdef"><b>Definition:</b> security_context.h:50</div></div>
+<div class="ttc" id="structgrpc__server__security__context_html"><div class="ttname"><a href="structgrpc__server__security__context.html">grpc_server_security_context</a></div><div class="ttdef"><b>Definition:</b> security_context.h:103</div></div>
+<div class="ttc" id="credentials_8h_html"><div class="ttname"><a href="credentials_8h.html">credentials.h</a></div></div>
+<div class="ttc" id="security__context_8h_html_ab81f0d925a8aefc04349a849e63d9d25"><div class="ttname"><a href="security__context_8h.html#ab81f0d925a8aefc04349a849e63d9d25">grpc_auth_context_create</a></div><div class="ttdeci">grpc_auth_context * grpc_auth_context_create(grpc_auth_context *chained, size_t property_count)</div><div class="ttdef"><b>Definition:</b> security_context.c:123</div></div>
+<div class="ttc" id="structgrpc__auth__property_html"><div class="ttname"><a href="structgrpc__auth__property.html">grpc_auth_property</a></div><div class="ttdef"><b>Definition:</b> grpc_security.h:219</div></div>
+<div class="ttc" id="structgrpc__server__security__context_html_a75d2dbb8f1f384376186fabb4df937e1"><div class="ttname"><a href="structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1">grpc_server_security_context::auth_context</a></div><div class="ttdeci">grpc_auth_context * auth_context</div><div class="ttdef"><b>Definition:</b> security_context.h:104</div></div>
+<div class="ttc" id="structgrpc__auth__context_html_aab2b0fcdafe3cd96b1240ab5b48f1c33"><div class="ttname"><a href="structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33">grpc_auth_context::peer_identity_property_name</a></div><div class="ttdeci">const char * peer_identity_property_name</div><div class="ttdef"><b>Definition:</b> security_context.h:54</div></div>
+<div class="ttc" id="security__context_8h_html_afa8c88dfb1be5add6af3143eeb76460a"><div class="ttname"><a href="security__context_8h.html#afa8c88dfb1be5add6af3143eeb76460a">grpc_server_security_context_create</a></div><div class="ttdeci">grpc_server_security_context * grpc_server_security_context_create(void)</div><div class="ttdef"><b>Definition:</b> security_context.c:106</div></div>
+<div class="ttc" id="security__context_8h_html_a19e637927ac80502fe6093a2669674da"><div class="ttname"><a href="security__context_8h.html#a19e637927ac80502fe6093a2669674da">grpc_auth_context_unref</a></div><div class="ttdeci">void grpc_auth_context_unref(grpc_auth_context *policy)</div><div class="ttdef"><b>Definition:</b> security_context.c:159</div></div>
+<div class="ttc" id="structgrpc__client__security__context_html"><div class="ttname"><a href="structgrpc__client__security__context.html">grpc_client_security_context</a></div><div class="ttdef"><b>Definition:</b> security_context.h:91</div></div>
+<div class="ttc" id="security__context_8h_html_a7ca11372b407a42724f5d13e36409c03"><div class="ttname"><a href="security__context_8h.html#a7ca11372b407a42724f5d13e36409c03">grpc_client_security_context_create</a></div><div class="ttdeci">grpc_client_security_context * grpc_client_security_context_create(void)</div><div class="ttdef"><b>Definition:</b> security_context.c:90</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/server_8c.html b/doc/ref/core.internal/html/server_8c.html
new file mode 100644
index 0000000000..496371f9e6
--- /dev/null
+++ b/doc/ref/core.internal/html/server_8c.html
@@ -0,0 +1,863 @@
+<!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: src/core/surface/server.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">server.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="server_8h_source.html">src/core/surface/server.h</a>&quot;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="census__filter_8h_source.html">src/core/channel/census_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connected__channel_8h_source.html">src/core/channel/connected_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr_8h_source.html">src/core/iomgr/iomgr.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="stack__lockfree_8h_source.html">src/core/support/stack_lockfree.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="call_8h_source.html">src/core/surface/call.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="completion__queue_8h_source.html">src/core/surface/completion_queue.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="init_8h_source.html">src/core/surface/init.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="metadata_8h_source.html">src/core/transport/metadata.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlistener.html">listener</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__link.html">call_link</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html">requested_call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__registered__method.html">channel_registered_method</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__tag.html">shutdown_tag</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__matcher.html">request_matcher</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__method.html">registered_method</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__broadcaster.html">channel_broadcaster</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html">grpc_server</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__cleanup__args.html">shutdown_cleanup_args</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__killer.html">request_killer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ad74e7a97d516828e54c49eb3e4878da3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#ad74e7a97d516828e54c49eb3e4878da3">SERVER_FROM_CALL_ELEM</a>(elem)&#160;&#160;&#160;(((<a class="el" href="structchannel__data.html">channel_data</a> *)(elem)-&gt;<a class="el" href="structchannel__data.html">channel_data</a>)-&gt;server)</td></tr>
+<tr class="separator:ad74e7a97d516828e54c49eb3e4878da3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a0a81ac863a31441ba5e8e2fc6be04f2c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structlistener.html">listener</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a0a81ac863a31441ba5e8e2fc6be04f2c">listener</a></td></tr>
+<tr class="separator:a0a81ac863a31441ba5e8e2fc6be04f2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d8dd5943711393112c0fe83c02c0ca8"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a9d8dd5943711393112c0fe83c02c0ca8">call_data</a></td></tr>
+<tr class="separator:a9d8dd5943711393112c0fe83c02c0ca8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a663530098451ca6ac5dd8381e470b512"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a663530098451ca6ac5dd8381e470b512">channel_data</a></td></tr>
+<tr class="separator:a663530098451ca6ac5dd8381e470b512"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f8273ccf99ef212028d3488d579cf3b"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structregistered__method.html">registered_method</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a6f8273ccf99ef212028d3488d579cf3b">registered_method</a></td></tr>
+<tr class="separator:a6f8273ccf99ef212028d3488d579cf3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b3e4fcd769f2a62cbbbde867715ef2c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrequested__call.html">requested_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a9b3e4fcd769f2a62cbbbde867715ef2c">requested_call</a></td></tr>
+<tr class="separator:a9b3e4fcd769f2a62cbbbde867715ef2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47b693eb517ae870b0243f6c7be3541f"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structchannel__registered__method.html">channel_registered_method</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a47b693eb517ae870b0243f6c7be3541f">channel_registered_method</a></td></tr>
+<tr class="separator:a47b693eb517ae870b0243f6c7be3541f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a292b677b1a61ecd5c4608340fa647346"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structshutdown__tag.html">shutdown_tag</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a292b677b1a61ecd5c4608340fa647346">shutdown_tag</a></td></tr>
+<tr class="separator:a292b677b1a61ecd5c4608340fa647346"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c5e0489837d1efdf2f3fdb7087b59d4"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structrequest__matcher.html">request_matcher</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a7c5e0489837d1efdf2f3fdb7087b59d4">request_matcher</a></td></tr>
+<tr class="separator:a7c5e0489837d1efdf2f3fdb7087b59d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aca2d7591ebc428dc14cf07f72e88c38a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a">requested_call_type</a> { <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa38d2782a64b3bf4a845e9795b295b685">BATCH_CALL</a>,
+<a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38aa969f2119db66590473c2fa7f00e21c5a">REGISTERED_CALL</a>
+ }</td></tr>
+<tr class="separator:aca2d7591ebc428dc14cf07f72e88c38a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ca2e6dbf0562417ab7c66e8907a56b1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">call_state</a> { <br/>
+&#160;&#160;<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8">CALL_CREATED</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c">CALL_WAITING_FOR_SEND</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2">CALL_WAITING_FOR_CONFIG</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad">CALL_WAITING_FOR_PICK</a>,
+<br/>
+&#160;&#160;<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2">CALL_WAITING_FOR_CALL</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9">CALL_ACTIVE</a>,
+<a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d">CALL_CANCELLED</a>,
+<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5">NOT_STARTED</a>,
+<br/>
+&#160;&#160;<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73">PENDING</a>,
+<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d">ACTIVATED</a>,
+<a class="el" href="server_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512">ZOMBIED</a>
+<br/>
+ }</td></tr>
+<tr class="separator:a6ca2e6dbf0562417ab7c66e8907a56b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac174712f87fdae4b5757a1370e2a31cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#ac174712f87fdae4b5757a1370e2a31cb">grpc_server_register_completion_queue</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq)</td></tr>
+<tr class="memdesc:ac174712f87fdae4b5757a1370e2a31cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register a completion queue with the server. <a href="#ac174712f87fdae4b5757a1370e2a31cb">More...</a><br/></td></tr>
+<tr class="separator:ac174712f87fdae4b5757a1370e2a31cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a870e9abac807e8ba2578df7d9526f8c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a870e9abac807e8ba2578df7d9526f8c0">grpc_server_create_from_filters</a> (const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t filter_count, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a870e9abac807e8ba2578df7d9526f8c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a283062a2209f464f234b0e645c6fffb2"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a283062a2209f464f234b0e645c6fffb2">grpc_server_register_method</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, const char *method, const char *host)</td></tr>
+<tr class="memdesc:a283062a2209f464f234b0e645c6fffb2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Registers a method in the server. <a href="#a283062a2209f464f234b0e645c6fffb2">More...</a><br/></td></tr>
+<tr class="separator:a283062a2209f464f234b0e645c6fffb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5010d26419e14f5a9ab2fa86a4f7d1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#ac5010d26419e14f5a9ab2fa86a4f7d1e">grpc_server_start</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="memdesc:ac5010d26419e14f5a9ab2fa86a4f7d1e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start a server - tells all listeners to start listening. <a href="#ac5010d26419e14f5a9ab2fa86a4f7d1e">More...</a><br/></td></tr>
+<tr class="separator:ac5010d26419e14f5a9ab2fa86a4f7d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26fd88680fa7949f4af879acdc249d8d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a26fd88680fa7949f4af879acdc249d8d">grpc_server_setup_transport</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *s, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> const **extra_filters, size_t num_extra_filters, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a26fd88680fa7949f4af879acdc249d8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56fffa23c1c4bab9a469e2ac607b6db7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a56fffa23c1c4bab9a469e2ac607b6db7">grpc_server_shutdown_and_notify</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq, void *tag)</td></tr>
+<tr class="memdesc:a56fffa23c1c4bab9a469e2ac607b6db7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Begin shutting down a server. <a href="#a56fffa23c1c4bab9a469e2ac607b6db7">More...</a><br/></td></tr>
+<tr class="separator:a56fffa23c1c4bab9a469e2ac607b6db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57b25ccc5ec64affd1ade91554a81092"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a57b25ccc5ec64affd1ade91554a81092">grpc_server_listener_destroy_done</a> (void *s)</td></tr>
+<tr class="separator:a57b25ccc5ec64affd1ade91554a81092"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5c1e4f3e270a7afbc39403fff0dc803"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#ac5c1e4f3e270a7afbc39403fff0dc803">grpc_server_cancel_all_calls</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="memdesc:ac5c1e4f3e270a7afbc39403fff0dc803"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cancel all in-progress calls. <a href="#ac5c1e4f3e270a7afbc39403fff0dc803">More...</a><br/></td></tr>
+<tr class="separator:ac5c1e4f3e270a7afbc39403fff0dc803"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34cba45da7c32a21ac82305d670e4620"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a34cba45da7c32a21ac82305d670e4620">grpc_server_destroy</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="memdesc:a34cba45da7c32a21ac82305d670e4620"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a server. <a href="#a34cba45da7c32a21ac82305d670e4620">More...</a><br/></td></tr>
+<tr class="separator:a34cba45da7c32a21ac82305d670e4620"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a777b461e0fd2a56acd35caf54f3d88e6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a777b461e0fd2a56acd35caf54f3d88e6">grpc_server_add_listener</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, void(*start)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t pollset_count), void(*destroy)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>))</td></tr>
+<tr class="separator:a777b461e0fd2a56acd35caf54f3d88e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a419670c3509bc3c67c1344be3a1c4dbf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a419670c3509bc3c67c1344be3a1c4dbf">grpc_server_request_call</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__call.html">grpc_call</a> **call, <a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *details, <a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *initial_metadata, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, void *tag)</td></tr>
+<tr class="memdesc:a419670c3509bc3c67c1344be3a1c4dbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request notification of a new call. <a href="#a419670c3509bc3c67c1344be3a1c4dbf">More...</a><br/></td></tr>
+<tr class="separator:a419670c3509bc3c67c1344be3a1c4dbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82bc2345fb113c461e255364d8d192b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a82bc2345fb113c461e255364d8d192b5">grpc_server_request_registered_call</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *rm, <a class="el" href="structgrpc__call.html">grpc_call</a> **call, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *deadline, <a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *initial_metadata, <a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **optional_payload, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_bound_to_call, <a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *cq_for_notification, void *tag)</td></tr>
+<tr class="memdesc:a82bc2345fb113c461e255364d8d192b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Request notification of a new pre-registered call. <a href="#a82bc2345fb113c461e255364d8d192b5">More...</a><br/></td></tr>
+<tr class="separator:a82bc2345fb113c461e255364d8d192b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a263c42634aa706458d691565943c6cae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a263c42634aa706458d691565943c6cae">grpc_server_get_channel_args</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="separator:a263c42634aa706458d691565943c6cae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28a4697b500cd4867a9f6731c8e58a94"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8c.html#a28a4697b500cd4867a9f6731c8e58a94">grpc_server_has_open_connections</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="separator:a28a4697b500cd4867a9f6731c8e58a94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ad74e7a97d516828e54c49eb3e4878da3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define SERVER_FROM_CALL_ELEM</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">elem</td><td>)</td>
+ <td>&#160;&#160;&#160;(((<a class="el" href="structchannel__data.html">channel_data</a> *)(elem)-&gt;<a class="el" href="structchannel__data.html">channel_data</a>)-&gt;server)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a9d8dd5943711393112c0fe83c02c0ca8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a663530098451ca6ac5dd8381e470b512"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__data.html">channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a47b693eb517ae870b0243f6c7be3541f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__registered__method.html">channel_registered_method</a> <a class="el" href="structchannel__registered__method.html">channel_registered_method</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a81ac863a31441ba5e8e2fc6be04f2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structlistener.html">listener</a> <a class="el" href="structlistener.html">listener</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f8273ccf99ef212028d3488d579cf3b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structregistered__method.html">registered_method</a> <a class="el" href="structregistered__method.html">registered_method</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7c5e0489837d1efdf2f3fdb7087b59d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrequest__matcher.html">request_matcher</a> <a class="el" href="structrequest__matcher.html">request_matcher</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b3e4fcd769f2a62cbbbde867715ef2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structrequested__call.html">requested_call</a> <a class="el" href="structrequested__call.html">requested_call</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a292b677b1a61ecd5c4608340fa647346"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structshutdown__tag.html">shutdown_tag</a> <a class="el" href="structshutdown__tag.html">shutdown_tag</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">call_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a5dc41298c08d706c248c0aad80fdf2a8"></a>CALL_CREATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1aa3615ca56e2de2713a3202ff99f15b1c"></a>CALL_WAITING_FOR_SEND</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1acc5228e1cac647003266db9241876cd2"></a>CALL_WAITING_FOR_CONFIG</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a8f4f33fc632104e0ece9369cf5f236ad"></a>CALL_WAITING_FOR_PICK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a7d4a5aee632f6e68b3aa63e7618dc5a2"></a>CALL_WAITING_FOR_CALL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a38c567ba414b95843eea67ead22156b9"></a>CALL_ACTIVE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a64c64130e25c5cd2d884b8c16093a89d"></a>CALL_CANCELLED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1ae7d82dfe80ea0bd4feea8ee49ea2eab5"></a>NOT_STARTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a1869818fd53ff519eb8e429301bdff73"></a>PENDING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1a84b328a7ebdea4c8c4ed62e035ada28d"></a>ACTIVATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6ca2e6dbf0562417ab7c66e8907a56b1acfa05d5a2f18cf6a5976178d9949c512"></a>ZOMBIED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="aca2d7591ebc428dc14cf07f72e88c38a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a">requested_call_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="aca2d7591ebc428dc14cf07f72e88c38aa38d2782a64b3bf4a845e9795b295b685"></a>BATCH_CALL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aca2d7591ebc428dc14cf07f72e88c38aa969f2119db66590473c2fa7f00e21c5a"></a>REGISTERED_CALL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a777b461e0fd2a56acd35caf54f3d88e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_add_listener </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t pollset_count)&#160;</td>
+ <td class="paramname"><em>start</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5c1e4f3e270a7afbc39403fff0dc803"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_cancel_all_calls </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Cancel all in-progress calls. </p>
+<p>Only usable after shutdown. </p>
+
+</div>
+</div>
+<a class="anchor" id="a870e9abac807e8ba2578df7d9526f8c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* grpc_server_create_from_filters </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>filter_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34cba45da7c32a21ac82305d670e4620"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Destroy a server. </p>
+<p>Shutdown must have completed beforehand (i.e. all tags generated by grpc_server_shutdown_and_notify must have been received, and at least one call to grpc_server_shutdown_and_notify must have been made). </p>
+
+</div>
+</div>
+<a class="anchor" id="a263c42634aa706458d691565943c6cae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_server_get_channel_args </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a28a4697b500cd4867a9f6731c8e58a94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_has_open_connections </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a57b25ccc5ec64affd1ade91554a81092"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_listener_destroy_done </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac174712f87fdae4b5757a1370e2a31cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_register_completion_queue </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Register a completion queue with the server. </p>
+<p>Must be done for any notification completion queue that is passed to grpc_server_request_*_call and to grpc_server_shutdown_and_notify. Must be performed prior to grpc_server_start. </p>
+
+</div>
+</div>
+<a class="anchor" id="a283062a2209f464f234b0e645c6fffb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_server_register_method </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>host</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Registers a method in the server. </p>
+<p>Methods to this (host, method) pair will not be reported by grpc_server_request_call, but instead be reported by grpc_server_request_registered_call when passed the appropriate <a class="el" href="structregistered__method.html">registered_method</a> (as returned by this function). Must be called before grpc_server_start. Returns NULL on failure. </p>
+
+</div>
+</div>
+<a class="anchor" id="a419670c3509bc3c67c1344be3a1c4dbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_server_request_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;</td>
+ <td class="paramname"><em>details</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_bound_to_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_for_notification</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag_new</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Request notification of a new call. </p>
+<p>'cq_for_notification' must have been registered to the server via grpc_server_register_completion_queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a82bc2345fb113c461e255364d8d192b5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> grpc_server_request_registered_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>registered_method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td>
+ <td class="paramname"><em>request_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **&#160;</td>
+ <td class="paramname"><em>optional_payload</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_bound_to_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq_for_notification</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag_new</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Request notification of a new pre-registered call. </p>
+<p>'cq_for_notification' must have been registered to the server via grpc_server_register_completion_queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="a26fd88680fa7949f4af879acdc249d8d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_setup_transport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> const **&#160;</td>
+ <td class="paramname"><em>extra_filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_extra_filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a56fffa23c1c4bab9a469e2ac607b6db7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_shutdown_and_notify </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Begin shutting down a server. </p>
+<p>After completion, no new calls or connections will be admitted. Existing calls will be allowed to complete. Send a GRPC_OP_COMPLETE event when there are no more calls being serviced. Shutdown is idempotent, and all tags will be notified at once if multiple grpc_server_shutdown_and_notify calls are made. 'cq' must have been registered to this server via grpc_server_register_completion_queue. </p>
+
+</div>
+</div>
+<a class="anchor" id="ac5010d26419e14f5a9ab2fa86a4f7d1e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Start a server - tells all listeners to start listening. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/server_8h.html b/doc/ref/core.internal/html/server_8h.html
new file mode 100644
index 0000000000..3255060170
--- /dev/null
+++ b/doc/ref/core.internal/html/server_8h.html
@@ -0,0 +1,291 @@
+<!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: src/core/surface/server.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">server.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div>
+<p><a href="server_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a870e9abac807e8ba2578df7d9526f8c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html#a870e9abac807e8ba2578df7d9526f8c0">grpc_server_create_from_filters</a> (const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, size_t filter_count, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a870e9abac807e8ba2578df7d9526f8c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afba4e38403fa34a317c44de9bae41105"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html#afba4e38403fa34a317c44de9bae41105">grpc_server_add_listener</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structlistener.html">listener</a>, void(*start)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t npollsets), void(*destroy)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>))</td></tr>
+<tr class="separator:afba4e38403fa34a317c44de9bae41105"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2260ab5adc7a935225c70f47fbb6a0a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9">grpc_server_listener_destroy_done</a> (void *server)</td></tr>
+<tr class="separator:a2260ab5adc7a935225c70f47fbb6a0a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5162441dfea5a2fa92bc38896bfb45fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc">grpc_server_setup_transport</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> const **extra_filters, size_t num_extra_filters, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="separator:a5162441dfea5a2fa92bc38896bfb45fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a263c42634aa706458d691565943c6cae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html#a263c42634aa706458d691565943c6cae">grpc_server_get_channel_args</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="separator:a263c42634aa706458d691565943c6cae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28a4697b500cd4867a9f6731c8e58a94"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html#a28a4697b500cd4867a9f6731c8e58a94">grpc_server_has_open_connections</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server)</td></tr>
+<tr class="separator:a28a4697b500cd4867a9f6731c8e58a94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="afba4e38403fa34a317c44de9bae41105"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_add_listener </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>listener</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t npollsets)&#160;</td>
+ <td class="paramname"><em>start</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a870e9abac807e8ba2578df7d9526f8c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* grpc_server_create_from_filters </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td>
+ <td class="paramname"><em>filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>filter_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a263c42634aa706458d691565943c6cae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_server_get_channel_args </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a28a4697b500cd4867a9f6731c8e58a94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_has_open_connections </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2260ab5adc7a935225c70f47fbb6a0a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_listener_destroy_done </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>server</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5162441dfea5a2fa92bc38896bfb45fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_server_setup_transport </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> const **&#160;</td>
+ <td class="paramname"><em>extra_filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>num_extra_filters</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/server_8h_source.html b/doc/ref/core.internal/html/server_8h_source.html
new file mode 100644
index 0000000000..f0bcd7b4e1
--- /dev/null
+++ b/doc/ref/core.internal/html/server_8h_source.html
@@ -0,0 +1,183 @@
+<!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: src/core/surface/server.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">server.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="server_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_SERVER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_SERVER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport_8h.html">src/core/transport/transport.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Create a server */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<a class="code" href="structgrpc__server.html">grpc_server</a> *<a class="code" href="server_8h.html#a870e9abac807e8ba2578df7d9526f8c0">grpc_server_create_from_filters</a>(</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **filters, <span class="keywordtype">size_t</span> filter_count,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* Add a listener to the server: when the server starts, it will call start,</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> and when it shuts down, it will call destroy */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="server_8h.html#afba4e38403fa34a317c44de9bae41105">grpc_server_add_listener</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keywordtype">void</span> *<a class="code" href="structlistener.html">listener</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">void</span> (*start)(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keywordtype">void</span> *<a class="code" href="structarg.html">arg</a>,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">size_t</span> npollsets),</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordtype">void</span> (*destroy)(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <span class="keywordtype">void</span> *arg));</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">void</span> <a class="code" href="server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9">grpc_server_listener_destroy_done</a>(<span class="keywordtype">void</span> *server);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* Setup a transport - creates a channel stack, binds the transport to the</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> server */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc">grpc_server_setup_transport</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server, <a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> <span class="keyword">const</span> **extra_filters,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">size_t</span> num_extra_filters, <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="server_8h.html#a263c42634aa706458d691565943c6cae">grpc_server_get_channel_args</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">int</span> <a class="code" href="server_8h.html#a28a4697b500cd4867a9f6731c8e58a94">grpc_server_has_open_connections</a>(<a class="code" href="structgrpc__server.html">grpc_server</a> *server);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_SERVER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="transport_8h_html"><div class="ttname"><a href="transport_8h.html">transport.h</a></div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="server_8h_html_a28a4697b500cd4867a9f6731c8e58a94"><div class="ttname"><a href="server_8h.html#a28a4697b500cd4867a9f6731c8e58a94">grpc_server_has_open_connections</a></div><div class="ttdeci">int grpc_server_has_open_connections(grpc_server *server)</div><div class="ttdef"><b>Definition:</b> server.c:1312</div></div>
+<div class="ttc" id="structlistener_html"><div class="ttname"><a href="structlistener.html">listener</a></div><div class="ttdef"><b>Definition:</b> server.c:56</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="server_8h_html_a263c42634aa706458d691565943c6cae"><div class="ttname"><a href="server_8h.html#a263c42634aa706458d691565943c6cae">grpc_server_get_channel_args</a></div><div class="ttdeci">const grpc_channel_args * grpc_server_get_channel_args(grpc_server *server)</div><div class="ttdef"><b>Definition:</b> server.c:1308</div></div>
+<div class="ttc" id="server_8h_html_a5162441dfea5a2fa92bc38896bfb45fc"><div class="ttname"><a href="server_8h.html#a5162441dfea5a2fa92bc38896bfb45fc">grpc_server_setup_transport</a></div><div class="ttdeci">void grpc_server_setup_transport(grpc_server *server, grpc_transport *transport, grpc_channel_filter const **extra_filters, size_t num_extra_filters, grpc_mdctx *mdctx, const grpc_channel_args *args)</div><div class="ttdef"><b>Definition:</b> server.c:859</div></div>
+<div class="ttc" id="server_8h_html_a870e9abac807e8ba2578df7d9526f8c0"><div class="ttname"><a href="server_8h.html#a870e9abac807e8ba2578df7d9526f8c0">grpc_server_create_from_filters</a></div><div class="ttdeci">grpc_server * grpc_server_create_from_filters(const grpc_channel_filter **filters, size_t filter_count, const grpc_channel_args *args)</div><div class="ttdef"><b>Definition:</b> server.c:756</div></div>
+<div class="ttc" id="server_8h_html_a2260ab5adc7a935225c70f47fbb6a0a9"><div class="ttname"><a href="server_8h.html#a2260ab5adc7a935225c70f47fbb6a0a9">grpc_server_listener_destroy_done</a></div><div class="ttdeci">void grpc_server_listener_destroy_done(void *server)</div><div class="ttdef"><b>Definition:</b> server.c:1045</div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="server_8h_html_afba4e38403fa34a317c44de9bae41105"><div class="ttname"><a href="server_8h.html#afba4e38403fa34a317c44de9bae41105">grpc_server_add_listener</a></div><div class="ttdeci">void grpc_server_add_listener(grpc_server *server, void *listener, void(*start)(grpc_server *server, void *arg, grpc_pollset **pollsets, size_t npollsets), void(*destroy)(grpc_server *server, void *arg))</div></div>
+<div class="ttc" id="structgrpc__server_html"><div class="ttname"><a href="structgrpc__server.html">grpc_server</a></div><div class="ttdef"><b>Definition:</b> server.c:181</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/server__auth__filter_8c.html b/doc/ref/core.internal/html/server__auth__filter_8c.html
new file mode 100644
index 0000000000..f720b119a0
--- /dev/null
+++ b/doc/ref/core.internal/html/server__auth__filter_8c.html
@@ -0,0 +1,175 @@
+<!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: src/core/security/server_auth_filter.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">server_auth_filter.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="auth__filters_8h_source.html">src/core/security/auth_filters.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__context_8h_source.html">src/core/security/security_context.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html">call_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html">channel_data</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structcall__data.html">call_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></td></tr>
+<tr class="separator:a7237e4a998a071b454b0d6b1bdfb42e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e660c9a52a9795338faf0c2188cff84"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__auth__filter_8c.html#a5e660c9a52a9795338faf0c2188cff84">channel_data</a></td></tr>
+<tr class="separator:a5e660c9a52a9795338faf0c2188cff84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a2041d6372525de50a18f156d1b94cfae"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__auth__filter_8c.html#a2041d6372525de50a18f156d1b94cfae">grpc_server_auth_filter</a></td></tr>
+<tr class="separator:a2041d6372525de50a18f156d1b94cfae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7237e4a998a071b454b0d6b1bdfb42e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structcall__data.html">call_data</a> <a class="el" href="structcall__data.html">call_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e660c9a52a9795338faf0c2188cff84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structchannel__data.html">channel_data</a> <a class="el" href="structchannel__data.html">channel_data</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a2041d6372525de50a18f156d1b94cfae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> grpc_server_auth_filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
+<div class="line"> auth_start_transport_op, <a class="code" href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a>,</div>
+<div class="line"> <span class="keyword">sizeof</span>(<a class="code" href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a>), init_call_elem,</div>
+<div class="line"> destroy_call_elem, <span class="keyword">sizeof</span>(<a class="code" href="structchannel__data.html">channel_data</a>),</div>
+<div class="line"> init_channel_elem, destroy_channel_elem,</div>
+<div class="line"> <a class="code" href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a>, <span class="stringliteral">&quot;server-auth&quot;</span>}</div>
+<div class="ttc" id="channel__stack_8h_html_a40c122e470335bb7a6edf1e0a31fc801"><div class="ttname"><a href="channel__stack_8h.html#a40c122e470335bb7a6edf1e0a31fc801">grpc_call_next_get_peer</a></div><div class="ttdeci">char * grpc_call_next_get_peer(grpc_call_element *elem)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:194</div></div>
+<div class="ttc" id="server__auth__filter_8c_html_a7237e4a998a071b454b0d6b1bdfb42e1"><div class="ttname"><a href="server__auth__filter_8c.html#a7237e4a998a071b454b0d6b1bdfb42e1">call_data</a></div><div class="ttdeci">struct call_data call_data</div></div>
+<div class="ttc" id="structchannel__data_html"><div class="ttname"><a href="structchannel__data.html">channel_data</a></div><div class="ttdef"><b>Definition:</b> client_auth_filter.c:69</div></div>
+<div class="ttc" id="channel__stack_8h_html_aea7eceb60c0e94465c4baea314c0ebd9"><div class="ttname"><a href="channel__stack_8h.html#aea7eceb60c0e94465c4baea314c0ebd9">grpc_channel_next_op</a></div><div class="ttdeci">void grpc_channel_next_op(grpc_channel_element *elem, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> channel_stack.c:199</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/server__chttp2_8c.html b/doc/ref/core.internal/html/server__chttp2_8c.html
new file mode 100644
index 0000000000..665c36c76d
--- /dev/null
+++ b/doc/ref/core.internal/html/server__chttp2_8c.html
@@ -0,0 +1,147 @@
+<!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: src/core/surface/server_chttp2.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">server_chttp2.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="http__server__filter_8h_source.html">src/core/channel/http_server_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolve__address_8h_source.html">src/core/iomgr/resolve_address.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="tcp__server_8h_source.html">src/core/iomgr/tcp_server.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="server_8h_source.html">src/core/surface/server.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a48cab64480658b97a775b2c7837456f9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__chttp2_8c.html#a48cab64480658b97a775b2c7837456f9">grpc_server_add_http2_port</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, const char *addr)</td></tr>
+<tr class="memdesc:a48cab64480658b97a775b2c7837456f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a HTTP2 over plaintext over tcp listener. <a href="#a48cab64480658b97a775b2c7837456f9">More...</a><br/></td></tr>
+<tr class="separator:a48cab64480658b97a775b2c7837456f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a48cab64480658b97a775b2c7837456f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_add_http2_port </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>addr</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add a HTTP2 over plaintext over tcp listener. </p>
+<p>Returns bound port number on success, 0 on failure. REQUIRES: server not started </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/server__create_8c.html b/doc/ref/core.internal/html/server__create_8c.html
new file mode 100644
index 0000000000..7134005416
--- /dev/null
+++ b/doc/ref/core.internal/html/server__create_8c.html
@@ -0,0 +1,132 @@
+<!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: src/core/surface/server_create.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">server_create.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="completion__queue_8h_source.html">src/core/surface/completion_queue.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="server_8h_source.html">src/core/surface/server.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="compress__filter_8h_source.html">src/core/channel/compress_filter.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4036710ea12eccabbbbf050d6bad4cd4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__create_8c.html#a4036710ea12eccabbbbf050d6bad4cd4">grpc_server_create</a> (const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args)</td></tr>
+<tr class="memdesc:a4036710ea12eccabbbbf050d6bad4cd4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a server. <a href="#a4036710ea12eccabbbbf050d6bad4cd4">More...</a><br/></td></tr>
+<tr class="separator:a4036710ea12eccabbbbf050d6bad4cd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a4036710ea12eccabbbbf050d6bad4cd4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* grpc_server_create </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a server. </p>
+<p>Additional configuration for each incoming channel can be specified with args. If no additional configuration is needed, args can be NULL. See <a class="el" href="structgrpc__channel__args.html" title="An array of arguments that can be passed around. ">grpc_channel_args</a> for more. The data in 'args' need only live through the invocation of this function. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/server__secure__chttp2_8c.html b/doc/ref/core.internal/html/server__secure__chttp2_8c.html
new file mode 100644
index 0000000000..4193ec6959
--- /dev/null
+++ b/doc/ref/core.internal/html/server__secure__chttp2_8c.html
@@ -0,0 +1,199 @@
+<!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: src/core/security/server_secure_chttp2.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_b758f7a0b27044dfb0efa69af3c473f5.html">security</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">server_secure_chttp2.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="http__server__filter_8h_source.html">src/core/channel/http_server_filter.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolve__address_8h_source.html">src/core/iomgr/resolve_address.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="tcp__server_8h_source.html">src/core/iomgr/tcp_server.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="auth__filters_8h_source.html">src/core/security/auth_filters.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="credentials_8h_source.html">src/core/security/credentials.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="security__connector_8h_source.html">src/core/security/security_connector.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="secure__transport__setup_8h_source.html">src/core/security/secure_transport_setup.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="server_8h_source.html">src/core/surface/server.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="chttp2__transport_8h_source.html">src/core/transport/chttp2_transport.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html">grpc_server_secure_state</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ac7944e456bcd1ed1ea7e112ee396e6aa"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__secure__chttp2_8c.html#ac7944e456bcd1ed1ea7e112ee396e6aa">tcp_endpoint_list</a></td></tr>
+<tr class="separator:ac7944e456bcd1ed1ea7e112ee396e6aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5867481af652d517f32b61834205f2b0"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__server__secure__state.html">grpc_server_secure_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__secure__chttp2_8c.html#a5867481af652d517f32b61834205f2b0">grpc_server_secure_state</a></td></tr>
+<tr class="separator:a5867481af652d517f32b61834205f2b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5d0db200d00b62b79138472dc9b1fe59"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__secure__chttp2_8c.html#a5d0db200d00b62b79138472dc9b1fe59">grpc_server_add_secure_http2_port</a> (<a class="el" href="structgrpc__server.html">grpc_server</a> *server, const char *addr, <a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *creds)</td></tr>
+<tr class="separator:a5d0db200d00b62b79138472dc9b1fe59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5867481af652d517f32b61834205f2b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__server__secure__state.html">grpc_server_secure_state</a> <a class="el" href="structgrpc__server__secure__state.html">grpc_server_secure_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac7944e456bcd1ed1ea7e112ee396e6aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a> <a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5d0db200d00b62b79138472dc9b1fe59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_add_secure_http2_port </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *&#160;</td>
+ <td class="paramname"><em>creds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/slice_8c.html b/doc/ref/core.internal/html/slice_8c.html
new file mode 100644
index 0000000000..c8eabf679a
--- /dev/null
+++ b/doc/ref/core.internal/html/slice_8c.html
@@ -0,0 +1,538 @@
+<!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: src/core/support/slice.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">slice.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__slice__refcount.html">new_slice_refcount</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__with__len__slice__refcount.html">new_with_len_slice_refcount</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmalloc__refcount.html">malloc_refcount</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a58022d982381d1f2d8125f9f24e2e1ae"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structnew__slice__refcount.html">new_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a58022d982381d1f2d8125f9f24e2e1ae">new_slice_refcount</a></td></tr>
+<tr class="separator:a58022d982381d1f2d8125f9f24e2e1ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07dd4d3601f8c54de26721289ba4d822"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structnew__with__len__slice__refcount.html">new_with_len_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a07dd4d3601f8c54de26721289ba4d822">new_with_len_slice_refcount</a></td></tr>
+<tr class="separator:a07dd4d3601f8c54de26721289ba4d822"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a1a8906400c956fb8c508326a072b0662"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a1a8906400c956fb8c508326a072b0662">gpr_empty_slice</a> (void)</td></tr>
+<tr class="separator:a1a8906400c956fb8c508326a072b0662"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa439f1ee94ab61e6ff17647940d29582"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#aa439f1ee94ab61e6ff17647940d29582">gpr_slice_ref</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:aa439f1ee94ab61e6ff17647940d29582"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa595344a06d9a17f64f2774a42fe160"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#aaa595344a06d9a17f64f2774a42fe160">gpr_slice_unref</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:aaa595344a06d9a17f64f2774a42fe160"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea43587a11bfe2e06fb8532035229bb2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#aea43587a11bfe2e06fb8532035229bb2">gpr_slice_new</a> (void *p, size_t len, void(*destroy)(void *))</td></tr>
+<tr class="separator:aea43587a11bfe2e06fb8532035229bb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affd1fef2ffaca67e0b2e7b60923da812"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#affd1fef2ffaca67e0b2e7b60923da812">gpr_slice_new_with_len</a> (void *p, size_t len, void(*destroy)(void *, size_t))</td></tr>
+<tr class="separator:affd1fef2ffaca67e0b2e7b60923da812"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54af06d0bea05fa416a85402e3f0d3b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a54af06d0bea05fa416a85402e3f0d3b4">gpr_slice_from_copied_buffer</a> (const char *source, size_t length)</td></tr>
+<tr class="separator:a54af06d0bea05fa416a85402e3f0d3b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf4df32e55b1b09d3f11c39447dcc68b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#adf4df32e55b1b09d3f11c39447dcc68b">gpr_slice_from_copied_string</a> (const char *source)</td></tr>
+<tr class="separator:adf4df32e55b1b09d3f11c39447dcc68b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab57463740ccedc00b50721dce66ebd7b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#ab57463740ccedc00b50721dce66ebd7b">gpr_slice_malloc</a> (size_t length)</td></tr>
+<tr class="separator:ab57463740ccedc00b50721dce66ebd7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03f66bb8343910499215c75f6ad69be4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a03f66bb8343910499215c75f6ad69be4">gpr_slice_sub_no_ref</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> source, size_t begin, size_t end)</td></tr>
+<tr class="separator:a03f66bb8343910499215c75f6ad69be4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60d9c7c62fdbbd7d4be1ff0f8d357032"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a60d9c7c62fdbbd7d4be1ff0f8d357032">gpr_slice_sub</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> source, size_t begin, size_t end)</td></tr>
+<tr class="separator:a60d9c7c62fdbbd7d4be1ff0f8d357032"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af592ef63bc65829371d4dacaa4f5eef1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#af592ef63bc65829371d4dacaa4f5eef1">gpr_slice_split_tail</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *source, size_t split)</td></tr>
+<tr class="separator:af592ef63bc65829371d4dacaa4f5eef1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15ea61593682d41ef435b9f7fa44a604"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a15ea61593682d41ef435b9f7fa44a604">gpr_slice_split_head</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *source, size_t split)</td></tr>
+<tr class="separator:a15ea61593682d41ef435b9f7fa44a604"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add3c8736c46bea7517991f178c82ba3c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#add3c8736c46bea7517991f178c82ba3c">gpr_slice_cmp</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> a, <a class="el" href="structgpr__slice.html">gpr_slice</a> b)</td></tr>
+<tr class="separator:add3c8736c46bea7517991f178c82ba3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef752203db50c932010a74c6845872c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#aef752203db50c932010a74c6845872c2">gpr_slice_str_cmp</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> a, const char *b)</td></tr>
+<tr class="separator:aef752203db50c932010a74c6845872c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e5f30a9a0750b8d38100dbfe647438e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8c.html#a2e5f30a9a0750b8d38100dbfe647438e">gpr_slice_to_cstring</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:a2e5f30a9a0750b8d38100dbfe647438e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a58022d982381d1f2d8125f9f24e2e1ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structnew__slice__refcount.html">new_slice_refcount</a> <a class="el" href="structnew__slice__refcount.html">new_slice_refcount</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a07dd4d3601f8c54de26721289ba4d822"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structnew__with__len__slice__refcount.html">new_with_len_slice_refcount</a> <a class="el" href="structnew__with__len__slice__refcount.html">new_with_len_slice_refcount</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1a8906400c956fb8c508326a072b0662"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_empty_slice </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add3c8736c46bea7517991f178c82ba3c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_slice_cmp </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a54af06d0bea05fa416a85402e3f0d3b4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_from_copied_buffer </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf4df32e55b1b09d3f11c39447dcc68b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_from_copied_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>source</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab57463740ccedc00b50721dce66ebd7b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_malloc </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea43587a11bfe2e06fb8532035229bb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_new </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="affd1fef2ffaca67e0b2e7b60923da812"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_new_with_len </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *, size_t)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa439f1ee94ab61e6ff17647940d29582"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15ea61593682d41ef435b9f7fa44a604"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_split_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>split</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af592ef63bc65829371d4dacaa4f5eef1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_split_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>split</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef752203db50c932010a74c6845872c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_slice_str_cmp </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a60d9c7c62fdbbd7d4be1ff0f8d357032"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_sub </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>begin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>end</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a03f66bb8343910499215c75f6ad69be4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_sub_no_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>begin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>end</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e5f30a9a0750b8d38100dbfe647438e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_slice_to_cstring </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa595344a06d9a17f64f2774a42fe160"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/slice_8h.html b/doc/ref/core.internal/html/slice_8h.html
new file mode 100644
index 0000000000..cc4a227680
--- /dev/null
+++ b/doc/ref/core.internal/html/slice_8h.html
@@ -0,0 +1,643 @@
+<!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: include/grpc/support/slice.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">slice.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+</div>
+<p><a href="slice_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice.html">gpr_slice</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a4063c3d8d4820472a4cf2655dd662a31"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31">GPR_SLICE_INLINED_SIZE</a>&#160;&#160;&#160;(sizeof(size_t) + sizeof(<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *) - 1)</td></tr>
+<tr class="separator:a4063c3d8d4820472a4cf2655dd662a31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab8258afc3398c1426974b0b48dbf5a15"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15">GPR_SLICE_START_PTR</a>(slice)</td></tr>
+<tr class="separator:ab8258afc3398c1426974b0b48dbf5a15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae97c2f992c1ebccaf44ceeee1f9fdabb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">GPR_SLICE_LENGTH</a>(slice)</td></tr>
+<tr class="separator:ae97c2f992c1ebccaf44ceeee1f9fdabb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f5333a1260aef2efe086d4e2188e613"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a1f5333a1260aef2efe086d4e2188e613">GPR_SLICE_SET_LENGTH</a>(slice, newlen)</td></tr>
+<tr class="separator:a1f5333a1260aef2efe086d4e2188e613"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b7e9acd0eb92039a9bc897712a62a14"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a9b7e9acd0eb92039a9bc897712a62a14">GPR_SLICE_END_PTR</a>(slice)&#160;&#160;&#160;<a class="el" href="slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15">GPR_SLICE_START_PTR</a>(slice) + <a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">GPR_SLICE_LENGTH</a>(slice)</td></tr>
+<tr class="separator:a9b7e9acd0eb92039a9bc897712a62a14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4fe3efa7a8938045ce79271d79f79ef"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#ad4fe3efa7a8938045ce79271d79f79ef">GPR_SLICE_IS_EMPTY</a>(slice)&#160;&#160;&#160;(<a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">GPR_SLICE_LENGTH</a>(slice) == 0)</td></tr>
+<tr class="separator:ad4fe3efa7a8938045ce79271d79f79ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:af8841873e741f6cf38b2192147ea4f3e"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#af8841873e741f6cf38b2192147ea4f3e">gpr_slice_refcount</a></td></tr>
+<tr class="separator:af8841873e741f6cf38b2192147ea4f3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91fe16db371db7c53d6e3adc90a6678c"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c">gpr_slice</a></td></tr>
+<tr class="separator:a91fe16db371db7c53d6e3adc90a6678c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad28a2bcca348046cbe660a44180e75ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#ad28a2bcca348046cbe660a44180e75ca">gpr_slice_ref</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> s)</td></tr>
+<tr class="separator:ad28a2bcca348046cbe660a44180e75ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a024429b0dd15e43a09e48e35ca8810d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7">gpr_slice_unref</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> s)</td></tr>
+<tr class="separator:a024429b0dd15e43a09e48e35ca8810d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea43587a11bfe2e06fb8532035229bb2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#aea43587a11bfe2e06fb8532035229bb2">gpr_slice_new</a> (void *p, size_t len, void(*destroy)(void *))</td></tr>
+<tr class="separator:aea43587a11bfe2e06fb8532035229bb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affd1fef2ffaca67e0b2e7b60923da812"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812">gpr_slice_new_with_len</a> (void *p, size_t len, void(*destroy)(void *, size_t))</td></tr>
+<tr class="separator:affd1fef2ffaca67e0b2e7b60923da812"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab57463740ccedc00b50721dce66ebd7b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#ab57463740ccedc00b50721dce66ebd7b">gpr_slice_malloc</a> (size_t length)</td></tr>
+<tr class="separator:ab57463740ccedc00b50721dce66ebd7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf4df32e55b1b09d3f11c39447dcc68b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b">gpr_slice_from_copied_string</a> (const char *source)</td></tr>
+<tr class="separator:adf4df32e55b1b09d3f11c39447dcc68b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83e8110a7a98132963f01eb9c7f7418e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e">gpr_slice_from_copied_buffer</a> (const char *source, size_t len)</td></tr>
+<tr class="separator:a83e8110a7a98132963f01eb9c7f7418e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9d4e6e264e22c6c6d3748f522da91eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb">gpr_slice_sub</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> s, size_t begin, size_t end)</td></tr>
+<tr class="separator:ac9d4e6e264e22c6c6d3748f522da91eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accf08ddad530a5f1cca82c834dc70965"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#accf08ddad530a5f1cca82c834dc70965">gpr_slice_sub_no_ref</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> s, size_t begin, size_t end)</td></tr>
+<tr class="separator:accf08ddad530a5f1cca82c834dc70965"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51315f2a9217a1d42711f48bfec9d39e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e">gpr_slice_split_tail</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *s, size_t split)</td></tr>
+<tr class="separator:a51315f2a9217a1d42711f48bfec9d39e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a842ea6b4a9ab4d0d3becd6fda03bbc24"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24">gpr_slice_split_head</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> *s, size_t split)</td></tr>
+<tr class="separator:a842ea6b4a9ab4d0d3becd6fda03bbc24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a8906400c956fb8c508326a072b0662"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#a1a8906400c956fb8c508326a072b0662">gpr_empty_slice</a> (void)</td></tr>
+<tr class="separator:a1a8906400c956fb8c508326a072b0662"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add3c8736c46bea7517991f178c82ba3c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#add3c8736c46bea7517991f178c82ba3c">gpr_slice_cmp</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> a, <a class="el" href="structgpr__slice.html">gpr_slice</a> b)</td></tr>
+<tr class="separator:add3c8736c46bea7517991f178c82ba3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef752203db50c932010a74c6845872c2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html#aef752203db50c932010a74c6845872c2">gpr_slice_str_cmp</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> a, const char *b)</td></tr>
+<tr class="separator:aef752203db50c932010a74c6845872c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a9b7e9acd0eb92039a9bc897712a62a14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SLICE_END_PTR</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">slice</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15">GPR_SLICE_START_PTR</a>(slice) + <a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">GPR_SLICE_LENGTH</a>(slice)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4063c3d8d4820472a4cf2655dd662a31"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SLICE_INLINED_SIZE&#160;&#160;&#160;(sizeof(size_t) + sizeof(<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4fe3efa7a8938045ce79271d79f79ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SLICE_IS_EMPTY</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">slice</td><td>)</td>
+ <td>&#160;&#160;&#160;(<a class="el" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb">GPR_SLICE_LENGTH</a>(slice) == 0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae97c2f992c1ebccaf44ceeee1f9fdabb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SLICE_LENGTH</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">slice</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((slice).refcount ? (slice).data.refcounted.length \</div>
+<div class="line"> : (slice).data.inlined.length)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a1f5333a1260aef2efe086d4e2188e613"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SLICE_SET_LENGTH</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">slice, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">newlen&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((slice).refcount ? ((slice).data.refcounted.length = (size_t)(newlen)) \</div>
+<div class="line"> : ((slice).data.inlined.length = (<a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>)(newlen)))</div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ab8258afc3398c1426974b0b48dbf5a15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SLICE_START_PTR</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">slice</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((slice).refcount ? (slice).data.refcounted.bytes \</div>
+<div class="line"> : (slice).data.inlined.bytes)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a91fe16db371db7c53d6e3adc90a6678c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgpr__slice.html">gpr_slice</a> <a class="el" href="structgpr__slice.html">gpr_slice</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af8841873e741f6cf38b2192147ea4f3e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> <a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1a8906400c956fb8c508326a072b0662"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_empty_slice </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add3c8736c46bea7517991f178c82ba3c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_slice_cmp </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83e8110a7a98132963f01eb9c7f7418e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_from_copied_buffer </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf4df32e55b1b09d3f11c39447dcc68b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_from_copied_string </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>source</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab57463740ccedc00b50721dce66ebd7b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_malloc </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea43587a11bfe2e06fb8532035229bb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_new </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="affd1fef2ffaca67e0b2e7b60923da812"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_new_with_len </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>p</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *, size_t)&#160;</td>
+ <td class="paramname"><em>destroy</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad28a2bcca348046cbe660a44180e75ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a842ea6b4a9ab4d0d3becd6fda03bbc24"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_split_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>split</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a51315f2a9217a1d42711f48bfec9d39e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_split_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>split</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef752203db50c932010a74c6845872c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_slice_str_cmp </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9d4e6e264e22c6c6d3748f522da91eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_sub </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>begin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>end</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accf08ddad530a5f1cca82c834dc70965"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_sub_no_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>begin</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>end</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a024429b0dd15e43a09e48e35ca8810d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/slice_8h_source.html b/doc/ref/core.internal/html/slice_8h_source.html
new file mode 100644
index 0000000000..575232f1b6
--- /dev/null
+++ b/doc/ref/core.internal/html/slice_8h_source.html
@@ -0,0 +1,308 @@
+<!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: include/grpc/support/slice.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">slice.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="slice_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SLICE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SLICE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Slice API</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> A slice represents a contiguous reference counted array of bytes.</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> It is cheap to take references to a slice, and it is cheap to create a</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> slice pointing to a subset of another slice.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> The data-structure for slices is exposed here to allow non-gpr code to</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> build slices from whatever data they have available.</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> When defining interfaces that handle slices, care should be taken to define</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> reference ownership semantics (who should call unref?) and mutability</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> constraints (is the callee allowed to modify the slice?) */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">/* Reference count container for gpr_slice. Contains function pointers to</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> increment and decrement reference counts. Implementations should cleanup</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> when the reference count drops to zero.</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> Typically client code should not touch this, and use gpr_slice_malloc,</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> gpr_slice_new, or gpr_slice_new_with_len instead. */</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgpr__slice__refcount.html"> 63</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> {</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7"> 64</a></span>&#160; void (*<a class="code" href="structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7">ref</a>)(<span class="keywordtype">void</span> *);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00"> 65</a></span>&#160; void (*<a class="code" href="structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00">unref</a>)(<span class="keywordtype">void</span> *);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <a class="code" href="slice_8h.html#af8841873e741f6cf38b2192147ea4f3e">gpr_slice_refcount</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31"> 68</a></span>&#160;<span class="preprocessor">#define GPR_SLICE_INLINED_SIZE (sizeof(size_t) + sizeof(gpr_uint8 *) - 1)</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">/* A gpr_slice s, if initialized, represents the byte range</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> s.bytes[0..s.length-1].</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> It can have an associated ref count which has a destruction routine to be run</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> when the ref count reaches zero (see gpr_slice_new() and grp_slice_unref()).</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> Multiple gpr_slice values may share a ref count.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> If the slice does not have a refcount, it represents an inlined small piece</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> of data that is copied by value. */</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgpr__slice.html"> 79</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgpr__slice.html">gpr_slice</a> {</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24"> 80</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> *<a class="code" href="structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24">refcount</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864"> 83</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *<a class="code" href="structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864">bytes</a>;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5"> 84</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5">length</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; } <a class="code" href="structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102">refcounted</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structgpr__slice.html#acd3242f89b2999d12788e65337662cf3"> 87</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgpr__slice.html#acd3242f89b2999d12788e65337662cf3">length</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structgpr__slice.html#a39592633c4ad594a15b3a52aadff398d"> 88</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> <a class="code" href="structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864">bytes</a>[<a class="code" href="slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31">GPR_SLICE_INLINED_SIZE</a>];</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; } <a class="code" href="structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28">inlined</a>;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; } <a class="code" href="structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da">data</a>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;} <a class="code" href="slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c">gpr_slice</a>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="slice_8h.html#ab8258afc3398c1426974b0b48dbf5a15"> 93</a></span>&#160;<span class="preprocessor">#define GPR_SLICE_START_PTR(slice) \</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor"> ((slice).refcount ? (slice).data.refcounted.bytes \</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor"> : (slice).data.inlined.bytes)</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="slice_8h.html#ae97c2f992c1ebccaf44ceeee1f9fdabb"> 96</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_SLICE_LENGTH(slice) \</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor"> ((slice).refcount ? (slice).data.refcounted.length \</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"> : (slice).data.inlined.length)</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="slice_8h.html#a1f5333a1260aef2efe086d4e2188e613"> 99</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_SLICE_SET_LENGTH(slice, newlen) \</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor"> ((slice).refcount ? ((slice).data.refcounted.length = (size_t)(newlen)) \</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor"> : ((slice).data.inlined.length = (gpr_uint8)(newlen)))</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="slice_8h.html#a9b7e9acd0eb92039a9bc897712a62a14"> 102</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_SLICE_END_PTR(slice) \</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor"> GPR_SLICE_START_PTR(slice) + GPR_SLICE_LENGTH(slice)</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="slice_8h.html#ad4fe3efa7a8938045ce79271d79f79ef"> 104</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_SLICE_IS_EMPTY(slice) (GPR_SLICE_LENGTH(slice) == 0)</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/* Increment the refcount of s. Requires slice is initialized.</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> Returns s. */</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#ad28a2bcca348046cbe660a44180e75ca">gpr_slice_ref</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> s);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">/* Decrement the ref count of s. If the ref count of s reaches zero, all</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> slices sharing the ref count are destroyed, and considered no longer</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> initialized. If s is ultimately derived from a call to gpr_slice_new(start,</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> len, dest) where dest!=NULL , then (*dest)(start) is called, else if s is</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> ultimately derived from a call to gpr_slice_new_with_len(start, len, dest)</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> where dest!=NULL , then (*dest)(start, len). Requires s initialized. */</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7">gpr_slice_unref</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> s);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">/* Create a slice pointing at some data. Calls malloc to allocate a refcount</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> for the object, and arranges that destroy will be called with the pointer</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> passed in at destruction. */</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#aea43587a11bfe2e06fb8532035229bb2">gpr_slice_new</a>(<span class="keywordtype">void</span> *p, <span class="keywordtype">size_t</span> len, <span class="keywordtype">void</span> (*destroy)(<span class="keywordtype">void</span> *));</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment">/* Equivalent to gpr_slice_new, but with a two argument destroy function that</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> also takes the slice length. */</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812">gpr_slice_new_with_len</a>(<span class="keywordtype">void</span> *p, <span class="keywordtype">size_t</span> len,</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordtype">void</span> (*destroy)(<span class="keywordtype">void</span> *, <span class="keywordtype">size_t</span>));</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment">/* Equivalent to gpr_slice_new(malloc(len), len, free), but saves one malloc()</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> call.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> Aborts if malloc() fails. */</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#ab57463740ccedc00b50721dce66ebd7b">gpr_slice_malloc</a>(<span class="keywordtype">size_t</span> length);</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment">/* Create a slice by copying a string.</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"> Does not preserve null terminators.</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> Equivalent to:</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> size_t len = strlen(source);</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> gpr_slice slice = gpr_slice_malloc(len);</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> memcpy(slice-&gt;data, source, len); */</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b">gpr_slice_from_copied_string</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *source);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment">/* Create a slice by copying a buffer.</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> Equivalent to:</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> gpr_slice slice = gpr_slice_malloc(len);</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> memcpy(slice-&gt;data, source, len); */</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e">gpr_slice_from_copied_buffer</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *source, <span class="keywordtype">size_t</span> len);</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment">/* Return a result slice derived from s, which shares a ref count with s, where</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> result.data==s.data+begin, and result.length==end-begin.</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> The ref count of s is increased by one.</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> Requires s initialized, begin &lt;= end, begin &lt;= s.length, and</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> end &lt;= source-&gt;length. */</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb">gpr_slice_sub</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> s, <span class="keywordtype">size_t</span> begin, <span class="keywordtype">size_t</span> end);</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment">/* The same as gpr_slice_sub, but without altering the ref count */</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#accf08ddad530a5f1cca82c834dc70965">gpr_slice_sub_no_ref</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> s, <span class="keywordtype">size_t</span> begin, <span class="keywordtype">size_t</span> end);</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment">/* Splits s into two: modifies s to be s[0:split], and returns a new slice,</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> sharing a refcount with s, that contains s[split:s.length].</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> Requires s intialized, split &lt;= s.length */</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e">gpr_slice_split_tail</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> *s, <span class="keywordtype">size_t</span> split);</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">/* Splits s into two: modifies s to be s[split:s.length], and returns a new</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> slice, sharing a refcount with s, that contains s[0:split].</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> Requires s intialized, split &lt;= s.length */</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24">gpr_slice_split_head</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> *s, <span class="keywordtype">size_t</span> split);</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="slice_8h.html#a1a8906400c956fb8c508326a072b0662">gpr_empty_slice</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">/* Returns &lt;0 if a &lt; b, ==0 if a == b, &gt;0 if a &gt; b</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> The order is arbitrary, and is not guaranteed to be stable across different</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> versions of the API. */</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="keywordtype">int</span> <a class="code" href="slice_8h.html#add3c8736c46bea7517991f178c82ba3c">gpr_slice_cmp</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> a, <a class="code" href="structgpr__slice.html">gpr_slice</a> b);</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="keywordtype">int</span> <a class="code" href="slice_8h.html#aef752203db50c932010a74c6845872c2">gpr_slice_str_cmp</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> a, <span class="keyword">const</span> <span class="keywordtype">char</span> *b);</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_SLICE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="slice_8h_html_ac9d4e6e264e22c6c6d3748f522da91eb"><div class="ttname"><a href="slice_8h.html#ac9d4e6e264e22c6c6d3748f522da91eb">gpr_slice_sub</a></div><div class="ttdeci">gpr_slice gpr_slice_sub(gpr_slice s, size_t begin, size_t end)</div><div class="ttdef"><b>Definition:</b> slice.c:227</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="slice_8h_html_affd1fef2ffaca67e0b2e7b60923da812"><div class="ttname"><a href="slice_8h.html#affd1fef2ffaca67e0b2e7b60923da812">gpr_slice_new_with_len</a></div><div class="ttdeci">gpr_slice gpr_slice_new_with_len(void *p, size_t len, void(*destroy)(void *, size_t))</div><div class="ttdef"><b>Definition:</b> slice.c:120</div></div>
+<div class="ttc" id="slice_8h_html_a842ea6b4a9ab4d0d3becd6fda03bbc24"><div class="ttname"><a href="slice_8h.html#a842ea6b4a9ab4d0d3becd6fda03bbc24">gpr_slice_split_head</a></div><div class="ttdeci">gpr_slice gpr_slice_split_head(gpr_slice *s, size_t split)</div><div class="ttdef"><b>Definition:</b> slice.c:278</div></div>
+<div class="ttc" id="structgpr__slice_html_a50bbfa04c0c8f5db1190cbc86bdfd102"><div class="ttname"><a href="structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102">gpr_slice::refcounted</a></div><div class="ttdeci">struct gpr_slice::@27::@28 refcounted</div></div>
+<div class="ttc" id="structgpr__slice_html_a8867b2d660a87061534be9c8098d4fa5"><div class="ttname"><a href="structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5">gpr_slice::length</a></div><div class="ttdeci">size_t length</div><div class="ttdef"><b>Definition:</b> slice.h:84</div></div>
+<div class="ttc" id="structgpr__slice_html_a122218a8a00205225f56ee71ade6e8da"><div class="ttname"><a href="structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da">gpr_slice::data</a></div><div class="ttdeci">union gpr_slice::@27 data</div></div>
+<div class="ttc" id="structgpr__slice_html_a16646e1a137851f2b031cf2c431b2864"><div class="ttname"><a href="structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864">gpr_slice::bytes</a></div><div class="ttdeci">gpr_uint8 * bytes</div><div class="ttdef"><b>Definition:</b> slice.h:83</div></div>
+<div class="ttc" id="slice_8h_html_adf4df32e55b1b09d3f11c39447dcc68b"><div class="ttname"><a href="slice_8h.html#adf4df32e55b1b09d3f11c39447dcc68b">gpr_slice_from_copied_string</a></div><div class="ttdeci">gpr_slice gpr_slice_from_copied_string(const char *source)</div><div class="ttdef"><b>Definition:</b> slice.c:144</div></div>
+<div class="ttc" id="slice_8h_html_a1a8906400c956fb8c508326a072b0662"><div class="ttname"><a href="slice_8h.html#a1a8906400c956fb8c508326a072b0662">gpr_empty_slice</a></div><div class="ttdeci">gpr_slice gpr_empty_slice(void)</div><div class="ttdef"><b>Definition:</b> slice.c:40</div></div>
+<div class="ttc" id="slice_8h_html_aef752203db50c932010a74c6845872c2"><div class="ttname"><a href="slice_8h.html#aef752203db50c932010a74c6845872c2">gpr_slice_str_cmp</a></div><div class="ttdeci">int gpr_slice_str_cmp(gpr_slice a, const char *b)</div><div class="ttdef"><b>Definition:</b> slice.c:322</div></div>
+<div class="ttc" id="structgpr__slice_html_a1fd4cfd75079d6f30184f0340276eb28"><div class="ttname"><a href="structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28">gpr_slice::inlined</a></div><div class="ttdeci">struct gpr_slice::@27::@29 inlined</div></div>
+<div class="ttc" id="slice_8h_html_a83e8110a7a98132963f01eb9c7f7418e"><div class="ttname"><a href="slice_8h.html#a83e8110a7a98132963f01eb9c7f7418e">gpr_slice_from_copied_buffer</a></div><div class="ttdeci">gpr_slice gpr_slice_from_copied_buffer(const char *source, size_t len)</div><div class="ttdef"><b>Definition:</b> slice.c:138</div></div>
+<div class="ttc" id="slice_8h_html_ad28a2bcca348046cbe660a44180e75ca"><div class="ttname"><a href="slice_8h.html#ad28a2bcca348046cbe660a44180e75ca">gpr_slice_ref</a></div><div class="ttdeci">gpr_slice gpr_slice_ref(gpr_slice s)</div><div class="ttdef"><b>Definition:</b> slice.c:47</div></div>
+<div class="ttc" id="slice_8h_html_add3c8736c46bea7517991f178c82ba3c"><div class="ttname"><a href="slice_8h.html#add3c8736c46bea7517991f178c82ba3c">gpr_slice_cmp</a></div><div class="ttdeci">int gpr_slice_cmp(gpr_slice a, gpr_slice b)</div><div class="ttdef"><b>Definition:</b> slice.c:315</div></div>
+<div class="ttc" id="slice_8h_html_aea43587a11bfe2e06fb8532035229bb2"><div class="ttname"><a href="slice_8h.html#aea43587a11bfe2e06fb8532035229bb2">gpr_slice_new</a></div><div class="ttdeci">gpr_slice gpr_slice_new(void *p, size_t len, void(*destroy)(void *))</div><div class="ttdef"><b>Definition:</b> slice.c:82</div></div>
+<div class="ttc" id="structgpr__slice__refcount_html_ae31a3f84f0032dd388418eee26aa9c00"><div class="ttname"><a href="structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00">gpr_slice_refcount::unref</a></div><div class="ttdeci">void(* unref)(void *)</div><div class="ttdef"><b>Definition:</b> slice.h:65</div></div>
+<div class="ttc" id="structgpr__slice__refcount_html_abf3fba35fdc6a4cd2d47e5ca19107ed7"><div class="ttname"><a href="structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7">gpr_slice_refcount::ref</a></div><div class="ttdeci">void(* ref)(void *)</div><div class="ttdef"><b>Definition:</b> slice.h:64</div></div>
+<div class="ttc" id="structgpr__slice_html_a04d0bcc8331409fa3b3af29ee0b86a24"><div class="ttname"><a href="structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24">gpr_slice::refcount</a></div><div class="ttdeci">struct gpr_slice_refcount * refcount</div><div class="ttdef"><b>Definition:</b> slice.h:80</div></div>
+<div class="ttc" id="slice_8h_html_ab57463740ccedc00b50721dce66ebd7b"><div class="ttname"><a href="slice_8h.html#ab57463740ccedc00b50721dce66ebd7b">gpr_slice_malloc</a></div><div class="ttdeci">gpr_slice gpr_slice_malloc(size_t length)</div><div class="ttdef"><b>Definition:</b> slice.c:165</div></div>
+<div class="ttc" id="slice_8h_html_a51315f2a9217a1d42711f48bfec9d39e"><div class="ttname"><a href="slice_8h.html#a51315f2a9217a1d42711f48bfec9d39e">gpr_slice_split_tail</a></div><div class="ttdeci">gpr_slice gpr_slice_split_tail(gpr_slice *s, size_t split)</div><div class="ttdef"><b>Definition:</b> slice.c:243</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="slice_8h_html_a4063c3d8d4820472a4cf2655dd662a31"><div class="ttname"><a href="slice_8h.html#a4063c3d8d4820472a4cf2655dd662a31">GPR_SLICE_INLINED_SIZE</a></div><div class="ttdeci">#define GPR_SLICE_INLINED_SIZE</div><div class="ttdef"><b>Definition:</b> slice.h:68</div></div>
+<div class="ttc" id="slice_8h_html_a024429b0dd15e43a09e48e35ca8810d7"><div class="ttname"><a href="slice_8h.html#a024429b0dd15e43a09e48e35ca8810d7">gpr_slice_unref</a></div><div class="ttdeci">void gpr_slice_unref(gpr_slice s)</div><div class="ttdef"><b>Definition:</b> slice.c:54</div></div>
+<div class="ttc" id="structgpr__slice_html_acd3242f89b2999d12788e65337662cf3"><div class="ttname"><a href="structgpr__slice.html#acd3242f89b2999d12788e65337662cf3">gpr_slice::length</a></div><div class="ttdeci">gpr_uint8 length</div><div class="ttdef"><b>Definition:</b> slice.h:87</div></div>
+<div class="ttc" id="structgpr__slice__refcount_html"><div class="ttname"><a href="structgpr__slice__refcount.html">gpr_slice_refcount</a></div><div class="ttdef"><b>Definition:</b> slice.h:63</div></div>
+<div class="ttc" id="slice_8h_html_af8841873e741f6cf38b2192147ea4f3e"><div class="ttname"><a href="slice_8h.html#af8841873e741f6cf38b2192147ea4f3e">gpr_slice_refcount</a></div><div class="ttdeci">struct gpr_slice_refcount gpr_slice_refcount</div></div>
+<div class="ttc" id="slice_8h_html_a91fe16db371db7c53d6e3adc90a6678c"><div class="ttname"><a href="slice_8h.html#a91fe16db371db7c53d6e3adc90a6678c">gpr_slice</a></div><div class="ttdeci">struct gpr_slice gpr_slice</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="slice_8h_html_accf08ddad530a5f1cca82c834dc70965"><div class="ttname"><a href="slice_8h.html#accf08ddad530a5f1cca82c834dc70965">gpr_slice_sub_no_ref</a></div><div class="ttdeci">gpr_slice gpr_slice_sub_no_ref(gpr_slice s, size_t begin, size_t end)</div><div class="ttdef"><b>Definition:</b> slice.c:202</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/slice__buffer_8c.html b/doc/ref/core.internal/html/slice__buffer_8c.html
new file mode 100644
index 0000000000..06f13fd43f
--- /dev/null
+++ b/doc/ref/core.internal/html/slice__buffer_8c.html
@@ -0,0 +1,380 @@
+<!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: src/core/support/slice_buffer.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">slice_buffer.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a886cd1bc8d999f1eca35adda926045dc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#a886cd1bc8d999f1eca35adda926045dc">GROW</a>(x)&#160;&#160;&#160;(3 * (x) / 2)</td></tr>
+<tr class="separator:a886cd1bc8d999f1eca35adda926045dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aab5ed508480703c7b856e92ef6d7e4c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#aab5ed508480703c7b856e92ef6d7e4c8">gpr_slice_buffer_init</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:aab5ed508480703c7b856e92ef6d7e4c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60c8b437918c3a81651b5f9a892f6399"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#a60c8b437918c3a81651b5f9a892f6399">gpr_slice_buffer_destroy</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:a60c8b437918c3a81651b5f9a892f6399"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5498f14d7b008d134a3ad32935df4ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#ae5498f14d7b008d134a3ad32935df4ac">gpr_slice_buffer_tiny_add</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, unsigned n)</td></tr>
+<tr class="separator:ae5498f14d7b008d134a3ad32935df4ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31bc820cee4aae1904d67a9d81fd83b3"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#a31bc820cee4aae1904d67a9d81fd83b3">gpr_slice_buffer_add_indexed</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="el" href="structgpr__slice.html">gpr_slice</a> s)</td></tr>
+<tr class="separator:a31bc820cee4aae1904d67a9d81fd83b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae202c0235646241cf95ffbb2479bada9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#ae202c0235646241cf95ffbb2479bada9">gpr_slice_buffer_add</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="el" href="structgpr__slice.html">gpr_slice</a> s)</td></tr>
+<tr class="separator:ae202c0235646241cf95ffbb2479bada9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af58c3edcfaf90b364e3977e3bb423e3f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#af58c3edcfaf90b364e3977e3bb423e3f">gpr_slice_buffer_addn</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="el" href="structgpr__slice.html">gpr_slice</a> *s, size_t n)</td></tr>
+<tr class="separator:af58c3edcfaf90b364e3977e3bb423e3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3bd1bc560aad5b69a6ef0b09286cc79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#ae3bd1bc560aad5b69a6ef0b09286cc79">gpr_slice_buffer_pop</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:ae3bd1bc560aad5b69a6ef0b09286cc79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2819a201e9dcf62e31a6dbfc6fe3010"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#aa2819a201e9dcf62e31a6dbfc6fe3010">gpr_slice_buffer_reset_and_unref</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:aa2819a201e9dcf62e31a6dbfc6fe3010"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a672b80e16cdabf26c7b558a54edfcd2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#a672b80e16cdabf26c7b558a54edfcd2d">gpr_slice_buffer_swap</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *a, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *b)</td></tr>
+<tr class="separator:a672b80e16cdabf26c7b558a54edfcd2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0289912040151750bbee19ba632a88f1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8c.html#a0289912040151750bbee19ba632a88f1">gpr_slice_buffer_move_into</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *src, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *dst)</td></tr>
+<tr class="separator:a0289912040151750bbee19ba632a88f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a886cd1bc8d999f1eca35adda926045dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GROW</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;(3 * (x) / 2)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae202c0235646241cf95ffbb2479bada9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31bc820cee4aae1904d67a9d81fd83b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_slice_buffer_add_indexed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af58c3edcfaf90b364e3977e3bb423e3f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_addn </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a60c8b437918c3a81651b5f9a892f6399"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab5ed508480703c7b856e92ef6d7e4c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0289912040151750bbee19ba632a88f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_move_into </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3bd1bc560aad5b69a6ef0b09286cc79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2819a201e9dcf62e31a6dbfc6fe3010"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_reset_and_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a672b80e16cdabf26c7b558a54edfcd2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_swap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae5498f14d7b008d134a3ad32935df4ac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* gpr_slice_buffer_tiny_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/slice__buffer_8h.html b/doc/ref/core.internal/html/slice__buffer_8h.html
new file mode 100644
index 0000000000..bfb20d964a
--- /dev/null
+++ b/doc/ref/core.internal/html/slice__buffer_8h.html
@@ -0,0 +1,380 @@
+<!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: include/grpc/support/slice_buffer.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">slice_buffer.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="slice__buffer_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a81db47a2be0a079aa797cd77f3864809"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809">GRPC_SLICE_BUFFER_INLINE_ELEMENTS</a>&#160;&#160;&#160;8</td></tr>
+<tr class="separator:a81db47a2be0a079aa797cd77f3864809"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aab5ed508480703c7b856e92ef6d7e4c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8">gpr_slice_buffer_init</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:aab5ed508480703c7b856e92ef6d7e4c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a60c8b437918c3a81651b5f9a892f6399"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399">gpr_slice_buffer_destroy</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:a60c8b437918c3a81651b5f9a892f6399"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fd6443c77c7602be19b9152355a8e12"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12">gpr_slice_buffer_add</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:a8fd6443c77c7602be19b9152355a8e12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd745eec745573eeace3861da3e2c045"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045">gpr_slice_buffer_add_indexed</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:acd745eec745573eeace3861da3e2c045"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a615be732e655de9980c321eb075e4a46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46">gpr_slice_buffer_addn</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t n)</td></tr>
+<tr class="separator:a615be732e655de9980c321eb075e4a46"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a223fc0bf1beb3866aee902dea0a599c0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0">gpr_slice_buffer_tiny_add</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, unsigned len)</td></tr>
+<tr class="separator:a223fc0bf1beb3866aee902dea0a599c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3bd1bc560aad5b69a6ef0b09286cc79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79">gpr_slice_buffer_pop</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:ae3bd1bc560aad5b69a6ef0b09286cc79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2819a201e9dcf62e31a6dbfc6fe3010"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010">gpr_slice_buffer_reset_and_unref</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb)</td></tr>
+<tr class="separator:aa2819a201e9dcf62e31a6dbfc6fe3010"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a672b80e16cdabf26c7b558a54edfcd2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d">gpr_slice_buffer_swap</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *a, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *b)</td></tr>
+<tr class="separator:a672b80e16cdabf26c7b558a54edfcd2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0289912040151750bbee19ba632a88f1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1">gpr_slice_buffer_move_into</a> (<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *src, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *dst)</td></tr>
+<tr class="separator:a0289912040151750bbee19ba632a88f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a81db47a2be0a079aa797cd77f3864809"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SLICE_BUFFER_INLINE_ELEMENTS&#160;&#160;&#160;8</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8fd6443c77c7602be19b9152355a8e12"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acd745eec745573eeace3861da3e2c045"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_slice_buffer_add_indexed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a615be732e655de9980c321eb075e4a46"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_addn </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a60c8b437918c3a81651b5f9a892f6399"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab5ed508480703c7b856e92ef6d7e4c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0289912040151750bbee19ba632a88f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_move_into </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3bd1bc560aad5b69a6ef0b09286cc79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2819a201e9dcf62e31a6dbfc6fe3010"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_reset_and_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a672b80e16cdabf26c7b558a54edfcd2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_buffer_swap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a223fc0bf1beb3866aee902dea0a599c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* gpr_slice_buffer_tiny_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/slice__buffer_8h_source.html b/doc/ref/core.internal/html/slice__buffer_8h_source.html
new file mode 100644
index 0000000000..11ed8c84fd
--- /dev/null
+++ b/doc/ref/core.internal/html/slice__buffer_8h_source.html
@@ -0,0 +1,212 @@
+<!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: include/grpc/support/slice_buffer.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">slice_buffer.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="slice__buffer_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SLICE_BUFFER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SLICE_BUFFER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809"> 43</a></span>&#160;<span class="preprocessor">#define GRPC_SLICE_BUFFER_INLINE_ELEMENTS 8</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Represents an expandable array of slices, to be interpreted as a single item</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> TODO(ctiller): inline some small number of elements into the struct, to</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> avoid per-call allocations */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgpr__slice__buffer.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* slices in the array */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba"> 50</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *<a class="code" href="structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba">slices</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">/* the number of slices in the array */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff"> 52</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff">count</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">/* the number of slices allocated in the array */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e"> 54</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e">capacity</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* the combined length of all slices in the array */</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3"> 56</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3">length</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">/* inlined elements to avoid allocations */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgpr__slice__buffer.html#adb678a23dc27e50c478bc48d365420e2"> 58</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> inlined[<a class="code" href="slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809">GRPC_SLICE_BUFFER_INLINE_ELEMENTS</a>];</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/* initialize a slice buffer */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8">gpr_slice_buffer_init</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* destroy a slice buffer - unrefs any held elements */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399">gpr_slice_buffer_destroy</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* Add an element to a slice buffer - takes ownership of the slice.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> This function is allowed to concatenate the passed in slice to the end of</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> some other slice if desired by the slice buffer. */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12">gpr_slice_buffer_add</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* add an element to a slice buffer - takes ownership of the slice and returns</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> the index of the slice.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> Guarantees that the slice will not be concatenated at the end of another</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> slice (i.e. the data for this slice will begin at the first byte of the</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> slice at the returned index in sb-&gt;slices)</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> The implementation MAY decide to concatenate data at the end of a small</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> slice added in this fashion. */</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045">gpr_slice_buffer_add_indexed</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46">gpr_slice_buffer_addn</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <a class="code" href="structgpr__slice.html">gpr_slice</a> *slices, <span class="keywordtype">size_t</span> n);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment">/* add a very small (less than 8 bytes) amount of data to the end of a slice</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> buffer: returns a pointer into which to add the data */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *<a class="code" href="slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0">gpr_slice_buffer_tiny_add</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb, <span class="keywordtype">unsigned</span> len);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* pop the last buffer, but don&#39;t unref it */</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79">gpr_slice_buffer_pop</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* clear a slice buffer, unref all elements */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010">gpr_slice_buffer_reset_and_unref</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *sb);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment">/* swap the contents of two slice buffers */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d">gpr_slice_buffer_swap</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *a, <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *b);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* move all of the elements of src into dst */</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keywordtype">void</span> <a class="code" href="slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1">gpr_slice_buffer_move_into</a>(<a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *src, <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *dst);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_SLICE_BUFFER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="slice__buffer_8h_html_a223fc0bf1beb3866aee902dea0a599c0"><div class="ttname"><a href="slice__buffer_8h.html#a223fc0bf1beb3866aee902dea0a599c0">gpr_slice_buffer_tiny_add</a></div><div class="ttdeci">gpr_uint8 * gpr_slice_buffer_tiny_add(gpr_slice_buffer *sb, unsigned len)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:72</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html_a07c0e3196f5e197af878ee94fd5df3ba"><div class="ttname"><a href="structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba">gpr_slice_buffer::slices</a></div><div class="ttdeci">gpr_slice * slices</div><div class="ttdef"><b>Definition:</b> slice_buffer.h:50</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="slice__buffer_8h_html_acd745eec745573eeace3861da3e2c045"><div class="ttname"><a href="slice__buffer_8h.html#acd745eec745573eeace3861da3e2c045">gpr_slice_buffer_add_indexed</a></div><div class="ttdeci">size_t gpr_slice_buffer_add_indexed(gpr_slice_buffer *sb, gpr_slice slice)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:96</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html_a2150637602d9080cdb111d09c1d669c3"><div class="ttname"><a href="structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3">gpr_slice_buffer::length</a></div><div class="ttdeci">size_t length</div><div class="ttdef"><b>Definition:</b> slice_buffer.h:56</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html_a48b6efc57238e7abd0bcbb579219456e"><div class="ttname"><a href="structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e">gpr_slice_buffer::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> slice_buffer.h:54</div></div>
+<div class="ttc" id="slice__buffer_8h_html_aa2819a201e9dcf62e31a6dbfc6fe3010"><div class="ttname"><a href="slice__buffer_8h.html#aa2819a201e9dcf62e31a6dbfc6fe3010">gpr_slice_buffer_reset_and_unref</a></div><div class="ttdeci">void gpr_slice_buffer_reset_and_unref(gpr_slice_buffer *sb)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:154</div></div>
+<div class="ttc" id="slice__buffer_8h_html_aab5ed508480703c7b856e92ef6d7e4c8"><div class="ttname"><a href="slice__buffer_8h.html#aab5ed508480703c7b856e92ef6d7e4c8">gpr_slice_buffer_init</a></div><div class="ttdeci">void gpr_slice_buffer_init(gpr_slice_buffer *sb)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:58</div></div>
+<div class="ttc" id="slice__buffer_8h_html_ae3bd1bc560aad5b69a6ef0b09286cc79"><div class="ttname"><a href="slice__buffer_8h.html#ae3bd1bc560aad5b69a6ef0b09286cc79">gpr_slice_buffer_pop</a></div><div class="ttdeci">void gpr_slice_buffer_pop(gpr_slice_buffer *sb)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:147</div></div>
+<div class="ttc" id="slice__buffer_8h_html_a8fd6443c77c7602be19b9152355a8e12"><div class="ttname"><a href="slice__buffer_8h.html#a8fd6443c77c7602be19b9152355a8e12">gpr_slice_buffer_add</a></div><div class="ttdeci">void gpr_slice_buffer_add(gpr_slice_buffer *sb, gpr_slice slice)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:105</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html_a3adc77c3ef399ae0aa1ce1377e0e9fff"><div class="ttname"><a href="structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff">gpr_slice_buffer::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> slice_buffer.h:52</div></div>
+<div class="ttc" id="slice__buffer_8h_html_a60c8b437918c3a81651b5f9a892f6399"><div class="ttname"><a href="slice__buffer_8h.html#a60c8b437918c3a81651b5f9a892f6399">gpr_slice_buffer_destroy</a></div><div class="ttdeci">void gpr_slice_buffer_destroy(gpr_slice_buffer *sb)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:65</div></div>
+<div class="ttc" id="slice__buffer_8h_html_a672b80e16cdabf26c7b558a54edfcd2d"><div class="ttname"><a href="slice__buffer_8h.html#a672b80e16cdabf26c7b558a54edfcd2d">gpr_slice_buffer_swap</a></div><div class="ttdeci">void gpr_slice_buffer_swap(gpr_slice_buffer *a, gpr_slice_buffer *b)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:165</div></div>
+<div class="ttc" id="slice__buffer_8h_html_a615be732e655de9980c321eb075e4a46"><div class="ttname"><a href="slice__buffer_8h.html#a615be732e655de9980c321eb075e4a46">gpr_slice_buffer_addn</a></div><div class="ttdeci">void gpr_slice_buffer_addn(gpr_slice_buffer *sb, gpr_slice *slices, size_t n)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:140</div></div>
+<div class="ttc" id="slice__buffer_8h_html_a0289912040151750bbee19ba632a88f1"><div class="ttname"><a href="slice__buffer_8h.html#a0289912040151750bbee19ba632a88f1">gpr_slice_buffer_move_into</a></div><div class="ttdeci">void gpr_slice_buffer_move_into(gpr_slice_buffer *src, gpr_slice_buffer *dst)</div><div class="ttdef"><b>Definition:</b> slice_buffer.c:194</div></div>
+<div class="ttc" id="slice__buffer_8h_html_a81db47a2be0a079aa797cd77f3864809"><div class="ttname"><a href="slice__buffer_8h.html#a81db47a2be0a079aa797cd77f3864809">GRPC_SLICE_BUFFER_INLINE_ELEMENTS</a></div><div class="ttdeci">#define GRPC_SLICE_BUFFER_INLINE_ELEMENTS</div><div class="ttdef"><b>Definition:</b> slice_buffer.h:43</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sockaddr_8h.html b/doc/ref/core.internal/html/sockaddr_8h.html
new file mode 100644
index 0000000000..c1b5978048
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr_8h.html
@@ -0,0 +1,102 @@
+<!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: src/core/iomgr/sockaddr.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="sockaddr_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr_8h_source.html b/doc/ref/core.internal/html/sockaddr_8h_source.html
new file mode 100644
index 0000000000..8cf5366998
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr_8h_source.html
@@ -0,0 +1,149 @@
+<!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: src/core/iomgr/sockaddr.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sockaddr_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef GPR_WIN32</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="sockaddr__win32_8h.html">src/core/iomgr/sockaddr_win32.h</a>&quot;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifdef GPR_POSIX_SOCKETADDR</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="sockaddr__posix_8h.html">src/core/iomgr/sockaddr_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="sockaddr__posix_8h_html"><div class="ttname"><a href="sockaddr__posix_8h.html">sockaddr_posix.h</a></div></div>
+<div class="ttc" id="sockaddr__win32_8h_html"><div class="ttname"><a href="sockaddr__win32_8h.html">sockaddr_win32.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sockaddr__posix_8h.html b/doc/ref/core.internal/html/sockaddr__posix_8h.html
new file mode 100644
index 0000000000..e5373da98b
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__posix_8h.html
@@ -0,0 +1,107 @@
+<!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: src/core/iomgr/sockaddr_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;arpa/inet.h&gt;</code><br/>
+<code>#include &lt;sys/socket.h&gt;</code><br/>
+<code>#include &lt;sys/types.h&gt;</code><br/>
+<code>#include &lt;netinet/in.h&gt;</code><br/>
+<code>#include &lt;netdb.h&gt;</code><br/>
+<code>#include &lt;unistd.h&gt;</code><br/>
+</div>
+<p><a href="sockaddr__posix_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr__posix_8h_source.html b/doc/ref/core.internal/html/sockaddr__posix_8h_source.html
new file mode 100644
index 0000000000..5963d6e009
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__posix_8h_source.html
@@ -0,0 +1,143 @@
+<!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: src/core/iomgr/sockaddr_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sockaddr__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;arpa/inet.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;sys/socket.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;sys/types.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;netinet/in.h&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;netdb.h&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_POSIX_H */</span><span class="preprocessor"></span></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sockaddr__resolver_8c.html b/doc/ref/core.internal/html/sockaddr__resolver_8c.html
new file mode 100644
index 0000000000..4970f23c34
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__resolver_8c.html
@@ -0,0 +1,202 @@
+<!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: src/core/client_config/resolvers/sockaddr_resolver.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">sockaddr_resolver.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="sockaddr__resolver_8h_source.html">src/core/client_config/resolvers/sockaddr_resolver.h</a>&quot;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="host__port_8h_source.html">grpc/support/host_port.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="pick__first_8h_source.html">src/core/client_config/lb_policies/pick_first.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="resolve__address_8h_source.html">src/core/iomgr/resolve_address.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html">sockaddr_resolver</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ae666b8dfe7a65b7719adcc22034160e6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8c.html#ae666b8dfe7a65b7719adcc22034160e6">DECL_FACTORY</a>(name)</td></tr>
+<tr class="separator:ae666b8dfe7a65b7719adcc22034160e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abc4c6c8581ef4f8dc5cf8ec5c79383a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8c.html#abc4c6c8581ef4f8dc5cf8ec5c79383a1">grpc_ipv4_resolver_factory_create</a> ()</td></tr>
+<tr class="separator:abc4c6c8581ef4f8dc5cf8ec5c79383a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0f24d3cf0da9c53e628da5f60cab92d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8c.html#ad0f24d3cf0da9c53e628da5f60cab92d">grpc_ipv6_resolver_factory_create</a> ()</td></tr>
+<tr class="separator:ad0f24d3cf0da9c53e628da5f60cab92d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ae666b8dfe7a65b7719adcc22034160e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define DECL_FACTORY</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">name</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> <a class="code" href="structgrpc__resolver.html">grpc_resolver</a> *name##_factory_create_resolver( \</div>
+<div class="line"> <a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="code" href="structgrpc__uri.html">grpc_uri</a> *uri, \</div>
+<div class="line"> <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="code" href="structsubchannel__factory.html">subchannel_factory</a>) { \</div>
+<div class="line"> return sockaddr_create(uri, <a class="code" href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">grpc_create_pick_first_lb_policy</a>, \</div>
+<div class="line"> subchannel_factory, parse_##name); \</div>
+<div class="line"> } \</div>
+<div class="line"> static <span class="keyword">const</span> <a class="code" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a> name##_factory_vtable = { \</div>
+<div class="line"> sockaddr_factory_ref, sockaddr_factory_unref, \</div>
+<div class="line"> name##_factory_create_resolver}; \</div>
+<div class="line"> static <a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> name##_resolver_factory = { \</div>
+<div class="line"> &amp;name##_factory_vtable}; <a class="code" href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2">\</a></div>
+<div class="line"><a class="code" href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2"> grpc_resolver_factory</a> *grpc_##name##_resolver_factory_create() { \</div>
+<div class="line"> return &amp;name##_resolver_factory; \</div>
+<div class="line"> }</div>
+<div class="ttc" id="structgrpc__resolver__factory__vtable_html"><div class="ttname"><a href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a></div><div class="ttdef"><b>Definition:</b> resolver_factory.h:50</div></div>
+<div class="ttc" id="structgrpc__resolver_html"><div class="ttname"><a href="structgrpc__resolver.html">grpc_resolver</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver.h:46</div></div>
+<div class="ttc" id="structsubchannel__factory_html"><div class="ttname"><a href="structsubchannel__factory.html">subchannel_factory</a></div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:131</div></div>
+<div class="ttc" id="structgrpc__resolver__factory_html"><div class="ttname"><a href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver_factory.h:46</div></div>
+<div class="ttc" id="pick__first_8h_html_a2ef6310260146caa4cf56acddbb4343e"><div class="ttname"><a href="pick__first_8h.html#a2ef6310260146caa4cf56acddbb4343e">grpc_create_pick_first_lb_policy</a></div><div class="ttdeci">grpc_lb_policy * grpc_create_pick_first_lb_policy(grpc_subchannel **subchannels, size_t num_subchannels)</div><div class="ttdoc">Returns a load balancing policy instance that picks up the first subchannel from subchannels to succe...</div><div class="ttdef"><b>Definition:</b> pick_first.c:317</div></div>
+<div class="ttc" id="structgrpc__uri_html"><div class="ttname"><a href="structgrpc__uri.html">grpc_uri</a></div><div class="ttdef"><b>Definition:</b> uri_parser.h:37</div></div>
+<div class="ttc" id="resolver__factory_8h_html_a44d5c388fec49323981552a26c5835a2"><div class="ttname"><a href="resolver__factory_8h.html#a44d5c388fec49323981552a26c5835a2">grpc_resolver_factory</a></div><div class="ttdeci">struct grpc_resolver_factory grpc_resolver_factory</div><div class="ttdef"><b>Definition:</b> resolver_factory.h:41</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html"><div class="ttname"><a href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></div><div class="ttdoc">Constructor for new configured channels. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:45</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="abc4c6c8581ef4f8dc5cf8ec5c79383a1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* grpc_ipv4_resolver_factory_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad0f24d3cf0da9c53e628da5f60cab92d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* grpc_ipv6_resolver_factory_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr__resolver_8h.html b/doc/ref/core.internal/html/sockaddr__resolver_8h.html
new file mode 100644
index 0000000000..06033340f8
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__resolver_8h.html
@@ -0,0 +1,146 @@
+<!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: src/core/client_config/resolvers/sockaddr_resolver.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">sockaddr_resolver.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="resolver__factory_8h_source.html">src/core/client_config/resolver_factory.h</a>&quot;</code><br/>
+</div>
+<p><a href="sockaddr__resolver_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a621b7e3868a79b41351f2204a4c5c1fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa">grpc_ipv4_resolver_factory_create</a> (void)</td></tr>
+<tr class="separator:a621b7e3868a79b41351f2204a4c5c1fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe451b1e6a083dfcc0656fb77a9e42c2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2">grpc_ipv6_resolver_factory_create</a> (void)</td></tr>
+<tr class="separator:abe451b1e6a083dfcc0656fb77a9e42c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a621b7e3868a79b41351f2204a4c5c1fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* grpc_ipv4_resolver_factory_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abe451b1e6a083dfcc0656fb77a9e42c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* grpc_ipv6_resolver_factory_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr__resolver_8h_source.html b/doc/ref/core.internal/html/sockaddr__resolver_8h_source.html
new file mode 100644
index 0000000000..114472f6c2
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__resolver_8h_source.html
@@ -0,0 +1,154 @@
+<!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: src/core/client_config/resolvers/sockaddr_resolver.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li><li class="navelem"><a class="el" href="dir_c11753f61f8d651d8cfd411cfadfafab.html">resolvers</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr_resolver.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sockaddr__resolver_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVERS_UNIX_RESOLVER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVERS_UNIX_RESOLVER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="resolver__factory_8h.html">src/core/client_config/resolver_factory.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *<a class="code" href="sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa">grpc_ipv4_resolver_factory_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *<a class="code" href="sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2">grpc_ipv6_resolver_factory_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#ifdef GPR_POSIX_SOCKET</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<a class="code" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *grpc_unix_resolver_factory_create(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_RESOLVERS_UNIX_RESOLVER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="sockaddr__resolver_8h_html_abe451b1e6a083dfcc0656fb77a9e42c2"><div class="ttname"><a href="sockaddr__resolver_8h.html#abe451b1e6a083dfcc0656fb77a9e42c2">grpc_ipv6_resolver_factory_create</a></div><div class="ttdeci">grpc_resolver_factory * grpc_ipv6_resolver_factory_create(void)</div><div class="ttdef"><b>Definition:</b> sockaddr_resolver.c:299</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="resolver__factory_8h_html"><div class="ttname"><a href="resolver__factory_8h.html">resolver_factory.h</a></div></div>
+<div class="ttc" id="structgrpc__resolver__factory_html"><div class="ttname"><a href="structgrpc__resolver__factory.html">grpc_resolver_factory</a></div><div class="ttdoc">grpc_resolver provides grpc_client_config objects to grpc_channel objects </div><div class="ttdef"><b>Definition:</b> resolver_factory.h:46</div></div>
+<div class="ttc" id="sockaddr__resolver_8h_html_a621b7e3868a79b41351f2204a4c5c1fa"><div class="ttname"><a href="sockaddr__resolver_8h.html#a621b7e3868a79b41351f2204a4c5c1fa">grpc_ipv4_resolver_factory_create</a></div><div class="ttdeci">grpc_resolver_factory * grpc_ipv4_resolver_factory_create(void)</div><div class="ttdef"><b>Definition:</b> sockaddr_resolver.c:298</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sockaddr__utils_8c.html b/doc/ref/core.internal/html/sockaddr__utils_8c.html
new file mode 100644
index 0000000000..e251a199d7
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__utils_8c.html
@@ -0,0 +1,386 @@
+<!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: src/core/iomgr/sockaddr_utils.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">sockaddr_utils.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="sockaddr__utils_8h_source.html">src/core/iomgr/sockaddr_utils.h</a>&quot;</code><br/>
+<code>#include &lt;errno.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="host__port_8h_source.html">grpc/support/host_port.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a97d452690214de3809f667f95dda80ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a97d452690214de3809f667f95dda80ce">grpc_sockaddr_is_v4mapped</a> (const struct sockaddr *addr, struct sockaddr_in *addr4_out)</td></tr>
+<tr class="separator:a97d452690214de3809f667f95dda80ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a606efe4550fb7947fb36ff6a0231ac79"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a606efe4550fb7947fb36ff6a0231ac79">grpc_sockaddr_to_v4mapped</a> (const struct sockaddr *addr, struct sockaddr_in6 *addr6_out)</td></tr>
+<tr class="separator:a606efe4550fb7947fb36ff6a0231ac79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed4ad468c36fc0a4531025c5fa2185a2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#aed4ad468c36fc0a4531025c5fa2185a2">grpc_sockaddr_is_wildcard</a> (const struct sockaddr *addr, int *port_out)</td></tr>
+<tr class="separator:aed4ad468c36fc0a4531025c5fa2185a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cb44f54c6743ff32dc31147ca6a6721"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a3cb44f54c6743ff32dc31147ca6a6721">grpc_sockaddr_make_wildcards</a> (int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out)</td></tr>
+<tr class="separator:a3cb44f54c6743ff32dc31147ca6a6721"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89be072619a282936b8c1f99c5af254e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a89be072619a282936b8c1f99c5af254e">grpc_sockaddr_make_wildcard4</a> (int port, struct sockaddr_in *wild_out)</td></tr>
+<tr class="separator:a89be072619a282936b8c1f99c5af254e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a8a1c666324ed6d23077a0dd77bd2b8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a1a8a1c666324ed6d23077a0dd77bd2b8">grpc_sockaddr_make_wildcard6</a> (int port, struct sockaddr_in6 *wild_out)</td></tr>
+<tr class="separator:a1a8a1c666324ed6d23077a0dd77bd2b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a400a51bd46384a6e0b28136274765464"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a400a51bd46384a6e0b28136274765464">grpc_sockaddr_to_string</a> (char **out, const struct sockaddr *addr, int normalize)</td></tr>
+<tr class="separator:a400a51bd46384a6e0b28136274765464"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8545a440d2d91365d75ed87720891a91"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a8545a440d2d91365d75ed87720891a91">grpc_sockaddr_to_uri</a> (const struct sockaddr *addr)</td></tr>
+<tr class="separator:a8545a440d2d91365d75ed87720891a91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b9c605d240e9358a23f29c4cf07b1da"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#a9b9c605d240e9358a23f29c4cf07b1da">grpc_sockaddr_get_port</a> (const struct sockaddr *addr)</td></tr>
+<tr class="separator:a9b9c605d240e9358a23f29c4cf07b1da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad73cd02c052e82778b7df5378ded462d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8c.html#ad73cd02c052e82778b7df5378ded462d">grpc_sockaddr_set_port</a> (const struct sockaddr *addr, int port)</td></tr>
+<tr class="separator:ad73cd02c052e82778b7df5378ded462d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a9b9c605d240e9358a23f29c4cf07b1da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_get_port </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a97d452690214de3809f667f95dda80ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_is_v4mapped </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in *&#160;</td>
+ <td class="paramname"><em>addr4_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aed4ad468c36fc0a4531025c5fa2185a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_is_wildcard </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>port_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a89be072619a282936b8c1f99c5af254e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sockaddr_make_wildcard4 </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in *&#160;</td>
+ <td class="paramname"><em>wild_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a8a1c666324ed6d23077a0dd77bd2b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sockaddr_make_wildcard6 </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in6 *&#160;</td>
+ <td class="paramname"><em>wild_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3cb44f54c6743ff32dc31147ca6a6721"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sockaddr_make_wildcards </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in *&#160;</td>
+ <td class="paramname"><em>wild4_out</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in6 *&#160;</td>
+ <td class="paramname"><em>wild6_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad73cd02c052e82778b7df5378ded462d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_set_port </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a400a51bd46384a6e0b28136274765464"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_to_string </td>
+ <td>(</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>out</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>normalize</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8545a440d2d91365d75ed87720891a91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_sockaddr_to_uri </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a606efe4550fb7947fb36ff6a0231ac79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_to_v4mapped </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in6 *&#160;</td>
+ <td class="paramname"><em>addr6_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr__utils_8h.html b/doc/ref/core.internal/html/sockaddr__utils_8h.html
new file mode 100644
index 0000000000..f346dbde7a
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__utils_8h.html
@@ -0,0 +1,381 @@
+<!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: src/core/iomgr/sockaddr_utils.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">sockaddr_utils.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="sockaddr_8h_source.html">src/core/iomgr/sockaddr.h</a>&quot;</code><br/>
+</div>
+<p><a href="sockaddr__utils_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a97d452690214de3809f667f95dda80ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce">grpc_sockaddr_is_v4mapped</a> (const struct sockaddr *addr, struct sockaddr_in *addr4_out)</td></tr>
+<tr class="separator:a97d452690214de3809f667f95dda80ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a606efe4550fb7947fb36ff6a0231ac79"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79">grpc_sockaddr_to_v4mapped</a> (const struct sockaddr *addr, struct sockaddr_in6 *addr6_out)</td></tr>
+<tr class="separator:a606efe4550fb7947fb36ff6a0231ac79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed4ad468c36fc0a4531025c5fa2185a2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2">grpc_sockaddr_is_wildcard</a> (const struct sockaddr *addr, int *port_out)</td></tr>
+<tr class="separator:aed4ad468c36fc0a4531025c5fa2185a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cb44f54c6743ff32dc31147ca6a6721"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721">grpc_sockaddr_make_wildcards</a> (int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out)</td></tr>
+<tr class="separator:a3cb44f54c6743ff32dc31147ca6a6721"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89be072619a282936b8c1f99c5af254e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e">grpc_sockaddr_make_wildcard4</a> (int port, struct sockaddr_in *wild_out)</td></tr>
+<tr class="separator:a89be072619a282936b8c1f99c5af254e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a8a1c666324ed6d23077a0dd77bd2b8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8">grpc_sockaddr_make_wildcard6</a> (int port, struct sockaddr_in6 *wild_out)</td></tr>
+<tr class="separator:a1a8a1c666324ed6d23077a0dd77bd2b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b9c605d240e9358a23f29c4cf07b1da"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da">grpc_sockaddr_get_port</a> (const struct sockaddr *addr)</td></tr>
+<tr class="separator:a9b9c605d240e9358a23f29c4cf07b1da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad73cd02c052e82778b7df5378ded462d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d">grpc_sockaddr_set_port</a> (const struct sockaddr *addr, int port)</td></tr>
+<tr class="separator:ad73cd02c052e82778b7df5378ded462d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a400a51bd46384a6e0b28136274765464"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464">grpc_sockaddr_to_string</a> (char **out, const struct sockaddr *addr, int normalize)</td></tr>
+<tr class="separator:a400a51bd46384a6e0b28136274765464"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8545a440d2d91365d75ed87720891a91"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91">grpc_sockaddr_to_uri</a> (const struct sockaddr *addr)</td></tr>
+<tr class="separator:a8545a440d2d91365d75ed87720891a91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a9b9c605d240e9358a23f29c4cf07b1da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_get_port </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a97d452690214de3809f667f95dda80ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_is_v4mapped </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in *&#160;</td>
+ <td class="paramname"><em>addr4_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aed4ad468c36fc0a4531025c5fa2185a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_is_wildcard </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>port_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a89be072619a282936b8c1f99c5af254e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sockaddr_make_wildcard4 </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in *&#160;</td>
+ <td class="paramname"><em>wild_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a8a1c666324ed6d23077a0dd77bd2b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sockaddr_make_wildcard6 </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in6 *&#160;</td>
+ <td class="paramname"><em>wild_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3cb44f54c6743ff32dc31147ca6a6721"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sockaddr_make_wildcards </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in *&#160;</td>
+ <td class="paramname"><em>wild4_out</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in6 *&#160;</td>
+ <td class="paramname"><em>wild6_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad73cd02c052e82778b7df5378ded462d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_set_port </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>port</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a400a51bd46384a6e0b28136274765464"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_to_string </td>
+ <td>(</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>out</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>normalize</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8545a440d2d91365d75ed87720891a91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_sockaddr_to_uri </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a606efe4550fb7947fb36ff6a0231ac79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_sockaddr_to_v4mapped </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr_in6 *&#160;</td>
+ <td class="paramname"><em>addr6_out</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr__utils_8h_source.html b/doc/ref/core.internal/html/sockaddr__utils_8h_source.html
new file mode 100644
index 0000000000..ed7ed09b35
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__utils_8h_source.html
@@ -0,0 +1,199 @@
+<!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: src/core/iomgr/sockaddr_utils.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr_utils.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sockaddr__utils_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_UTILS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_UTILS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="sockaddr_8h.html">src/core/iomgr/sockaddr.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Returns true if addr is an IPv4-mapped IPv6 address within the</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> ::ffff:0.0.0.0/96 range, or false otherwise.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> If addr4_out is non-NULL, the inner IPv4 address will be copied here when</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> returning true. */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce">grpc_sockaddr_is_v4mapped</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">struct</span> sockaddr_in *addr4_out);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* If addr is an AF_INET address, writes the corresponding ::ffff:0.0.0.0/96</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> address to addr6_out and returns true. Otherwise returns false. */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79">grpc_sockaddr_to_v4mapped</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">struct</span> sockaddr_in6 *addr6_out);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* If addr is ::, 0.0.0.0, or ::ffff:0.0.0.0, writes the port number to</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> *port_out (if not NULL) and returns true, otherwise returns false. */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2">grpc_sockaddr_is_wildcard</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr, <span class="keywordtype">int</span> *port_out);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* Writes 0.0.0.0:port and [::]:port to separate sockaddrs. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721">grpc_sockaddr_make_wildcards</a>(<span class="keywordtype">int</span> port, <span class="keyword">struct</span> sockaddr_in *wild4_out,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">struct</span> sockaddr_in6 *wild6_out);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">/* Writes 0.0.0.0:port. */</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e">grpc_sockaddr_make_wildcard4</a>(<span class="keywordtype">int</span> port, <span class="keyword">struct</span> sockaddr_in *wild_out);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">/* Writes [::]:port. */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8">grpc_sockaddr_make_wildcard6</a>(<span class="keywordtype">int</span> port, <span class="keyword">struct</span> sockaddr_in6 *wild_out);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* Return the IP port number of a sockaddr */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da">grpc_sockaddr_get_port</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Set IP port number of a sockaddr */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d">grpc_sockaddr_set_port</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr, <span class="keywordtype">int</span> port);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">/* Converts a sockaddr into a newly-allocated human-readable string.</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> Currently, only the AF_INET and AF_INET6 families are recognized.</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> If the normalize flag is enabled, ::ffff:0.0.0.0/96 IPv6 addresses are</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> displayed as plain IPv4.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> Usage is similar to gpr_asprintf: returns the number of bytes written</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> (excluding the final &#39;\0&#39;), and *out points to a string which must later be</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> destroyed using gpr_free().</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> In the unlikely event of an error, returns -1 and sets *out to NULL.</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> The existing value of errno is always preserved. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464">grpc_sockaddr_to_string</a>(<span class="keywordtype">char</span> **out, <span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">int</span> normalize);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91">grpc_sockaddr_to_uri</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_UTILS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="sockaddr_8h_html"><div class="ttname"><a href="sockaddr_8h.html">sockaddr.h</a></div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a3cb44f54c6743ff32dc31147ca6a6721"><div class="ttname"><a href="sockaddr__utils_8h.html#a3cb44f54c6743ff32dc31147ca6a6721">grpc_sockaddr_make_wildcards</a></div><div class="ttdeci">void grpc_sockaddr_make_wildcards(int port, struct sockaddr_in *wild4_out, struct sockaddr_in6 *wild6_out)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:119</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a1a8a1c666324ed6d23077a0dd77bd2b8"><div class="ttname"><a href="sockaddr__utils_8h.html#a1a8a1c666324ed6d23077a0dd77bd2b8">grpc_sockaddr_make_wildcard6</a></div><div class="ttdeci">void grpc_sockaddr_make_wildcard6(int port, struct sockaddr_in6 *wild_out)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:131</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a9b9c605d240e9358a23f29c4cf07b1da"><div class="ttname"><a href="sockaddr__utils_8h.html#a9b9c605d240e9358a23f29c4cf07b1da">grpc_sockaddr_get_port</a></div><div class="ttdeci">int grpc_sockaddr_get_port(const struct sockaddr *addr)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:200</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_aed4ad468c36fc0a4531025c5fa2185a2"><div class="ttname"><a href="sockaddr__utils_8h.html#aed4ad468c36fc0a4531025c5fa2185a2">grpc_sockaddr_is_wildcard</a></div><div class="ttdeci">int grpc_sockaddr_is_wildcard(const struct sockaddr *addr, int *port_out)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:90</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a8545a440d2d91365d75ed87720891a91"><div class="ttname"><a href="sockaddr__utils_8h.html#a8545a440d2d91365d75ed87720891a91">grpc_sockaddr_to_uri</a></div><div class="ttdeci">char * grpc_sockaddr_to_uri(const struct sockaddr *addr)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:170</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a400a51bd46384a6e0b28136274765464"><div class="ttname"><a href="sockaddr__utils_8h.html#a400a51bd46384a6e0b28136274765464">grpc_sockaddr_to_string</a></div><div class="ttdeci">int grpc_sockaddr_to_string(char **out, const struct sockaddr *addr, int normalize)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:137</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_ad73cd02c052e82778b7df5378ded462d"><div class="ttname"><a href="sockaddr__utils_8h.html#ad73cd02c052e82778b7df5378ded462d">grpc_sockaddr_set_port</a></div><div class="ttdeci">int grpc_sockaddr_set_port(const struct sockaddr *addr, int port)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:214</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a97d452690214de3809f667f95dda80ce"><div class="ttname"><a href="sockaddr__utils_8h.html#a97d452690214de3809f667f95dda80ce">grpc_sockaddr_is_v4mapped</a></div><div class="ttdeci">int grpc_sockaddr_is_v4mapped(const struct sockaddr *addr, struct sockaddr_in *addr4_out)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:54</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a89be072619a282936b8c1f99c5af254e"><div class="ttname"><a href="sockaddr__utils_8h.html#a89be072619a282936b8c1f99c5af254e">grpc_sockaddr_make_wildcard4</a></div><div class="ttdeci">void grpc_sockaddr_make_wildcard4(int port, struct sockaddr_in *wild_out)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:125</div></div>
+<div class="ttc" id="sockaddr__utils_8h_html_a606efe4550fb7947fb36ff6a0231ac79"><div class="ttname"><a href="sockaddr__utils_8h.html#a606efe4550fb7947fb36ff6a0231ac79">grpc_sockaddr_to_v4mapped</a></div><div class="ttdeci">int grpc_sockaddr_to_v4mapped(const struct sockaddr *addr, struct sockaddr_in6 *addr6_out)</div><div class="ttdef"><b>Definition:</b> sockaddr_utils.c:75</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sockaddr__win32_8h.html b/doc/ref/core.internal/html/sockaddr__win32_8h.html
new file mode 100644
index 0000000000..d20b1c7e01
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__win32_8h.html
@@ -0,0 +1,104 @@
+<!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: src/core/iomgr/sockaddr_win32.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr_win32.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;winsock2.h&gt;</code><br/>
+<code>#include &lt;ws2tcpip.h&gt;</code><br/>
+<code>#include &lt;mswsock.h&gt;</code><br/>
+</div>
+<p><a href="sockaddr__win32_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/sockaddr__win32_8h_source.html b/doc/ref/core.internal/html/sockaddr__win32_8h_source.html
new file mode 100644
index 0000000000..6622b0e2ed
--- /dev/null
+++ b/doc/ref/core.internal/html/sockaddr__win32_8h_source.html
@@ -0,0 +1,145 @@
+<!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: src/core/iomgr/sockaddr_win32.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sockaddr_win32.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sockaddr__win32_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_WIN32_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_WIN32_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;winsock2.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;ws2tcpip.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;mswsock.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef __MINGW32__</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="comment">/* mingw seems to be missing that definition. */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *inet_ntop(<span class="keywordtype">int</span> af, <span class="keyword">const</span> <span class="keywordtype">void</span> *src, <span class="keywordtype">char</span> *dst, socklen_t size);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_SOCKADDR_WIN32_H */</span><span class="preprocessor"></span></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/socket__utils__common__posix_8c.html b/doc/ref/core.internal/html/socket__utils__common__posix_8c.html
new file mode 100644
index 0000000000..cbb1651662
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__utils__common__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/socket_utils_common_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">socket_utils_common_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/socket__utils__linux_8c.html b/doc/ref/core.internal/html/socket__utils__linux_8c.html
new file mode 100644
index 0000000000..6219fc69c4
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__utils__linux_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/socket_utils_linux.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">socket_utils_linux.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/socket__utils__posix_8c.html b/doc/ref/core.internal/html/socket__utils__posix_8c.html
new file mode 100644
index 0000000000..b277e2da85
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__utils__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/socket_utils_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">socket_utils_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/socket__utils__posix_8h.html b/doc/ref/core.internal/html/socket__utils__posix_8h.html
new file mode 100644
index 0000000000..88e099bd7d
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__utils__posix_8h.html
@@ -0,0 +1,415 @@
+<!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: src/core/iomgr/socket_utils_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">socket_utils_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;unistd.h&gt;</code><br/>
+<code>#include &lt;sys/socket.h&gt;</code><br/>
+</div>
+<p><a href="socket__utils__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a0d07cbe9b082267d5436905dedf86b91"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a0d07cbe9b082267d5436905dedf86b91">grpc_dualstack_mode</a></td></tr>
+<tr class="separator:a0d07cbe9b082267d5436905dedf86b91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a00b8257ab3e474c4f3d666247d620264"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a> { <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858">GRPC_DSMODE_NONE</a>,
+<a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8">GRPC_DSMODE_IPV4</a>,
+<a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3">GRPC_DSMODE_IPV6</a>,
+<a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635">GRPC_DSMODE_DUALSTACK</a>
+ }</td></tr>
+<tr class="separator:a00b8257ab3e474c4f3d666247d620264"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2f6d1c5f46dff8ac86a5e4df24641060"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060">grpc_accept4</a> (int sockfd, struct sockaddr *addr, socklen_t *addrlen, int nonblock, int cloexec)</td></tr>
+<tr class="separator:a2f6d1c5f46dff8ac86a5e4df24641060"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f191a668efd979070217eb455a399d5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5">grpc_set_socket_nonblocking</a> (int fd, int non_blocking)</td></tr>
+<tr class="separator:a8f191a668efd979070217eb455a399d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2c563af7608d53fa639f9ed9c5f1027"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027">grpc_set_socket_cloexec</a> (int fd, int close_on_exec)</td></tr>
+<tr class="separator:af2c563af7608d53fa639f9ed9c5f1027"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe2ba4baab80f7f0b1aea9bd8718ac79"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79">grpc_set_socket_reuse_addr</a> (int fd, int reuse)</td></tr>
+<tr class="separator:afe2ba4baab80f7f0b1aea9bd8718ac79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a66ec0552261b5c623b2e7b718fba00"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00">grpc_set_socket_low_latency</a> (int fd, int low_latency)</td></tr>
+<tr class="separator:a4a66ec0552261b5c623b2e7b718fba00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad76fb0120a38b881723d537d95a51563"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563">grpc_ipv6_loopback_available</a> (void)</td></tr>
+<tr class="separator:ad76fb0120a38b881723d537d95a51563"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a520ffc5e1545446aea9653814d6c0581"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581">grpc_set_socket_no_sigpipe_if_possible</a> (int fd)</td></tr>
+<tr class="separator:a520ffc5e1545446aea9653814d6c0581"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76dcb8f351a790f2f3dc6f857f1df6f6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6">grpc_create_dualstack_socket</a> (const struct sockaddr *addr, int type, int protocol, <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a> *dsmode)</td></tr>
+<tr class="separator:a76dcb8f351a790f2f3dc6f857f1df6f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a593bec0bced7e30f2c1ac059b5188757"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757">grpc_forbid_dualstack_sockets_for_testing</a></td></tr>
+<tr class="separator:a593bec0bced7e30f2c1ac059b5188757"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a0d07cbe9b082267d5436905dedf86b91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a> <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a00b8257ab3e474c4f3d666247d620264"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858"></a>GRPC_DSMODE_NONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8"></a>GRPC_DSMODE_IPV4</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3"></a>GRPC_DSMODE_IPV6</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635"></a>GRPC_DSMODE_DUALSTACK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2f6d1c5f46dff8ac86a5e4df24641060"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_accept4 </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>sockfd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">socklen_t *&#160;</td>
+ <td class="paramname"><em>addrlen</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>nonblock</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>cloexec</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76dcb8f351a790f2f3dc6f857f1df6f6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_create_dualstack_socket </td>
+ <td>(</td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>protocol</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a> *&#160;</td>
+ <td class="paramname"><em>dsmode</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad76fb0120a38b881723d537d95a51563"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_ipv6_loopback_available </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2c563af7608d53fa639f9ed9c5f1027"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_set_socket_cloexec </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>close_on_exec</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4a66ec0552261b5c623b2e7b718fba00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_set_socket_low_latency </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>low_latency</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a520ffc5e1545446aea9653814d6c0581"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_set_socket_no_sigpipe_if_possible </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8f191a668efd979070217eb455a399d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_set_socket_nonblocking </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>non_blocking</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe2ba4baab80f7f0b1aea9bd8718ac79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_set_socket_reuse_addr </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>reuse</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a593bec0bced7e30f2c1ac059b5188757"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_forbid_dualstack_sockets_for_testing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/socket__utils__posix_8h_source.html b/doc/ref/core.internal/html/socket__utils__posix_8h_source.html
new file mode 100644
index 0000000000..262b19c24c
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__utils__posix_8h_source.html
@@ -0,0 +1,226 @@
+<!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: src/core/iomgr/socket_utils_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">socket_utils_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="socket__utils__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_SOCKET_UTILS_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_SOCKET_UTILS_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;unistd.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;sys/socket.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* a wrapper for accept or accept4 */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060">grpc_accept4</a>(<span class="keywordtype">int</span> sockfd, <span class="keyword">struct</span> sockaddr *addr, socklen_t *addrlen,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">int</span> nonblock, <span class="keywordtype">int</span> cloexec);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* set a socket to non blocking mode */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5">grpc_set_socket_nonblocking</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> non_blocking);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* set a socket to close on exec */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027">grpc_set_socket_cloexec</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> close_on_exec);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* set a socket to reuse old addresses */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79">grpc_set_socket_reuse_addr</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> reuse);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* disable nagle */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00">grpc_set_socket_low_latency</a>(<span class="keywordtype">int</span> fd, <span class="keywordtype">int</span> low_latency);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/* Returns true if this system can create AF_INET6 sockets bound to ::1.</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> The value is probed once, and cached for the life of the process.</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> This is more restrictive than checking for socket(AF_INET6) to succeed,</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> because Linux with &quot;net.ipv6.conf.all.disable_ipv6 = 1&quot; is able to create</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> and bind IPv6 sockets, but cannot connect to a getsockname() of [::]:port</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> without a valid loopback interface. Rather than expose this half-broken</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> state to library users, we turn off IPv6 sockets. */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563">grpc_ipv6_loopback_available</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* Tries to set SO_NOSIGPIPE if available on this platform.</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> Returns 1 on success, 0 on failure.</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> If SO_NO_SIGPIPE is not available, returns 1. */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581">grpc_set_socket_no_sigpipe_if_possible</a>(<span class="keywordtype">int</span> fd);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/* An enum to keep track of IPv4/IPv6 socket modes.</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> Currently, this information is only used when a socket is first created, but</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> in the future we may wish to store it alongside the fd. This would let calls</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> like sendto() know which family to use without asking the kernel first. */</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264"> 76</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a> {</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="comment">/* Uninitialized, or a non-IP socket. */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858"> 78</a></span>&#160; <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858">GRPC_DSMODE_NONE</a>,</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="comment">/* AF_INET only. */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8"> 80</a></span>&#160; <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8">GRPC_DSMODE_IPV4</a>,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* AF_INET6 only, because IPV6_V6ONLY could not be cleared. */</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3"> 82</a></span>&#160; <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3">GRPC_DSMODE_IPV6</a>,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">/* AF_INET6, which also supports ::ffff-mapped IPv4 addresses. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635"> 84</a></span>&#160; <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635">GRPC_DSMODE_DUALSTACK</a></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;} <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* Only tests should use this flag. */</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757">grpc_forbid_dualstack_sockets_for_testing</a>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/* Creates a new socket for connecting to (or listening on) an address.</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> If addr is AF_INET6, this creates an IPv6 socket first. If that fails,</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> and addr is within ::ffff:0.0.0.0/96, then it automatically falls back to</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> an IPv4 socket.</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> If addr is AF_INET, AF_UNIX, or anything else, then this is similar to</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> calling socket() directly.</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> Returns an fd on success, otherwise returns -1 with errno set to the result</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> of a failed socket() call.</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> The *dsmode output indicates which address family was actually created.</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> The recommended way to use this is:</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> - First convert to IPv6 using grpc_sockaddr_to_v4mapped().</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> - Create the socket.</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> - If *dsmode is IPV4, use grpc_sockaddr_is_v4mapped() to convert back to</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> IPv4, so that bind() or connect() see the correct family.</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> Also, it&#39;s important to distinguish between DUALSTACK and IPV6 when</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> listening on the [::] wildcard address. */</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6">grpc_create_dualstack_socket</a>(<span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr, <span class="keywordtype">int</span> type,</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">int</span> protocol, <a class="code" href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a> *dsmode);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_SOCKET_UTILS_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a2f6d1c5f46dff8ac86a5e4df24641060"><div class="ttname"><a href="socket__utils__posix_8h.html#a2f6d1c5f46dff8ac86a5e4df24641060">grpc_accept4</a></div><div class="ttdeci">int grpc_accept4(int sockfd, struct sockaddr *addr, socklen_t *addrlen, int nonblock, int cloexec)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a00b8257ab3e474c4f3d666247d620264"><div class="ttname"><a href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264">grpc_dualstack_mode</a></div><div class="ttdeci">grpc_dualstack_mode</div><div class="ttdef"><b>Definition:</b> socket_utils_posix.h:76</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_afe2ba4baab80f7f0b1aea9bd8718ac79"><div class="ttname"><a href="socket__utils__posix_8h.html#afe2ba4baab80f7f0b1aea9bd8718ac79">grpc_set_socket_reuse_addr</a></div><div class="ttdeci">int grpc_set_socket_reuse_addr(int fd, int reuse)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_ad76fb0120a38b881723d537d95a51563"><div class="ttname"><a href="socket__utils__posix_8h.html#ad76fb0120a38b881723d537d95a51563">grpc_ipv6_loopback_available</a></div><div class="ttdeci">int grpc_ipv6_loopback_available(void)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3"><div class="ttname"><a href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a036d6fe4d6f305566426a235921e56c3">GRPC_DSMODE_IPV6</a></div><div class="ttdef"><b>Definition:</b> socket_utils_posix.h:82</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a4a66ec0552261b5c623b2e7b718fba00"><div class="ttname"><a href="socket__utils__posix_8h.html#a4a66ec0552261b5c623b2e7b718fba00">grpc_set_socket_low_latency</a></div><div class="ttdeci">int grpc_set_socket_low_latency(int fd, int low_latency)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_af2c563af7608d53fa639f9ed9c5f1027"><div class="ttname"><a href="socket__utils__posix_8h.html#af2c563af7608d53fa639f9ed9c5f1027">grpc_set_socket_cloexec</a></div><div class="ttdeci">int grpc_set_socket_cloexec(int fd, int close_on_exec)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a593bec0bced7e30f2c1ac059b5188757"><div class="ttname"><a href="socket__utils__posix_8h.html#a593bec0bced7e30f2c1ac059b5188757">grpc_forbid_dualstack_sockets_for_testing</a></div><div class="ttdeci">int grpc_forbid_dualstack_sockets_for_testing</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8"><div class="ttname"><a href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a31d1572a5d2b690fe43d9a6fe31c43a8">GRPC_DSMODE_IPV4</a></div><div class="ttdef"><b>Definition:</b> socket_utils_posix.h:80</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a520ffc5e1545446aea9653814d6c0581"><div class="ttname"><a href="socket__utils__posix_8h.html#a520ffc5e1545446aea9653814d6c0581">grpc_set_socket_no_sigpipe_if_possible</a></div><div class="ttdeci">int grpc_set_socket_no_sigpipe_if_possible(int fd)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a8f191a668efd979070217eb455a399d5"><div class="ttname"><a href="socket__utils__posix_8h.html#a8f191a668efd979070217eb455a399d5">grpc_set_socket_nonblocking</a></div><div class="ttdeci">int grpc_set_socket_nonblocking(int fd, int non_blocking)</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635"><div class="ttname"><a href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264a20fcdfb82918427f5e57b463db30c635">GRPC_DSMODE_DUALSTACK</a></div><div class="ttdef"><b>Definition:</b> socket_utils_posix.h:84</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858"><div class="ttname"><a href="socket__utils__posix_8h.html#a00b8257ab3e474c4f3d666247d620264acd35a16d524d042d1d50f45a8efef858">GRPC_DSMODE_NONE</a></div><div class="ttdef"><b>Definition:</b> socket_utils_posix.h:78</div></div>
+<div class="ttc" id="socket__utils__posix_8h_html_a76dcb8f351a790f2f3dc6f857f1df6f6"><div class="ttname"><a href="socket__utils__posix_8h.html#a76dcb8f351a790f2f3dc6f857f1df6f6">grpc_create_dualstack_socket</a></div><div class="ttdeci">int grpc_create_dualstack_socket(const struct sockaddr *addr, int type, int protocol, grpc_dualstack_mode *dsmode)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/socket__windows_8c.html b/doc/ref/core.internal/html/socket__windows_8c.html
new file mode 100644
index 0000000000..586db57f89
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/socket_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">socket_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/socket__windows_8h.html b/doc/ref/core.internal/html/socket__windows_8h.html
new file mode 100644
index 0000000000..edc0d02701
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__windows_8h.html
@@ -0,0 +1,237 @@
+<!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: src/core/iomgr/socket_windows.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">socket_windows.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;winsock2.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="iomgr__internal_8h_source.html">src/core/iomgr/iomgr_internal.h</a>&quot;</code><br/>
+</div>
+<p><a href="socket__windows_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a672778b37972213ae3db8f3ba876cadc"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc">grpc_winsocket_callback_info</a></td></tr>
+<tr class="separator:a672778b37972213ae3db8f3ba876cadc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ad80b9793b77151a20061cc13e96f6a"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a">grpc_winsocket</a></td></tr>
+<tr class="separator:a9ad80b9793b77151a20061cc13e96f6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:acef52dee2469e1614f30d72e9e18086e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e">grpc_winsocket_create</a> (SOCKET socket, const char *name)</td></tr>
+<tr class="separator:acef52dee2469e1614f30d72e9e18086e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5112cf5e8f22aa650f776748f9a34395"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395">grpc_winsocket_shutdown</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket)</td></tr>
+<tr class="separator:a5112cf5e8f22aa650f776748f9a34395"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9430d55bc26c3eb353f62ee3e290fee1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1">grpc_winsocket_orphan</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket)</td></tr>
+<tr class="separator:a9430d55bc26c3eb353f62ee3e290fee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a25824d9aa9563aee6eabb13b8e8d70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70">grpc_winsocket_destroy</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket)</td></tr>
+<tr class="separator:a6a25824d9aa9563aee6eabb13b8e8d70"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a9ad80b9793b77151a20061cc13e96f6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> <a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a672778b37972213ae3db8f3ba876cadc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a> <a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="acef52dee2469e1614f30d72e9e18086e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a>* grpc_winsocket_create </td>
+ <td>(</td>
+ <td class="paramtype">SOCKET&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6a25824d9aa9563aee6eabb13b8e8d70"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_winsocket_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname"><em>socket</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9430d55bc26c3eb353f62ee3e290fee1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_winsocket_orphan </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname"><em>socket</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5112cf5e8f22aa650f776748f9a34395"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_winsocket_shutdown </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname"><em>socket</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/socket__windows_8h_source.html b/doc/ref/core.internal/html/socket__windows_8h_source.html
new file mode 100644
index 0000000000..904350c962
--- /dev/null
+++ b/doc/ref/core.internal/html/socket__windows_8h_source.html
@@ -0,0 +1,250 @@
+<!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: src/core/iomgr/socket_windows.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">socket_windows.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="socket__windows_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_SOCKET_WINDOWS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_SOCKET_WINDOWS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;winsock2.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="atm_8h.html">grpc/support/atm.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="iomgr__internal_8h.html">src/core/iomgr/iomgr_internal.h</a>&quot;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* This holds the data for an outstanding read or write on a socket.</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> The mutex to protect the concurrent access to that data is the one</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> inside the winsocket wrapper. */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* This is supposed to be a WSAOVERLAPPED, but in order to get that</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> definition, we need to include ws2tcpip.h, which needs to be included</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> from the top, otherwise it&#39;ll clash with a previous inclusion of</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> windows.h that in turns includes winsock.h. If anyone knows a way</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> to do it properly, feel free to send a patch. */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09"> 54</a></span>&#160; OVERLAPPED <a class="code" href="structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09">overlapped</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* The callback information for the pending operation. May be empty if the</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> caller hasn&#39;t registered a callback yet. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1"> 57</a></span>&#160; void(*<a class="code" href="structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1">cb</a>)(<span class="keywordtype">void</span> *<a class="code" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">opaque</a>, <span class="keywordtype">int</span> success);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154"> 58</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">opaque</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* A boolean to describe if the IO Completion Port got a notification for</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> that operation. This will happen if the operation completed before the</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> called had time to register a callback. We could avoid that behavior</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> altogether by forcing the caller to always register its callback before</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> proceeding queue an operation, but it is frequent for an IO Completion</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> Port to trigger quickly. This way we avoid a context switch for calling</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> the callback. We also simplify the read / write operations to avoid having</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> to hold a mutex for a long amount of time. */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294"> 67</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294">has_pending_iocp</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">/* The results of the overlapped operation. */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e"> 69</a></span>&#160; DWORD <a class="code" href="structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e">bytes_transfered</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29"> 70</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29">wsa_error</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">/* A boolean indicating that we started an operation. */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc"> 72</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc">outstanding</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;} <a class="code" href="socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc">grpc_winsocket_callback_info</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">/* This is a wrapper to a Windows socket. A socket can have one outstanding</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> read, and one outstanding write. Doing an asynchronous accept means waiting</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> for a read operation. Doing an asynchronous connect means waiting for a</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> write operation. These are completely arbitrary ties between the operation</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> and the kind of event, because we can have one overlapped per pending</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> operation, whichever its nature is. So we could have more dedicated pending</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> operation callbacks for connect and listen. But given the scope of listen</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> and accept, we don&#39;t need to go to that extent and waste memory. Also, this</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> is closer to what happens in posix world. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html"> 84</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> {</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d"> 85</a></span>&#160; SOCKET <a class="code" href="structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d">socket</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6"> 87</a></span>&#160; <a class="code" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a> <a class="code" href="structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6">write_info</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb"> 88</a></span>&#160; <a class="code" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a> <a class="code" href="structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb">read_info</a>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551"> 90</a></span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> <a class="code" href="structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551">state_mu</a>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">/* You can&#39;t add the same socket twice to the same IO Completion Port.</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> This prevents that. */</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47"> 94</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47">added_to_iocp</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="comment">/* A boolean to indicate that the caller has abandoned that socket, but</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> there is a pending operation that the IO Completion Port will have to</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> wait for. The socket will be collected at that time. */</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08"> 98</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08">orphan</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a"> 100</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> <a class="code" href="structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a">shutdown_closure</a>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">/* A label for iomgr to track outstanding objects */</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6"> 103</a></span>&#160; <a class="code" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> <a class="code" href="structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6">iomgr_object</a>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;} <a class="code" href="socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a">grpc_winsocket</a>;</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/* Create a wrapped windows handle. This takes ownership of it, meaning that</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> it will be responsible for closing it. */</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *<a class="code" href="socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e">grpc_winsocket_create</a>(SOCKET socket, <span class="keyword">const</span> <span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">/* Initiate an asynchronous shutdown of the socket. Will call off any pending</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> operation to cancel them. Returns the number of callbacks that got setup. */</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keywordtype">int</span> <a class="code" href="socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395">grpc_winsocket_shutdown</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket);</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment">/* Abandon a socket. */</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keywordtype">void</span> <a class="code" href="socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1">grpc_winsocket_orphan</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">/* Destroy a socket. Should only be called by the IO Completion Port thread,</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> or by grpc_winsocket_orphan if there&#39;s no pending operation. */</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="keywordtype">void</span> <a class="code" href="socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70">grpc_winsocket_destroy</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_SOCKET_WINDOWS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="socket__windows_8h_html_acef52dee2469e1614f30d72e9e18086e"><div class="ttname"><a href="socket__windows_8h.html#acef52dee2469e1614f30d72e9e18086e">grpc_winsocket_create</a></div><div class="ttdeci">grpc_winsocket * grpc_winsocket_create(SOCKET socket, const char *name)</div></div>
+<div class="ttc" id="structgrpc__winsocket_html_ac79017879c86aece4c98a043c5093d47"><div class="ttname"><a href="structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47">grpc_winsocket::added_to_iocp</a></div><div class="ttdeci">int added_to_iocp</div><div class="ttdef"><b>Definition:</b> socket_windows.h:94</div></div>
+<div class="ttc" id="structgrpc__winsocket_html_a653e7521937ebda6f6bc230ebae46f08"><div class="ttname"><a href="structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08">grpc_winsocket::orphan</a></div><div class="ttdeci">int orphan</div><div class="ttdef"><b>Definition:</b> socket_windows.h:98</div></div>
+<div class="ttc" id="atm_8h_html"><div class="ttname"><a href="atm_8h.html">atm.h</a></div></div>
+<div class="ttc" id="structgrpc__winsocket_html_a8d07ea451fe145f30415952e4a78d03d"><div class="ttname"><a href="structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d">grpc_winsocket::socket</a></div><div class="ttdeci">SOCKET socket</div><div class="ttdef"><b>Definition:</b> socket_windows.h:85</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_ae7d4cdac6983f1de38a239a3bb11021e"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e">grpc_winsocket_callback_info::bytes_transfered</a></div><div class="ttdeci">DWORD bytes_transfered</div><div class="ttdef"><b>Definition:</b> socket_windows.h:69</div></div>
+<div class="ttc" id="structgrpc__winsocket_html_abebd771d41b71cfbb457ee0e80c7b551"><div class="ttname"><a href="structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551">grpc_winsocket::state_mu</a></div><div class="ttdeci">gpr_mu state_mu</div><div class="ttdef"><b>Definition:</b> socket_windows.h:90</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_af611ff1de50e57d79e8ea33a220136bc"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc">grpc_winsocket_callback_info::outstanding</a></div><div class="ttdeci">int outstanding</div><div class="ttdef"><b>Definition:</b> socket_windows.h:72</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_adef17089b66a9180b92bcc9da0d4ae29"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29">grpc_winsocket_callback_info::wsa_error</a></div><div class="ttdeci">int wsa_error</div><div class="ttdef"><b>Definition:</b> socket_windows.h:70</div></div>
+<div class="ttc" id="structgrpc__winsocket_html_ae268de02b0b0ca7a09944a50567620cb"><div class="ttname"><a href="structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb">grpc_winsocket::read_info</a></div><div class="ttdeci">grpc_winsocket_callback_info read_info</div><div class="ttdef"><b>Definition:</b> socket_windows.h:88</div></div>
+<div class="ttc" id="socket__windows_8h_html_a672778b37972213ae3db8f3ba876cadc"><div class="ttname"><a href="socket__windows_8h.html#a672778b37972213ae3db8f3ba876cadc">grpc_winsocket_callback_info</a></div><div class="ttdeci">struct grpc_winsocket_callback_info grpc_winsocket_callback_info</div></div>
+<div class="ttc" id="structgrpc__iomgr__object_html"><div class="ttname"><a href="structgrpc__iomgr__object.html">grpc_iomgr_object</a></div><div class="ttdef"><b>Definition:</b> iomgr_internal.h:40</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a></div><div class="ttdef"><b>Definition:</b> socket_windows.h:48</div></div>
+<div class="ttc" id="structgrpc__winsocket_html_a226dc7020d126be244c2c4d36907eae6"><div class="ttname"><a href="structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6">grpc_winsocket::iomgr_object</a></div><div class="ttdeci">grpc_iomgr_object iomgr_object</div><div class="ttdef"><b>Definition:</b> socket_windows.h:103</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="structgrpc__winsocket_html"><div class="ttname"><a href="structgrpc__winsocket.html">grpc_winsocket</a></div><div class="ttdef"><b>Definition:</b> socket_windows.h:84</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_a003b435519424aae5a48755358b32154"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">grpc_winsocket_callback_info::opaque</a></div><div class="ttdeci">void * opaque</div><div class="ttdef"><b>Definition:</b> socket_windows.h:58</div></div>
+<div class="ttc" id="structgrpc__winsocket_html_a8c0eeccc3a3cbfbb28d172a7c42a0bd6"><div class="ttname"><a href="structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6">grpc_winsocket::write_info</a></div><div class="ttdeci">grpc_winsocket_callback_info write_info</div><div class="ttdef"><b>Definition:</b> socket_windows.h:87</div></div>
+<div class="ttc" id="socket__windows_8h_html_a5112cf5e8f22aa650f776748f9a34395"><div class="ttname"><a href="socket__windows_8h.html#a5112cf5e8f22aa650f776748f9a34395">grpc_winsocket_shutdown</a></div><div class="ttdeci">int grpc_winsocket_shutdown(grpc_winsocket *socket)</div></div>
+<div class="ttc" id="socket__windows_8h_html_a9430d55bc26c3eb353f62ee3e290fee1"><div class="ttname"><a href="socket__windows_8h.html#a9430d55bc26c3eb353f62ee3e290fee1">grpc_winsocket_orphan</a></div><div class="ttdeci">void grpc_winsocket_orphan(grpc_winsocket *socket)</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_aded44060a4f90bf48f452b4ac9e0f9f1"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1">grpc_winsocket_callback_info::cb</a></div><div class="ttdeci">void(* cb)(void *opaque, int success)</div><div class="ttdef"><b>Definition:</b> socket_windows.h:57</div></div>
+<div class="ttc" id="socket__windows_8h_html_a9ad80b9793b77151a20061cc13e96f6a"><div class="ttname"><a href="socket__windows_8h.html#a9ad80b9793b77151a20061cc13e96f6a">grpc_winsocket</a></div><div class="ttdeci">struct grpc_winsocket grpc_winsocket</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="structgrpc__winsocket_html_aea4900f69135c3b5b3a820b0c37a6a7a"><div class="ttname"><a href="structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a">grpc_winsocket::shutdown_closure</a></div><div class="ttdeci">grpc_iomgr_closure shutdown_closure</div><div class="ttdef"><b>Definition:</b> socket_windows.h:100</div></div>
+<div class="ttc" id="socket__windows_8h_html_a6a25824d9aa9563aee6eabb13b8e8d70"><div class="ttname"><a href="socket__windows_8h.html#a6a25824d9aa9563aee6eabb13b8e8d70">grpc_winsocket_destroy</a></div><div class="ttdeci">void grpc_winsocket_destroy(grpc_winsocket *socket)</div></div>
+<div class="ttc" id="iomgr__internal_8h_html"><div class="ttname"><a href="iomgr__internal_8h.html">iomgr_internal.h</a></div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_af6288faf84cbd0d6706d6cc7cd04e294"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294">grpc_winsocket_callback_info::has_pending_iocp</a></div><div class="ttdeci">int has_pending_iocp</div><div class="ttdef"><b>Definition:</b> socket_windows.h:67</div></div>
+<div class="ttc" id="structgrpc__winsocket__callback__info_html_a779ba38c4d952003a53cf6f415992e09"><div class="ttname"><a href="structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09">grpc_winsocket_callback_info::overlapped</a></div><div class="ttdeci">OVERLAPPED overlapped</div><div class="ttdef"><b>Definition:</b> socket_windows.h:54</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/ssl__transport__security_8c.html b/doc/ref/core.internal/html/ssl__transport__security_8c.html
new file mode 100644
index 0000000000..a95e058100
--- /dev/null
+++ b/doc/ref/core.internal/html/ssl__transport__security_8c.html
@@ -0,0 +1,451 @@
+<!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: src/core/tsi/ssl_transport_security.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">ssl_transport_security.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="ssl__transport__security_8h_source.html">src/core/tsi/ssl_transport_security.h</a>&quot;</code><br/>
+<code>#include &lt;limits.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thd_8h_source.html">grpc/support/thd.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="transport__security_8h_source.html">src/core/tsi/transport_security.h</a>&quot;</code><br/>
+<code>#include &lt;openssl/bio.h&gt;</code><br/>
+<code>#include &lt;openssl/crypto.h&gt;</code><br/>
+<code>#include &lt;openssl/err.h&gt;</code><br/>
+<code>#include &lt;openssl/ssl.h&gt;</code><br/>
+<code>#include &lt;openssl/x509.h&gt;</code><br/>
+<code>#include &lt;openssl/x509v3.h&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__client__handshaker__factory.html">tsi_ssl_client_handshaker_factory</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html">tsi_ssl_server_handshaker_factory</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker.html">tsi_ssl_handshaker</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html">tsi_ssl_frame_protector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:afce1f5cc8a28bd1d4cea273bb2b5f5d8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#afce1f5cc8a28bd1d4cea273bb2b5f5d8">TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND</a>&#160;&#160;&#160;16384</td></tr>
+<tr class="separator:afce1f5cc8a28bd1d4cea273bb2b5f5d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57f67839c0d50a95afa6b14b8917b7ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a57f67839c0d50a95afa6b14b8917b7ba">TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND</a>&#160;&#160;&#160;1024</td></tr>
+<tr class="separator:a57f67839c0d50a95afa6b14b8917b7ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ddfac76c84308f6f7525adccea25b50"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a6ddfac76c84308f6f7525adccea25b50">TSI_OPENSSL_ALPN_SUPPORT</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:a6ddfac76c84308f6f7525adccea25b50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac62522a33798b7b5bb434e1b8e49974f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#ac62522a33798b7b5bb434e1b8e49974f">TSI_SSL_MAX_PROTECTION_OVERHEAD</a>&#160;&#160;&#160;100</td></tr>
+<tr class="separator:ac62522a33798b7b5bb434e1b8e49974f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a640862c021958b7cc4e841d5842b3142"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a640862c021958b7cc4e841d5842b3142">tsi_ssl_handshaker_factory_create_handshaker</a> (<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self, const char *server_name_indication, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td></tr>
+<tr class="separator:a640862c021958b7cc4e841d5842b3142"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55e5ff567c916f396a960d9ba259fd5b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a55e5ff567c916f396a960d9ba259fd5b">tsi_ssl_handshaker_factory_destroy</a> (<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self)</td></tr>
+<tr class="separator:a55e5ff567c916f396a960d9ba259fd5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74245460a2a17181e62578a3c9e3a566"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a74245460a2a17181e62578a3c9e3a566">tsi_create_ssl_client_handshaker_factory</a> (const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_list, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, <a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **factory)</td></tr>
+<tr class="separator:a74245460a2a17181e62578a3c9e3a566"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90c268a36d1837b23c08ec862b810b4d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a90c268a36d1837b23c08ec862b810b4d">tsi_create_ssl_server_handshaker_factory</a> (const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_list, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, <a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **factory)</td></tr>
+<tr class="separator:a90c268a36d1837b23c08ec862b810b4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22edee478b3473e184d77d74c13d9647"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8c.html#a22edee478b3473e184d77d74c13d9647">tsi_ssl_peer_matches_name</a> (const <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer, const char *name)</td></tr>
+<tr class="separator:a22edee478b3473e184d77d74c13d9647"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a6ddfac76c84308f6f7525adccea25b50"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_OPENSSL_ALPN_SUPPORT&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a57f67839c0d50a95afa6b14b8917b7ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_SSL_MAX_PROTECTED_FRAME_SIZE_LOWER_BOUND&#160;&#160;&#160;1024</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afce1f5cc8a28bd1d4cea273bb2b5f5d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_SSL_MAX_PROTECTED_FRAME_SIZE_UPPER_BOUND&#160;&#160;&#160;16384</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac62522a33798b7b5bb434e1b8e49974f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_SSL_MAX_PROTECTION_OVERHEAD&#160;&#160;&#160;100</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a74245460a2a17181e62578a3c9e3a566"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_create_ssl_client_handshaker_factory </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_private_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_private_key_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_cert_chain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_cert_chain_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_root_certs_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>cipher_list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>alpn_protocols_lengths</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint16_t&#160;</td>
+ <td class="paramname"><em>num_alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **&#160;</td>
+ <td class="paramname"><em>factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90c268a36d1837b23c08ec862b810b4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_create_ssl_server_handshaker_factory </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>pem_private_keys</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const size_t *&#160;</td>
+ <td class="paramname"><em>pem_private_keys_sizes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>pem_cert_chains</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const size_t *&#160;</td>
+ <td class="paramname"><em>pem_cert_chains_sizes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>key_cert_pair_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_client_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_client_root_certs_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>force_client_auth</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>cipher_list</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>alpn_protocols_lengths</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint16_t&#160;</td>
+ <td class="paramname"><em>num_alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **&#160;</td>
+ <td class="paramname"><em>factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a640862c021958b7cc4e841d5842b3142"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_ssl_handshaker_factory_create_handshaker </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>server_name_indication</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **&#160;</td>
+ <td class="paramname"><em>handshaker</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a55e5ff567c916f396a960d9ba259fd5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_ssl_handshaker_factory_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a22edee478b3473e184d77d74c13d9647"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_ssl_peer_matches_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/ssl__transport__security_8h.html b/doc/ref/core.internal/html/ssl__transport__security_8h.html
new file mode 100644
index 0000000000..7c7acf32e5
--- /dev/null
+++ b/doc/ref/core.internal/html/ssl__transport__security_8h.html
@@ -0,0 +1,446 @@
+<!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: src/core/tsi/ssl_transport_security.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">ssl_transport_security.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+</div>
+<p><a href="ssl__transport__security_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a394dce2eccd1a35e54ea94ed19b95a7c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a394dce2eccd1a35e54ea94ed19b95a7c">TSI_X509_CERTIFICATE_TYPE</a>&#160;&#160;&#160;&quot;X509&quot;</td></tr>
+<tr class="separator:a394dce2eccd1a35e54ea94ed19b95a7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3015d52d16728b0e28f354217fbb6296"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a3015d52d16728b0e28f354217fbb6296">TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY</a>&#160;&#160;&#160;&quot;x509_subject_common_name&quot;</td></tr>
+<tr class="separator:a3015d52d16728b0e28f354217fbb6296"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64e0648b7d1eec9671f01aa79f508c0f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a64e0648b7d1eec9671f01aa79f508c0f">TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY</a>&#160;&#160;&#160;&quot;x509_subject_alternative_name&quot;</td></tr>
+<tr class="separator:a64e0648b7d1eec9671f01aa79f508c0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7772b205a40f5d0e6bf613f666df70fa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a7772b205a40f5d0e6bf613f666df70fa">TSI_SSL_ALPN_SELECTED_PROTOCOL</a>&#160;&#160;&#160;&quot;ssl_alpn_selected_protocol&quot;</td></tr>
+<tr class="separator:a7772b205a40f5d0e6bf613f666df70fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a33648ab82d52fddf97cd254ab14cad32"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a33648ab82d52fddf97cd254ab14cad32">tsi_ssl_handshaker_factory</a></td></tr>
+<tr class="separator:a33648ab82d52fddf97cd254ab14cad32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a24150414d752e0cf6a28ff47a7b1c954"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954">tsi_create_ssl_client_handshaker_factory</a> (const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, <a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **factory)</td></tr>
+<tr class="separator:a24150414d752e0cf6a28ff47a7b1c954"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07cacb661f68fba399bd2a8075246104"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104">tsi_create_ssl_server_handshaker_factory</a> (const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, <a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **factory)</td></tr>
+<tr class="separator:a07cacb661f68fba399bd2a8075246104"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a640862c021958b7cc4e841d5842b3142"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142">tsi_ssl_handshaker_factory_create_handshaker</a> (<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self, const char *server_name_indication, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td></tr>
+<tr class="separator:a640862c021958b7cc4e841d5842b3142"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55e5ff567c916f396a960d9ba259fd5b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b">tsi_ssl_handshaker_factory_destroy</a> (<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self)</td></tr>
+<tr class="separator:a55e5ff567c916f396a960d9ba259fd5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a22edee478b3473e184d77d74c13d9647"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647">tsi_ssl_peer_matches_name</a> (const <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer, const char *name)</td></tr>
+<tr class="separator:a22edee478b3473e184d77d74c13d9647"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a7772b205a40f5d0e6bf613f666df70fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_SSL_ALPN_SELECTED_PROTOCOL&#160;&#160;&#160;&quot;ssl_alpn_selected_protocol&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a394dce2eccd1a35e54ea94ed19b95a7c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_X509_CERTIFICATE_TYPE&#160;&#160;&#160;&quot;X509&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a64e0648b7d1eec9671f01aa79f508c0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY&#160;&#160;&#160;&quot;x509_subject_alternative_name&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3015d52d16728b0e28f354217fbb6296"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY&#160;&#160;&#160;&quot;x509_subject_common_name&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a33648ab82d52fddf97cd254ab14cad32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> <a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a24150414d752e0cf6a28ff47a7b1c954"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_create_ssl_client_handshaker_factory </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_private_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_private_key_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_cert_chain</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_cert_chain_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_root_certs_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>cipher_suites</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>alpn_protocols_lengths</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint16_t&#160;</td>
+ <td class="paramname"><em>num_alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **&#160;</td>
+ <td class="paramname"><em>factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a07cacb661f68fba399bd2a8075246104"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_create_ssl_server_handshaker_factory </td>
+ <td>(</td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>pem_private_keys</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const size_t *&#160;</td>
+ <td class="paramname"><em>pem_private_keys_sizes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>pem_cert_chains</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const size_t *&#160;</td>
+ <td class="paramname"><em>pem_cert_chains_sizes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>key_cert_pair_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>pem_client_root_certs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pem_client_root_certs_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>force_client_auth</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>cipher_suites</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char **&#160;</td>
+ <td class="paramname"><em>alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>alpn_protocols_lengths</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">uint16_t&#160;</td>
+ <td class="paramname"><em>num_alpn_protocols</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> **&#160;</td>
+ <td class="paramname"><em>factory</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a640862c021958b7cc4e841d5842b3142"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_ssl_handshaker_factory_create_handshaker </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>server_name_indication</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **&#160;</td>
+ <td class="paramname"><em>handshaker</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a55e5ff567c916f396a960d9ba259fd5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_ssl_handshaker_factory_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a22edee478b3473e184d77d74c13d9647"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_ssl_peer_matches_name </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/ssl__transport__security_8h_source.html b/doc/ref/core.internal/html/ssl__transport__security_8h_source.html
new file mode 100644
index 0000000000..0c664646f2
--- /dev/null
+++ b/doc/ref/core.internal/html/ssl__transport__security_8h_source.html
@@ -0,0 +1,282 @@
+<!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: src/core/tsi/ssl_transport_security.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">ssl_transport_security.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="ssl__transport__security_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TSI_SSL_TRANSPORT_SECURITY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TSI_SSL_TRANSPORT_SECURITY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport__security__interface_8h.html">src/core/tsi/transport_security_interface.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* Value for the TSI_CERTIFICATE_TYPE_PEER_PROPERTY property for X509 certs. */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="ssl__transport__security_8h.html#a394dce2eccd1a35e54ea94ed19b95a7c"> 44</a></span>&#160;<span class="preprocessor">#define TSI_X509_CERTIFICATE_TYPE &quot;X509&quot;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* This property is of type TSI_PEER_PROPERTY_STRING. */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="ssl__transport__security_8h.html#a3015d52d16728b0e28f354217fbb6296"> 47</a></span>&#160;<span class="preprocessor">#define TSI_X509_SUBJECT_COMMON_NAME_PEER_PROPERTY &quot;x509_subject_common_name&quot;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="ssl__transport__security_8h.html#a64e0648b7d1eec9671f01aa79f508c0f"> 48</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define TSI_X509_SUBJECT_ALTERNATIVE_NAME_PEER_PROPERTY \</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> &quot;x509_subject_alternative_name&quot;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="ssl__transport__security_8h.html#a7772b205a40f5d0e6bf613f666df70fa"> 51</a></span>&#160;<span class="preprocessor">#define TSI_SSL_ALPN_SELECTED_PROTOCOL &quot;ssl_alpn_selected_protocol&quot;</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* --- tsi_ssl_handshaker_factory object ---</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> This object creates tsi_handshaker objects implemented in terms of the</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> TLS 1.2 specificiation. */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="ssl__transport__security_8h.html#a33648ab82d52fddf97cd254ab14cad32"> 58</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> <a class="code" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">/* Creates a client handshaker factory.</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> - pem_private_key is the buffer containing the PEM encoding of the client&#39;s</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> private key. This parameter can be NULL if the client does not have a</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> private key.</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> - pem_private_key_size is the size of the associated buffer.</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> - pem_cert_chain is the buffer containing the PEM encoding of the client&#39;s</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> certificate chain. This parameter can be NULL if the client does not have</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> a certificate chain.</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> - pem_cert_chain_size is the size of the associated buffer.</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> - pem_roots_cert is the buffer containing the PEM encoding of the server</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> root certificates. This parameter cannot be NULL.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> - pem_roots_cert_size is the size of the associated buffer.</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> - cipher_suites contains an optional list of the ciphers that the client</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> supports. The format of this string is described in:</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> https://www.openssl.org/docs/apps/ciphers.html.</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> This parameter can be set to NULL to use the default set of ciphers.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> TODO(jboeuf): Revisit the format of this parameter.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> - alpn_protocols is an array containing the protocol names that the</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> handshakers created with this factory support. This parameter can be NULL.</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> - alpn_protocols_lengths is an array containing the lengths of the alpn</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> protocols specified in alpn_protocols. This parameter can be NULL.</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> - num_alpn_protocols is the number of alpn protocols and associated lengths</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> specified. If this parameter is 0, the other alpn parameters must be NULL.</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> - factory is the address of the factory pointer to be created.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> - This method returns TSI_OK on success or TSI_INVALID_PARAMETER in the case</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> where a parameter is invalid. */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954">tsi_create_ssl_client_handshaker_factory</a>(</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pem_private_key, <span class="keywordtype">size_t</span> pem_private_key_size,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pem_cert_chain, <span class="keywordtype">size_t</span> pem_cert_chain_size,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pem_root_certs, <span class="keywordtype">size_t</span> pem_root_certs_size,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* cipher_suites, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>** alpn_protocols,</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* alpn_protocols_lengths, uint16_t num_alpn_protocols,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>** factory);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment">/* Creates a server handshaker factory.</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> - version indicates which version of the specification to use.</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> - pem_private_keys is an array containing the PEM encoding of the server&#39;s</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> private keys. This parameter cannot be NULL. The size of the array is</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> given by the key_cert_pair_count parameter.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> - pem_private_keys_sizes is the array containing the sizes of the associated</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> buffers.</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> - pem_cert_chains is an array containing the PEM encoding of the server&#39;s</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> cert chains. This parameter cannot be NULL. The size of the array is</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> given by the key_cert_pair_count parameter.</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> - pem_cert_chains_sizes is the array containing the sizes of the associated</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> buffers.</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> - key_cert_pair_count indicates the number of items in the private_key_files</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> and cert_chain_files parameters.</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> - pem_client_roots is the buffer containing the PEM encoding of the client</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> root certificates. This parameter may be NULL in which case the server will</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> not authenticate the client. If not NULL, the force_client_auth parameter</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> specifies if the server will accept only authenticated clients or both</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> authenticated and non-authenticated clients.</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> - pem_client_root_certs_size is the size of the associated buffer.</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> - force_client_auth, if set to non-zero will force the client to authenticate</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> with an SSL cert. Note that this option is ignored if pem_client_root_certs</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> is NULL or pem_client_roots_certs_size is 0</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> - cipher_suites contains an optional list of the ciphers that the server</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> supports. The format of this string is described in:</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> https://www.openssl.org/docs/apps/ciphers.html.</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> This parameter can be set to NULL to use the default set of ciphers.</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> TODO(jboeuf): Revisit the format of this parameter.</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> - alpn_protocols is an array containing the protocol names that the</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> handshakers created with this factory support. This parameter can be NULL.</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> - alpn_protocols_lengths is an array containing the lengths of the alpn</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> protocols specified in alpn_protocols. This parameter can be NULL.</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> - num_alpn_protocols is the number of alpn protocols and associated lengths</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> specified. If this parameter is 0, the other alpn parameters must be NULL.</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> - factory is the address of the factory pointer to be created.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> - This method returns TSI_OK on success or TSI_INVALID_PARAMETER in the case</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> where a parameter is invalid. */</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104">tsi_create_ssl_server_handshaker_factory</a>(</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>** pem_private_keys,</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span>* pem_private_keys_sizes, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>** pem_cert_chains,</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span>* pem_cert_chains_sizes, <span class="keywordtype">size_t</span> key_cert_pair_count,</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* pem_client_root_certs,</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordtype">size_t</span> pem_client_root_certs_size, <span class="keywordtype">int</span> force_client_auth,</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* cipher_suites, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>** alpn_protocols,</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* alpn_protocols_lengths, uint16_t num_alpn_protocols,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>** factory);</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">/* Creates a handshaker.</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> - self is the factory from which the handshaker will be created.</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> - server_name_indication indicates the name of the server the client is</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> trying to connect to which will be relayed to the server using the SNI</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> extension.</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> This parameter must be NULL for a server handshaker factory.</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> - handhshaker is the address of the handshaker pointer to be created.</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> - This method returns TSI_OK on success or TSI_INVALID_PARAMETER in the case</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> where a parameter is invalid. */</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142">tsi_ssl_handshaker_factory_create_handshaker</a>(</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>* <span class="keyword">self</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* server_name_indication,</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>** handshaker);</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment">/* Destroys the handshaker factory. WARNING: it is unsafe to destroy a factory</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> while handshakers created with this factory are still in use. */</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keywordtype">void</span> <a class="code" href="ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b">tsi_ssl_handshaker_factory_destroy</a>(<a class="code" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment">/* Util that checks that an ssl peer matches a specific name.</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> Still TODO(jboeuf):</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> - handle mixed case.</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> - handle %encoded chars.</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> - handle public suffix wildchar more strictly (e.g. *.co.uk)</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> - handle IP addresses in SAN. */</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="keywordtype">int</span> <a class="code" href="ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647">tsi_ssl_peer_matches_name</a>(<span class="keyword">const</span> <a class="code" href="structtsi__peer.html">tsi_peer</a>* peer, <span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TSI_SSL_TRANSPORT_SECURITY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="ssl__transport__security_8h_html_a24150414d752e0cf6a28ff47a7b1c954"><div class="ttname"><a href="ssl__transport__security_8h.html#a24150414d752e0cf6a28ff47a7b1c954">tsi_create_ssl_client_handshaker_factory</a></div><div class="ttdeci">tsi_result tsi_create_ssl_client_handshaker_factory(const unsigned char *pem_private_key, size_t pem_private_key_size, const unsigned char *pem_cert_chain, size_t pem_cert_chain_size, const unsigned char *pem_root_certs, size_t pem_root_certs_size, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory)</div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:1214</div></div>
+<div class="ttc" id="transport__security__interface_8h_html"><div class="ttname"><a href="transport__security__interface_8h.html">transport_security_interface.h</a></div></div>
+<div class="ttc" id="ssl__transport__security_8h_html_a07cacb661f68fba399bd2a8075246104"><div class="ttname"><a href="ssl__transport__security_8h.html#a07cacb661f68fba399bd2a8075246104">tsi_create_ssl_server_handshaker_factory</a></div><div class="ttdeci">tsi_result tsi_create_ssl_server_handshaker_factory(const unsigned char **pem_private_keys, const size_t *pem_private_keys_sizes, const unsigned char **pem_cert_chains, const size_t *pem_cert_chains_sizes, size_t key_cert_pair_count, const unsigned char *pem_client_root_certs, size_t pem_client_root_certs_size, int force_client_auth, const char *cipher_suites, const unsigned char **alpn_protocols, const unsigned char *alpn_protocols_lengths, uint16_t num_alpn_protocols, tsi_ssl_handshaker_factory **factory)</div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:1291</div></div>
+<div class="ttc" id="structtsi__ssl__handshaker__factory_html"><div class="ttname"><a href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a></div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:71</div></div>
+<div class="ttc" id="ssl__transport__security_8h_html_a640862c021958b7cc4e841d5842b3142"><div class="ttname"><a href="ssl__transport__security_8h.html#a640862c021958b7cc4e841d5842b3142">tsi_ssl_handshaker_factory_create_handshaker</a></div><div class="ttdeci">tsi_result tsi_ssl_handshaker_factory_create_handshaker(tsi_ssl_handshaker_factory *self, const char *server_name_indication, tsi_handshaker **handshaker)</div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:955</div></div>
+<div class="ttc" id="structtsi__peer_html"><div class="ttname"><a href="structtsi__peer.html">tsi_peer</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:192</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a></div><div class="ttdeci">tsi_result</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:46</div></div>
+<div class="ttc" id="ssl__transport__security_8h_html_a55e5ff567c916f396a960d9ba259fd5b"><div class="ttname"><a href="ssl__transport__security_8h.html#a55e5ff567c916f396a960d9ba259fd5b">tsi_ssl_handshaker_factory_destroy</a></div><div class="ttdeci">void tsi_ssl_handshaker_factory_destroy(tsi_ssl_handshaker_factory *self)</div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:962</div></div>
+<div class="ttc" id="ssl__transport__security_8h_html_a22edee478b3473e184d77d74c13d9647"><div class="ttname"><a href="ssl__transport__security_8h.html#a22edee478b3473e184d77d74c13d9647">tsi_ssl_peer_matches_name</a></div><div class="ttdeci">int tsi_ssl_peer_matches_name(const tsi_peer *peer, const char *name)</div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:1396</div></div>
+<div class="ttc" id="structtsi__handshaker_html"><div class="ttname"><a href="structtsi__handshaker.html">tsi_handshaker</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:86</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/stack__lockfree_8c.html b/doc/ref/core.internal/html/stack__lockfree_8c.html
new file mode 100644
index 0000000000..22f3105262
--- /dev/null
+++ b/doc/ref/core.internal/html/stack__lockfree_8c.html
@@ -0,0 +1,259 @@
+<!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: src/core/support/stack_lockfree.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stack_lockfree.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="stack__lockfree_8h_source.html">src/core/support/stack_lockfree.h</a>&quot;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlockfree__node__contents.html">lockfree_node_contents</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionlockfree__node.html">lockfree_node</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8644da45b827e108bca857053cbf48af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#a8644da45b827e108bca857053cbf48af">ENTRY_ALIGNMENT_BITS</a>&#160;&#160;&#160;3 /* make sure that entries aligned to 8-bytes */</td></tr>
+<tr class="separator:a8644da45b827e108bca857053cbf48af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c03a49143863f3e267ce5a21ac6121c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#a6c03a49143863f3e267ce5a21ac6121c">INVALID_ENTRY_INDEX</a></td></tr>
+<tr class="separator:a6c03a49143863f3e267ce5a21ac6121c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a64e6ad783031985682ffda6b0c912bb6"><td class="memItemLeft" align="right" valign="top">typedef union <a class="el" href="unionlockfree__node.html">lockfree_node</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#a64e6ad783031985682ffda6b0c912bb6">lockfree_node</a></td></tr>
+<tr class="separator:a64e6ad783031985682ffda6b0c912bb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a281add9a8c1bdc0a6715cc168c6f41a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#a281add9a8c1bdc0a6715cc168c6f41a9">gpr_stack_lockfree_create</a> (int entries)</td></tr>
+<tr class="separator:a281add9a8c1bdc0a6715cc168c6f41a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d082653d002f9849d89f1ac93f21554"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#a0d082653d002f9849d89f1ac93f21554">gpr_stack_lockfree_destroy</a> (<a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *stack)</td></tr>
+<tr class="separator:a0d082653d002f9849d89f1ac93f21554"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c2fa41e3046d10a9e98416f4d809933"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#a0c2fa41e3046d10a9e98416f4d809933">gpr_stack_lockfree_push</a> (<a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *stack, int entry)</td></tr>
+<tr class="separator:a0c2fa41e3046d10a9e98416f4d809933"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2548d065e76c3ece34984e43c599d14"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8c.html#ae2548d065e76c3ece34984e43c599d14">gpr_stack_lockfree_pop</a> (<a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *stack)</td></tr>
+<tr class="separator:ae2548d065e76c3ece34984e43c599d14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a8644da45b827e108bca857053cbf48af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ENTRY_ALIGNMENT_BITS&#160;&#160;&#160;3 /* make sure that entries aligned to 8-bytes */</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c03a49143863f3e267ce5a21ac6121c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define INVALID_ENTRY_INDEX</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((1 &lt;&lt; 16) - 1) <span class="comment">/* reserve this entry as invalid \</span></div>
+<div class="line"><span class="comment"> */</span></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a64e6ad783031985682ffda6b0c912bb6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef union <a class="el" href="unionlockfree__node.html">lockfree_node</a> <a class="el" href="unionlockfree__node.html">lockfree_node</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a281add9a8c1bdc0a6715cc168c6f41a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* gpr_stack_lockfree_create </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entries</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d082653d002f9849d89f1ac93f21554"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_stack_lockfree_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae2548d065e76c3ece34984e43c599d14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_stack_lockfree_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c2fa41e3046d10a9e98416f4d809933"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_stack_lockfree_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td>
+ <td class="paramname"><em>stack</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entry</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stack__lockfree_8h.html b/doc/ref/core.internal/html/stack__lockfree_8h.html
new file mode 100644
index 0000000000..7dea757bc5
--- /dev/null
+++ b/doc/ref/core.internal/html/stack__lockfree_8h.html
@@ -0,0 +1,209 @@
+<!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: src/core/support/stack_lockfree.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stack_lockfree.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="stack__lockfree_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a66ea3d52c0bac00af25057468bbd8465"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8h.html#a66ea3d52c0bac00af25057468bbd8465">gpr_stack_lockfree</a></td></tr>
+<tr class="separator:a66ea3d52c0bac00af25057468bbd8465"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a281add9a8c1bdc0a6715cc168c6f41a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9">gpr_stack_lockfree_create</a> (int entries)</td></tr>
+<tr class="separator:a281add9a8c1bdc0a6715cc168c6f41a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d082653d002f9849d89f1ac93f21554"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554">gpr_stack_lockfree_destroy</a> (<a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *stack)</td></tr>
+<tr class="separator:a0d082653d002f9849d89f1ac93f21554"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82627359dd8da1d1015ee7aa70eab6aa"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa">gpr_stack_lockfree_push</a> (<a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *, int entry)</td></tr>
+<tr class="separator:a82627359dd8da1d1015ee7aa70eab6aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2548d065e76c3ece34984e43c599d14"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14">gpr_stack_lockfree_pop</a> (<a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *stack)</td></tr>
+<tr class="separator:ae2548d065e76c3ece34984e43c599d14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a66ea3d52c0bac00af25057468bbd8465"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> <a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a281add9a8c1bdc0a6715cc168c6f41a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* gpr_stack_lockfree_create </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entries</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d082653d002f9849d89f1ac93f21554"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_stack_lockfree_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae2548d065e76c3ece34984e43c599d14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_stack_lockfree_pop </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td>
+ <td class="paramname"><em>stack</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a82627359dd8da1d1015ee7aa70eab6aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_stack_lockfree_push </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>entry</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stack__lockfree_8h_source.html b/doc/ref/core.internal/html/stack__lockfree_8h_source.html
new file mode 100644
index 0000000000..3cfbd7ce17
--- /dev/null
+++ b/doc/ref/core.internal/html/stack__lockfree_8h_source.html
@@ -0,0 +1,156 @@
+<!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: src/core/support/stack_lockfree.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">stack_lockfree.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="stack__lockfree_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_STACK_LOCKFREE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_STACK_LOCKFREE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="stack__lockfree_8h.html#a66ea3d52c0bac00af25057468bbd8465"> 37</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> <a class="code" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* This stack must specify the maximum number of entries to track.</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> The current implementation only allows up to 65534 entries */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* <a class="code" href="stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9">gpr_stack_lockfree_create</a>(<span class="keywordtype">int</span> <a class="code" href="structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1">entries</a>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554">gpr_stack_lockfree_destroy</a>(<a class="code" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* stack);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* Pass in a valid entry number for the next stack entry */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Returns 1 if this is the first element on the stack, 0 otherwise */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">int</span> <a class="code" href="stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa">gpr_stack_lockfree_push</a>(<a class="code" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>*, <span class="keywordtype">int</span> entry);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* Returns -1 on empty or the actual entry number */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">int</span> <a class="code" href="stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14">gpr_stack_lockfree_pop</a>(<a class="code" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* stack);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_STACK_LOCKFREE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgpr__stack__lockfree_html"><div class="ttname"><a href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a></div><div class="ttdef"><b>Definition:</b> stack_lockfree.c:72</div></div>
+<div class="ttc" id="stack__lockfree_8h_html_a0d082653d002f9849d89f1ac93f21554"><div class="ttname"><a href="stack__lockfree_8h.html#a0d082653d002f9849d89f1ac93f21554">gpr_stack_lockfree_destroy</a></div><div class="ttdeci">void gpr_stack_lockfree_destroy(gpr_stack_lockfree *stack)</div><div class="ttdef"><b>Definition:</b> stack_lockfree.c:105</div></div>
+<div class="ttc" id="stack__lockfree_8h_html_a281add9a8c1bdc0a6715cc168c6f41a9"><div class="ttname"><a href="stack__lockfree_8h.html#a281add9a8c1bdc0a6715cc168c6f41a9">gpr_stack_lockfree_create</a></div><div class="ttdeci">gpr_stack_lockfree * gpr_stack_lockfree_create(int entries)</div><div class="ttdef"><b>Definition:</b> stack_lockfree.c:82</div></div>
+<div class="ttc" id="stack__lockfree_8h_html_a82627359dd8da1d1015ee7aa70eab6aa"><div class="ttname"><a href="stack__lockfree_8h.html#a82627359dd8da1d1015ee7aa70eab6aa">gpr_stack_lockfree_push</a></div><div class="ttdeci">int gpr_stack_lockfree_push(gpr_stack_lockfree *, int entry)</div><div class="ttdef"><b>Definition:</b> stack_lockfree.c:110</div></div>
+<div class="ttc" id="structgpr__stack__lockfree_html_a68282ed7eeb9cb7ce537b15ed25e7eb1"><div class="ttname"><a href="structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1">gpr_stack_lockfree::entries</a></div><div class="ttdeci">lockfree_node * entries</div><div class="ttdef"><b>Definition:</b> stack_lockfree.c:73</div></div>
+<div class="ttc" id="stack__lockfree_8h_html_ae2548d065e76c3ece34984e43c599d14"><div class="ttname"><a href="stack__lockfree_8h.html#ae2548d065e76c3ece34984e43c599d14">gpr_stack_lockfree_pop</a></div><div class="ttdeci">int gpr_stack_lockfree_pop(gpr_stack_lockfree *stack)</div><div class="ttdef"><b>Definition:</b> stack_lockfree.c:148</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/stap__timers_8c.html b/doc/ref/core.internal/html/stap__timers_8c.html
new file mode 100644
index 0000000000..5d124098c4
--- /dev/null
+++ b/doc/ref/core.internal/html/stap__timers_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/profiling/stap_timers.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">stap_timers.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/status_8h.html b/doc/ref/core.internal/html/status_8h.html
new file mode 100644
index 0000000000..fe74407488
--- /dev/null
+++ b/doc/ref/core.internal/html/status_8h.html
@@ -0,0 +1,184 @@
+<!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: include/grpc/status.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">status.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="status_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a35ab2a68917eb836de84cb23253108eb"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> { <br/>
+&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201">GRPC_STATUS_OK</a> = 0,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038">GRPC_STATUS_CANCELLED</a> = 1,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08">GRPC_STATUS_UNKNOWN</a> = 2,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731">GRPC_STATUS_INVALID_ARGUMENT</a> = 3,
+<br/>
+&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208">GRPC_STATUS_DEADLINE_EXCEEDED</a> = 4,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2">GRPC_STATUS_NOT_FOUND</a> = 5,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b">GRPC_STATUS_ALREADY_EXISTS</a> = 6,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4">GRPC_STATUS_PERMISSION_DENIED</a> = 7,
+<br/>
+&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb">GRPC_STATUS_UNAUTHENTICATED</a> = 16,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9">GRPC_STATUS_RESOURCE_EXHAUSTED</a> = 8,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f">GRPC_STATUS_FAILED_PRECONDITION</a> = 9,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9">GRPC_STATUS_ABORTED</a> = 10,
+<br/>
+&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b">GRPC_STATUS_OUT_OF_RANGE</a> = 11,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2">GRPC_STATUS_UNIMPLEMENTED</a> = 12,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520">GRPC_STATUS_INTERNAL</a> = 13,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79">GRPC_STATUS_UNAVAILABLE</a> = 14,
+<br/>
+&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7">GRPC_STATUS_DATA_LOSS</a> = 15,
+<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96">GRPC_STATUS__DO_NOT_USE</a> = -1
+<br/>
+ }</td></tr>
+<tr class="separator:a35ab2a68917eb836de84cb23253108eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a35ab2a68917eb836de84cb23253108eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201"></a>GRPC_STATUS_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038"></a>GRPC_STATUS_CANCELLED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08"></a>GRPC_STATUS_UNKNOWN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731"></a>GRPC_STATUS_INVALID_ARGUMENT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208"></a>GRPC_STATUS_DEADLINE_EXCEEDED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2"></a>GRPC_STATUS_NOT_FOUND</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b"></a>GRPC_STATUS_ALREADY_EXISTS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4"></a>GRPC_STATUS_PERMISSION_DENIED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb"></a>GRPC_STATUS_UNAUTHENTICATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9"></a>GRPC_STATUS_RESOURCE_EXHAUSTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f"></a>GRPC_STATUS_FAILED_PRECONDITION</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9"></a>GRPC_STATUS_ABORTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b"></a>GRPC_STATUS_OUT_OF_RANGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2"></a>GRPC_STATUS_UNIMPLEMENTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520"></a>GRPC_STATUS_INTERNAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79"></a>GRPC_STATUS_UNAVAILABLE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7"></a>GRPC_STATUS_DATA_LOSS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96"></a>GRPC_STATUS__DO_NOT_USE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/status_8h_source.html b/doc/ref/core.internal/html/status_8h_source.html
new file mode 100644
index 0000000000..e8e33530f1
--- /dev/null
+++ b/doc/ref/core.internal/html/status_8h_source.html
@@ -0,0 +1,281 @@
+<!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: include/grpc/status.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">status.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="status_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_STATUS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_STATUS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="comment">/* Not an error; returned on success */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201"> 43</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201">GRPC_STATUS_OK</a> = 0,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="comment">/* The operation was cancelled (typically by the caller). */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038"> 46</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038">GRPC_STATUS_CANCELLED</a> = 1,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">/* Unknown error. An example of where this error may be returned is</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> if a Status value received from another address space belongs to</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> an error-space that is not known in this address space. Also</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> errors raised by APIs that do not return enough error information</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> may be converted to this error. */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08"> 53</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08">GRPC_STATUS_UNKNOWN</a> = 2,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* Client specified an invalid argument. Note that this differs</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> from FAILED_PRECONDITION. INVALID_ARGUMENT indicates arguments</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> that are problematic regardless of the state of the system</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> (e.g., a malformed file name). */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731"> 59</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731">GRPC_STATUS_INVALID_ARGUMENT</a> = 3,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">/* Deadline expired before operation could complete. For operations</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> that change the state of the system, this error may be returned</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> even if the operation has completed successfully. For example, a</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> successful response from a server could have been delayed long</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> enough for the deadline to expire. */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208"> 66</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208">GRPC_STATUS_DEADLINE_EXCEEDED</a> = 4,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">/* Some requested entity (e.g., file or directory) was not found. */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2"> 69</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2">GRPC_STATUS_NOT_FOUND</a> = 5,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">/* Some entity that we attempted to create (e.g., file or directory)</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> already exists. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b"> 73</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b">GRPC_STATUS_ALREADY_EXISTS</a> = 6,</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">/* The caller does not have permission to execute the specified</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> operation. PERMISSION_DENIED must not be used for rejections</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> caused by exhausting some resource (use RESOURCE_EXHAUSTED</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> instead for those errors). PERMISSION_DENIED must not be</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> used if the caller can not be identified (use UNAUTHENTICATED</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> instead for those errors). */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4"> 81</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4">GRPC_STATUS_PERMISSION_DENIED</a> = 7,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">/* The request does not have valid authentication credentials for the</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> operation. */</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb"> 85</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb">GRPC_STATUS_UNAUTHENTICATED</a> = 16,</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="comment">/* Some resource has been exhausted, perhaps a per-user quota, or</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> perhaps the entire file system is out of space. */</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9"> 89</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9">GRPC_STATUS_RESOURCE_EXHAUSTED</a> = 8,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">/* Operation was rejected because the system is not in a state</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> required for the operation&#39;s execution. For example, directory</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> to be deleted may be non-empty, an rmdir operation is applied to</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> a non-directory, etc.</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> A litmus test that may help a service implementor in deciding</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE:</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> (a) Use UNAVAILABLE if the client can retry just the failing call.</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> (b) Use ABORTED if the client should retry at a higher-level</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> (e.g., restarting a read-modify-write sequence).</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> (c) Use FAILED_PRECONDITION if the client should not retry until</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> the system state has been explicitly fixed. E.g., if an &quot;rmdir&quot;</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> fails because the directory is non-empty, FAILED_PRECONDITION</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> should be returned since the client should not retry unless</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> they have first fixed up the directory by deleting files from it.</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> (d) Use FAILED_PRECONDITION if the client performs conditional</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> REST Get/Update/Delete on a resource and the resource on the</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> server does not match the condition. E.g., conflicting</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> read-modify-write on the same resource. */</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f"> 110</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f">GRPC_STATUS_FAILED_PRECONDITION</a> = 9,</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">/* The operation was aborted, typically due to a concurrency issue</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> like sequencer check failures, transaction aborts, etc.</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> See litmus test above for deciding between FAILED_PRECONDITION,</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> ABORTED, and UNAVAILABLE. */</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9"> 117</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9">GRPC_STATUS_ABORTED</a> = 10,</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">/* Operation was attempted past the valid range. E.g., seeking or</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> reading past end of file.</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> Unlike INVALID_ARGUMENT, this error indicates a problem that may</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> be fixed if the system state changes. For example, a 32-bit file</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> system will generate INVALID_ARGUMENT if asked to read at an</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> offset that is not in the range [0,2^32-1], but it will generate</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> OUT_OF_RANGE if asked to read from an offset past the current</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> file size.</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> There is a fair bit of overlap between FAILED_PRECONDITION and</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> OUT_OF_RANGE. We recommend using OUT_OF_RANGE (the more specific</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> error) when it applies so that callers who are iterating through</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> a space can easily look for an OUT_OF_RANGE error to detect when</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> they are done. */</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b"> 134</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b">GRPC_STATUS_OUT_OF_RANGE</a> = 11,</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="comment">/* Operation is not implemented or not supported/enabled in this service. */</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2"> 137</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2">GRPC_STATUS_UNIMPLEMENTED</a> = 12,</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="comment">/* Internal errors. Means some invariants expected by underlying</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> system has been broken. If you see one of these errors,</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> something is very broken. */</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520"> 142</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520">GRPC_STATUS_INTERNAL</a> = 13,</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="comment">/* The service is currently unavailable. This is a most likely a</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> transient condition and may be corrected by retrying with</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> a backoff.</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> See litmus test above for deciding between FAILED_PRECONDITION,</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> ABORTED, and UNAVAILABLE. */</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79"> 150</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79">GRPC_STATUS_UNAVAILABLE</a> = 14,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="comment">/* Unrecoverable data loss or corruption. */</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7"> 153</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7">GRPC_STATUS_DATA_LOSS</a> = 15,</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="comment">/* Force users to include a default branch: */</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96"> 156</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96">GRPC_STATUS__DO_NOT_USE</a> = -1</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;} <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_STATUS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebad357565db8655b6635fae96a11c4009b">GRPC_STATUS_ALREADY_EXISTS</a></div><div class="ttdef"><b>Definition:</b> status.h:73</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba4149925007957bf1a04184d88e8293f4">GRPC_STATUS_PERMISSION_DENIED</a></div><div class="ttdef"><b>Definition:</b> status.h:81</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba30e6e0c37df1389dd4c460a53f831038">GRPC_STATUS_CANCELLED</a></div><div class="ttdef"><b>Definition:</b> status.h:46</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebafdf14cb6f2da868d76b209ac490c14e2">GRPC_STATUS_NOT_FOUND</a></div><div class="ttdef"><b>Definition:</b> status.h:69</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3570bc43d5eb08c95a7f4c24c13010d9">GRPC_STATUS_ABORTED</a></div><div class="ttdef"><b>Definition:</b> status.h:117</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5f02c0e431162618ab422d27fd39dd08">GRPC_STATUS_UNKNOWN</a></div><div class="ttdef"><b>Definition:</b> status.h:53</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba5451711361db6b8d8e80be30cbb1a208">GRPC_STATUS_DEADLINE_EXCEEDED</a></div><div class="ttdef"><b>Definition:</b> status.h:66</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba275db05856f4af884c48e86440414db7">GRPC_STATUS_DATA_LOSS</a></div><div class="ttdef"><b>Definition:</b> status.h:153</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba6912537b4dfd1030f50ff2f5448f1bc2">GRPC_STATUS_UNIMPLEMENTED</a></div><div class="ttdef"><b>Definition:</b> status.h:137</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab924d4c4c646bdb3130162b8e359dd96">GRPC_STATUS__DO_NOT_USE</a></div><div class="ttdef"><b>Definition:</b> status.h:156</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba503abd183544b43a83bc01d999adda5f">GRPC_STATUS_FAILED_PRECONDITION</a></div><div class="ttdef"><b>Definition:</b> status.h:110</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba1a6fd47361ad9298879dd8760ca1a0cb">GRPC_STATUS_UNAUTHENTICATED</a></div><div class="ttdef"><b>Definition:</b> status.h:85</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebacd0d05ab2f0af48b0f535c3dd0816d9b">GRPC_STATUS_OUT_OF_RANGE</a></div><div class="ttdef"><b>Definition:</b> status.h:134</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebae648dab84c58ef5b1cfeea35867c4520">GRPC_STATUS_INTERNAL</a></div><div class="ttdef"><b>Definition:</b> status.h:142</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebaad91b67998cb5df7bc6821e362189e79">GRPC_STATUS_UNAVAILABLE</a></div><div class="ttdef"><b>Definition:</b> status.h:150</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108ebab1a76cb91e6992f6f7a31a7fe862e0e9">GRPC_STATUS_RESOURCE_EXHAUSTED</a></div><div class="ttdef"><b>Definition:</b> status.h:89</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba3dd64296110db7e7fafb1062b5587731">GRPC_STATUS_INVALID_ARGUMENT</a></div><div class="ttdef"><b>Definition:</b> status.h:59</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eba9da5601150b267ab5509d151fa7df201">GRPC_STATUS_OK</a></div><div class="ttdef"><b>Definition:</b> status.h:43</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/status__conversion_8c.html b/doc/ref/core.internal/html/status__conversion_8c.html
new file mode 100644
index 0000000000..fc733b78d1
--- /dev/null
+++ b/doc/ref/core.internal/html/status__conversion_8c.html
@@ -0,0 +1,179 @@
+<!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: src/core/transport/chttp2/status_conversion.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">status_conversion.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="status__conversion_8h_source.html">src/core/transport/chttp2/status_conversion.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8fc288b0c9b0f2333adb3c1de2559c1d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8c.html#a8fc288b0c9b0f2333adb3c1de2559c1d">grpc_chttp2_grpc_status_to_http2_error</a> (<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status)</td></tr>
+<tr class="separator:a8fc288b0c9b0f2333adb3c1de2559c1d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4babdebe7ad9dc3b68b37b86d00f3e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8c.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">grpc_chttp2_http2_error_to_grpc_status</a> (<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a> error)</td></tr>
+<tr class="separator:ae4babdebe7ad9dc3b68b37b86d00f3e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e442a5cee1439a8cf37203b40956d12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8c.html#a6e442a5cee1439a8cf37203b40956d12">grpc_chttp2_http2_status_to_grpc_status</a> (int status)</td></tr>
+<tr class="separator:a6e442a5cee1439a8cf37203b40956d12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30ec4cf33600ca53524bb3003c02b37a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8c.html#a30ec4cf33600ca53524bb3003c02b37a">grpc_chttp2_grpc_status_to_http2_status</a> (<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status)</td></tr>
+<tr class="separator:a30ec4cf33600ca53524bb3003c02b37a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8fc288b0c9b0f2333adb3c1de2559c1d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_grpc_status_to_http2_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a30ec4cf33600ca53524bb3003c02b37a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_grpc_status_to_http2_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae4babdebe7ad9dc3b68b37b86d00f3e2"></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_chttp2_http2_error_to_grpc_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a>&#160;</td>
+ <td class="paramname"><em>error</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e442a5cee1439a8cf37203b40956d12"></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_chttp2_http2_status_to_grpc_status </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/status__conversion_8h.html b/doc/ref/core.internal/html/status__conversion_8h.html
new file mode 100644
index 0000000000..5d666f725f
--- /dev/null
+++ b/doc/ref/core.internal/html/status__conversion_8h.html
@@ -0,0 +1,182 @@
+<!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: src/core/transport/chttp2/status_conversion.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">status_conversion.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="http2__errors_8h_source.html">src/core/transport/chttp2/http2_errors.h</a>&quot;</code><br/>
+</div>
+<p><a href="status__conversion_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a375c081b20a1ff583a12374db7cbb5d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6">grpc_chttp2_grpc_status_to_http2_error</a> (<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status)</td></tr>
+<tr class="separator:a375c081b20a1ff583a12374db7cbb5d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4babdebe7ad9dc3b68b37b86d00f3e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">grpc_chttp2_http2_error_to_grpc_status</a> (<a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a> error)</td></tr>
+<tr class="separator:ae4babdebe7ad9dc3b68b37b86d00f3e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6e442a5cee1439a8cf37203b40956d12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12">grpc_chttp2_http2_status_to_grpc_status</a> (int status)</td></tr>
+<tr class="separator:a6e442a5cee1439a8cf37203b40956d12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30ec4cf33600ca53524bb3003c02b37a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a">grpc_chttp2_grpc_status_to_http2_status</a> (<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status)</td></tr>
+<tr class="separator:a30ec4cf33600ca53524bb3003c02b37a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a375c081b20a1ff583a12374db7cbb5d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a> grpc_chttp2_grpc_status_to_http2_error </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a30ec4cf33600ca53524bb3003c02b37a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_grpc_status_to_http2_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae4babdebe7ad9dc3b68b37b86d00f3e2"></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_chttp2_http2_error_to_grpc_status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a>&#160;</td>
+ <td class="paramname"><em>error</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e442a5cee1439a8cf37203b40956d12"></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_chttp2_http2_status_to_grpc_status </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>status</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/status__conversion_8h_source.html b/doc/ref/core.internal/html/status__conversion_8h_source.html
new file mode 100644
index 0000000000..583959c2db
--- /dev/null
+++ b/doc/ref/core.internal/html/status__conversion_8h_source.html
@@ -0,0 +1,157 @@
+<!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: src/core/transport/chttp2/status_conversion.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">status_conversion.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="status__conversion_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STATUS_CONVERSION_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STATUS_CONVERSION_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="http2__errors_8h.html">src/core/transport/chttp2/http2_errors.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* Conversion of grpc status codes to http2 error codes (for RST_STREAM) */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a> <a class="code" href="status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6">grpc_chttp2_grpc_status_to_http2_error</a>(</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">grpc_chttp2_http2_error_to_grpc_status</a>(</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a> error);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* Conversion of HTTP status codes (:status) to grpc status codes */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12">grpc_chttp2_http2_status_to_grpc_status</a>(<span class="keywordtype">int</span> status);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">int</span> <a class="code" href="status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a">grpc_chttp2_grpc_status_to_http2_status</a>(<a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STATUS_CONVERSION_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="status__conversion_8h_html_a30ec4cf33600ca53524bb3003c02b37a"><div class="ttname"><a href="status__conversion_8h.html#a30ec4cf33600ca53524bb3003c02b37a">grpc_chttp2_grpc_status_to_http2_status</a></div><div class="ttdeci">int grpc_chttp2_grpc_status_to_http2_status(grpc_status_code status)</div><div class="ttdef"><b>Definition:</b> status_conversion.c:107</div></div>
+<div class="ttc" id="status__conversion_8h_html_a6e442a5cee1439a8cf37203b40956d12"><div class="ttname"><a href="status__conversion_8h.html#a6e442a5cee1439a8cf37203b40956d12">grpc_chttp2_http2_status_to_grpc_status</a></div><div class="ttdeci">grpc_status_code grpc_chttp2_http2_status_to_grpc_status(int status)</div><div class="ttdef"><b>Definition:</b> status_conversion.c:72</div></div>
+<div class="ttc" id="status__conversion_8h_html_ae4babdebe7ad9dc3b68b37b86d00f3e2"><div class="ttname"><a href="status__conversion_8h.html#ae4babdebe7ad9dc3b68b37b86d00f3e2">grpc_chttp2_http2_error_to_grpc_status</a></div><div class="ttdeci">grpc_status_code grpc_chttp2_http2_error_to_grpc_status(grpc_chttp2_error_code error)</div><div class="ttdef"><b>Definition:</b> status_conversion.c:53</div></div>
+<div class="ttc" id="http2__errors_8h_html"><div class="ttname"><a href="http2__errors_8h.html">http2_errors.h</a></div></div>
+<div class="ttc" id="status__conversion_8h_html_a375c081b20a1ff583a12374db7cbb5d6"><div class="ttname"><a href="status__conversion_8h.html#a375c081b20a1ff583a12374db7cbb5d6">grpc_chttp2_grpc_status_to_http2_error</a></div><div class="ttdeci">grpc_chttp2_error_code grpc_chttp2_grpc_status_to_http2_error(grpc_status_code status)</div><div class="ttdef"><b>Definition:</b> status_conversion.c:36</div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="http2__errors_8h_html_a093974eee0aaf09397d243c7dcebd4da"><div class="ttname"><a href="http2__errors_8h.html#a093974eee0aaf09397d243c7dcebd4da">grpc_chttp2_error_code</a></div><div class="ttdeci">grpc_chttp2_error_code</div><div class="ttdef"><b>Definition:</b> http2_errors.h:38</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/stream__encoder_8c.html b/doc/ref/core.internal/html/stream__encoder_8c.html
new file mode 100644
index 0000000000..3206b9fa65
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__encoder_8c.html
@@ -0,0 +1,444 @@
+<!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: src/core/transport/chttp2/stream_encoder.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_encoder.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="stream__encoder_8h_source.html">src/core/transport/chttp2/stream_encoder.h</a>&quot;</code><br/>
+<code>#include &lt;assert.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="bin__encoder_8h_source.html">src/core/transport/chttp2/bin_encoder.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="hpack__table_8h_source.html">src/core/transport/chttp2/hpack_table.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="timeout__encoding_8h_source.html">src/core/transport/chttp2/timeout_encoding.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="varint_8h_source.html">src/core/transport/chttp2/varint.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structframer__state.html">framer_state</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a0551b7ff01539c9139e682053301b58b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a0551b7ff01539c9139e682053301b58b">HASH_FRAGMENT_1</a>(x)&#160;&#160;&#160;((x)&amp;255)</td></tr>
+<tr class="separator:a0551b7ff01539c9139e682053301b58b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00bb8310d47f7c0b6d5b9e86fdfbc043"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a00bb8310d47f7c0b6d5b9e86fdfbc043">HASH_FRAGMENT_2</a>(x)&#160;&#160;&#160;((x &gt;&gt; 8) &amp; 255)</td></tr>
+<tr class="separator:a00bb8310d47f7c0b6d5b9e86fdfbc043"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6a3339f7cdc67827f51d6f7162271fa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#ac6a3339f7cdc67827f51d6f7162271fa">HASH_FRAGMENT_3</a>(x)&#160;&#160;&#160;((x &gt;&gt; 16) &amp; 255)</td></tr>
+<tr class="separator:ac6a3339f7cdc67827f51d6f7162271fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1aa06e441caa39deff8ee0dddaa18916"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a1aa06e441caa39deff8ee0dddaa18916">HASH_FRAGMENT_4</a>(x)&#160;&#160;&#160;((x &gt;&gt; 24) &amp; 255)</td></tr>
+<tr class="separator:a1aa06e441caa39deff8ee0dddaa18916"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7f6bdf9db2a15a5e00cf3a6825d9957"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#ad7f6bdf9db2a15a5e00cf3a6825d9957">ONE_ON_ADD_PROBABILITY</a>&#160;&#160;&#160;128</td></tr>
+<tr class="separator:ad7f6bdf9db2a15a5e00cf3a6825d9957"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7216827b7f9b1ea6a0b108518cde0a7a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a7216827b7f9b1ea6a0b108518cde0a7a">MAX_DECODER_SPACE_USAGE</a>&#160;&#160;&#160;512</td></tr>
+<tr class="separator:a7216827b7f9b1ea6a0b108518cde0a7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4adf5996646225c1109095f57e5054c1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a4adf5996646225c1109095f57e5054c1">STRLEN_LIT</a>(x)&#160;&#160;&#160;(sizeof(x) - 1)</td></tr>
+<tr class="separator:a4adf5996646225c1109095f57e5054c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a730f13257408fd7a5a3d734f5399cba7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a730f13257408fd7a5a3d734f5399cba7">TIMEOUT_KEY</a>&#160;&#160;&#160;&quot;grpc-timeout&quot;</td></tr>
+<tr class="separator:a730f13257408fd7a5a3d734f5399cba7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a3ca2c0bc7578bf3d337e34b2c08a6c5f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f">frame_type</a> { <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa2e57918a09d25b07a664e505d50a97f6">HEADER</a>,
+<a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fa9d7d6f31868d66330397c967c4afd2d2">DATA</a>,
+<a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5fac157bdf0b85a40d2619cbc8bc1ae5fe2">NONE</a>
+ }</td></tr>
+<tr class="separator:a3ca2c0bc7578bf3d337e34b2c08a6c5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa79c486a29b6e104c57be53a20d91362"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#aa79c486a29b6e104c57be53a20d91362">grpc_chttp2_data_frame_create_empty_close</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> id)</td></tr>
+<tr class="separator:aa79c486a29b6e104c57be53a20d91362"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9ec21ece920fa6f844eeecf4b5c4149"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#ad9ec21ece920fa6f844eeecf4b5c4149">grpc_chttp2_hpack_compressor_init</a> (<a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *c, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *ctx)</td></tr>
+<tr class="separator:ad9ec21ece920fa6f844eeecf4b5c4149"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03663bcc8cda8973711333e62e7aff66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a03663bcc8cda8973711333e62e7aff66">grpc_chttp2_hpack_compressor_destroy</a> (<a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *c)</td></tr>
+<tr class="separator:a03663bcc8cda8973711333e62e7aff66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ee751a56974f45d33d89ce7f02cf022"><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="stream__encoder_8c.html#a3ee751a56974f45d33d89ce7f02cf022">grpc_chttp2_preencode</a> (<a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *inops, size_t *inops_count, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> max_flow_controlled_bytes, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *outops)</td></tr>
+<tr class="separator:a3ee751a56974f45d33d89ce7f02cf022"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fdaaa3443176e8815ffe75804b5efbd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8c.html#a1fdaaa3443176e8815ffe75804b5efbd">grpc_chttp2_encode</a> (<a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, size_t ops_count, int eof, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id, <a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *compressor, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:a1fdaaa3443176e8815ffe75804b5efbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a0551b7ff01539c9139e682053301b58b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define HASH_FRAGMENT_1</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;((x)&amp;255)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a00bb8310d47f7c0b6d5b9e86fdfbc043"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define HASH_FRAGMENT_2</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;((x &gt;&gt; 8) &amp; 255)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac6a3339f7cdc67827f51d6f7162271fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define HASH_FRAGMENT_3</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;((x &gt;&gt; 16) &amp; 255)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1aa06e441caa39deff8ee0dddaa18916"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define HASH_FRAGMENT_4</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;((x &gt;&gt; 24) &amp; 255)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7216827b7f9b1ea6a0b108518cde0a7a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define MAX_DECODER_SPACE_USAGE&#160;&#160;&#160;512</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad7f6bdf9db2a15a5e00cf3a6825d9957"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define ONE_ON_ADD_PROBABILITY&#160;&#160;&#160;128</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4adf5996646225c1109095f57e5054c1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STRLEN_LIT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;(sizeof(x) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a730f13257408fd7a5a3d734f5399cba7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TIMEOUT_KEY&#160;&#160;&#160;&quot;grpc-timeout&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a3ca2c0bc7578bf3d337e34b2c08a6c5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f">frame_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a3ca2c0bc7578bf3d337e34b2c08a6c5fa2e57918a09d25b07a664e505d50a97f6"></a>HEADER</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3ca2c0bc7578bf3d337e34b2c08a6c5fa9d7d6f31868d66330397c967c4afd2d2"></a>DATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3ca2c0bc7578bf3d337e34b2c08a6c5fac157bdf0b85a40d2619cbc8bc1ae5fe2"></a>NONE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa79c486a29b6e104c57be53a20d91362"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_data_frame_create_empty_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>id</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1fdaaa3443176e8815ffe75804b5efbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_encode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>ops_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>eof</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *&#160;</td>
+ <td class="paramname"><em>compressor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a03663bcc8cda8973711333e62e7aff66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_compressor_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad9ec21ece920fa6f844eeecf4b5c4149"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_compressor_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ee751a56974f45d33d89ce7f02cf022"></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_chttp2_preencode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>inops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>inops_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>max_flow_controlled_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>outops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__encoder_8h.html b/doc/ref/core.internal/html/stream__encoder_8h.html
new file mode 100644
index 0000000000..0d4f970c29
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__encoder_8h.html
@@ -0,0 +1,305 @@
+<!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: src/core/transport/chttp2/stream_encoder.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_encoder.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="frame_8h_source.html">src/core/transport/chttp2/frame.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="metadata_8h_source.html">src/core/transport/metadata.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="stream__op_8h_source.html">src/core/transport/stream_op.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+</div>
+<p><a href="stream__encoder_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8ccaf658a95902dc2ff32426d8b84cf6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6">GRPC_CHTTP2_HPACKC_NUM_FILTERS</a>&#160;&#160;&#160;256</td></tr>
+<tr class="separator:a8ccaf658a95902dc2ff32426d8b84cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f2a7d2d40157e2080d8ab87ccce6c1f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">GRPC_CHTTP2_HPACKC_NUM_VALUES</a>&#160;&#160;&#160;256</td></tr>
+<tr class="separator:a0f2a7d2d40157e2080d8ab87ccce6c1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56da659428a69b269e09f780df07f4a4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4">GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS</a>&#160;&#160;&#160;(4096 / 32)</td></tr>
+<tr class="separator:a56da659428a69b269e09f780df07f4a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad6a798a633ba7e2b452825cf904c3e89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89">grpc_chttp2_hpack_compressor_init</a> (<a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *c, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx)</td></tr>
+<tr class="separator:ad6a798a633ba7e2b452825cf904c3e89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03663bcc8cda8973711333e62e7aff66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66">grpc_chttp2_hpack_compressor_destroy</a> (<a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *c)</td></tr>
+<tr class="separator:a03663bcc8cda8973711333e62e7aff66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ee751a56974f45d33d89ce7f02cf022"><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="stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022">grpc_chttp2_preencode</a> (<a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *inops, size_t *inops_count, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> max_flow_controlled_bytes, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *outops)</td></tr>
+<tr class="separator:a3ee751a56974f45d33d89ce7f02cf022"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fdaaa3443176e8815ffe75804b5efbd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd">grpc_chttp2_encode</a> (<a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, size_t ops_count, int eof, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id, <a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *compressor, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output)</td></tr>
+<tr class="separator:a1fdaaa3443176e8815ffe75804b5efbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a56da659428a69b269e09f780df07f4a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS&#160;&#160;&#160;(4096 / 32)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ccaf658a95902dc2ff32426d8b84cf6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_HPACKC_NUM_FILTERS&#160;&#160;&#160;256</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0f2a7d2d40157e2080d8ab87ccce6c1f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_HPACKC_NUM_VALUES&#160;&#160;&#160;256</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a1fdaaa3443176e8815ffe75804b5efbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_encode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>ops_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>eof</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>stream_id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *&#160;</td>
+ <td class="paramname"><em>compressor</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a03663bcc8cda8973711333e62e7aff66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_compressor_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad6a798a633ba7e2b452825cf904c3e89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_compressor_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td>
+ <td class="paramname"><em>mdctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ee751a56974f45d33d89ce7f02cf022"></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_chttp2_preencode </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>inops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>inops_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>max_flow_controlled_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>outops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__encoder_8h_source.html b/doc/ref/core.internal/html/stream__encoder_8h_source.html
new file mode 100644
index 0000000000..12e20cb756
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__encoder_8h_source.html
@@ -0,0 +1,221 @@
+<!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: src/core/transport/chttp2/stream_encoder.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">stream_encoder.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="stream__encoder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STREAM_ENCODER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STREAM_ENCODER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="frame_8h.html">src/core/transport/chttp2/frame.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="metadata_8h.html">src/core/transport/metadata.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="stream__op_8h.html">src/core/transport/stream_op.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice__buffer_8h.html">grpc/support/slice_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6"> 44</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_HPACKC_NUM_FILTERS 256</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f"> 45</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_HPACKC_NUM_VALUES 256</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4"> 46</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS (4096 / 32)</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8"> 49</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8">filter_elems_sum</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="comment">/* one before the lowest usable table index */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893"> 51</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893">tail_remote_index</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425"> 52</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425">table_size</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6"> 53</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> <a class="code" href="structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6">table_elems</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* filter tables for elems: this tables provides an approximate</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> popularity count for particular hashes, and are used to determine whether</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> a new literal should be added to the compression table or not.</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> They track a single integer that counts how often a particular value has</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> been seen. When that count reaches max (255), all values are halved. */</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a387e0eb34c64c7faaf16e0f2f3ad4d0e"> 60</a></span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> filter_elems[<a class="code" href="stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6">GRPC_CHTTP2_HPACKC_NUM_FILTERS</a>];</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">/* metadata context */</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c"> 63</a></span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c">mdctx</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">/* the string &#39;grpc-timeout&#39; */</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1"> 65</a></span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *<a class="code" href="structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1">timeout_key_str</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">/* entry tables for keys &amp; elems: these tables track values that have been</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> seen and *may* be in the decompressor table */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a80cc9b5282b637b3facbb68cf1038125"> 69</a></span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *entries_keys[<a class="code" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">GRPC_CHTTP2_HPACKC_NUM_VALUES</a>];</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a028e3752a9b203d820e194029f6df186"> 70</a></span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *entries_elems[<a class="code" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">GRPC_CHTTP2_HPACKC_NUM_VALUES</a>];</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#abd71f91eced6cc4bfdef970d00bbe808"> 71</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> indices_keys[<a class="code" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">GRPC_CHTTP2_HPACKC_NUM_VALUES</a>];</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#ae15305b7ada7f6b084088b9ab64240a1"> 72</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> indices_elems[<a class="code" href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">GRPC_CHTTP2_HPACKC_NUM_VALUES</a>];</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__hpack__compressor.html#a067f49c14e2c169678f44c10a7e4ee2e"> 74</a></span>&#160; <a class="code" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> table_elem_size[<a class="code" href="stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4">GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS</a>];</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;} <a class="code" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a>;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89">grpc_chttp2_hpack_compressor_init</a>(<a class="code" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *c,</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *mdctx);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66">grpc_chttp2_hpack_compressor_destroy</a>(<a class="code" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *c);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* select stream ops to be encoded, moving them from inops to outops, and</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> moving subsequent ops in inops forward in the queue */</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022">grpc_chttp2_preencode</a>(<a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> *inops, <span class="keywordtype">size_t</span> *inops_count,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> max_flow_controlled_bytes,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *outops);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/* encode stream ops to output */</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd">grpc_chttp2_encode</a>(<a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, <span class="keywordtype">size_t</span> ops_count, <span class="keywordtype">int</span> eof,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> stream_id,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> *compressor,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *output);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STREAM_ENCODER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html_a61abe6f1abcdf8aa50589996f524303c"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c">grpc_chttp2_hpack_compressor::mdctx</a></div><div class="ttdeci">grpc_mdctx * mdctx</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:63</div></div>
+<div class="ttc" id="stream__encoder_8h_html_a8ccaf658a95902dc2ff32426d8b84cf6"><div class="ttname"><a href="stream__encoder_8h.html#a8ccaf658a95902dc2ff32426d8b84cf6">GRPC_CHTTP2_HPACKC_NUM_FILTERS</a></div><div class="ttdeci">#define GRPC_CHTTP2_HPACKC_NUM_FILTERS</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:44</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html_a814ba9e8a221237a5bdca7fd0e3e0425"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425">grpc_chttp2_hpack_compressor::table_size</a></div><div class="ttdeci">gpr_uint16 table_size</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:52</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a></div><div class="ttdef"><b>Definition:</b> stream_encoder.h:48</div></div>
+<div class="ttc" id="metadata_8h_html"><div class="ttname"><a href="metadata_8h.html">metadata.h</a></div></div>
+<div class="ttc" id="stream__encoder_8h_html_a56da659428a69b269e09f780df07f4a4"><div class="ttname"><a href="stream__encoder_8h.html#a56da659428a69b269e09f780df07f4a4">GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS</a></div><div class="ttdeci">#define GRPC_CHTTP2_HPACKC_MAX_TABLE_ELEMS</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:46</div></div>
+<div class="ttc" id="structgrpc__mdstr_html"><div class="ttname"><a href="structgrpc__mdstr.html">grpc_mdstr</a></div><div class="ttdef"><b>Definition:</b> metadata.h:70</div></div>
+<div class="ttc" id="stream__encoder_8h_html_a1fdaaa3443176e8815ffe75804b5efbd"><div class="ttname"><a href="stream__encoder_8h.html#a1fdaaa3443176e8815ffe75804b5efbd">grpc_chttp2_encode</a></div><div class="ttdeci">void grpc_chttp2_encode(grpc_stream_op *ops, size_t ops_count, int eof, gpr_uint32 stream_id, grpc_chttp2_hpack_compressor *compressor, gpr_slice_buffer *output)</div><div class="ttdef"><b>Definition:</b> stream_encoder.c:550</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="stream__encoder_8h_html_a0f2a7d2d40157e2080d8ab87ccce6c1f"><div class="ttname"><a href="stream__encoder_8h.html#a0f2a7d2d40157e2080d8ab87ccce6c1f">GRPC_CHTTP2_HPACKC_NUM_VALUES</a></div><div class="ttdeci">#define GRPC_CHTTP2_HPACKC_NUM_VALUES</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:45</div></div>
+<div class="ttc" id="frame_8h_html"><div class="ttname"><a href="frame_8h.html">frame.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html_a5235d25f72e66a4e08e28577002047a1"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1">grpc_chttp2_hpack_compressor::timeout_key_str</a></div><div class="ttdeci">grpc_mdstr * timeout_key_str</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:65</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="port__platform_8h_html_abb7bceac4325643af77af51c7b6af371"><div class="ttname"><a href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a></div><div class="ttdeci">uint16_t gpr_uint16</div><div class="ttdef"><b>Definition:</b> port_platform.h:308</div></div>
+<div class="ttc" id="slice__buffer_8h_html"><div class="ttname"><a href="slice__buffer_8h.html">slice_buffer.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html_ab2544f2f9897f1d74cc979eb8f91bfd6"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6">grpc_chttp2_hpack_compressor::table_elems</a></div><div class="ttdeci">gpr_uint16 table_elems</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:53</div></div>
+<div class="ttc" id="stream__encoder_8h_html_a03663bcc8cda8973711333e62e7aff66"><div class="ttname"><a href="stream__encoder_8h.html#a03663bcc8cda8973711333e62e7aff66">grpc_chttp2_hpack_compressor_destroy</a></div><div class="ttdeci">void grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c)</div><div class="ttdef"><b>Definition:</b> stream_encoder.c:462</div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html_a0277765b866665337a7cd5f780e346a8"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8">grpc_chttp2_hpack_compressor::filter_elems_sum</a></div><div class="ttdeci">gpr_uint32 filter_elems_sum</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:49</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__hpack__compressor_html_a80e568a0851010b6ef859b7ee4235893"><div class="ttname"><a href="structgrpc__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893">grpc_chttp2_hpack_compressor::tail_remote_index</a></div><div class="ttdeci">gpr_uint32 tail_remote_index</div><div class="ttdef"><b>Definition:</b> stream_encoder.h:51</div></div>
+<div class="ttc" id="stream__op_8h_html"><div class="ttname"><a href="stream__op_8h.html">stream_op.h</a></div></div>
+<div class="ttc" id="stream__encoder_8h_html_ad6a798a633ba7e2b452825cf904c3e89"><div class="ttname"><a href="stream__encoder_8h.html#ad6a798a633ba7e2b452825cf904c3e89">grpc_chttp2_hpack_compressor_init</a></div><div class="ttdeci">void grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c, grpc_mdctx *mdctx)</div><div class="ttdef"><b>Definition:</b> stream_encoder.c:455</div></div>
+<div class="ttc" id="structgrpc__stream__op_html"><div class="ttname"><a href="structgrpc__stream__op.html">grpc_stream_op</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:162</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html"><div class="ttname"><a href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div><div class="ttdef"><b>Definition:</b> stream_op.h:176</div></div>
+<div class="ttc" id="stream__encoder_8h_html_a3ee751a56974f45d33d89ce7f02cf022"><div class="ttname"><a href="stream__encoder_8h.html#a3ee751a56974f45d33d89ce7f02cf022">grpc_chttp2_preencode</a></div><div class="ttdeci">gpr_uint32 grpc_chttp2_preencode(grpc_stream_op *inops, size_t *inops_count, gpr_uint32 max_flow_controlled_bytes, grpc_stream_op_buffer *outops)</div><div class="ttdef"><b>Definition:</b> stream_encoder.c:471</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/stream__lists_8c.html b/doc/ref/core.internal/html/stream__lists_8c.html
new file mode 100644
index 0000000000..9db47ea50a
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__lists_8c.html
@@ -0,0 +1,995 @@
+<!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: src/core/transport/chttp2/stream_lists.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_lists.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a029ef12f8edec2cce810fc244777f39e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a029ef12f8edec2cce810fc244777f39e">TRANSPORT_FROM_GLOBAL</a>(tg)</td></tr>
+<tr class="separator:a029ef12f8edec2cce810fc244777f39e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad226604f0f25167ab63b83fb504925ed"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#ad226604f0f25167ab63b83fb504925ed">STREAM_FROM_GLOBAL</a>(sg)&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sg)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, global)))</td></tr>
+<tr class="separator:ad226604f0f25167ab63b83fb504925ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cbfd8ced9e04ddc423b7b87abb271ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a0cbfd8ced9e04ddc423b7b87abb271ba">TRANSPORT_FROM_WRITING</a>(tw)</td></tr>
+<tr class="separator:a0cbfd8ced9e04ddc423b7b87abb271ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a168549253d875995f6454b6ac5f9250f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a168549253d875995f6454b6ac5f9250f">STREAM_FROM_WRITING</a>(sw)&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sw)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, writing)))</td></tr>
+<tr class="separator:a168549253d875995f6454b6ac5f9250f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d41409974a115e2721fe32cd1c1b8eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a5d41409974a115e2721fe32cd1c1b8eb">TRANSPORT_FROM_PARSING</a>(tp)</td></tr>
+<tr class="separator:a5d41409974a115e2721fe32cd1c1b8eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af36e6925c4b86e9bdea0abf8824d521e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#af36e6925c4b86e9bdea0abf8824d521e">STREAM_FROM_PARSING</a>(sp)&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sp)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, parsing)))</td></tr>
+<tr class="separator:af36e6925c4b86e9bdea0abf8824d521e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a117877f5202f072aa35e7ada0379d0db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a117877f5202f072aa35e7ada0379d0db">grpc_chttp2_list_add_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="memdesc:a117877f5202f072aa35e7ada0379d0db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a writable stream returns non-zero if there was a stream available. <a href="#a117877f5202f072aa35e7ada0379d0db">More...</a><br/></td></tr>
+<tr class="separator:a117877f5202f072aa35e7ada0379d0db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8858ea6e4f6e7c363985793b403a0ac9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a8858ea6e4f6e7c363985793b403a0ac9">grpc_chttp2_list_add_first_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a8858ea6e4f6e7c363985793b403a0ac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeac970afdd6294bac9d1dcb84b702167"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#aeac970afdd6294bac9d1dcb84b702167">grpc_chttp2_list_pop_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing)</td></tr>
+<tr class="separator:aeac970afdd6294bac9d1dcb84b702167"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a789d5bcd10c0f1c7ad2fc32190fd87a0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a789d5bcd10c0f1c7ad2fc32190fd87a0">grpc_chttp2_list_remove_writable_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a789d5bcd10c0f1c7ad2fc32190fd87a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5740bd38b626e875166e60e697e099e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#af5740bd38b626e875166e60e697e099e">grpc_chttp2_list_add_writing_stream</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *stream_writing)</td></tr>
+<tr class="separator:af5740bd38b626e875166e60e697e099e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c7a37cef27c29528850701b9cf772d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a2c7a37cef27c29528850701b9cf772d4">grpc_chttp2_list_have_writing_streams</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing)</td></tr>
+<tr class="separator:a2c7a37cef27c29528850701b9cf772d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba4771272cd49e3012d81c05fad1bdb7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#aba4771272cd49e3012d81c05fad1bdb7">grpc_chttp2_list_pop_writing_stream</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing)</td></tr>
+<tr class="separator:aba4771272cd49e3012d81c05fad1bdb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6b7a089de78b67a9650e42b4a76ac69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#ac6b7a089de78b67a9650e42b4a76ac69">grpc_chttp2_list_add_written_stream</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *stream_writing)</td></tr>
+<tr class="separator:ac6b7a089de78b67a9650e42b4a76ac69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3107afcec2694dd7c7855d540a560090"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a3107afcec2694dd7c7855d540a560090">grpc_chttp2_list_pop_written_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **stream_writing)</td></tr>
+<tr class="separator:a3107afcec2694dd7c7855d540a560090"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a771e6e4a553060bfac71d00b5f866877"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a771e6e4a553060bfac71d00b5f866877">grpc_chttp2_list_add_parsing_seen_stream</a> (<a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing)</td></tr>
+<tr class="separator:a771e6e4a553060bfac71d00b5f866877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d1ec9b2edce465d2fd18002a403878d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a1d1ec9b2edce465d2fd18002a403878d">grpc_chttp2_list_pop_parsing_seen_stream</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **stream_parsing)</td></tr>
+<tr class="separator:a1d1ec9b2edce465d2fd18002a403878d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71d9dea1ff323c374d7ea47818defc2e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a71d9dea1ff323c374d7ea47818defc2e">grpc_chttp2_list_add_waiting_for_concurrency</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a71d9dea1ff323c374d7ea47818defc2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b62b98b415b3984616d4e851f0ff5c0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a6b62b98b415b3984616d4e851f0ff5c0">grpc_chttp2_list_pop_waiting_for_concurrency</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:a6b62b98b415b3984616d4e851f0ff5c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1208f234dcb6b2a73be3c875b2b52907"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a1208f234dcb6b2a73be3c875b2b52907">grpc_chttp2_list_add_closed_waiting_for_parsing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a1208f234dcb6b2a73be3c875b2b52907"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0434ee720b66a5ee51c9904548857af"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#ad0434ee720b66a5ee51c9904548857af">grpc_chttp2_list_pop_closed_waiting_for_parsing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:ad0434ee720b66a5ee51c9904548857af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad26dae5e10a026530f50b133359b3ee2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#ad26dae5e10a026530f50b133359b3ee2">grpc_chttp2_list_add_cancelled_waiting_for_writing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:ad26dae5e10a026530f50b133359b3ee2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2d2a802b9072505d1e6f8bb68727f44"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#ad2d2a802b9072505d1e6f8bb68727f44">grpc_chttp2_list_pop_cancelled_waiting_for_writing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:ad2d2a802b9072505d1e6f8bb68727f44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d99597284d4c0a0bd3cbf102ff415a2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a1d99597284d4c0a0bd3cbf102ff415a2">grpc_chttp2_list_add_incoming_window_updated</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a1d99597284d4c0a0bd3cbf102ff415a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90a6cb6d111a750ab1f28bf4e438bb62"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a90a6cb6d111a750ab1f28bf4e438bb62">grpc_chttp2_list_pop_incoming_window_updated</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **stream_parsing)</td></tr>
+<tr class="separator:a90a6cb6d111a750ab1f28bf4e438bb62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a7f981b74e1e99b0a1afe0c45702d89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a8a7f981b74e1e99b0a1afe0c45702d89">grpc_chttp2_list_remove_incoming_window_updated</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:a8a7f981b74e1e99b0a1afe0c45702d89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b5168e8b96d0bc9f9d84a4cbef653a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#aa6b5168e8b96d0bc9f9d84a4cbef653a">grpc_chttp2_list_add_read_write_state_changed</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)</td></tr>
+<tr class="separator:aa6b5168e8b96d0bc9f9d84a4cbef653a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac9e8165e01d872ed42c0333aee9d31c4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#ac9e8165e01d872ed42c0333aee9d31c4">grpc_chttp2_list_pop_read_write_state_changed</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **stream_global)</td></tr>
+<tr class="separator:ac9e8165e01d872ed42c0333aee9d31c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb6dbbacb57c3f9860e6ec6eca2390e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#accb6dbbacb57c3f9860e6ec6eca2390e">grpc_chttp2_register_stream</a> (<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t, <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *s)</td></tr>
+<tr class="separator:accb6dbbacb57c3f9860e6ec6eca2390e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a096df2132a082f0fcd5b1f8010bf84"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a9a096df2132a082f0fcd5b1f8010bf84">grpc_chttp2_unregister_stream</a> (<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t, <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *s)</td></tr>
+<tr class="separator:a9a096df2132a082f0fcd5b1f8010bf84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19ad8f2b321787a1255a888d5d5923f1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a19ad8f2b321787a1255a888d5d5923f1">grpc_chttp2_has_streams</a> (<a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *t)</td></tr>
+<tr class="separator:a19ad8f2b321787a1255a888d5d5923f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62031f6afc6643cc2f34b4af2d547576"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__lists_8c.html#a62031f6afc6643cc2f34b4af2d547576">grpc_chttp2_for_all_streams</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, void *user_data, void(*cb)(<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, void *user_data, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global))</td></tr>
+<tr class="separator:a62031f6afc6643cc2f34b4af2d547576"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ad226604f0f25167ab63b83fb504925ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STREAM_FROM_GLOBAL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sg</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sg)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, global)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af36e6925c4b86e9bdea0abf8824d521e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STREAM_FROM_PARSING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sp</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sp)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, parsing)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a168549253d875995f6454b6ac5f9250f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define STREAM_FROM_WRITING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">sw</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *)((char *)(sw)-offsetof(<a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>, writing)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a029ef12f8edec2cce810fc244777f39e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_FROM_GLOBAL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tg</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *)((<span class="keywordtype">char</span> *)(tg)-offsetof(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>, \</div>
+<div class="line"> global)))</div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a5d41409974a115e2721fe32cd1c1b8eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_FROM_PARSING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tp</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *)((<span class="keywordtype">char</span> *)(tp)-offsetof(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>, \</div>
+<div class="line"> parsing)))</div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a0cbfd8ced9e04ddc423b7b87abb271ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TRANSPORT_FROM_WRITING</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tw</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *)((<span class="keywordtype">char</span> *)(tw)-offsetof(<a class="code" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a>, \</div>
+<div class="line"> writing)))</div>
+<div class="ttc" id="structgrpc__chttp2__transport_html"><div class="ttname"><a href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a></div><div class="ttdef"><b>Definition:</b> internal.h:283</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a62031f6afc6643cc2f34b4af2d547576"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_for_all_streams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, void *user_data, <a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *stream_global)&#160;</td>
+ <td class="paramname"><em>cb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19ad8f2b321787a1255a888d5d5923f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_has_streams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad26dae5e10a026530f50b133359b3ee2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_cancelled_waiting_for_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1208f234dcb6b2a73be3c875b2b52907"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_closed_waiting_for_parsing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8858ea6e4f6e7c363985793b403a0ac9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_first_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d99597284d4c0a0bd3cbf102ff415a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_incoming_window_updated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a771e6e4a553060bfac71d00b5f866877"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_parsing_seen_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa6b5168e8b96d0bc9f9d84a4cbef653a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_read_write_state_changed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a71d9dea1ff323c374d7ea47818defc2e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_waiting_for_concurrency </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a117877f5202f072aa35e7ada0379d0db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get a writable stream returns non-zero if there was a stream available. </p>
+
+</div>
+</div>
+<a class="anchor" id="af5740bd38b626e875166e60e697e099e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_writing_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac6b7a089de78b67a9650e42b4a76ac69"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_add_written_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> *&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2c7a37cef27c29528850701b9cf772d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_have_writing_streams </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad2d2a802b9072505d1e6f8bb68727f44"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_cancelled_waiting_for_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad0434ee720b66a5ee51c9904548857af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_closed_waiting_for_parsing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90a6cb6d111a750ab1f28bf4e438bb62"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_incoming_window_updated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d1ec9b2edce465d2fd18002a403878d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_parsing_seen_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *&#160;</td>
+ <td class="paramname"><em>transport_parsing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> **&#160;</td>
+ <td class="paramname"><em>stream_parsing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac9e8165e01d872ed42c0333aee9d31c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_read_write_state_changed </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b62b98b415b3984616d4e851f0ff5c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_waiting_for_concurrency </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeac970afdd6294bac9d1dcb84b702167"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba4771272cd49e3012d81c05fad1bdb7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_writing_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3107afcec2694dd7c7855d540a560090"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_list_pop_written_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> **&#160;</td>
+ <td class="paramname"><em>stream_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> **&#160;</td>
+ <td class="paramname"><em>stream_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8a7f981b74e1e99b0a1afe0c45702d89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_remove_incoming_window_updated </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a789d5bcd10c0f1c7ad2fc32190fd87a0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_list_remove_writable_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> *&#160;</td>
+ <td class="paramname"><em>stream_global</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accb6dbbacb57c3f9860e6ec6eca2390e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_register_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9a096df2132a082f0fcd5b1f8010bf84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_unregister_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport.html">grpc_chttp2_transport</a> *&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td>
+ <td class="paramname"><em>s</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__map_8c.html b/doc/ref/core.internal/html/stream__map_8c.html
new file mode 100644
index 0000000000..dd245465dd
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__map_8c.html
@@ -0,0 +1,327 @@
+<!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: src/core/transport/chttp2/stream_map.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_map.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="stream__map_8h_source.html">src/core/transport/chttp2/stream_map.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae18ac039ec6e93e6aa93c3aa6a1b1e4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">grpc_chttp2_stream_map_init</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, size_t initial_capacity)</td></tr>
+<tr class="separator:ae18ac039ec6e93e6aa93c3aa6a1b1e4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad002379073f1a7c545a186fa0498f077"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#ad002379073f1a7c545a186fa0498f077">grpc_chttp2_stream_map_destroy</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map)</td></tr>
+<tr class="separator:ad002379073f1a7c545a186fa0498f077"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45ba47442f3bc9d3b6c6841a6f855560"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#a45ba47442f3bc9d3b6c6841a6f855560">grpc_chttp2_stream_map_add</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a45ba47442f3bc9d3b6c6841a6f855560"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8399a7345ae2a716a1eb7594d6d0aa9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#ac8399a7345ae2a716a1eb7594d6d0aa9">grpc_chttp2_stream_map_move_into</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *src, <a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *dst)</td></tr>
+<tr class="separator:ac8399a7345ae2a716a1eb7594d6d0aa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2236a03f8efe26f8a1a3818bed7844e"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#ab2236a03f8efe26f8a1a3818bed7844e">grpc_chttp2_stream_map_delete</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>)</td></tr>
+<tr class="separator:ab2236a03f8efe26f8a1a3818bed7844e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdc9ffa6b3f22fc039ab6457a18e3fd4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">grpc_chttp2_stream_map_find</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>)</td></tr>
+<tr class="separator:abdc9ffa6b3f22fc039ab6457a18e3fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f3f7360b053c5507b8bd792ba7e9e85"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#a9f3f7360b053c5507b8bd792ba7e9e85">grpc_chttp2_stream_map_size</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map)</td></tr>
+<tr class="separator:a9f3f7360b053c5507b8bd792ba7e9e85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a113657d2ad2cdffe3d9d00fe30996aa3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8c.html#a113657d2ad2cdffe3d9d00fe30996aa3">grpc_chttp2_stream_map_for_each</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, void(*f)(void *user_data, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>), void *user_data)</td></tr>
+<tr class="separator:a113657d2ad2cdffe3d9d00fe30996aa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a45ba47442f3bc9d3b6c6841a6f855560"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2236a03f8efe26f8a1a3818bed7844e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_stream_map_delete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad002379073f1a7c545a186fa0498f077"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abdc9ffa6b3f22fc039ab6457a18e3fd4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_stream_map_find </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a113657d2ad2cdffe3d9d00fe30996aa3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_for_each </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *user_data, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)&#160;</td>
+ <td class="paramname"><em>f</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae18ac039ec6e93e6aa93c3aa6a1b1e4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>initial_capacity</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac8399a7345ae2a716a1eb7594d6d0aa9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_move_into </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9f3f7360b053c5507b8bd792ba7e9e85"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_stream_map_size </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__map_8h.html b/doc/ref/core.internal/html/stream__map_8h.html
new file mode 100644
index 0000000000..f0ebeb4d60
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__map_8h.html
@@ -0,0 +1,332 @@
+<!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: src/core/transport/chttp2/stream_map.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_map.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+</div>
+<p><a href="stream__map_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ae18ac039ec6e93e6aa93c3aa6a1b1e4d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">grpc_chttp2_stream_map_init</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, size_t initial_capacity)</td></tr>
+<tr class="separator:ae18ac039ec6e93e6aa93c3aa6a1b1e4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad002379073f1a7c545a186fa0498f077"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#ad002379073f1a7c545a186fa0498f077">grpc_chttp2_stream_map_destroy</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map)</td></tr>
+<tr class="separator:ad002379073f1a7c545a186fa0498f077"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45ba47442f3bc9d3b6c6841a6f855560"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560">grpc_chttp2_stream_map_add</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a45ba47442f3bc9d3b6c6841a6f855560"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2236a03f8efe26f8a1a3818bed7844e"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e">grpc_chttp2_stream_map_delete</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>)</td></tr>
+<tr class="separator:ab2236a03f8efe26f8a1a3818bed7844e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8399a7345ae2a716a1eb7594d6d0aa9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9">grpc_chttp2_stream_map_move_into</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *src, <a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *dst)</td></tr>
+<tr class="separator:ac8399a7345ae2a716a1eb7594d6d0aa9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abdc9ffa6b3f22fc039ab6457a18e3fd4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">grpc_chttp2_stream_map_find</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>)</td></tr>
+<tr class="separator:abdc9ffa6b3f22fc039ab6457a18e3fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f3f7360b053c5507b8bd792ba7e9e85"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85">grpc_chttp2_stream_map_size</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map)</td></tr>
+<tr class="separator:a9f3f7360b053c5507b8bd792ba7e9e85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a113657d2ad2cdffe3d9d00fe30996aa3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3">grpc_chttp2_stream_map_for_each</a> (<a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, void(*f)(void *user_data, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>), void *user_data)</td></tr>
+<tr class="separator:a113657d2ad2cdffe3d9d00fe30996aa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a45ba47442f3bc9d3b6c6841a6f855560"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2236a03f8efe26f8a1a3818bed7844e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_stream_map_delete </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad002379073f1a7c545a186fa0498f077"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abdc9ffa6b3f22fc039ab6457a18e3fd4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_stream_map_find </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>key</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a113657d2ad2cdffe3d9d00fe30996aa3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_for_each </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *user_data, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)&#160;</td>
+ <td class="paramname"><em>f</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae18ac039ec6e93e6aa93c3aa6a1b1e4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>initial_capacity</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac8399a7345ae2a716a1eb7594d6d0aa9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_stream_map_move_into </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9f3f7360b053c5507b8bd792ba7e9e85"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_stream_map_size </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *&#160;</td>
+ <td class="paramname"><em>map</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__map_8h_source.html b/doc/ref/core.internal/html/stream__map_8h_source.html
new file mode 100644
index 0000000000..cdf42f48bd
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__map_8h_source.html
@@ -0,0 +1,202 @@
+<!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: src/core/transport/chttp2/stream_map.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">stream_map.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="stream__map_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STREAM_MAP_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STREAM_MAP_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* Data structure to map a gpr_uint32 to a data object (represented by a void*)</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> Represented as a sorted array of keys, and a corresponding array of values.</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> Lookups are performed with binary search.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> Adds are restricted to strictly higher keys than previously seen (this is</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> guaranteed by http2). */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__map.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6"> 48</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *<a class="code" href="structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6">keys</a>;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824"> 49</a></span>&#160; <span class="keywordtype">void</span> **<a class="code" href="structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824">values</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8"> 50</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8">count</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece"> 51</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece">free</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef"> 52</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef">capacity</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;} <a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">grpc_chttp2_stream_map_init</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">size_t</span> initial_capacity);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__map_8h.html#ad002379073f1a7c545a186fa0498f077">grpc_chttp2_stream_map_destroy</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment">/* Add a new key: given http2 semantics, new keys must always be greater than</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> existing keys - this is asserted */</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560">grpc_chttp2_stream_map_add</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">void</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Delete an existing key - returns the previous value of the key if it existed,</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> or NULL otherwise */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e">grpc_chttp2_stream_map_delete</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Move all elements of src into dst */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9">grpc_chttp2_stream_map_move_into</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *src,</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *dst);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/* Return an existing key, or NULL if it does not exist */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">grpc_chttp2_stream_map_find</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* How many (populated) entries are in the stream map? */</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85">grpc_chttp2_stream_map_size</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">/* Callback on each stream */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3">grpc_chttp2_stream_map_for_each</a>(<a class="code" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> *map,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">void</span> (*f)(<span class="keywordtype">void</span> *user_data, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">void</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>),</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_STREAM_MAP_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a></div><div class="ttdef"><b>Definition:</b> stream_map.h:47</div></div>
+<div class="ttc" id="stream__map_8h_html_ac8399a7345ae2a716a1eb7594d6d0aa9"><div class="ttname"><a href="stream__map_8h.html#ac8399a7345ae2a716a1eb7594d6d0aa9">grpc_chttp2_stream_map_move_into</a></div><div class="ttdeci">void grpc_chttp2_stream_map_move_into(grpc_chttp2_stream_map *src, grpc_chttp2_stream_map *dst)</div><div class="ttdef"><b>Definition:</b> stream_map.c:99</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html_a30c8c72cf07b6c0c0970e8ecb54c1ac8"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8">grpc_chttp2_stream_map::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> stream_map.h:50</div></div>
+<div class="ttc" id="stream__map_8h_html_ae18ac039ec6e93e6aa93c3aa6a1b1e4d"><div class="ttname"><a href="stream__map_8h.html#ae18ac039ec6e93e6aa93c3aa6a1b1e4d">grpc_chttp2_stream_map_init</a></div><div class="ttdeci">void grpc_chttp2_stream_map_init(grpc_chttp2_stream_map *map, size_t initial_capacity)</div><div class="ttdef"><b>Definition:</b> stream_map.c:42</div></div>
+<div class="ttc" id="stream__map_8h_html_abdc9ffa6b3f22fc039ab6457a18e3fd4"><div class="ttname"><a href="stream__map_8h.html#abdc9ffa6b3f22fc039ab6457a18e3fd4">grpc_chttp2_stream_map_find</a></div><div class="ttdeci">void * grpc_chttp2_stream_map_find(grpc_chttp2_stream_map *map, gpr_uint32 key)</div><div class="ttdef"><b>Definition:</b> stream_map.c:178</div></div>
+<div class="ttc" id="stream__map_8h_html_ab2236a03f8efe26f8a1a3818bed7844e"><div class="ttname"><a href="stream__map_8h.html#ab2236a03f8efe26f8a1a3818bed7844e">grpc_chttp2_stream_map_delete</a></div><div class="ttdeci">void * grpc_chttp2_stream_map_delete(grpc_chttp2_stream_map *map, gpr_uint32 key)</div><div class="ttdef"><b>Definition:</b> stream_map.c:161</div></div>
+<div class="ttc" id="stream__map_8h_html_a45ba47442f3bc9d3b6c6841a6f855560"><div class="ttname"><a href="stream__map_8h.html#a45ba47442f3bc9d3b6c6841a6f855560">grpc_chttp2_stream_map_add</a></div><div class="ttdeci">void grpc_chttp2_stream_map_add(grpc_chttp2_stream_map *map, gpr_uint32 key, void *value)</div><div class="ttdef"><b>Definition:</b> stream_map.c:71</div></div>
+<div class="ttc" id="stream__map_8h_html_ad002379073f1a7c545a186fa0498f077"><div class="ttname"><a href="stream__map_8h.html#ad002379073f1a7c545a186fa0498f077">grpc_chttp2_stream_map_destroy</a></div><div class="ttdeci">void grpc_chttp2_stream_map_destroy(grpc_chttp2_stream_map *map)</div><div class="ttdef"><b>Definition:</b> stream_map.c:52</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html_a8e3dfe8b74da93be4d32197725bb4ece"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece">grpc_chttp2_stream_map::free</a></div><div class="ttdeci">size_t free</div><div class="ttdef"><b>Definition:</b> stream_map.h:51</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html_a3c6cf5f3722e7931c5b7ebe09a1ec824"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824">grpc_chttp2_stream_map::values</a></div><div class="ttdeci">void ** values</div><div class="ttdef"><b>Definition:</b> stream_map.h:49</div></div>
+<div class="ttc" id="stream__map_8h_html_a113657d2ad2cdffe3d9d00fe30996aa3"><div class="ttname"><a href="stream__map_8h.html#a113657d2ad2cdffe3d9d00fe30996aa3">grpc_chttp2_stream_map_for_each</a></div><div class="ttdeci">void grpc_chttp2_stream_map_for_each(grpc_chttp2_stream_map *map, void(*f)(void *user_data, gpr_uint32 key, void *value), void *user_data)</div><div class="ttdef"><b>Definition:</b> stream_map.c:187</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html_acf47fcc774eb5ea9c07f3c7b57179be6"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6">grpc_chttp2_stream_map::keys</a></div><div class="ttdeci">gpr_uint32 * keys</div><div class="ttdef"><b>Definition:</b> stream_map.h:48</div></div>
+<div class="ttc" id="hpack__table_8c_html_acd3d88da3c0e0313c3645ff34f62f542"><div class="ttname"><a href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a></div><div class="ttdeci">const char * key</div><div class="ttdef"><b>Definition:</b> hpack_table.c:43</div></div>
+<div class="ttc" id="structgrpc__chttp2__stream__map_html_a104df65d0beac0c3f27d8823b0ff59ef"><div class="ttname"><a href="structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef">grpc_chttp2_stream_map::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> stream_map.h:52</div></div>
+<div class="ttc" id="stream__map_8h_html_a9f3f7360b053c5507b8bd792ba7e9e85"><div class="ttname"><a href="stream__map_8h.html#a9f3f7360b053c5507b8bd792ba7e9e85">grpc_chttp2_stream_map_size</a></div><div class="ttdeci">size_t grpc_chttp2_stream_map_size(grpc_chttp2_stream_map *map)</div><div class="ttdef"><b>Definition:</b> stream_map.c:183</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/stream__op_8c.html b/doc/ref/core.internal/html/stream__op_8c.html
new file mode 100644
index 0000000000..38245540a1
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__op_8c.html
@@ -0,0 +1,705 @@
+<!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: src/core/transport/stream_op.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_op.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="stream__op_8h_source.html">src/core/transport/stream_op.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a886cd1bc8d999f1eca35adda926045dc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a886cd1bc8d999f1eca35adda926045dc">GROW</a>(x)&#160;&#160;&#160;(3 * (x) / 2)</td></tr>
+<tr class="separator:a886cd1bc8d999f1eca35adda926045dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac06c5c016030ab760ce1c190ea9c0935"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#ac06c5c016030ab760ce1c190ea9c0935">grpc_sopb_init</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:ac06c5c016030ab760ce1c190ea9c0935"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef34bb8bc5d02c10304fa93de76604d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#aef34bb8bc5d02c10304fa93de76604d1">grpc_sopb_destroy</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:aef34bb8bc5d02c10304fa93de76604d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ee9a1ac0aaa49250f4e6cbc78a88b8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">grpc_sopb_reset</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:a9ee9a1ac0aaa49250f4e6cbc78a88b8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cb541de7ea2c0e11ab9bc199fd6eeeb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">grpc_sopb_swap</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *a, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *b)</td></tr>
+<tr class="separator:a2cb541de7ea2c0e11ab9bc199fd6eeeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af06b21376669ed6bf358f50a57e02d9d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#af06b21376669ed6bf358f50a57e02d9d">grpc_stream_ops_unref_owned_objects</a> (<a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, size_t nops)</td></tr>
+<tr class="separator:af06b21376669ed6bf358f50a57e02d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe45d7a6778fc0e248e490dfb635d850"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#abe45d7a6778fc0e248e490dfb635d850">grpc_sopb_add_no_op</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:abe45d7a6778fc0e248e490dfb635d850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b1565cc1ec9aba1eef5c21318e088b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a6b1565cc1ec9aba1eef5c21318e088b9">grpc_sopb_add_begin_message</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags)</td></tr>
+<tr class="separator:a6b1565cc1ec9aba1eef5c21318e088b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea2cbf38a752864f62dc8d2cdc58a50a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#aea2cbf38a752864f62dc8d2cdc58a50a">grpc_sopb_add_metadata</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> b)</td></tr>
+<tr class="separator:aea2cbf38a752864f62dc8d2cdc58a50a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2a412545fb6bb4055f3437f1d261f69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#aa2a412545fb6bb4055f3437f1d261f69">grpc_sopb_add_slice</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:aa2a412545fb6bb4055f3437f1d261f69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55100e31b3cc23733ba42bb5e2f38818"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a55100e31b3cc23733ba42bb5e2f38818">grpc_sopb_append</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, size_t nops)</td></tr>
+<tr class="separator:a55100e31b3cc23733ba42bb5e2f38818"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf812a361634fee304b636fccde7c934"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#abf812a361634fee304b636fccde7c934">grpc_sopb_move_to</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *src, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *dst)</td></tr>
+<tr class="separator:abf812a361634fee304b636fccde7c934"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5107cb817e5019fc9f9e7fdd99e54c0e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a5107cb817e5019fc9f9e7fdd99e54c0e">grpc_metadata_batch_assert_ok</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch)</td></tr>
+<tr class="separator:a5107cb817e5019fc9f9e7fdd99e54c0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56d5ee4a6e415827935accfe449dc770"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a56d5ee4a6e415827935accfe449dc770">grpc_metadata_batch_init</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch)</td></tr>
+<tr class="separator:a56d5ee4a6e415827935accfe449dc770"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc4867b9d7a952f003c5494120b59c08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#afc4867b9d7a952f003c5494120b59c08">grpc_metadata_batch_destroy</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch)</td></tr>
+<tr class="separator:afc4867b9d7a952f003c5494120b59c08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a845453663a8db6cd2624ed92d63b2003"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a845453663a8db6cd2624ed92d63b2003">grpc_metadata_batch_add_head</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem_to_add)</td></tr>
+<tr class="memdesc:a845453663a8db6cd2624ed92d63b2003"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>elem_to_add</em> as the first element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. <a href="#a845453663a8db6cd2624ed92d63b2003">More...</a><br/></td></tr>
+<tr class="separator:a845453663a8db6cd2624ed92d63b2003"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c6af9205b51577ab879b07d9954d32b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a8c6af9205b51577ab879b07d9954d32b">grpc_metadata_batch_link_head</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage)</td></tr>
+<tr class="memdesc:a8c6af9205b51577ab879b07d9954d32b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>storage</em> to the beginning of <em>batch</em>. <a href="#a8c6af9205b51577ab879b07d9954d32b">More...</a><br/></td></tr>
+<tr class="separator:a8c6af9205b51577ab879b07d9954d32b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31f318cbb2f1fdb6372fdc4891e74d01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a31f318cbb2f1fdb6372fdc4891e74d01">grpc_metadata_batch_add_tail</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem_to_add)</td></tr>
+<tr class="memdesc:a31f318cbb2f1fdb6372fdc4891e74d01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>elem_to_add</em> as the last element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. <a href="#a31f318cbb2f1fdb6372fdc4891e74d01">More...</a><br/></td></tr>
+<tr class="separator:a31f318cbb2f1fdb6372fdc4891e74d01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a07ac989d86142e60bd17525f7f509e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a6a07ac989d86142e60bd17525f7f509e">grpc_metadata_batch_link_tail</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage)</td></tr>
+<tr class="memdesc:a6a07ac989d86142e60bd17525f7f509e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>storage</em> to the end of <em>batch</em>. <a href="#a6a07ac989d86142e60bd17525f7f509e">More...</a><br/></td></tr>
+<tr class="separator:a6a07ac989d86142e60bd17525f7f509e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf6ee05d9443f295076015da3428f12a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#adf6ee05d9443f295076015da3428f12a">grpc_metadata_batch_merge</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *target, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *add)</td></tr>
+<tr class="separator:adf6ee05d9443f295076015da3428f12a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a719845dfd6b62fb62a75d9776396154e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a719845dfd6b62fb62a75d9776396154e">grpc_metadata_batch_move</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *dst, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *src)</td></tr>
+<tr class="memdesc:a719845dfd6b62fb62a75d9776396154e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves the metadata information from <em>src</em> to <em>dst</em>. <a href="#a719845dfd6b62fb62a75d9776396154e">More...</a><br/></td></tr>
+<tr class="separator:a719845dfd6b62fb62a75d9776396154e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a754411d9f54fc8762416abf0c148afcf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8c.html#a754411d9f54fc8762416abf0c148afcf">grpc_metadata_batch_filter</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *(*filter)(void *user_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem), void *user_data)</td></tr>
+<tr class="memdesc:a754411d9f54fc8762416abf0c148afcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">For each element in <em>batch</em>, execute <em>filter</em>. <a href="#a754411d9f54fc8762416abf0c148afcf">More...</a><br/></td></tr>
+<tr class="separator:a754411d9f54fc8762416abf0c148afcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a886cd1bc8d999f1eca35adda926045dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GROW</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td>&#160;&#160;&#160;(3 * (x) / 2)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a845453663a8db6cd2624ed92d63b2003"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_add_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem_to_add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>elem_to_add</em> as the first element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. </p>
+<p><em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. Takes ownership of <em>elem_to_add</em> </p>
+
+</div>
+</div>
+<a class="anchor" id="a31f318cbb2f1fdb6372fdc4891e74d01"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_add_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem_to_add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>elem_to_add</em> as the last element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. </p>
+<p><em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. Takes ownership of <em>elem_to_add</em> </p>
+
+</div>
+</div>
+<a class="anchor" id="a5107cb817e5019fc9f9e7fdd99e54c0e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_assert_ok </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc4867b9d7a952f003c5494120b59c08"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a754411d9f54fc8762416abf0c148afcf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_filter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *(*)(void *user_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem)&#160;</td>
+ <td class="paramname"><em>filter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>For each element in <em>batch</em>, execute <em>filter</em>. </p>
+<p>The return value from <em>filter</em> will be substituted for the <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> passed to <em>filter</em>. If <em>filter</em> returns NULL, the element will be moved to the garbage list. </p>
+
+</div>
+</div>
+<a class="anchor" id="a56d5ee4a6e415827935accfe449dc770"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c6af9205b51577ab879b07d9954d32b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_link_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>storage</em> to the beginning of <em>batch</em>. </p>
+<p>storage-&gt;md is assumed to be valid. <em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6a07ac989d86142e60bd17525f7f509e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_link_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>storage</em> to the end of <em>batch</em>. </p>
+<p>storage-&gt;md is assumed to be valid. <em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. </p>
+
+</div>
+</div>
+<a class="anchor" id="adf6ee05d9443f295076015da3428f12a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_merge </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a719845dfd6b62fb62a75d9776396154e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_move </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>src</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Moves the metadata information from <em>src</em> to <em>dst</em>. </p>
+<p>Upon return, <em>src</em> is zeroed. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6b1565cc1ec9aba1eef5c21318e088b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_begin_message </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea2cbf38a752864f62dc8d2cdc58a50a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_metadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abe45d7a6778fc0e248e490dfb635d850"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_no_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2a412545fb6bb4055f3437f1d261f69"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_slice </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a55100e31b3cc23733ba42bb5e2f38818"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_append </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef34bb8bc5d02c10304fa93de76604d1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac06c5c016030ab760ce1c190ea9c0935"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf812a361634fee304b636fccde7c934"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_move_to </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ee9a1ac0aaa49250f4e6cbc78a88b8e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_reset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2cb541de7ea2c0e11ab9bc199fd6eeeb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_swap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af06b21376669ed6bf358f50a57e02d9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_stream_ops_unref_owned_objects </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__op_8h.html b/doc/ref/core.internal/html/stream__op_8h.html
new file mode 100644
index 0000000000..322db2970f
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__op_8h.html
@@ -0,0 +1,913 @@
+<!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: src/core/transport/stream_op.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">stream_op.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="metadata_8h_source.html">src/core/transport/metadata.h</a>&quot;</code><br/>
+</div>
+<p><a href="stream__op_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A stream op buffer is a wrapper around stream operations that is dynamically extendable. <a href="structgrpc__stream__op__buffer.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a3fc30a237ae8cb1eb4b9925a1835b8ca"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca">GRPC_SOPB_INLINE_ELEMENTS</a>&#160;&#160;&#160;4</td></tr>
+<tr class="separator:a3fc30a237ae8cb1eb4b9925a1835b8ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d51ace7a6bdbf212ee6843952977c35"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35">GRPC_WRITE_INTERNAL_COMPRESS</a>&#160;&#160;&#160;(0x80000000u)</td></tr>
+<tr class="memdesc:a9d51ace7a6bdbf212ee6843952977c35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal bit flag for <a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a>'s <em>flags</em> signaling the use of compression for the message. <a href="#a9d51ace7a6bdbf212ee6843952977c35">More...</a><br/></td></tr>
+<tr class="separator:a9d51ace7a6bdbf212ee6843952977c35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7acab698fedc01eca6138c3e30056ff1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a7acab698fedc01eca6138c3e30056ff1">GRPC_WRITE_INTERNAL_USED_MASK</a>&#160;&#160;&#160;(<a class="el" href="stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35">GRPC_WRITE_INTERNAL_COMPRESS</a>)</td></tr>
+<tr class="memdesc:a7acab698fedc01eca6138c3e30056ff1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mask of all valid internal flags. <a href="#a7acab698fedc01eca6138c3e30056ff1">More...</a><br/></td></tr>
+<tr class="separator:a7acab698fedc01eca6138c3e30056ff1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aae7f77961eb1741340666865ab0c5fc7"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#aae7f77961eb1741340666865ab0c5fc7">grpc_stream_op_code</a></td></tr>
+<tr class="separator:aae7f77961eb1741340666865ab0c5fc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d154e209d826dcf514850c6724d3596"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a6d154e209d826dcf514850c6724d3596">grpc_begin_message</a></td></tr>
+<tr class="separator:a6d154e209d826dcf514850c6724d3596"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abebf5d5730a7a3aeaf9d6ee5436ddfa2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2">grpc_linked_mdelem</a></td></tr>
+<tr class="separator:abebf5d5730a7a3aeaf9d6ee5436ddfa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2b8aff92cbac9a99f3ad263613078e2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2">grpc_mdelem_list</a></td></tr>
+<tr class="separator:ae2b8aff92cbac9a99f3ad263613078e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3025731d8e4db9ecd7eb46d10f613410"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410">grpc_metadata_batch</a></td></tr>
+<tr class="separator:a3025731d8e4db9ecd7eb46d10f613410"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca8c5433826e85b51970530c1c8ce127"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127">grpc_stream_op</a></td></tr>
+<tr class="separator:aca8c5433826e85b51970530c1c8ce127"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1adfdd2ef9e01a35217bb00ca27c48c5"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5">grpc_stream_op_buffer</a></td></tr>
+<tr class="memdesc:a1adfdd2ef9e01a35217bb00ca27c48c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">A stream op buffer is a wrapper around stream operations that is dynamically extendable. <a href="#a1adfdd2ef9e01a35217bb00ca27c48c5">More...</a><br/></td></tr>
+<tr class="separator:a1adfdd2ef9e01a35217bb00ca27c48c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:af16e06eb1edfe4d93509276f32ed3804"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a> { <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c">GRPC_NO_OP</a>,
+<a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317">GRPC_OP_METADATA</a>,
+<a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31">GRPC_OP_BEGIN_MESSAGE</a>,
+<a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6">GRPC_OP_SLICE</a>
+ }</td></tr>
+<tr class="separator:af16e06eb1edfe4d93509276f32ed3804"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a56d5ee4a6e415827935accfe449dc770"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770">grpc_metadata_batch_init</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch)</td></tr>
+<tr class="separator:a56d5ee4a6e415827935accfe449dc770"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc4867b9d7a952f003c5494120b59c08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08">grpc_metadata_batch_destroy</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch)</td></tr>
+<tr class="separator:afc4867b9d7a952f003c5494120b59c08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf6ee05d9443f295076015da3428f12a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#adf6ee05d9443f295076015da3428f12a">grpc_metadata_batch_merge</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *target, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *add)</td></tr>
+<tr class="separator:adf6ee05d9443f295076015da3428f12a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a719845dfd6b62fb62a75d9776396154e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e">grpc_metadata_batch_move</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *dst, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *src)</td></tr>
+<tr class="memdesc:a719845dfd6b62fb62a75d9776396154e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves the metadata information from <em>src</em> to <em>dst</em>. <a href="#a719845dfd6b62fb62a75d9776396154e">More...</a><br/></td></tr>
+<tr class="separator:a719845dfd6b62fb62a75d9776396154e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c6af9205b51577ab879b07d9954d32b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b">grpc_metadata_batch_link_head</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage)</td></tr>
+<tr class="memdesc:a8c6af9205b51577ab879b07d9954d32b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>storage</em> to the beginning of <em>batch</em>. <a href="#a8c6af9205b51577ab879b07d9954d32b">More...</a><br/></td></tr>
+<tr class="separator:a8c6af9205b51577ab879b07d9954d32b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a07ac989d86142e60bd17525f7f509e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e">grpc_metadata_batch_link_tail</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage)</td></tr>
+<tr class="memdesc:a6a07ac989d86142e60bd17525f7f509e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>storage</em> to the end of <em>batch</em>. <a href="#a6a07ac989d86142e60bd17525f7f509e">More...</a><br/></td></tr>
+<tr class="separator:a6a07ac989d86142e60bd17525f7f509e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a845453663a8db6cd2624ed92d63b2003"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003">grpc_metadata_batch_add_head</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem_to_add)</td></tr>
+<tr class="memdesc:a845453663a8db6cd2624ed92d63b2003"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>elem_to_add</em> as the first element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. <a href="#a845453663a8db6cd2624ed92d63b2003">More...</a><br/></td></tr>
+<tr class="separator:a845453663a8db6cd2624ed92d63b2003"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31f318cbb2f1fdb6372fdc4891e74d01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01">grpc_metadata_batch_add_tail</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem_to_add)</td></tr>
+<tr class="memdesc:a31f318cbb2f1fdb6372fdc4891e74d01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add <em>elem_to_add</em> as the last element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. <a href="#a31f318cbb2f1fdb6372fdc4891e74d01">More...</a><br/></td></tr>
+<tr class="separator:a31f318cbb2f1fdb6372fdc4891e74d01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a754411d9f54fc8762416abf0c148afcf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf">grpc_metadata_batch_filter</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *(*filter)(void *user_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem), void *user_data)</td></tr>
+<tr class="memdesc:a754411d9f54fc8762416abf0c148afcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">For each element in <em>batch</em>, execute <em>filter</em>. <a href="#a754411d9f54fc8762416abf0c148afcf">More...</a><br/></td></tr>
+<tr class="separator:a754411d9f54fc8762416abf0c148afcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a64e7ada80969b3d280529a5362505a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a">grpc_metadata_batch_assert_ok</a> (<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *comd)</td></tr>
+<tr class="separator:a3a64e7ada80969b3d280529a5362505a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac06c5c016030ab760ce1c190ea9c0935"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935">grpc_sopb_init</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:ac06c5c016030ab760ce1c190ea9c0935"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef34bb8bc5d02c10304fa93de76604d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1">grpc_sopb_destroy</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:aef34bb8bc5d02c10304fa93de76604d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ee9a1ac0aaa49250f4e6cbc78a88b8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">grpc_sopb_reset</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:a9ee9a1ac0aaa49250f4e6cbc78a88b8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cb541de7ea2c0e11ab9bc199fd6eeeb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">grpc_sopb_swap</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *a, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *b)</td></tr>
+<tr class="separator:a2cb541de7ea2c0e11ab9bc199fd6eeeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af06b21376669ed6bf358f50a57e02d9d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d">grpc_stream_ops_unref_owned_objects</a> (<a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, size_t nops)</td></tr>
+<tr class="separator:af06b21376669ed6bf358f50a57e02d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe45d7a6778fc0e248e490dfb635d850"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850">grpc_sopb_add_no_op</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:abe45d7a6778fc0e248e490dfb635d850"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b1565cc1ec9aba1eef5c21318e088b9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9">grpc_sopb_add_begin_message</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags)</td></tr>
+<tr class="separator:a6b1565cc1ec9aba1eef5c21318e088b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73441361d99158dbb24302cd0c8f4abb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb">grpc_sopb_add_metadata</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> metadata)</td></tr>
+<tr class="separator:a73441361d99158dbb24302cd0c8f4abb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2a412545fb6bb4055f3437f1d261f69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69">grpc_sopb_add_slice</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice)</td></tr>
+<tr class="separator:aa2a412545fb6bb4055f3437f1d261f69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55100e31b3cc23733ba42bb5e2f38818"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818">grpc_sopb_append</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, size_t nops)</td></tr>
+<tr class="separator:a55100e31b3cc23733ba42bb5e2f38818"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf812a361634fee304b636fccde7c934"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#abf812a361634fee304b636fccde7c934">grpc_sopb_move_to</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *src, <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *dst)</td></tr>
+<tr class="separator:abf812a361634fee304b636fccde7c934"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a225a70176577da4097ecad0b8c647fee"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream__op_8h.html#a225a70176577da4097ecad0b8c647fee">grpc_sopb_string</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:a225a70176577da4097ecad0b8c647fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a3fc30a237ae8cb1eb4b9925a1835b8ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SOPB_INLINE_ELEMENTS&#160;&#160;&#160;4</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9d51ace7a6bdbf212ee6843952977c35"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_WRITE_INTERNAL_COMPRESS&#160;&#160;&#160;(0x80000000u)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Internal bit flag for <a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a>'s <em>flags</em> signaling the use of compression for the message. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7acab698fedc01eca6138c3e30056ff1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_WRITE_INTERNAL_USED_MASK&#160;&#160;&#160;(<a class="el" href="stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35">GRPC_WRITE_INTERNAL_COMPRESS</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Mask of all valid internal flags. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a6d154e209d826dcf514850c6724d3596"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a> <a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abebf5d5730a7a3aeaf9d6ee5436ddfa2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae2b8aff92cbac9a99f3ad263613078e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a> <a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3025731d8e4db9ecd7eb46d10f613410"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aca8c5433826e85b51970530c1c8ce127"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> <a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1adfdd2ef9e01a35217bb00ca27c48c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> <a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A stream op buffer is a wrapper around stream operations that is dynamically extendable. </p>
+
+</div>
+</div>
+<a class="anchor" id="aae7f77961eb1741340666865ab0c5fc7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a> <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="af16e06eb1edfe4d93509276f32ed3804"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c"></a>GRPC_NO_OP</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317"></a>GRPC_OP_METADATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31"></a>GRPC_OP_BEGIN_MESSAGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6"></a>GRPC_OP_SLICE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a845453663a8db6cd2624ed92d63b2003"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_add_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem_to_add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>elem_to_add</em> as the first element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. </p>
+<p><em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. Takes ownership of <em>elem_to_add</em> </p>
+
+</div>
+</div>
+<a class="anchor" id="a31f318cbb2f1fdb6372fdc4891e74d01"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_add_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>elem_to_add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>elem_to_add</em> as the last element in <em>batch</em>, using <em>storage</em> as backing storage for the linked list element. </p>
+<p><em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. Takes ownership of <em>elem_to_add</em> </p>
+
+</div>
+</div>
+<a class="anchor" id="a3a64e7ada80969b3d280529a5362505a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_assert_ok </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>comd</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc4867b9d7a952f003c5494120b59c08"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a754411d9f54fc8762416abf0c148afcf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_filter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *(*)(void *user_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem)&#160;</td>
+ <td class="paramname"><em>filter</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>user_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>For each element in <em>batch</em>, execute <em>filter</em>. </p>
+<p>The return value from <em>filter</em> will be substituted for the <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> passed to <em>filter</em>. If <em>filter</em> returns NULL, the element will be moved to the garbage list. </p>
+
+</div>
+</div>
+<a class="anchor" id="a56d5ee4a6e415827935accfe449dc770"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c6af9205b51577ab879b07d9954d32b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_link_head </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>storage</em> to the beginning of <em>batch</em>. </p>
+<p>storage-&gt;md is assumed to be valid. <em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6a07ac989d86142e60bd17525f7f509e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_link_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>batch</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td>
+ <td class="paramname"><em>storage</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Add <em>storage</em> to the end of <em>batch</em>. </p>
+<p>storage-&gt;md is assumed to be valid. <em>storage</em> is owned by the caller and must survive for the lifetime of batch. This usually means it should be around for the lifetime of the call. </p>
+
+</div>
+</div>
+<a class="anchor" id="adf6ee05d9443f295076015da3428f12a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_merge </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a719845dfd6b62fb62a75d9776396154e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_metadata_batch_move </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *&#160;</td>
+ <td class="paramname"><em>src</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Moves the metadata information from <em>src</em> to <em>dst</em>. </p>
+<p>Upon return, <em>src</em> is zeroed. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6b1565cc1ec9aba1eef5c21318e088b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_begin_message </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a73441361d99158dbb24302cd0c8f4abb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_metadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a>&#160;</td>
+ <td class="paramname"><em>metadata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abe45d7a6778fc0e248e490dfb635d850"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_no_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2a412545fb6bb4055f3437f1d261f69"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_add_slice </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a55100e31b3cc23733ba42bb5e2f38818"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_append </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef34bb8bc5d02c10304fa93de76604d1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac06c5c016030ab760ce1c190ea9c0935"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf812a361634fee304b636fccde7c934"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_move_to </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>src</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ee9a1ac0aaa49250f4e6cbc78a88b8e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_reset </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a225a70176577da4097ecad0b8c647fee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_sopb_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2cb541de7ea2c0e11ab9bc199fd6eeeb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_sopb_swap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af06b21376669ed6bf358f50a57e02d9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_stream_ops_unref_owned_objects </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/stream__op_8h_source.html b/doc/ref/core.internal/html/stream__op_8h_source.html
new file mode 100644
index 0000000000..08c2217bd1
--- /dev/null
+++ b/doc/ref/core.internal/html/stream__op_8h_source.html
@@ -0,0 +1,339 @@
+<!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: src/core/transport/stream_op.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">stream_op.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="stream__op_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_STREAM_OP_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_STREAM_OP_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_8h.html">grpc/grpc.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="metadata_8h.html">src/core/transport/metadata.h</a>&quot;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* this many stream ops are inlined into a sopb before allocating */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca"> 44</a></span>&#160;<span class="preprocessor">#define GRPC_SOPB_INLINE_ELEMENTS 4</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">/* Operations that can be performed on a stream.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> Used by grpc_stream_op. */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804"> 48</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* Do nothing code. Useful if rewriting a batch to exclude some operations.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> Must be ignored by receivers */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c"> 51</a></span>&#160; <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c">GRPC_NO_OP</a>,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317"> 52</a></span>&#160; <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317">GRPC_OP_METADATA</a>,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">/* Begin a message/metadata element/status - as defined by</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> grpc_message_type. */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31"> 55</a></span>&#160; <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31">GRPC_OP_BEGIN_MESSAGE</a>,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">/* Add a slice of data to the current message/metadata element/status.</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> Must not overflow the forward declared length. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6"> 58</a></span>&#160; <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6">GRPC_OP_SLICE</a></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;} <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="stream__op_8h.html#a9d51ace7a6bdbf212ee6843952977c35"> 63</a></span>&#160;<span class="preprocessor">#define GRPC_WRITE_INTERNAL_COMPRESS (0x80000000u)</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="stream__op_8h.html#a7acab698fedc01eca6138c3e30056ff1"> 65</a></span>&#160;<span class="preprocessor">#define GRPC_WRITE_INTERNAL_USED_MASK (GRPC_WRITE_INTERNAL_COMPRESS)</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment">/* Arguments for GRPC_OP_BEGIN_MESSAGE */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc__begin__message.html"> 68</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__begin__message.html">grpc_begin_message</a> {</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">/* How many bytes of data will this message contain */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0"> 70</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0">length</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">/* Write flags for the message: see grpc.h GRPC_WRITE_* for the public bits,</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> * GRPC_WRITE_INTERNAL_* for the internal ones. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b"> 73</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b">flags</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;} <a class="code" href="stream__op_8h.html#a6d154e209d826dcf514850c6724d3596">grpc_begin_message</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__linked__mdelem.html"> 76</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> {</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715"> 77</a></span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *<a class="code" href="structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715">md</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef"> 78</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *<a class="code" href="structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef">next</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0"> 79</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *<a class="code" href="structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0">prev</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;} <a class="code" href="stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2">grpc_linked_mdelem</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structgrpc__mdelem__list.html"> 82</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a> {</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a"> 83</a></span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *<a class="code" href="structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a">head</a>;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193"> 84</a></span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *<a class="code" href="structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193">tail</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;} <a class="code" href="stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2">grpc_mdelem_list</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structgrpc__metadata__batch.html"> 87</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d"> 89</a></span>&#160; <a class="code" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a> <a class="code" href="structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d">list</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc"> 93</a></span>&#160; <a class="code" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a> <a class="code" href="structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc">garbage</a>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04"> 97</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04">deadline</a>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;} <a class="code" href="stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410">grpc_metadata_batch</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770">grpc_metadata_batch_init</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08">grpc_metadata_batch_destroy</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#adf6ee05d9443f295076015da3428f12a">grpc_metadata_batch_merge</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *target,</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *add);</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e">grpc_metadata_batch_move</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *dst,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *src);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b">grpc_metadata_batch_link_head</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage);</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e">grpc_metadata_batch_link_tail</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch,</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage);</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003">grpc_metadata_batch_add_head</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch,</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem_to_add);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01">grpc_metadata_batch_add_tail</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *storage,</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem_to_add);</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf">grpc_metadata_batch_filter</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *batch,</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *(*filter)(<span class="keywordtype">void</span> *user_data,</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="structgrpc__mdelem.html">grpc_mdelem</a> *elem),</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordtype">void</span> *user_data);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor">#ifndef NDEBUG</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor"></span><span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a">grpc_metadata_batch_assert_ok</a>(<a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *comd);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define grpc_metadata_batch_assert_ok(comd) \</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment">/* Represents a single operation performed on a stream/transport */</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="structgrpc__stream__op.html"> 162</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> {</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">/* the operation to be applied */</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580"> 164</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a> <a class="code" href="structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580">type</a>;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="comment">/* the arguments to this operation. union fields are named according to the</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> associated op-code */</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keyword">union </span>{</div>
+<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f"> 168</a></span>&#160; <a class="code" href="structgrpc__begin__message.html">grpc_begin_message</a> <a class="code" href="structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f">begin_message</a>;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464"> 169</a></span>&#160; <a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> <a class="code" href="structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464">metadata</a>;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee"> 170</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> <a class="code" href="structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee">slice</a>;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; } <a class="code" href="structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9">data</a>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;} <a class="code" href="stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127">grpc_stream_op</a>;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="structgrpc__stream__op__buffer.html"> 176</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> {</div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975"> 177</a></span>&#160; <a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> *<a class="code" href="structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975">ops</a>;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b"> 178</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b">nops</a>;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772"> 179</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772">capacity</a>;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301"> 180</a></span>&#160; <a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> <a class="code" href="structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301">inlined_ops</a>[<a class="code" href="stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca">GRPC_SOPB_INLINE_ELEMENTS</a>];</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;} <a class="code" href="stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5">grpc_stream_op_buffer</a>;</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment">/* Initialize a stream op buffer */</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935">grpc_sopb_init</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment">/* Destroy a stream op buffer */</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1">grpc_sopb_destroy</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment">/* Reset a sopb to no elements */</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">grpc_sopb_reset</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment">/* Swap two sopbs */</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">grpc_sopb_swap</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *a, <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *b);</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d">grpc_stream_ops_unref_owned_objects</a>(<a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops, <span class="keywordtype">size_t</span> nops);</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment">/* Append a GRPC_NO_OP to a buffer */</span></div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850">grpc_sopb_add_no_op</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment">/* Append a GRPC_OP_BEGIN to a buffer */</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9">grpc_sopb_add_begin_message</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> length,</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags);</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb">grpc_sopb_add_metadata</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb,</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <a class="code" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> metadata);</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment">/* Append a GRPC_SLICE to a buffer - does not ref/unref the slice */</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69">grpc_sopb_add_slice</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="code" href="structgpr__slice.html">gpr_slice</a> slice);</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment">/* Append a buffer to a buffer - does not ref/unref any internal objects */</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818">grpc_sopb_append</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb, <a class="code" href="structgrpc__stream__op.html">grpc_stream_op</a> *ops,</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordtype">size_t</span> nops);</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="keywordtype">void</span> <a class="code" href="stream__op_8h.html#abf812a361634fee304b636fccde7c934">grpc_sopb_move_to</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *src, <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *dst);</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="stream__op_8h.html#a225a70176577da4097ecad0b8c647fee">grpc_sopb_string</a>(<a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb);</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_STREAM_OP_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="stream__op_8h_html_a754411d9f54fc8762416abf0c148afcf"><div class="ttname"><a href="stream__op_8h.html#a754411d9f54fc8762416abf0c148afcf">grpc_metadata_batch_filter</a></div><div class="ttdeci">void grpc_metadata_batch_filter(grpc_metadata_batch *batch, grpc_mdelem *(*filter)(void *user_data, grpc_mdelem *elem), void *user_data)</div><div class="ttdoc">For each element in batch, execute filter. </div><div class="ttdef"><b>Definition:</b> stream_op.c:295</div></div>
+<div class="ttc" id="structgrpc__stream__op_html_a7ca4e5aaf48c9f11d70136448e40e464"><div class="ttname"><a href="structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464">grpc_stream_op::metadata</a></div><div class="ttdeci">grpc_metadata_batch metadata</div><div class="ttdef"><b>Definition:</b> stream_op.h:169</div></div>
+<div class="ttc" id="stream__op_8h_html_af16e06eb1edfe4d93509276f32ed3804"><div class="ttname"><a href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a></div><div class="ttdeci">grpc_stream_op_code</div><div class="ttdef"><b>Definition:</b> stream_op.h:48</div></div>
+<div class="ttc" id="stream__op_8h_html_a73441361d99158dbb24302cd0c8f4abb"><div class="ttname"><a href="stream__op_8h.html#a73441361d99158dbb24302cd0c8f4abb">grpc_sopb_add_metadata</a></div><div class="ttdeci">void grpc_sopb_add_metadata(grpc_stream_op_buffer *sopb, grpc_metadata_batch metadata)</div><div class="ttdef"><b>Definition:</b> stream_op.c:140</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="stream__op_8h_html_a3025731d8e4db9ecd7eb46d10f613410"><div class="ttname"><a href="stream__op_8h.html#a3025731d8e4db9ecd7eb46d10f613410">grpc_metadata_batch</a></div><div class="ttdeci">struct grpc_metadata_batch grpc_metadata_batch</div></div>
+<div class="ttc" id="structgrpc__stream__op_html_ac153f1a1234aaf27a21c6567b0b675b9"><div class="ttname"><a href="structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9">grpc_stream_op::data</a></div><div class="ttdeci">union grpc_stream_op::@22 data</div></div>
+<div class="ttc" id="stream__op_8h_html_a3fc30a237ae8cb1eb4b9925a1835b8ca"><div class="ttname"><a href="stream__op_8h.html#a3fc30a237ae8cb1eb4b9925a1835b8ca">GRPC_SOPB_INLINE_ELEMENTS</a></div><div class="ttdeci">#define GRPC_SOPB_INLINE_ELEMENTS</div><div class="ttdef"><b>Definition:</b> stream_op.h:44</div></div>
+<div class="ttc" id="structgrpc__metadata__batch_html"><div class="ttname"><a href="structgrpc__metadata__batch.html">grpc_metadata_batch</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:87</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="stream__op_8h_html_a225a70176577da4097ecad0b8c647fee"><div class="ttname"><a href="stream__op_8h.html#a225a70176577da4097ecad0b8c647fee">grpc_sopb_string</a></div><div class="ttdeci">char * grpc_sopb_string(grpc_stream_op_buffer *sopb)</div><div class="ttdef"><b>Definition:</b> transport_op_string.c:72</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html_aebf66bcafe3d457104a8812718b2d772"><div class="ttname"><a href="structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772">grpc_stream_op_buffer::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> stream_op.h:179</div></div>
+<div class="ttc" id="structgrpc__begin__message_html_a12d8a0f037d922d2a6aecd010d9af9b0"><div class="ttname"><a href="structgrpc__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0">grpc_begin_message::length</a></div><div class="ttdeci">gpr_uint32 length</div><div class="ttdef"><b>Definition:</b> stream_op.h:70</div></div>
+<div class="ttc" id="stream__op_8h_html_aca8c5433826e85b51970530c1c8ce127"><div class="ttname"><a href="stream__op_8h.html#aca8c5433826e85b51970530c1c8ce127">grpc_stream_op</a></div><div class="ttdeci">struct grpc_stream_op grpc_stream_op</div></div>
+<div class="ttc" id="stream__op_8h_html_a2cb541de7ea2c0e11ab9bc199fd6eeeb"><div class="ttname"><a href="stream__op_8h.html#a2cb541de7ea2c0e11ab9bc199fd6eeeb">grpc_sopb_swap</a></div><div class="ttdeci">void grpc_sopb_swap(grpc_stream_op_buffer *a, grpc_stream_op_buffer *b)</div><div class="ttdef"><b>Definition:</b> stream_op.c:61</div></div>
+<div class="ttc" id="stream__op_8h_html_af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c"><div class="ttname"><a href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a09d4ac20ba57d42ac1d0aea1fcfc2a7c">GRPC_NO_OP</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:51</div></div>
+<div class="ttc" id="metadata_8h_html"><div class="ttname"><a href="metadata_8h.html">metadata.h</a></div></div>
+<div class="ttc" id="stream__op_8h_html_a3a64e7ada80969b3d280529a5362505a"><div class="ttname"><a href="stream__op_8h.html#a3a64e7ada80969b3d280529a5362505a">grpc_metadata_batch_assert_ok</a></div><div class="ttdeci">void grpc_metadata_batch_assert_ok(grpc_metadata_batch *comd)</div><div class="ttdef"><b>Definition:</b> stream_op.c:199</div></div>
+<div class="ttc" id="stream__op_8h_html_a9ee9a1ac0aaa49250f4e6cbc78a88b8e"><div class="ttname"><a href="stream__op_8h.html#a9ee9a1ac0aaa49250f4e6cbc78a88b8e">grpc_sopb_reset</a></div><div class="ttdeci">void grpc_sopb_reset(grpc_stream_op_buffer *sopb)</div><div class="ttdef"><b>Definition:</b> stream_op.c:56</div></div>
+<div class="ttc" id="structgrpc__linked__mdelem_html_a7d66fb9cbd88ee692cd76fda6ef6d715"><div class="ttname"><a href="structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715">grpc_linked_mdelem::md</a></div><div class="ttdeci">grpc_mdelem * md</div><div class="ttdef"><b>Definition:</b> stream_op.h:77</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html_adf47a7eadfd9227f876d55a155324975"><div class="ttname"><a href="structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975">grpc_stream_op_buffer::ops</a></div><div class="ttdeci">grpc_stream_op * ops</div><div class="ttdef"><b>Definition:</b> stream_op.h:177</div></div>
+<div class="ttc" id="structgrpc__begin__message_html_a32d937f7978a6fcf19e64ba71ef2dc7b"><div class="ttname"><a href="structgrpc__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b">grpc_begin_message::flags</a></div><div class="ttdeci">gpr_uint32 flags</div><div class="ttdef"><b>Definition:</b> stream_op.h:73</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="stream__op_8h_html_a55100e31b3cc23733ba42bb5e2f38818"><div class="ttname"><a href="stream__op_8h.html#a55100e31b3cc23733ba42bb5e2f38818">grpc_sopb_append</a></div><div class="ttdeci">void grpc_sopb_append(grpc_stream_op_buffer *sopb, grpc_stream_op *ops, size_t nops)</div><div class="ttdef"><b>Definition:</b> stream_op.c:153</div></div>
+<div class="ttc" id="stream__op_8h_html_ae2b8aff92cbac9a99f3ad263613078e2"><div class="ttname"><a href="stream__op_8h.html#ae2b8aff92cbac9a99f3ad263613078e2">grpc_mdelem_list</a></div><div class="ttdeci">struct grpc_mdelem_list grpc_mdelem_list</div></div>
+<div class="ttc" id="structgrpc__mdelem__list_html_a139994dda63b5f00686312d9d2456193"><div class="ttname"><a href="structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193">grpc_mdelem_list::tail</a></div><div class="ttdeci">grpc_linked_mdelem * tail</div><div class="ttdef"><b>Definition:</b> stream_op.h:84</div></div>
+<div class="ttc" id="structgrpc__linked__mdelem_html_ad862a99b02a07077dad3e56841287dc0"><div class="ttname"><a href="structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0">grpc_linked_mdelem::prev</a></div><div class="ttdeci">struct grpc_linked_mdelem * prev</div><div class="ttdef"><b>Definition:</b> stream_op.h:79</div></div>
+<div class="ttc" id="stream__op_8h_html_a845453663a8db6cd2624ed92d63b2003"><div class="ttname"><a href="stream__op_8h.html#a845453663a8db6cd2624ed92d63b2003">grpc_metadata_batch_add_head</a></div><div class="ttdeci">void grpc_metadata_batch_add_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add)</div><div class="ttdoc">Add elem_to_add as the first element in batch, using storage as backing storage for the linked list e...</div><div class="ttdef"><b>Definition:</b> stream_op.c:221</div></div>
+<div class="ttc" id="stream__op_8h_html_a56d5ee4a6e415827935accfe449dc770"><div class="ttname"><a href="stream__op_8h.html#a56d5ee4a6e415827935accfe449dc770">grpc_metadata_batch_init</a></div><div class="ttdeci">void grpc_metadata_batch_init(grpc_metadata_batch *batch)</div><div class="ttdef"><b>Definition:</b> stream_op.c:205</div></div>
+<div class="ttc" id="stream__op_8h_html_af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31"><div class="ttname"><a href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a145ba48de2683f4943979f1184c17b31">GRPC_OP_BEGIN_MESSAGE</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:55</div></div>
+<div class="ttc" id="stream__op_8h_html_adf6ee05d9443f295076015da3428f12a"><div class="ttname"><a href="stream__op_8h.html#adf6ee05d9443f295076015da3428f12a">grpc_metadata_batch_merge</a></div><div class="ttdeci">void grpc_metadata_batch_merge(grpc_metadata_batch *target, grpc_metadata_batch *add)</div><div class="ttdef"><b>Definition:</b> stream_op.c:275</div></div>
+<div class="ttc" id="structgrpc__mdelem__list_html_a01bd8da8ef529fa0c521354e6ab15d7a"><div class="ttname"><a href="structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a">grpc_mdelem_list::head</a></div><div class="ttdeci">grpc_linked_mdelem * head</div><div class="ttdef"><b>Definition:</b> stream_op.h:83</div></div>
+<div class="ttc" id="structgrpc__mdelem_html"><div class="ttname"><a href="structgrpc__mdelem.html">grpc_mdelem</a></div><div class="ttdef"><b>Definition:</b> metadata.h:78</div></div>
+<div class="ttc" id="structgrpc__stream__op_html_ad997783bc5e527f52ab4434ee5764aee"><div class="ttname"><a href="structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee">grpc_stream_op::slice</a></div><div class="ttdeci">gpr_slice slice</div><div class="ttdef"><b>Definition:</b> stream_op.h:170</div></div>
+<div class="ttc" id="stream__op_8h_html_a6d154e209d826dcf514850c6724d3596"><div class="ttname"><a href="stream__op_8h.html#a6d154e209d826dcf514850c6724d3596">grpc_begin_message</a></div><div class="ttdeci">struct grpc_begin_message grpc_begin_message</div></div>
+<div class="ttc" id="stream__op_8h_html_a1adfdd2ef9e01a35217bb00ca27c48c5"><div class="ttname"><a href="stream__op_8h.html#a1adfdd2ef9e01a35217bb00ca27c48c5">grpc_stream_op_buffer</a></div><div class="ttdeci">struct grpc_stream_op_buffer grpc_stream_op_buffer</div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div></div>
+<div class="ttc" id="stream__op_8h_html_a8c6af9205b51577ab879b07d9954d32b"><div class="ttname"><a href="stream__op_8h.html#a8c6af9205b51577ab879b07d9954d32b">grpc_metadata_batch_link_head</a></div><div class="ttdeci">void grpc_metadata_batch_link_head(grpc_metadata_batch *batch, grpc_linked_mdelem *storage)</div><div class="ttdoc">Add storage to the beginning of batch. </div><div class="ttdef"><b>Definition:</b> stream_op.c:243</div></div>
+<div class="ttc" id="stream__op_8h_html_aef34bb8bc5d02c10304fa93de76604d1"><div class="ttname"><a href="stream__op_8h.html#aef34bb8bc5d02c10304fa93de76604d1">grpc_sopb_destroy</a></div><div class="ttdeci">void grpc_sopb_destroy(grpc_stream_op_buffer *sopb)</div><div class="ttdef"><b>Definition:</b> stream_op.c:51</div></div>
+<div class="ttc" id="stream__op_8h_html_a719845dfd6b62fb62a75d9776396154e"><div class="ttname"><a href="stream__op_8h.html#a719845dfd6b62fb62a75d9776396154e">grpc_metadata_batch_move</a></div><div class="ttdeci">void grpc_metadata_batch_move(grpc_metadata_batch *dst, grpc_metadata_batch *src)</div><div class="ttdoc">Moves the metadata information from src to dst. </div><div class="ttdef"><b>Definition:</b> stream_op.c:289</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html_a7b6728e934dd616044c2a796d477551b"><div class="ttname"><a href="structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b">grpc_stream_op_buffer::nops</a></div><div class="ttdeci">size_t nops</div><div class="ttdef"><b>Definition:</b> stream_op.h:178</div></div>
+<div class="ttc" id="stream__op_8h_html_ac06c5c016030ab760ce1c190ea9c0935"><div class="ttname"><a href="stream__op_8h.html#ac06c5c016030ab760ce1c190ea9c0935">grpc_sopb_init</a></div><div class="ttdeci">void grpc_sopb_init(grpc_stream_op_buffer *sopb)</div><div class="ttdef"><b>Definition:</b> stream_op.c:45</div></div>
+<div class="ttc" id="structgrpc__linked__mdelem_html"><div class="ttname"><a href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:76</div></div>
+<div class="ttc" id="structgrpc__stream__op_html_a26c057815c31f49b914bc28481cf9580"><div class="ttname"><a href="structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580">grpc_stream_op::type</a></div><div class="ttdeci">enum grpc_stream_op_code type</div><div class="ttdef"><b>Definition:</b> stream_op.h:164</div></div>
+<div class="ttc" id="stream__op_8h_html_aa2a412545fb6bb4055f3437f1d261f69"><div class="ttname"><a href="stream__op_8h.html#aa2a412545fb6bb4055f3437f1d261f69">grpc_sopb_add_slice</a></div><div class="ttdeci">void grpc_sopb_add_slice(grpc_stream_op_buffer *sopb, gpr_slice slice)</div><div class="ttdef"><b>Definition:</b> stream_op.c:147</div></div>
+<div class="ttc" id="stream__op_8h_html_a6b1565cc1ec9aba1eef5c21318e088b9"><div class="ttname"><a href="stream__op_8h.html#a6b1565cc1ec9aba1eef5c21318e088b9">grpc_sopb_add_begin_message</a></div><div class="ttdeci">void grpc_sopb_add_begin_message(grpc_stream_op_buffer *sopb, gpr_uint32 length, gpr_uint32 flags)</div><div class="ttdef"><b>Definition:</b> stream_op.c:132</div></div>
+<div class="ttc" id="stream__op_8h_html_af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317"><div class="ttname"><a href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a405236323f1ebdce743e0b045fda2317">GRPC_OP_METADATA</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:52</div></div>
+<div class="ttc" id="structgrpc__begin__message_html"><div class="ttname"><a href="structgrpc__begin__message.html">grpc_begin_message</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:68</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="stream__op_8h_html_a31f318cbb2f1fdb6372fdc4891e74d01"><div class="ttname"><a href="stream__op_8h.html#a31f318cbb2f1fdb6372fdc4891e74d01">grpc_metadata_batch_add_tail</a></div><div class="ttdeci">void grpc_metadata_batch_add_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage, grpc_mdelem *elem_to_add)</div><div class="ttdoc">Add elem_to_add as the last element in batch, using storage as backing storage for the linked list el...</div><div class="ttdef"><b>Definition:</b> stream_op.c:248</div></div>
+<div class="ttc" id="stream__op_8h_html_af06b21376669ed6bf358f50a57e02d9d"><div class="ttname"><a href="stream__op_8h.html#af06b21376669ed6bf358f50a57e02d9d">grpc_stream_ops_unref_owned_objects</a></div><div class="ttdeci">void grpc_stream_ops_unref_owned_objects(grpc_stream_op *ops, size_t nops)</div><div class="ttdef"><b>Definition:</b> stream_op.c:89</div></div>
+<div class="ttc" id="stream__op_8h_html_abf812a361634fee304b636fccde7c934"><div class="ttname"><a href="stream__op_8h.html#abf812a361634fee304b636fccde7c934">grpc_sopb_move_to</a></div><div class="ttdeci">void grpc_sopb_move_to(grpc_stream_op_buffer *src, grpc_stream_op_buffer *dst)</div><div class="ttdef"><b>Definition:</b> stream_op.c:166</div></div>
+<div class="ttc" id="structgrpc__metadata__batch_html_a70a05bf082db5e80a822fbd91ac5805d"><div class="ttname"><a href="structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d">grpc_metadata_batch::list</a></div><div class="ttdeci">grpc_mdelem_list list</div><div class="ttdoc">Metadata elements in this batch. </div><div class="ttdef"><b>Definition:</b> stream_op.h:89</div></div>
+<div class="ttc" id="stream__op_8h_html_a6a07ac989d86142e60bd17525f7f509e"><div class="ttname"><a href="stream__op_8h.html#a6a07ac989d86142e60bd17525f7f509e">grpc_metadata_batch_link_tail</a></div><div class="ttdeci">void grpc_metadata_batch_link_tail(grpc_metadata_batch *batch, grpc_linked_mdelem *storage)</div><div class="ttdoc">Add storage to the end of batch. </div><div class="ttdef"><b>Definition:</b> stream_op.c:270</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="structgrpc__metadata__batch_html_ac2450cce88312b53182e0c7de9516d04"><div class="ttname"><a href="structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04">grpc_metadata_batch::deadline</a></div><div class="ttdeci">gpr_timespec deadline</div><div class="ttdoc">Used to calculate grpc-timeout at the point of sending, or gpr_inf_future if this batch does not need...</div><div class="ttdef"><b>Definition:</b> stream_op.h:97</div></div>
+<div class="ttc" id="structgrpc__stream__op_html_af6c691f3348941eee97e54957222562f"><div class="ttname"><a href="structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f">grpc_stream_op::begin_message</a></div><div class="ttdeci">grpc_begin_message begin_message</div><div class="ttdef"><b>Definition:</b> stream_op.h:168</div></div>
+<div class="ttc" id="structgrpc__metadata__batch_html_a803e9f2eed721ec23504e872e14cbecc"><div class="ttname"><a href="structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc">grpc_metadata_batch::garbage</a></div><div class="ttdeci">grpc_mdelem_list garbage</div><div class="ttdoc">Elements that have been removed from the batch, but have not yet been unreffed - used to allow collec...</div><div class="ttdef"><b>Definition:</b> stream_op.h:93</div></div>
+<div class="ttc" id="structgrpc__stream__op_html"><div class="ttname"><a href="structgrpc__stream__op.html">grpc_stream_op</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:162</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html"><div class="ttname"><a href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div><div class="ttdef"><b>Definition:</b> stream_op.h:176</div></div>
+<div class="ttc" id="grpc_8h_html"><div class="ttname"><a href="grpc_8h.html">grpc.h</a></div></div>
+<div class="ttc" id="structgrpc__linked__mdelem_html_aed036e1e54603e73e4cc7cb28c652cef"><div class="ttname"><a href="structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef">grpc_linked_mdelem::next</a></div><div class="ttdeci">struct grpc_linked_mdelem * next</div><div class="ttdef"><b>Definition:</b> stream_op.h:78</div></div>
+<div class="ttc" id="stream__op_8h_html_af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6"><div class="ttname"><a href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804a515547554d32135caeef6aa6f28fe0c6">GRPC_OP_SLICE</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:58</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html_addb643aa73745975aae590438b039301"><div class="ttname"><a href="structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301">grpc_stream_op_buffer::inlined_ops</a></div><div class="ttdeci">grpc_stream_op inlined_ops[4]</div><div class="ttdef"><b>Definition:</b> stream_op.h:180</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="stream__op_8h_html_afc4867b9d7a952f003c5494120b59c08"><div class="ttname"><a href="stream__op_8h.html#afc4867b9d7a952f003c5494120b59c08">grpc_metadata_batch_destroy</a></div><div class="ttdeci">void grpc_metadata_batch_destroy(grpc_metadata_batch *batch)</div><div class="ttdef"><b>Definition:</b> stream_op.c:211</div></div>
+<div class="ttc" id="structgrpc__mdelem__list_html"><div class="ttname"><a href="structgrpc__mdelem__list.html">grpc_mdelem_list</a></div><div class="ttdef"><b>Definition:</b> stream_op.h:82</div></div>
+<div class="ttc" id="stream__op_8h_html_abe45d7a6778fc0e248e490dfb635d850"><div class="ttname"><a href="stream__op_8h.html#abe45d7a6778fc0e248e490dfb635d850">grpc_sopb_add_no_op</a></div><div class="ttdeci">void grpc_sopb_add_no_op(grpc_stream_op_buffer *sopb)</div><div class="ttdef"><b>Definition:</b> stream_op.c:128</div></div>
+<div class="ttc" id="stream__op_8h_html_abebf5d5730a7a3aeaf9d6ee5436ddfa2"><div class="ttname"><a href="stream__op_8h.html#abebf5d5730a7a3aeaf9d6ee5436ddfa2">grpc_linked_mdelem</a></div><div class="ttdeci">struct grpc_linked_mdelem grpc_linked_mdelem</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/string_8c.html b/doc/ref/core.internal/html/string_8c.html
new file mode 100644
index 0000000000..7a442b0a8c
--- /dev/null
+++ b/doc/ref/core.internal/html/string_8c.html
@@ -0,0 +1,493 @@
+<!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: src/core/support/string.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">string.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;ctype.h&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdump__out.html">dump_out</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7a021bce444344f0a96cb022038eed93"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a7a021bce444344f0a96cb022038eed93">gpr_strdup</a> (const char *src)</td></tr>
+<tr class="separator:a7a021bce444344f0a96cb022038eed93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b9ee77c9f03764e72d7b91a64ef86f1"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a5b9ee77c9f03764e72d7b91a64ef86f1">gpr_dump</a> (const char *buf, size_t len, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags)</td></tr>
+<tr class="separator:a5b9ee77c9f03764e72d7b91a64ef86f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a008e053cd53efcf2f606b7414c22ea95"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a008e053cd53efcf2f606b7414c22ea95">gpr_dump_slice</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> s, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags)</td></tr>
+<tr class="separator:a008e053cd53efcf2f606b7414c22ea95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad68355bffdcb8c7f69fc908e60ab9da6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#ad68355bffdcb8c7f69fc908e60ab9da6">gpr_parse_bytes_to_uint32</a> (const char *buf, size_t len, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *result)</td></tr>
+<tr class="separator:ad68355bffdcb8c7f69fc908e60ab9da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac61f7fa80be757db2d5457e3fe21ffe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#ac61f7fa80be757db2d5457e3fe21ffe9">gpr_reverse_bytes</a> (char *str, int len)</td></tr>
+<tr class="separator:ac61f7fa80be757db2d5457e3fe21ffe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6aa8a10c07a02550542c920a6b1f5f6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#aa6aa8a10c07a02550542c920a6b1f5f6">gpr_ltoa</a> (long <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, char *string)</td></tr>
+<tr class="separator:aa6aa8a10c07a02550542c920a6b1f5f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5de29a3d1854cf2dfa54b501e2793e96"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a5de29a3d1854cf2dfa54b501e2793e96">gpr_strjoin</a> (const char **strs, size_t nstrs, size_t *final_length)</td></tr>
+<tr class="separator:a5de29a3d1854cf2dfa54b501e2793e96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b9d1ee9cc94732b728b033649c2d00a"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a5b9d1ee9cc94732b728b033649c2d00a">gpr_strjoin_sep</a> (const char **strs, size_t nstrs, const char *sep, size_t *final_length)</td></tr>
+<tr class="separator:a5b9d1ee9cc94732b728b033649c2d00a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e64cb8d6ffd4e240302a2a8a66bb4c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">gpr_slice_split</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> str, const char *sep, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *dst)</td></tr>
+<tr class="memdesc:a3e64cb8d6ffd4e240302a2a8a66bb4c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Split <em>str</em> by the separator <em>sep</em>. <a href="#a3e64cb8d6ffd4e240302a2a8a66bb4c3">More...</a><br/></td></tr>
+<tr class="separator:a3e64cb8d6ffd4e240302a2a8a66bb4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a751f38e61272bd9626890fa54270b82f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a751f38e61272bd9626890fa54270b82f">gpr_strvec_init</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *sv)</td></tr>
+<tr class="separator:a751f38e61272bd9626890fa54270b82f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c7ab5a87b900005d826bdaa8e106b28"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a0c7ab5a87b900005d826bdaa8e106b28">gpr_strvec_destroy</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *sv)</td></tr>
+<tr class="separator:a0c7ab5a87b900005d826bdaa8e106b28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9d91f04f11bc82ed5a562e44878eafde"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a9d91f04f11bc82ed5a562e44878eafde">gpr_strvec_add</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *sv, char *str)</td></tr>
+<tr class="separator:a9d91f04f11bc82ed5a562e44878eafde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0145a60ccd4d1e25389f8bad033f1ff5"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8c.html#a0145a60ccd4d1e25389f8bad033f1ff5">gpr_strvec_flatten</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *sv, size_t *final_length)</td></tr>
+<tr class="separator:a0145a60ccd4d1e25389f8bad033f1ff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5b9ee77c9f03764e72d7b91a64ef86f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_dump </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a008e053cd53efcf2f606b7414c22ea95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_dump_slice </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa6aa8a10c07a02550542c920a6b1f5f6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_ltoa </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad68355bffdcb8c7f69fc908e60ab9da6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_parse_bytes_to_uint32 </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>result</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac61f7fa80be757db2d5457e3fe21ffe9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_reverse_bytes </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3e64cb8d6ffd4e240302a2a8a66bb4c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_split </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>sep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Split <em>str</em> by the separator <em>sep</em>. </p>
+<p>Results are stored in <em>dst</em>, which should be a properly initialized instance. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7a021bce444344f0a96cb022038eed93"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strdup </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>src</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5de29a3d1854cf2dfa54b501e2793e96"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strjoin </td>
+ <td>(</td>
+ <td class="paramtype">const char **&#160;</td>
+ <td class="paramname"><em>strs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nstrs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>final_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b9d1ee9cc94732b728b033649c2d00a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strjoin_sep </td>
+ <td>(</td>
+ <td class="paramtype">const char **&#160;</td>
+ <td class="paramname"><em>strs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nstrs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>sep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>final_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9d91f04f11bc82ed5a562e44878eafde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_strvec_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>sv</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>str</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c7ab5a87b900005d826bdaa8e106b28"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_strvec_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>sv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0145a60ccd4d1e25389f8bad033f1ff5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strvec_flatten </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>sv</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>final_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a751f38e61272bd9626890fa54270b82f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_strvec_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>sv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/string_8h.html b/doc/ref/core.internal/html/string_8h.html
new file mode 100644
index 0000000000..514e8263d8
--- /dev/null
+++ b/doc/ref/core.internal/html/string_8h.html
@@ -0,0 +1,521 @@
+<!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: src/core/support/string.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">string.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">grpc/support/slice_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc/support/slice.h</a>&gt;</code><br/>
+</div>
+<p><a href="string_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__strvec.html">gpr_strvec</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a2d592b56804af1c0d0e5237c37ce0313"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a2d592b56804af1c0d0e5237c37ce0313">GPR_DUMP_HEX</a>&#160;&#160;&#160;0x00000001</td></tr>
+<tr class="separator:a2d592b56804af1c0d0e5237c37ce0313"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0676a68b67df2660352db8168c6c180"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#ac0676a68b67df2660352db8168c6c180">GPR_DUMP_ASCII</a>&#160;&#160;&#160;0x00000002</td></tr>
+<tr class="separator:ac0676a68b67df2660352db8168c6c180"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21406aaed4e32e895145541eabbad527"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a21406aaed4e32e895145541eabbad527">GPR_LTOA_MIN_BUFSIZE</a>&#160;&#160;&#160;(3 * sizeof(long))</td></tr>
+<tr class="separator:a21406aaed4e32e895145541eabbad527"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5b9ee77c9f03764e72d7b91a64ef86f1"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1">gpr_dump</a> (const char *buf, size_t len, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags)</td></tr>
+<tr class="separator:a5b9ee77c9f03764e72d7b91a64ef86f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77bcdd897064702d16e7aaaea2e0e259"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a77bcdd897064702d16e7aaaea2e0e259">gpr_dump_slice</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> slice, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags)</td></tr>
+<tr class="separator:a77bcdd897064702d16e7aaaea2e0e259"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a753cd4bfe9add8476a2797904c4c68c7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a753cd4bfe9add8476a2797904c4c68c7">gpr_parse_bytes_to_uint32</a> (const char *data, size_t length, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *result)</td></tr>
+<tr class="separator:a753cd4bfe9add8476a2797904c4c68c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb9a8e65c26e1f49bc9247bd8a90aa24"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24">gpr_ltoa</a> (long <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, char *output)</td></tr>
+<tr class="separator:abb9a8e65c26e1f49bc9247bd8a90aa24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac61f7fa80be757db2d5457e3fe21ffe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9">gpr_reverse_bytes</a> (char *str, int len)</td></tr>
+<tr class="separator:ac61f7fa80be757db2d5457e3fe21ffe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf1d5b8181f43319a8d8c98950e69b4c"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c">gpr_strjoin</a> (const char **strs, size_t nstrs, size_t *total_length)</td></tr>
+<tr class="separator:abf1d5b8181f43319a8d8c98950e69b4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac842445695baf5ff8e96a7bf12c6b176"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#ac842445695baf5ff8e96a7bf12c6b176">gpr_strjoin_sep</a> (const char **strs, size_t nstrs, const char *sep, size_t *total_length)</td></tr>
+<tr class="separator:ac842445695baf5ff8e96a7bf12c6b176"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e64cb8d6ffd4e240302a2a8a66bb4c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">gpr_slice_split</a> (<a class="el" href="structgpr__slice.html">gpr_slice</a> str, const char *sep, <a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *dst)</td></tr>
+<tr class="memdesc:a3e64cb8d6ffd4e240302a2a8a66bb4c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Split <em>str</em> by the separator <em>sep</em>. <a href="#a3e64cb8d6ffd4e240302a2a8a66bb4c3">More...</a><br/></td></tr>
+<tr class="separator:a3e64cb8d6ffd4e240302a2a8a66bb4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78cca9fe86b48cf442f80a666b73768f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a78cca9fe86b48cf442f80a666b73768f">gpr_strvec_init</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *strs)</td></tr>
+<tr class="separator:a78cca9fe86b48cf442f80a666b73768f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af194bff1a43db7ed5be927264bce7f52"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#af194bff1a43db7ed5be927264bce7f52">gpr_strvec_destroy</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *strs)</td></tr>
+<tr class="separator:af194bff1a43db7ed5be927264bce7f52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4eaa61df749bed219a09e69837a69a50"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#a4eaa61df749bed219a09e69837a69a50">gpr_strvec_add</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *strs, char *add)</td></tr>
+<tr class="separator:a4eaa61df749bed219a09e69837a69a50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac17f0ee05012c3256f5f1f77b5bec185"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185">gpr_strvec_flatten</a> (<a class="el" href="structgpr__strvec.html">gpr_strvec</a> *strs, size_t *total_length)</td></tr>
+<tr class="separator:ac17f0ee05012c3256f5f1f77b5bec185"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ac0676a68b67df2660352db8168c6c180"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_DUMP_ASCII&#160;&#160;&#160;0x00000002</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2d592b56804af1c0d0e5237c37ce0313"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_DUMP_HEX&#160;&#160;&#160;0x00000001</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a21406aaed4e32e895145541eabbad527"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_LTOA_MIN_BUFSIZE&#160;&#160;&#160;(3 * sizeof(long))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5b9ee77c9f03764e72d7b91a64ef86f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_dump </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a77bcdd897064702d16e7aaaea2e0e259"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_dump_slice </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>flags</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb9a8e65c26e1f49bc9247bd8a90aa24"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_ltoa </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>output</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a753cd4bfe9add8476a2797904c4c68c7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_parse_bytes_to_uint32 </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;</td>
+ <td class="paramname"><em>result</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac61f7fa80be757db2d5457e3fe21ffe9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_reverse_bytes </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3e64cb8d6ffd4e240302a2a8a66bb4c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_slice_split </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>str</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>sep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td>
+ <td class="paramname"><em>dst</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Split <em>str</em> by the separator <em>sep</em>. </p>
+<p>Results are stored in <em>dst</em>, which should be a properly initialized instance. </p>
+
+</div>
+</div>
+<a class="anchor" id="abf1d5b8181f43319a8d8c98950e69b4c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strjoin </td>
+ <td>(</td>
+ <td class="paramtype">const char **&#160;</td>
+ <td class="paramname"><em>strs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nstrs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>total_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac842445695baf5ff8e96a7bf12c6b176"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strjoin_sep </td>
+ <td>(</td>
+ <td class="paramtype">const char **&#160;</td>
+ <td class="paramname"><em>strs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nstrs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>sep</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>total_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4eaa61df749bed219a09e69837a69a50"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_strvec_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>strs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>add</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af194bff1a43db7ed5be927264bce7f52"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_strvec_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>strs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac17f0ee05012c3256f5f1f77b5bec185"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strvec_flatten </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>strs</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>total_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78cca9fe86b48cf442f80a666b73768f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_strvec_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__strvec.html">gpr_strvec</a> *&#160;</td>
+ <td class="paramname"><em>strs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/string_8h_source.html b/doc/ref/core.internal/html/string_8h_source.html
new file mode 100644
index 0000000000..aac188a866
--- /dev/null
+++ b/doc/ref/core.internal/html/string_8h_source.html
@@ -0,0 +1,231 @@
+<!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: src/core/support/string.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">string.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="string_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_STRING_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_STRING_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice__buffer_8h.html">grpc/support/slice_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc/support/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* String utility functions */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* Flags for gpr_dump function. */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="string_8h.html#a2d592b56804af1c0d0e5237c37ce0313"> 50</a></span>&#160;<span class="preprocessor">#define GPR_DUMP_HEX 0x00000001</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="string_8h.html#ac0676a68b67df2660352db8168c6c180"> 51</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_DUMP_ASCII 0x00000002</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Converts array buf, of length len, into a C string according to the flags.</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> Result should be freed with gpr_free() */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1">gpr_dump</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buf, <span class="keywordtype">size_t</span> len, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment">/* Calls gpr_dump on a slice. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="string_8h.html#a77bcdd897064702d16e7aaaea2e0e259">gpr_dump_slice</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> slice, <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> flags);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">/* Parses an array of bytes into an integer (base 10). Returns 1 on success,</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> 0 on failure. */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">int</span> <a class="code" href="string_8h.html#a753cd4bfe9add8476a2797904c4c68c7">gpr_parse_bytes_to_uint32</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *data, <span class="keywordtype">size_t</span> length,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *result);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* Minimum buffer size for calling ltoa */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="string_8h.html#a21406aaed4e32e895145541eabbad527"> 66</a></span>&#160;<span class="preprocessor">#define GPR_LTOA_MIN_BUFSIZE (3 * sizeof(long))</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* Convert a long to a string in base 10; returns the length of the</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> output string (or 0 on failure).</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> output must be at least GPR_LTOA_MIN_BUFSIZE bytes long. */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">int</span> <a class="code" href="string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24">gpr_ltoa</a>(<span class="keywordtype">long</span> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, <span class="keywordtype">char</span> *output);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/* Reverse a run of bytes */</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9">gpr_reverse_bytes</a>(<span class="keywordtype">char</span> *str, <span class="keywordtype">int</span> len);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* Join a set of strings, returning the resulting string.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> Total combined length (excluding null terminator) is returned in total_length</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> if it is non-null. */</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c">gpr_strjoin</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> **strs, <span class="keywordtype">size_t</span> nstrs, <span class="keywordtype">size_t</span> *total_length);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* Join a set of strings using a separator, returning the resulting string.</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> Total combined length (excluding null terminator) is returned in total_length</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> if it is non-null. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="string_8h.html#ac842445695baf5ff8e96a7bf12c6b176">gpr_strjoin_sep</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> **strs, <span class="keywordtype">size_t</span> nstrs, <span class="keyword">const</span> <span class="keywordtype">char</span> *sep,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">size_t</span> *total_length);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keywordtype">void</span> <a class="code" href="string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">gpr_slice_split</a>(<a class="code" href="structgpr__slice.html">gpr_slice</a> str, <span class="keyword">const</span> <span class="keywordtype">char</span> *sep, <a class="code" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *dst);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment">/* A vector of strings... for building up a final string one piece at a time */</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgpr__strvec.html"> 92</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="structgpr__strvec.html#a6c928c402061e0a51346155669029795"> 93</a></span>&#160; <span class="keywordtype">char</span> **<a class="code" href="structgpr__strvec.html#a6c928c402061e0a51346155669029795">strs</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387"> 94</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387">count</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd"> 95</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd">capacity</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;} <a class="code" href="structgpr__strvec.html">gpr_strvec</a>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment">/* Initialize/destroy */</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keywordtype">void</span> <a class="code" href="string_8h.html#a78cca9fe86b48cf442f80a666b73768f">gpr_strvec_init</a>(<a class="code" href="structgpr__strvec.html">gpr_strvec</a> *strs);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">void</span> <a class="code" href="string_8h.html#af194bff1a43db7ed5be927264bce7f52">gpr_strvec_destroy</a>(<a class="code" href="structgpr__strvec.html">gpr_strvec</a> *strs);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment">/* Add a string to a strvec, takes ownership of the string */</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="keywordtype">void</span> <a class="code" href="string_8h.html#a4eaa61df749bed219a09e69837a69a50">gpr_strvec_add</a>(<a class="code" href="structgpr__strvec.html">gpr_strvec</a> *strs, <span class="keywordtype">char</span> *add);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* Return a joined string with all added substrings, optionally setting</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> total_length as per gpr_strjoin */</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185">gpr_strvec_flatten</a>(<a class="code" href="structgpr__strvec.html">gpr_strvec</a> *strs, <span class="keywordtype">size_t</span> *total_length);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_STRING_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="string_8h_html_ac17f0ee05012c3256f5f1f77b5bec185"><div class="ttname"><a href="string_8h.html#ac17f0ee05012c3256f5f1f77b5bec185">gpr_strvec_flatten</a></div><div class="ttdeci">char * gpr_strvec_flatten(gpr_strvec *strs, size_t *total_length)</div><div class="ttdef"><b>Definition:</b> string.c:278</div></div>
+<div class="ttc" id="string_8h_html_a753cd4bfe9add8476a2797904c4c68c7"><div class="ttname"><a href="string_8h.html#a753cd4bfe9add8476a2797904c4c68c7">gpr_parse_bytes_to_uint32</a></div><div class="ttdeci">int gpr_parse_bytes_to_uint32(const char *data, size_t length, gpr_uint32 *result)</div><div class="ttdef"><b>Definition:</b> string.c:129</div></div>
+<div class="ttc" id="string_8h_html_abf1d5b8181f43319a8d8c98950e69b4c"><div class="ttname"><a href="string_8h.html#abf1d5b8181f43319a8d8c98950e69b4c">gpr_strjoin</a></div><div class="ttdeci">char * gpr_strjoin(const char **strs, size_t nstrs, size_t *total_length)</div><div class="ttdef"><b>Definition:</b> string.c:177</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="string_8h_html_ac842445695baf5ff8e96a7bf12c6b176"><div class="ttname"><a href="string_8h.html#ac842445695baf5ff8e96a7bf12c6b176">gpr_strjoin_sep</a></div><div class="ttdeci">char * gpr_strjoin_sep(const char **strs, size_t nstrs, const char *sep, size_t *total_length)</div><div class="ttdef"><b>Definition:</b> string.c:181</div></div>
+<div class="ttc" id="string_8h_html_a77bcdd897064702d16e7aaaea2e0e259"><div class="ttname"><a href="string_8h.html#a77bcdd897064702d16e7aaaea2e0e259">gpr_dump_slice</a></div><div class="ttdeci">char * gpr_dump_slice(gpr_slice slice, gpr_uint32 flags)</div><div class="ttdef"><b>Definition:</b> string.c:123</div></div>
+<div class="ttc" id="structgpr__slice__buffer_html"><div class="ttname"><a href="structgpr__slice__buffer.html">gpr_slice_buffer</a></div><div class="ttdef"><b>Definition:</b> slice_buffer.h:48</div></div>
+<div class="ttc" id="structgpr__strvec_html_a6c928c402061e0a51346155669029795"><div class="ttname"><a href="structgpr__strvec.html#a6c928c402061e0a51346155669029795">gpr_strvec::strs</a></div><div class="ttdeci">char ** strs</div><div class="ttdef"><b>Definition:</b> string.h:93</div></div>
+<div class="ttc" id="structgpr__strvec_html"><div class="ttname"><a href="structgpr__strvec.html">gpr_strvec</a></div><div class="ttdef"><b>Definition:</b> string.h:92</div></div>
+<div class="ttc" id="string_8h_html_ac61f7fa80be757db2d5457e3fe21ffe9"><div class="ttname"><a href="string_8h.html#ac61f7fa80be757db2d5457e3fe21ffe9">gpr_reverse_bytes</a></div><div class="ttdeci">void gpr_reverse_bytes(char *str, int len)</div><div class="ttdef"><b>Definition:</b> string.c:147</div></div>
+<div class="ttc" id="string_8h_html_a4eaa61df749bed219a09e69837a69a50"><div class="ttname"><a href="string_8h.html#a4eaa61df749bed219a09e69837a69a50">gpr_strvec_add</a></div><div class="ttdeci">void gpr_strvec_add(gpr_strvec *strs, char *add)</div><div class="ttdef"><b>Definition:</b> string.c:270</div></div>
+<div class="ttc" id="slice__buffer_8h_html"><div class="ttname"><a href="slice__buffer_8h.html">slice_buffer.h</a></div></div>
+<div class="ttc" id="string_8h_html_a78cca9fe86b48cf442f80a666b73768f"><div class="ttname"><a href="string_8h.html#a78cca9fe86b48cf442f80a666b73768f">gpr_strvec_init</a></div><div class="ttdeci">void gpr_strvec_init(gpr_strvec *strs)</div><div class="ttdef"><b>Definition:</b> string.c:258</div></div>
+<div class="ttc" id="string_8h_html_af194bff1a43db7ed5be927264bce7f52"><div class="ttname"><a href="string_8h.html#af194bff1a43db7ed5be927264bce7f52">gpr_strvec_destroy</a></div><div class="ttdeci">void gpr_strvec_destroy(gpr_strvec *strs)</div><div class="ttdef"><b>Definition:</b> string.c:262</div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="string_8h_html_a3e64cb8d6ffd4e240302a2a8a66bb4c3"><div class="ttname"><a href="string_8h.html#a3e64cb8d6ffd4e240302a2a8a66bb4c3">gpr_slice_split</a></div><div class="ttdeci">void gpr_slice_split(gpr_slice str, const char *sep, gpr_slice_buffer *dst)</div><div class="ttdoc">Split str by the separator sep. </div><div class="ttdef"><b>Definition:</b> string.c:240</div></div>
+<div class="ttc" id="string_8h_html_abb9a8e65c26e1f49bc9247bd8a90aa24"><div class="ttname"><a href="string_8h.html#abb9a8e65c26e1f49bc9247bd8a90aa24">gpr_ltoa</a></div><div class="ttdeci">int gpr_ltoa(long value, char *output)</div><div class="ttdef"><b>Definition:</b> string.c:156</div></div>
+<div class="ttc" id="structgpr__strvec_html_a3d62db9061e6c23fcac741812f9af387"><div class="ttname"><a href="structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387">gpr_strvec::count</a></div><div class="ttdeci">size_t count</div><div class="ttdef"><b>Definition:</b> string.h:94</div></div>
+<div class="ttc" id="string_8h_html_a5b9ee77c9f03764e72d7b91a64ef86f1"><div class="ttname"><a href="string_8h.html#a5b9ee77c9f03764e72d7b91a64ef86f1">gpr_dump</a></div><div class="ttdeci">char * gpr_dump(const char *buf, size_t len, gpr_uint32 flags)</div><div class="ttdef"><b>Definition:</b> string.c:111</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgpr__strvec_html_af2ee1037640e1a4e0b7e81d69eeaf2cd"><div class="ttname"><a href="structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd">gpr_strvec::capacity</a></div><div class="ttdeci">size_t capacity</div><div class="ttdef"><b>Definition:</b> string.h:95</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/string__posix_8c.html b/doc/ref/core.internal/html/string__posix_8c.html
new file mode 100644
index 0000000000..5f4a5b0c8c
--- /dev/null
+++ b/doc/ref/core.internal/html/string__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/string_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">string_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/string__util_8h.html b/doc/ref/core.internal/html/string__util_8h.html
new file mode 100644
index 0000000000..00608a3e7b
--- /dev/null
+++ b/doc/ref/core.internal/html/string__util_8h.html
@@ -0,0 +1,160 @@
+<!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: include/grpc/support/string_util.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">string_util.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="string__util_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a7a021bce444344f0a96cb022038eed93"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string__util_8h.html#a7a021bce444344f0a96cb022038eed93">gpr_strdup</a> (const char *src)</td></tr>
+<tr class="separator:a7a021bce444344f0a96cb022038eed93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e5cc621bf7ca14112c72aa7a0ca73d0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0">gpr_asprintf</a> (char **strp, const char *format,...)</td></tr>
+<tr class="separator:a0e5cc621bf7ca14112c72aa7a0ca73d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a0e5cc621bf7ca14112c72aa7a0ca73d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_asprintf </td>
+ <td>(</td>
+ <td class="paramtype">char **&#160;</td>
+ <td class="paramname"><em>strp</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>format</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname"><em>...</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a021bce444344f0a96cb022038eed93"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* gpr_strdup </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>src</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/string__util_8h_source.html b/doc/ref/core.internal/html/string__util_8h_source.html
new file mode 100644
index 0000000000..0193f62c3b
--- /dev/null
+++ b/doc/ref/core.internal/html/string__util_8h_source.html
@@ -0,0 +1,162 @@
+<!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: include/grpc/support/string_util.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">string_util.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="string__util_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_STRING_UTIL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_STRING_UTIL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* String utility functions */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* Returns a copy of src that can be passed to gpr_free().</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> If allocation fails or if src is NULL, returns NULL. */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="string__util_8h.html#a7a021bce444344f0a96cb022038eed93">gpr_strdup</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *src);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* printf to a newly-allocated string. The set of supported formats may vary</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> between platforms.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> On success, returns the number of bytes printed (excluding the final &#39;\0&#39;),</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> and *strp points to a string which must later be destroyed with gpr_free().</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> On error, returns -1 and sets *strp to NULL. If the format string is bad,</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> the result is undefined. */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">int</span> <a class="code" href="string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0">gpr_asprintf</a>(<span class="keywordtype">char</span> **strp, <span class="keyword">const</span> <span class="keywordtype">char</span> *format, ...);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_STRING_UTIL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="string__util_8h_html_a7a021bce444344f0a96cb022038eed93"><div class="ttname"><a href="string__util_8h.html#a7a021bce444344f0a96cb022038eed93">gpr_strdup</a></div><div class="ttdeci">char * gpr_strdup(const char *src)</div><div class="ttdef"><b>Definition:</b> string.c:45</div></div>
+<div class="ttc" id="string__util_8h_html_a0e5cc621bf7ca14112c72aa7a0ca73d0"><div class="ttname"><a href="string__util_8h.html#a0e5cc621bf7ca14112c72aa7a0ca73d0">gpr_asprintf</a></div><div class="ttdeci">int gpr_asprintf(char **strp, const char *format,...)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/string__win32_8c.html b/doc/ref/core.internal/html/string__win32_8c.html
new file mode 100644
index 0000000000..e74059a718
--- /dev/null
+++ b/doc/ref/core.internal/html/string__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/string_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">string_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/string__win32_8h.html b/doc/ref/core.internal/html/string__win32_8h.html
new file mode 100644
index 0000000000..ce89652a7c
--- /dev/null
+++ b/doc/ref/core.internal/html/string__win32_8h.html
@@ -0,0 +1,102 @@
+<!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: src/core/support/string_win32.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">string_win32.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="string__win32_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/string__win32_8h_source.html b/doc/ref/core.internal/html/string__win32_8h_source.html
new file mode 100644
index 0000000000..ca51b84a2e
--- /dev/null
+++ b/doc/ref/core.internal/html/string__win32_8h_source.html
@@ -0,0 +1,147 @@
+<!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: src/core/support/string_win32.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">string_win32.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="string__win32_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_STRING_WIN32_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_STRING_WIN32_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef GPR_WIN32</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* These allocate new strings using gpr_malloc to convert from and to utf-8. */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;LPTSTR gpr_char_to_tchar(LPCSTR input);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;LPSTR gpr_tchar_to_char(LPCTSTR input);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GPR_WIN32 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_STRING_WIN32_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/structarg.html b/doc/ref/core.internal/html/structarg.html
new file mode 100644
index 0000000000..75f99b50fe
--- /dev/null
+++ b/doc/ref/core.internal/html/structarg.html
@@ -0,0 +1,176 @@
+<!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: arg 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">arg Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a19d6eebdcc5e2c4679c5f77760adb5dc"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarg.html#a19d6eebdcc5e2c4679c5f77760adb5dc">name</a></td></tr>
+<tr class="separator:a19d6eebdcc5e2c4679c5f77760adb5dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c3bb14ce3710281f4f5c511961823df"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarg.html#a7c3bb14ce3710281f4f5c511961823df">help</a></td></tr>
+<tr class="separator:a7c3bb14ce3710281f4f5c511961823df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac42f6b11ab4ceee17be7871636e06dca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4">argtype</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarg.html#ac42f6b11ab4ceee17be7871636e06dca">type</a></td></tr>
+<tr class="separator:ac42f6b11ab4ceee17be7871636e06dca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a688d0385c96e5d5d7cb1a7342f9b4497"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarg.html#a688d0385c96e5d5d7cb1a7342f9b4497">value</a></td></tr>
+<tr class="separator:a688d0385c96e5d5d7cb1a7342f9b4497"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e585c92ebdfcf1c6d966d887d07f7ff"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structarg.html">arg</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structarg.html#a5e585c92ebdfcf1c6d966d887d07f7ff">next</a></td></tr>
+<tr class="separator:a5e585c92ebdfcf1c6d966d887d07f7ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7c3bb14ce3710281f4f5c511961823df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* arg::help</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19d6eebdcc5e2c4679c5f77760adb5dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* arg::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e585c92ebdfcf1c6d966d887d07f7ff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structarg.html">arg</a>* arg::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac42f6b11ab4ceee17be7871636e06dca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="cmdline_8c.html#a55073e9737969efda87471594edd95d4">argtype</a> arg::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a688d0385c96e5d5d7cb1a7342f9b4497"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* arg::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="cmdline_8c.html">cmdline.c</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>
diff --git a/doc/ref/core.internal/html/structb64__huff__sym.html b/doc/ref/core.internal/html/structb64__huff__sym.html
new file mode 100644
index 0000000000..6f26c92fba
--- /dev/null
+++ b/doc/ref/core.internal/html/structb64__huff__sym.html
@@ -0,0 +1,134 @@
+<!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: b64_huff_sym 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">b64_huff_sym Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ab216d5e5b8fdb4ccfd9a4843aa389b81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb64__huff__sym.html#ab216d5e5b8fdb4ccfd9a4843aa389b81">bits</a></td></tr>
+<tr class="separator:ab216d5e5b8fdb4ccfd9a4843aa389b81"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32397c9284689efd11eb89236d8d69e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structb64__huff__sym.html#a32397c9284689efd11eb89236d8d69e2">length</a></td></tr>
+<tr class="separator:a32397c9284689efd11eb89236d8d69e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab216d5e5b8fdb4ccfd9a4843aa389b81"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> b64_huff_sym::bits</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a32397c9284689efd11eb89236d8d69e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> b64_huff_sym::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="bin__encoder_8c.html">bin_encoder.c</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>
diff --git a/doc/ref/core.internal/html/structcall__data.html b/doc/ref/core.internal/html/structcall__data.html
new file mode 100644
index 0000000000..de04869636
--- /dev/null
+++ b/doc/ref/core.internal/html/structcall__data.html
@@ -0,0 +1,874 @@
+<!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: call_data 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">call_data Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a163b0cfa0e971a064e4ad6f35001f8ed"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a163b0cfa0e971a064e4ad6f35001f8ed">creds</a></td></tr>
+<tr class="separator:a163b0cfa0e971a064e4ad6f35001f8ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b3ab9bd0e3c549bf9ad739f0011b995"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a5b3ab9bd0e3c549bf9ad739f0011b995">host</a></td></tr>
+<tr class="separator:a5b3ab9bd0e3c549bf9ad739f0011b995"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d9cd71936be176040c5f69a78d695b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a7d9cd71936be176040c5f69a78d695b0">method</a></td></tr>
+<tr class="separator:a7d9cd71936be176040c5f69a78d695b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3a66a414a73ad49d82a87935ec0c08e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ab3a66a414a73ad49d82a87935ec0c08e">pollset</a></td></tr>
+<tr class="separator:ab3a66a414a73ad49d82a87935ec0c08e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d259211de98a88e11c71fa93abd2877"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a0d259211de98a88e11c71fa93abd2877">op</a></td></tr>
+<tr class="separator:a0d259211de98a88e11c71fa93abd2877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa6841afd5ac22f2538e950688f8e67b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aaa6841afd5ac22f2538e950688f8e67b">op_md_idx</a></td></tr>
+<tr class="separator:aaa6841afd5ac22f2538e950688f8e67b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aded44c7ecaa861e2a4a39380b172368a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aded44c7ecaa861e2a4a39380b172368a">sent_initial_metadata</a></td></tr>
+<tr class="separator:aded44c7ecaa861e2a4a39380b172368a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74f306e56988bd7e20d0116829ce4128"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a74f306e56988bd7e20d0116829ce4128">security_context_set</a></td></tr>
+<tr class="separator:a74f306e56988bd7e20d0116829ce4128"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cb931b8950cc5841edf1156ca861600"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a0cb931b8950cc5841edf1156ca861600">md_links</a> [4]</td></tr>
+<tr class="separator:a0cb931b8950cc5841edf1156ca861600"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab6ed893c5caa5b86338edf8b97bd77d8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ab6ed893c5caa5b86338edf8b97bd77d8">unused</a></td></tr>
+<tr class="separator:ab6ed893c5caa5b86338edf8b97bd77d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7042d8feb119d4fcce1258c5eddca8ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a7042d8feb119d4fcce1258c5eddca8ff">elem</a></td></tr>
+<tr class="separator:a7042d8feb119d4fcce1258c5eddca8ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa671a127b29c32228f221a6121515a64"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aa671a127b29c32228f221a6121515a64">mu_state</a></td></tr>
+<tr class="memdesc:aa671a127b29c32228f221a6121515a64"><td class="mdescLeft">&#160;</td><td class="mdescRight">protects state <a href="#aa671a127b29c32228f221a6121515a64">More...</a><br/></td></tr>
+<tr class="separator:aa671a127b29c32228f221a6121515a64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a394da9a4876df32b91b8891303695a5d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">call_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a394da9a4876df32b91b8891303695a5d">state</a></td></tr>
+<tr class="memdesc:a394da9a4876df32b91b8891303695a5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">the current state of a call - see call_state <a href="#a394da9a4876df32b91b8891303695a5d">More...</a><br/></td></tr>
+<tr class="separator:a394da9a4876df32b91b8891303695a5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ca8837431c3942aa3b18092e314632c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a9ca8837431c3942aa3b18092e314632c">deadline</a></td></tr>
+<tr class="separator:a9ca8837431c3942aa3b18092e314632c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96231ab5cca907d5638687fc2d64cccb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a96231ab5cca907d5638687fc2d64cccb">picked_channel</a></td></tr>
+<tr class="separator:a96231ab5cca907d5638687fc2d64cccb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab21ef8aafd3c095825805e29e69670ce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ab21ef8aafd3c095825805e29e69670ce">async_setup_task</a></td></tr>
+<tr class="separator:ab21ef8aafd3c095825805e29e69670ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95c7079af1a663431de6bfe8e919cff7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a95c7079af1a663431de6bfe8e919cff7">waiting_op</a></td></tr>
+<tr class="separator:a95c7079af1a663431de6bfe8e919cff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a68077448625c53fa5dab0a717c0a77b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a68077448625c53fa5dab0a717c0a77b2">subchannel_call</a></td></tr>
+<tr class="separator:a68077448625c53fa5dab0a717c0a77b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1e73bf35274521a98f39316fddf3deb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#af1e73bf35274521a98f39316fddf3deb">status</a></td></tr>
+<tr class="separator:af1e73bf35274521a98f39316fddf3deb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a178c22c4c266e3ffd0583f3ed9bc749f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a178c22c4c266e3ffd0583f3ed9bc749f">details</a></td></tr>
+<tr class="separator:a178c22c4c266e3ffd0583f3ed9bc749f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a765c539d2737d435cf434241edda82f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a765c539d2737d435cf434241edda82f9">slices</a></td></tr>
+<tr class="memdesc:a765c539d2737d435cf434241edda82f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Buffers up input slices to be compressed. <a href="#a765c539d2737d435cf434241edda82f9">More...</a><br/></td></tr>
+<tr class="separator:a765c539d2737d435cf434241edda82f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad33eb76b6d73d8a4475ff69ff4e8964c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ad33eb76b6d73d8a4475ff69ff4e8964c">compression_algorithm_storage</a></td></tr>
+<tr class="separator:ad33eb76b6d73d8a4475ff69ff4e8964c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69fca2329317c8cf3d9c215334b2aa40"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a69fca2329317c8cf3d9c215334b2aa40">remaining_slice_bytes</a></td></tr>
+<tr class="memdesc:a69fca2329317c8cf3d9c215334b2aa40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Input data to be read, as per BEGIN_MESSAGE. <a href="#a69fca2329317c8cf3d9c215334b2aa40">More...</a><br/></td></tr>
+<tr class="separator:a69fca2329317c8cf3d9c215334b2aa40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fccfa4c3448bcfd28f80b2caad5485b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a5fccfa4c3448bcfd28f80b2caad5485b">written_initial_metadata</a></td></tr>
+<tr class="memdesc:a5fccfa4c3448bcfd28f80b2caad5485b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Already processed initial md? <a href="#a5fccfa4c3448bcfd28f80b2caad5485b">More...</a><br/></td></tr>
+<tr class="separator:a5fccfa4c3448bcfd28f80b2caad5485b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f593ec03211bdc3ede0b4da81d4354f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a9f593ec03211bdc3ede0b4da81d4354f">compression_algorithm</a></td></tr>
+<tr class="memdesc:a9f593ec03211bdc3ede0b4da81d4354f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compression algorithm we'll try to use. <a href="#a9f593ec03211bdc3ede0b4da81d4354f">More...</a><br/></td></tr>
+<tr class="separator:a9f593ec03211bdc3ede0b4da81d4354f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69baa5f9149f7edadc3c8e5fc2c82aa8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a69baa5f9149f7edadc3c8e5fc2c82aa8">has_compression_algorithm</a></td></tr>
+<tr class="memdesc:a69baa5f9149f7edadc3c8e5fc2c82aa8"><td class="mdescLeft">&#160;</td><td class="mdescRight">If true, contents of <em>compression_algorithm</em> are authoritative. <a href="#a69baa5f9149f7edadc3c8e5fc2c82aa8">More...</a><br/></td></tr>
+<tr class="separator:a69baa5f9149f7edadc3c8e5fc2c82aa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a296c3fce88125964cfc50c927249bc4a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a296c3fce88125964cfc50c927249bc4a">method</a></td></tr>
+<tr class="separator:a296c3fce88125964cfc50c927249bc4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa63048a662dd766734726542dba0f27a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aa63048a662dd766734726542dba0f27a">scheme</a></td></tr>
+<tr class="separator:aa63048a662dd766734726542dba0f27a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a216c8a3e91a659b6ad5f3de09bbf8ff0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a216c8a3e91a659b6ad5f3de09bbf8ff0">authority</a></td></tr>
+<tr class="separator:a216c8a3e91a659b6ad5f3de09bbf8ff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cfc1a2d2dab43a5bddc26df4801721b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a8cfc1a2d2dab43a5bddc26df4801721b">te_trailers</a></td></tr>
+<tr class="separator:a8cfc1a2d2dab43a5bddc26df4801721b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4169f3d34c6e55c4bba43a86241bf1ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a4169f3d34c6e55c4bba43a86241bf1ea">content_type</a></td></tr>
+<tr class="separator:a4169f3d34c6e55c4bba43a86241bf1ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab58bbaa2f8f054f606d919abce3f4716"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ab58bbaa2f8f054f606d919abce3f4716">user_agent</a></td></tr>
+<tr class="separator:ab58bbaa2f8f054f606d919abce3f4716"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab616ade799853e16e5e35ee3a16ffbc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aab616ade799853e16e5e35ee3a16ffbc">sent_authority</a></td></tr>
+<tr class="separator:aab616ade799853e16e5e35ee3a16ffbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bda5a1466231baa3df0059573579b9b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a7bda5a1466231baa3df0059573579b9b">got_initial_metadata</a></td></tr>
+<tr class="separator:a7bda5a1466231baa3df0059573579b9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a77f05f0ebe7e2fa851cb29f4175fd2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a5a77f05f0ebe7e2fa851cb29f4175fd2">recv_ops</a></td></tr>
+<tr class="separator:a5a77f05f0ebe7e2fa851cb29f4175fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c7f4d12b26ecd073c992c56fa9c098d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a3c7f4d12b26ecd073c992c56fa9c098d">on_done_recv</a></td></tr>
+<tr class="memdesc:a3c7f4d12b26ecd073c992c56fa9c098d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Closure to call when finished with the hc_on_recv hook. <a href="#a3c7f4d12b26ecd073c992c56fa9c098d">More...</a><br/></td></tr>
+<tr class="separator:a3c7f4d12b26ecd073c992c56fa9c098d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0f1ff70c9a8a72f5eb2e778fe709baf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ab0f1ff70c9a8a72f5eb2e778fe709baf">hc_on_recv</a></td></tr>
+<tr class="memdesc:ab0f1ff70c9a8a72f5eb2e778fe709baf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive closures are chained: we inject this closure as the on_done_recv up-call on transport_op, and remember to call our on_done_recv member after handling it. <a href="#ab0f1ff70c9a8a72f5eb2e778fe709baf">More...</a><br/></td></tr>
+<tr class="separator:ab0f1ff70c9a8a72f5eb2e778fe709baf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6bd5678f8f7fb5e1c91f0b98ced36147"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a6bd5678f8f7fb5e1c91f0b98ced36147">got_initial_metadata</a></td></tr>
+<tr class="separator:a6bd5678f8f7fb5e1c91f0b98ced36147"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb1130d03f1fd0db1cf0d8d1fc10866e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#acb1130d03f1fd0db1cf0d8d1fc10866e">seen_path</a></td></tr>
+<tr class="separator:acb1130d03f1fd0db1cf0d8d1fc10866e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea6244f4fd9d2e7ccb5615b9f5ea5fe0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aea6244f4fd9d2e7ccb5615b9f5ea5fe0">seen_post</a></td></tr>
+<tr class="separator:aea6244f4fd9d2e7ccb5615b9f5ea5fe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b65de65391e41536ccf959f6b6a751d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a8b65de65391e41536ccf959f6b6a751d">sent_status</a></td></tr>
+<tr class="separator:a8b65de65391e41536ccf959f6b6a751d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a502cf8ae568f38ae501877458e399796"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a502cf8ae568f38ae501877458e399796">seen_scheme</a></td></tr>
+<tr class="separator:a502cf8ae568f38ae501877458e399796"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54d050afd0c9cc8d05a561034602f280"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a54d050afd0c9cc8d05a561034602f280">seen_te_trailers</a></td></tr>
+<tr class="separator:a54d050afd0c9cc8d05a561034602f280"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f3505d88df4cba5a1ed776c46b88b7e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a5f3505d88df4cba5a1ed776c46b88b7e">seen_authority</a></td></tr>
+<tr class="separator:a5f3505d88df4cba5a1ed776c46b88b7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a449389cf74cdadc8a00b52990c7052d5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a449389cf74cdadc8a00b52990c7052d5">hs_on_recv</a></td></tr>
+<tr class="memdesc:a449389cf74cdadc8a00b52990c7052d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Receive closures are chained: we inject this closure as the on_done_recv up-call on transport_op, and remember to call our on_done_recv member after handling it. <a href="#a449389cf74cdadc8a00b52990c7052d5">More...</a><br/></td></tr>
+<tr class="separator:a449389cf74cdadc8a00b52990c7052d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5512e8a6ddade275bc9b64ef48de3036"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a5512e8a6ddade275bc9b64ef48de3036">call</a></td></tr>
+<tr class="separator:a5512e8a6ddade275bc9b64ef48de3036"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6bcb3a806a24c9818f835251b97c01f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a6bcb3a806a24c9818f835251b97c01f8">path</a></td></tr>
+<tr class="separator:a6bcb3a806a24c9818f835251b97c01f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a253926f346f7783d43ad5791ac70bba2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a253926f346f7783d43ad5791ac70bba2">cq_new</a></td></tr>
+<tr class="separator:a253926f346f7783d43ad5791ac70bba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58e1bd0d7508078f1e2ffae518f284c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a58e1bd0d7508078f1e2ffae518f284c9">recv_state</a></td></tr>
+<tr class="separator:a58e1bd0d7508078f1e2ffae518f284c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa02e9d60f24965068bc073ec4870bcb4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#aa02e9d60f24965068bc073ec4870bcb4">server_on_recv</a></td></tr>
+<tr class="separator:aa02e9d60f24965068bc073ec4870bcb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a1ef01585059d467002ce70f6fa03d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#a2a1ef01585059d467002ce70f6fa03d1">kill_zombie_closure</a></td></tr>
+<tr class="separator:a2a1ef01585059d467002ce70f6fa03d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad76af7080f636ebaa53a1575af62094e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcall__data.html">call_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__data.html#ad76af7080f636ebaa53a1575af62094e">pending_next</a></td></tr>
+<tr class="separator:ad76af7080f636ebaa53a1575af62094e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab21ef8aafd3c095825805e29e69670ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> call_data::async_setup_task</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a216c8a3e91a659b6ad5f3de09bbf8ff0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::authority</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5512e8a6ddade275bc9b64ef48de3036"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* call_data::call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9f593ec03211bdc3ede0b4da81d4354f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> call_data::compression_algorithm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Compression algorithm we'll try to use. </p>
+<p>It may be given by incoming metadata, or by the channel's default compression settings. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad33eb76b6d73d8a4475ff69ff4e8964c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::compression_algorithm_storage</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4169f3d34c6e55c4bba43a86241bf1ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::content_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a253926f346f7783d43ad5791ac70bba2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* call_data::cq_new</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a163b0cfa0e971a064e4ad6f35001f8ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* call_data::creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ca8837431c3942aa3b18092e314632c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> call_data::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a178c22c4c266e3ffd0583f3ed9bc749f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::details</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7042d8feb119d4fcce1258c5eddca8ff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a>* call_data::elem</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6bd5678f8f7fb5e1c91f0b98ced36147"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::got_initial_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7bda5a1466231baa3df0059573579b9b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::got_initial_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a69baa5f9149f7edadc3c8e5fc2c82aa8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::has_compression_algorithm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>If true, contents of <em>compression_algorithm</em> are authoritative. </p>
+
+</div>
+</div>
+<a class="anchor" id="ab0f1ff70c9a8a72f5eb2e778fe709baf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> call_data::hc_on_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Receive closures are chained: we inject this closure as the on_done_recv up-call on transport_op, and remember to call our on_done_recv member after handling it. </p>
+
+</div>
+</div>
+<a class="anchor" id="a5b3ab9bd0e3c549bf9ad739f0011b995"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> * call_data::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a449389cf74cdadc8a00b52990c7052d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> call_data::hs_on_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Receive closures are chained: we inject this closure as the on_done_recv up-call on transport_op, and remember to call our on_done_recv member after handling it. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2a1ef01585059d467002ce70f6fa03d1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> call_data::kill_zombie_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0cb931b8950cc5841edf1156ca861600"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::md_links[4]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a296c3fce88125964cfc50c927249bc4a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d9cd71936be176040c5f69a78d695b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* call_data::method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa671a127b29c32228f221a6121515a64"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> call_data::mu_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>protects state </p>
+
+</div>
+</div>
+<a class="anchor" id="a3c7f4d12b26ecd073c992c56fa9c098d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> * call_data::on_done_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Closure to call when finished with the hc_on_recv hook. </p>
+<p>Closure to call when finished with the hs_on_recv hook. </p>
+
+</div>
+</div>
+<a class="anchor" id="a0d259211de98a88e11c71fa93abd2877"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> call_data::op</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa6841afd5ac22f2538e950688f8e67b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t call_data::op_md_idx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6bcb3a806a24c9818f835251b97c01f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* call_data::path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad76af7080f636ebaa53a1575af62094e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcall__data.html">call_data</a>* call_data::pending_next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a96231ab5cca907d5638687fc2d64cccb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* call_data::picked_channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab3a66a414a73ad49d82a87935ec0c08e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* call_data::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a77f05f0ebe7e2fa851cb29f4175fd2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> * call_data::recv_ops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58e1bd0d7508078f1e2ffae518f284c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>* call_data::recv_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a69fca2329317c8cf3d9c215334b2aa40"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::remaining_slice_bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Input data to be read, as per BEGIN_MESSAGE. </p>
+
+</div>
+</div>
+<a class="anchor" id="aa63048a662dd766734726542dba0f27a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a74f306e56988bd7e20d0116829ce4128"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::security_context_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5f3505d88df4cba5a1ed776c46b88b7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::seen_authority</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb1130d03f1fd0db1cf0d8d1fc10866e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::seen_path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea6244f4fd9d2e7ccb5615b9f5ea5fe0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::seen_post</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a502cf8ae568f38ae501877458e399796"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::seen_scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a54d050afd0c9cc8d05a561034602f280"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::seen_te_trailers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab616ade799853e16e5e35ee3a16ffbc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::sent_authority</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aded44c7ecaa861e2a4a39380b172368a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::sent_initial_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8b65de65391e41536ccf959f6b6a751d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> call_data::sent_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa02e9d60f24965068bc073ec4870bcb4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> call_data::server_on_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a765c539d2737d435cf434241edda82f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> call_data::slices</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Buffers up input slices to be compressed. </p>
+
+</div>
+</div>
+<a class="anchor" id="a394da9a4876df32b91b8891303695a5d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="client__channel_8c.html#a6ca2e6dbf0562417ab7c66e8907a56b1">call_state</a> call_data::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>the current state of a call - see call_state </p>
+
+</div>
+</div>
+<a class="anchor" id="af1e73bf35274521a98f39316fddf3deb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a68077448625c53fa5dab0a717c0a77b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a>* call_data::subchannel_call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8cfc1a2d2dab43a5bddc26df4801721b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::te_trailers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab6ed893c5caa5b86338edf8b97bd77d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::unused</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab58bbaa2f8f054f606d919abce3f4716"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> call_data::user_agent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95c7079af1a663431de6bfe8e919cff7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> call_data::waiting_op</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fccfa4c3448bcfd28f80b2caad5485b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int call_data::written_initial_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Already processed initial md? </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/security/<a class="el" href="client__auth__filter_8c.html">client_auth_filter.c</a></li>
+<li>src/core/security/<a class="el" href="server__auth__filter_8c.html">server_auth_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="client__channel_8c.html">client_channel.c</a></li>
+<li>src/core/channel/<a class="el" href="compress__filter_8c.html">compress_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="http__client__filter_8c.html">http_client_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="http__server__filter_8c.html">http_server_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="noop__filter_8c.html">noop_filter.c</a></li>
+<li>src/core/surface/<a class="el" href="lame__client_8c.html">lame_client.c</a></li>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structcall__link.html b/doc/ref/core.internal/html/structcall__link.html
new file mode 100644
index 0000000000..a509c9e408
--- /dev/null
+++ b/doc/ref/core.internal/html/structcall__link.html
@@ -0,0 +1,134 @@
+<!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: call_link 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">call_link Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a61d52b76dfba4d08d6c453392dea6947"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcall__data.html">call_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__link.html#a61d52b76dfba4d08d6c453392dea6947">next</a></td></tr>
+<tr class="separator:a61d52b76dfba4d08d6c453392dea6947"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbc2f63926a688bd3fc03f5df8705bc3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcall__data.html">call_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcall__link.html#abbc2f63926a688bd3fc03f5df8705bc3">prev</a></td></tr>
+<tr class="separator:abbc2f63926a688bd3fc03f5df8705bc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a61d52b76dfba4d08d6c453392dea6947"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcall__data.html">call_data</a>* call_link::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abbc2f63926a688bd3fc03f5df8705bc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcall__data.html">call_data</a>* call_link::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structcensus__context.html b/doc/ref/core.internal/html/structcensus__context.html
new file mode 100644
index 0000000000..dcd1468228
--- /dev/null
+++ b/doc/ref/core.internal/html/structcensus__context.html
@@ -0,0 +1,136 @@
+<!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: census_context 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">census_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="census_2context_8h_source.html">context.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:ab46ba00da079c14fed8259bae560fdac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcensus__context.html#ab46ba00da079c14fed8259bae560fdac">op_id</a></td></tr>
+<tr class="separator:ab46ba00da079c14fed8259bae560fdac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2f543e5253035ca31b883c23453c918"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcensus__context.html#af2f543e5253035ca31b883c23453c918">trace_id</a></td></tr>
+<tr class="separator:af2f543e5253035ca31b883c23453c918"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab46ba00da079c14fed8259bae560fdac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> census_context::op_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2f543e5253035ca31b883c23453c918"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> census_context::trace_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/census/<a class="el" href="census_2context_8h_source.html">context.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>
diff --git a/doc/ref/core.internal/html/structcensus__stat.html b/doc/ref/core.internal/html/structcensus__stat.html
new file mode 100644
index 0000000000..9153bd8c11
--- /dev/null
+++ b/doc/ref/core.internal/html/structcensus__stat.html
@@ -0,0 +1,136 @@
+<!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: census_stat 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">census_stat Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="census_8h_source.html">census.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:a1151cb5a250db9b70ba8fc13453abcf3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcensus__stat.html#a1151cb5a250db9b70ba8fc13453abcf3">id</a></td></tr>
+<tr class="separator:a1151cb5a250db9b70ba8fc13453abcf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3daa951eaf025870b0ab4b63343fe179"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcensus__stat.html#a3daa951eaf025870b0ab4b63343fe179">value</a></td></tr>
+<tr class="separator:a3daa951eaf025870b0ab4b63343fe179"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1151cb5a250db9b70ba8fc13453abcf3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int census_stat::id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3daa951eaf025870b0ab4b63343fe179"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double census_stat::value</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="census_8h_source.html">census.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>
diff --git a/doc/ref/core.internal/html/structchannel__broadcaster.html b/doc/ref/core.internal/html/structchannel__broadcaster.html
new file mode 100644
index 0000000000..a33724e43d
--- /dev/null
+++ b/doc/ref/core.internal/html/structchannel__broadcaster.html
@@ -0,0 +1,134 @@
+<!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: channel_broadcaster 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">channel_broadcaster Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ad8aee8e6b39c0a74c47bc518fe60e0d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__broadcaster.html#ad8aee8e6b39c0a74c47bc518fe60e0d7">channels</a></td></tr>
+<tr class="separator:ad8aee8e6b39c0a74c47bc518fe60e0d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b95a339b9c30a54d2f33b336be1c0c9"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__broadcaster.html#a0b95a339b9c30a54d2f33b336be1c0c9">num_channels</a></td></tr>
+<tr class="separator:a0b95a339b9c30a54d2f33b336be1c0c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad8aee8e6b39c0a74c47bc518fe60e0d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>** channel_broadcaster::channels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0b95a339b9c30a54d2f33b336be1c0c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t channel_broadcaster::num_channels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structchannel__data.html b/doc/ref/core.internal/html/structchannel__data.html
new file mode 100644
index 0000000000..ff54b2c8e1
--- /dev/null
+++ b/doc/ref/core.internal/html/structchannel__data.html
@@ -0,0 +1,849 @@
+<!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: channel_data 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">channel_data Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a78473c478d6fbbb716fb77864c94efd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a78473c478d6fbbb716fb77864c94efd6">security_connector</a></td></tr>
+<tr class="separator:a78473c478d6fbbb716fb77864c94efd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad12b240dea3a1193fa08327ef1e4553e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ad12b240dea3a1193fa08327ef1e4553e">md_ctx</a></td></tr>
+<tr class="separator:ad12b240dea3a1193fa08327ef1e4553e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65b7bac5d0844808a6d6b399ca1d234f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a65b7bac5d0844808a6d6b399ca1d234f">authority_string</a></td></tr>
+<tr class="separator:a65b7bac5d0844808a6d6b399ca1d234f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b2675d97ec1d95dc4cde4db5b00e0e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a3b2675d97ec1d95dc4cde4db5b00e0e7">path_string</a></td></tr>
+<tr class="separator:a3b2675d97ec1d95dc4cde4db5b00e0e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a214f33e78aafbbac774ea95c2e9dc8b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a214f33e78aafbbac774ea95c2e9dc8b3">error_msg_key</a></td></tr>
+<tr class="separator:a214f33e78aafbbac774ea95c2e9dc8b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa193724e83bed60e8f8f1a7a1cb0ca0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#aa193724e83bed60e8f8f1a7a1cb0ca0f">status_key</a></td></tr>
+<tr class="separator:aa193724e83bed60e8f8f1a7a1cb0ca0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a524d21c79ca4cf1ff1833c50197a9f1b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a524d21c79ca4cf1ff1833c50197a9f1b">security_connector</a></td></tr>
+<tr class="separator:a524d21c79ca4cf1ff1833c50197a9f1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ccd22d950d3fda54a0f338d55d1f813"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a8ccd22d950d3fda54a0f338d55d1f813">mdctx</a></td></tr>
+<tr class="memdesc:a8ccd22d950d3fda54a0f338d55d1f813"><td class="mdescLeft">&#160;</td><td class="mdescRight">metadata context for this channel <a href="#a8ccd22d950d3fda54a0f338d55d1f813">More...</a><br/></td></tr>
+<tr class="separator:a8ccd22d950d3fda54a0f338d55d1f813"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cf393ab5da1a500d6c6f8543c408682"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a8cf393ab5da1a500d6c6f8543c408682">resolver</a></td></tr>
+<tr class="memdesc:a8cf393ab5da1a500d6c6f8543c408682"><td class="mdescLeft">&#160;</td><td class="mdescRight">resolver for this channel <a href="#a8cf393ab5da1a500d6c6f8543c408682">More...</a><br/></td></tr>
+<tr class="separator:a8cf393ab5da1a500d6c6f8543c408682"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a185d2abf35cf1fbdaa13b4fb097bda5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a185d2abf35cf1fbdaa13b4fb097bda5e">master</a></td></tr>
+<tr class="memdesc:a185d2abf35cf1fbdaa13b4fb097bda5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">master channel - the <a class="el" href="structgrpc__channel.html">grpc_channel</a> instance that ultimately owns this <a class="el" href="structchannel__data.html">channel_data</a> via its channel stack. <a href="#a185d2abf35cf1fbdaa13b4fb097bda5e">More...</a><br/></td></tr>
+<tr class="separator:a185d2abf35cf1fbdaa13b4fb097bda5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a925aa059f74c20ba06718d45b78382af"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a925aa059f74c20ba06718d45b78382af">mu_config</a></td></tr>
+<tr class="memdesc:a925aa059f74c20ba06718d45b78382af"><td class="mdescLeft">&#160;</td><td class="mdescRight">mutex protecting client configuration, including all variables below in this data structure <a href="#a925aa059f74c20ba06718d45b78382af">More...</a><br/></td></tr>
+<tr class="separator:a925aa059f74c20ba06718d45b78382af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cbf28a9634e67af5aea0af6363e4d94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a3cbf28a9634e67af5aea0af6363e4d94">lb_policy</a></td></tr>
+<tr class="memdesc:a3cbf28a9634e67af5aea0af6363e4d94"><td class="mdescLeft">&#160;</td><td class="mdescRight">currently active load balancer - guarded by mu_config <a href="#a3cbf28a9634e67af5aea0af6363e4d94">More...</a><br/></td></tr>
+<tr class="separator:a3cbf28a9634e67af5aea0af6363e4d94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b20db607d1a87fa17b260cac4a121f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a2b20db607d1a87fa17b260cac4a121f0">incoming_configuration</a></td></tr>
+<tr class="memdesc:a2b20db607d1a87fa17b260cac4a121f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">incoming configuration - set by resolver.next guarded by mu_config <a href="#a2b20db607d1a87fa17b260cac4a121f0">More...</a><br/></td></tr>
+<tr class="separator:a2b20db607d1a87fa17b260cac4a121f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac701a31115f0dcb435265a106baf619f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ac701a31115f0dcb435265a106baf619f">waiting_for_config_closures</a></td></tr>
+<tr class="memdesc:ac701a31115f0dcb435265a106baf619f"><td class="mdescLeft">&#160;</td><td class="mdescRight">a list of closures that are all waiting for config to come in <a href="#ac701a31115f0dcb435265a106baf619f">More...</a><br/></td></tr>
+<tr class="separator:ac701a31115f0dcb435265a106baf619f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a8db474fbde3443ad862229ef3be367"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a5a8db474fbde3443ad862229ef3be367">on_config_changed</a></td></tr>
+<tr class="memdesc:a5a8db474fbde3443ad862229ef3be367"><td class="mdescLeft">&#160;</td><td class="mdescRight">resolver callback <a href="#a5a8db474fbde3443ad862229ef3be367">More...</a><br/></td></tr>
+<tr class="separator:a5a8db474fbde3443ad862229ef3be367"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab56a403060ce2596d204cc024baea99d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ab56a403060ce2596d204cc024baea99d">state_tracker</a></td></tr>
+<tr class="memdesc:ab56a403060ce2596d204cc024baea99d"><td class="mdescLeft">&#160;</td><td class="mdescRight">connectivity state being tracked <a href="#ab56a403060ce2596d204cc024baea99d">More...</a><br/></td></tr>
+<tr class="separator:ab56a403060ce2596d204cc024baea99d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fe0f0347e1953376cd84db85bba9917"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a3fe0f0347e1953376cd84db85bba9917">exit_idle_when_lb_policy_arrives</a></td></tr>
+<tr class="memdesc:a3fe0f0347e1953376cd84db85bba9917"><td class="mdescLeft">&#160;</td><td class="mdescRight">when an lb_policy arrives, should we try to exit idle <a href="#a3fe0f0347e1953376cd84db85bba9917">More...</a><br/></td></tr>
+<tr class="separator:a3fe0f0347e1953376cd84db85bba9917"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac98d4251e7919399dc6504b3ac6d8977"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ac98d4251e7919399dc6504b3ac6d8977">pollset_set</a></td></tr>
+<tr class="memdesc:ac98d4251e7919399dc6504b3ac6d8977"><td class="mdescLeft">&#160;</td><td class="mdescRight">pollset_set of interested parties in a new connection <a href="#ac98d4251e7919399dc6504b3ac6d8977">More...</a><br/></td></tr>
+<tr class="separator:ac98d4251e7919399dc6504b3ac6d8977"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9c1ff3982fc4510f367df5a35960abcb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a9c1ff3982fc4510f367df5a35960abcb">mdstr_request_compression_algorithm_key</a></td></tr>
+<tr class="memdesc:a9c1ff3982fc4510f367df5a35960abcb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Metadata key for the incoming (requested) compression algorithm. <a href="#a9c1ff3982fc4510f367df5a35960abcb">More...</a><br/></td></tr>
+<tr class="separator:a9c1ff3982fc4510f367df5a35960abcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb493774aec5abf500f8ef36b99553d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#aeb493774aec5abf500f8ef36b99553d6">mdstr_outgoing_compression_algorithm_key</a></td></tr>
+<tr class="memdesc:aeb493774aec5abf500f8ef36b99553d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Metadata key for the outgoing (used) compression algorithm. <a href="#aeb493774aec5abf500f8ef36b99553d6">More...</a><br/></td></tr>
+<tr class="separator:aeb493774aec5abf500f8ef36b99553d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4af222359dc97dc96780402413bb015d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a4af222359dc97dc96780402413bb015d">mdelem_compression_algorithms</a> [<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">GRPC_COMPRESS_ALGORITHMS_COUNT</a>]</td></tr>
+<tr class="memdesc:a4af222359dc97dc96780402413bb015d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Precomputed metadata elements for all available compression algorithms. <a href="#a4af222359dc97dc96780402413bb015d">More...</a><br/></td></tr>
+<tr class="separator:a4af222359dc97dc96780402413bb015d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc452310378fb56c38c296cdfdde14e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#acc452310378fb56c38c296cdfdde14e3">default_compression_algorithm</a></td></tr>
+<tr class="memdesc:acc452310378fb56c38c296cdfdde14e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">The default, channel-level, compression algorithm. <a href="#acc452310378fb56c38c296cdfdde14e3">More...</a><br/></td></tr>
+<tr class="separator:acc452310378fb56c38c296cdfdde14e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a141ad0e139c47b491a219ad68b263c2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a141ad0e139c47b491a219ad68b263c2b">te_trailers</a></td></tr>
+<tr class="separator:a141ad0e139c47b491a219ad68b263c2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78079d15b762dcc791e6e996951d9f6a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a78079d15b762dcc791e6e996951d9f6a">method</a></td></tr>
+<tr class="separator:a78079d15b762dcc791e6e996951d9f6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7a621172aad5d1876691fb987a670e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ac7a621172aad5d1876691fb987a670e6">scheme</a></td></tr>
+<tr class="separator:ac7a621172aad5d1876691fb987a670e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d6e2d61b1f1dc47be825afbdb0b1176"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a7d6e2d61b1f1dc47be825afbdb0b1176">content_type</a></td></tr>
+<tr class="separator:a7d6e2d61b1f1dc47be825afbdb0b1176"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed19c41ead3b51daafdbf78a983c1877"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#aed19c41ead3b51daafdbf78a983c1877">status</a></td></tr>
+<tr class="separator:aed19c41ead3b51daafdbf78a983c1877"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51d18a12253f4520179c5f04cc9f4c48"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a51d18a12253f4520179c5f04cc9f4c48">default_authority</a></td></tr>
+<tr class="separator:a51d18a12253f4520179c5f04cc9f4c48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fd48ef186ac5f36381e9e873a1e2602"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a9fd48ef186ac5f36381e9e873a1e2602">user_agent</a></td></tr>
+<tr class="memdesc:a9fd48ef186ac5f36381e9e873a1e2602"><td class="mdescLeft">&#160;</td><td class="mdescRight">complete user agent mdelem <a href="#a9fd48ef186ac5f36381e9e873a1e2602">More...</a><br/></td></tr>
+<tr class="separator:a9fd48ef186ac5f36381e9e873a1e2602"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05461a751cad059d57ccd5ed3c698fd7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a05461a751cad059d57ccd5ed3c698fd7">method_post</a></td></tr>
+<tr class="separator:a05461a751cad059d57ccd5ed3c698fd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76cf628a9f2165700655595e349dc71c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a76cf628a9f2165700655595e349dc71c">http_scheme</a></td></tr>
+<tr class="separator:a76cf628a9f2165700655595e349dc71c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64d3d8ab7ed7ca08eb8e1e1823051d97"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a64d3d8ab7ed7ca08eb8e1e1823051d97">https_scheme</a></td></tr>
+<tr class="separator:a64d3d8ab7ed7ca08eb8e1e1823051d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24aa2dd2d7925c382b290e2417efabc7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a24aa2dd2d7925c382b290e2417efabc7">grpc_scheme</a></td></tr>
+<tr class="separator:a24aa2dd2d7925c382b290e2417efabc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d2922163981387d63fcc086acc40bc1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a5d2922163981387d63fcc086acc40bc1">status_ok</a></td></tr>
+<tr class="separator:a5d2922163981387d63fcc086acc40bc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa61798f024b686a60598011b688a5302"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#aa61798f024b686a60598011b688a5302">status_not_found</a></td></tr>
+<tr class="separator:aa61798f024b686a60598011b688a5302"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad664631571a7160913f62e95368bbb2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ad664631571a7160913f62e95368bbb2d">path_key</a></td></tr>
+<tr class="separator:ad664631571a7160913f62e95368bbb2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abff9ead49754255e5fe5f5767634b553"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#abff9ead49754255e5fe5f5767634b553">authority_key</a></td></tr>
+<tr class="separator:abff9ead49754255e5fe5f5767634b553"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf1f4e1f7664686d2c41072763080cf6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#acf1f4e1f7664686d2c41072763080cf6">host_key</a></td></tr>
+<tr class="separator:acf1f4e1f7664686d2c41072763080cf6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5333a0c2b420d203cbe8a1a5e270efb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#af5333a0c2b420d203cbe8a1a5e270efb">unused</a></td></tr>
+<tr class="separator:af5333a0c2b420d203cbe8a1a5e270efb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52e6bd3f94f7bc6b7a5696532f747d8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a52e6bd3f94f7bc6b7a5696532f747d8c">server</a></td></tr>
+<tr class="separator:a52e6bd3f94f7bc6b7a5696532f747d8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace61d17706353a536bd079f18d54564f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#ace61d17706353a536bd079f18d54564f">connectivity_state</a></td></tr>
+<tr class="separator:ace61d17706353a536bd079f18d54564f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa44b8e02dfe6cd2b3823c51f9559dc29"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#aa44b8e02dfe6cd2b3823c51f9559dc29">channel</a></td></tr>
+<tr class="separator:aa44b8e02dfe6cd2b3823c51f9559dc29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cbc7853658b85e4f62f37a71189a3d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structchannel__data.html">channel_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a7cbc7853658b85e4f62f37a71189a3d7">next</a></td></tr>
+<tr class="separator:a7cbc7853658b85e4f62f37a71189a3d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbde4416755c3c9a0b7d0021e8e290c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structchannel__data.html">channel_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#afbde4416755c3c9a0b7d0021e8e290c5">prev</a></td></tr>
+<tr class="separator:afbde4416755c3c9a0b7d0021e8e290c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c63e5d9500bc02961af18685479fc89"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structchannel__registered__method.html">channel_registered_method</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a0c63e5d9500bc02961af18685479fc89">registered_methods</a></td></tr>
+<tr class="separator:a0c63e5d9500bc02961af18685479fc89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a707bff2830ad502cdd36ec18235f12e1"><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="structchannel__data.html#a707bff2830ad502cdd36ec18235f12e1">registered_method_slots</a></td></tr>
+<tr class="separator:a707bff2830ad502cdd36ec18235f12e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa9b814136d8be896321481e78098008b"><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="structchannel__data.html#aa9b814136d8be896321481e78098008b">registered_method_max_probes</a></td></tr>
+<tr class="separator:aa9b814136d8be896321481e78098008b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acecc0d7f7ae20cc71b53692eb20a0a92"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#acecc0d7f7ae20cc71b53692eb20a0a92">finish_destroy_channel_closure</a></td></tr>
+<tr class="separator:acecc0d7f7ae20cc71b53692eb20a0a92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a026ed08d4fb85fff5a0f332d3a35cf17"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__data.html#a026ed08d4fb85fff5a0f332d3a35cf17">channel_connectivity_changed</a></td></tr>
+<tr class="separator:a026ed08d4fb85fff5a0f332d3a35cf17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abff9ead49754255e5fe5f5767634b553"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> * channel_data::authority_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a65b7bac5d0844808a6d6b399ca1d234f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::authority_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa44b8e02dfe6cd2b3823c51f9559dc29"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* channel_data::channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a026ed08d4fb85fff5a0f332d3a35cf17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> channel_data::channel_connectivity_changed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ace61d17706353a536bd079f18d54564f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> channel_data::connectivity_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d6e2d61b1f1dc47be825afbdb0b1176"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> * channel_data::content_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a51d18a12253f4520179c5f04cc9f4c48"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::default_authority</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acc452310378fb56c38c296cdfdde14e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> channel_data::default_compression_algorithm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The default, channel-level, compression algorithm. </p>
+
+</div>
+</div>
+<a class="anchor" id="a214f33e78aafbbac774ea95c2e9dc8b3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::error_msg_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3fe0f0347e1953376cd84db85bba9917"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int channel_data::exit_idle_when_lb_policy_arrives</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>when an lb_policy arrives, should we try to exit idle </p>
+
+</div>
+</div>
+<a class="anchor" id="acecc0d7f7ae20cc71b53692eb20a0a92"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> channel_data::finish_destroy_channel_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a24aa2dd2d7925c382b290e2417efabc7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::grpc_scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf1f4e1f7664686d2c41072763080cf6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::host_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76cf628a9f2165700655595e349dc71c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::http_scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a64d3d8ab7ed7ca08eb8e1e1823051d97"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::https_scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2b20db607d1a87fa17b260cac4a121f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>* channel_data::incoming_configuration</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>incoming configuration - set by resolver.next guarded by mu_config </p>
+
+</div>
+</div>
+<a class="anchor" id="a3cbf28a9634e67af5aea0af6363e4d94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* channel_data::lb_policy</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>currently active load balancer - guarded by mu_config </p>
+
+</div>
+</div>
+<a class="anchor" id="a185d2abf35cf1fbdaa13b4fb097bda5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a> * channel_data::master</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>master channel - the <a class="el" href="structgrpc__channel.html">grpc_channel</a> instance that ultimately owns this <a class="el" href="structchannel__data.html">channel_data</a> via its channel stack. </p>
+<p>We occasionally use this to bump the refcount on the master channel to keep ourselves alive through an asynchronous operation. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad12b240dea3a1193fa08327ef1e4553e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* channel_data::md_ctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ccd22d950d3fda54a0f338d55d1f813"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> * channel_data::mdctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>metadata context for this channel </p>
+
+</div>
+</div>
+<a class="anchor" id="a4af222359dc97dc96780402413bb015d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::mdelem_compression_algorithms[<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9a94d7fc0a8e4a05546d462d53c2b53b8d">GRPC_COMPRESS_ALGORITHMS_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Precomputed metadata elements for all available compression algorithms. </p>
+
+</div>
+</div>
+<a class="anchor" id="aeb493774aec5abf500f8ef36b99553d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::mdstr_outgoing_compression_algorithm_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Metadata key for the outgoing (used) compression algorithm. </p>
+
+</div>
+</div>
+<a class="anchor" id="a9c1ff3982fc4510f367df5a35960abcb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::mdstr_request_compression_algorithm_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Metadata key for the incoming (requested) compression algorithm. </p>
+
+</div>
+</div>
+<a class="anchor" id="a78079d15b762dcc791e6e996951d9f6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a05461a751cad059d57ccd5ed3c698fd7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::method_post</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a925aa059f74c20ba06718d45b78382af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> channel_data::mu_config</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mutex protecting client configuration, including all variables below in this data structure </p>
+
+</div>
+</div>
+<a class="anchor" id="a7cbc7853658b85e4f62f37a71189a3d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structchannel__data.html">channel_data</a>* channel_data::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a8db474fbde3443ad862229ef3be367"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> channel_data::on_config_changed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>resolver callback </p>
+
+</div>
+</div>
+<a class="anchor" id="ad664631571a7160913f62e95368bbb2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> * channel_data::path_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3b2675d97ec1d95dc4cde4db5b00e0e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::path_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac98d4251e7919399dc6504b3ac6d8977"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> channel_data::pollset_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pollset_set of interested parties in a new connection </p>
+
+</div>
+</div>
+<a class="anchor" id="afbde4416755c3c9a0b7d0021e8e290c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structchannel__data.html">channel_data</a>* channel_data::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa9b814136d8be896321481e78098008b"></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> channel_data::registered_method_max_probes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a707bff2830ad502cdd36ec18235f12e1"></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> channel_data::registered_method_slots</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c63e5d9500bc02961af18685479fc89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structchannel__registered__method.html">channel_registered_method</a>* channel_data::registered_methods</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8cf393ab5da1a500d6c6f8543c408682"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>* channel_data::resolver</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>resolver for this channel </p>
+
+</div>
+</div>
+<a class="anchor" id="ac7a621172aad5d1876691fb987a670e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a524d21c79ca4cf1ff1833c50197a9f1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* channel_data::security_connector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78473c478d6fbbb716fb77864c94efd6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>* channel_data::security_connector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52e6bd3f94f7bc6b7a5696532f747d8c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* channel_data::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab56a403060ce2596d204cc024baea99d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> channel_data::state_tracker</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>connectivity state being tracked </p>
+
+</div>
+</div>
+<a class="anchor" id="aed19c41ead3b51daafdbf78a983c1877"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa193724e83bed60e8f8f1a7a1cb0ca0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_data::status_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa61798f024b686a60598011b688a5302"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::status_not_found</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5d2922163981387d63fcc086acc40bc1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::status_ok</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a141ad0e139c47b491a219ad68b263c2b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> * channel_data::te_trailers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af5333a0c2b420d203cbe8a1a5e270efb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int channel_data::unused</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9fd48ef186ac5f36381e9e873a1e2602"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* channel_data::user_agent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>complete user agent mdelem </p>
+
+</div>
+</div>
+<a class="anchor" id="ac701a31115f0dcb435265a106baf619f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* channel_data::waiting_for_config_closures</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>a list of closures that are all waiting for config to come in </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/security/<a class="el" href="client__auth__filter_8c.html">client_auth_filter.c</a></li>
+<li>src/core/security/<a class="el" href="server__auth__filter_8c.html">server_auth_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="client__channel_8c.html">client_channel.c</a></li>
+<li>src/core/channel/<a class="el" href="compress__filter_8c.html">compress_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="http__client__filter_8c.html">http_client_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="http__server__filter_8c.html">http_server_filter.c</a></li>
+<li>src/core/channel/<a class="el" href="noop__filter_8c.html">noop_filter.c</a></li>
+<li>src/core/surface/<a class="el" href="lame__client_8c.html">lame_client.c</a></li>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structchannel__registered__method.html b/doc/ref/core.internal/html/structchannel__registered__method.html
new file mode 100644
index 0000000000..8dc0635202
--- /dev/null
+++ b/doc/ref/core.internal/html/structchannel__registered__method.html
@@ -0,0 +1,148 @@
+<!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: channel_registered_method 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">channel_registered_method Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a3d7e5ca9b211c76e489ddc6602da3509"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structregistered__method.html">registered_method</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__registered__method.html#a3d7e5ca9b211c76e489ddc6602da3509">server_registered_method</a></td></tr>
+<tr class="separator:a3d7e5ca9b211c76e489ddc6602da3509"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d2b4e40ba59b8b98e1b06b94f7345f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__registered__method.html#a7d2b4e40ba59b8b98e1b06b94f7345f1">method</a></td></tr>
+<tr class="separator:a7d2b4e40ba59b8b98e1b06b94f7345f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f9cc4376a5b8955a060f089720f2e9d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structchannel__registered__method.html#a6f9cc4376a5b8955a060f089720f2e9d">host</a></td></tr>
+<tr class="separator:a6f9cc4376a5b8955a060f089720f2e9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6f9cc4376a5b8955a060f089720f2e9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_registered_method::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d2b4e40ba59b8b98e1b06b94f7345f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* channel_registered_method::method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3d7e5ca9b211c76e489ddc6602da3509"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structregistered__method.html">registered_method</a>* channel_registered_method::server_registered_method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structcompleted__request.html b/doc/ref/core.internal/html/structcompleted__request.html
new file mode 100644
index 0000000000..e139a61348
--- /dev/null
+++ b/doc/ref/core.internal/html/structcompleted__request.html
@@ -0,0 +1,148 @@
+<!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: completed_request 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">completed_request Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a2abd9edaf87e7b33717d655f9651a26a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompleted__request.html#a2abd9edaf87e7b33717d655f9651a26a">on_complete</a></td></tr>
+<tr class="separator:a2abd9edaf87e7b33717d655f9651a26a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f293e59a3e7c87f6cc59694a9b567ac"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompleted__request.html#a0f293e59a3e7c87f6cc59694a9b567ac">user_data</a></td></tr>
+<tr class="separator:a0f293e59a3e7c87f6cc59694a9b567ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5512a2663c0d87f40b1e493b0bf9dd6b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompleted__request.html#a5512a2663c0d87f40b1e493b0bf9dd6b">success</a></td></tr>
+<tr class="separator:a5512a2663c0d87f40b1e493b0bf9dd6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a2abd9edaf87e7b33717d655f9651a26a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a> completed_request::on_complete</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5512a2663c0d87f40b1e493b0bf9dd6b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int completed_request::success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0f293e59a3e7c87f6cc59694a9b567ac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* completed_request::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8c.html">call.c</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>
diff --git a/doc/ref/core.internal/html/structcompute__engine__detector.html b/doc/ref/core.internal/html/structcompute__engine__detector.html
new file mode 100644
index 0000000000..bf794e3356
--- /dev/null
+++ b/doc/ref/core.internal/html/structcompute__engine__detector.html
@@ -0,0 +1,148 @@
+<!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: compute_engine_detector 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">compute_engine_detector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:aadec91057716658d818c9dd3ead90ccd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompute__engine__detector.html#aadec91057716658d818c9dd3ead90ccd">pollset</a></td></tr>
+<tr class="separator:aadec91057716658d818c9dd3ead90ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b82128e01e4041639ff7e3f5286207d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompute__engine__detector.html#a1b82128e01e4041639ff7e3f5286207d">is_done</a></td></tr>
+<tr class="separator:a1b82128e01e4041639ff7e3f5286207d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a952441665ae667415c4eed612ec5f25b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structcompute__engine__detector.html#a952441665ae667415c4eed612ec5f25b">success</a></td></tr>
+<tr class="separator:a952441665ae667415c4eed612ec5f25b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1b82128e01e4041639ff7e3f5286207d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int compute_engine_detector::is_done</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aadec91057716658d818c9dd3ead90ccd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> compute_engine_detector::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a952441665ae667415c4eed612ec5f25b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int compute_engine_detector::success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="google__default__credentials_8c.html">google_default_credentials.c</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>
diff --git a/doc/ref/core.internal/html/structconnected__channel__call__data.html b/doc/ref/core.internal/html/structconnected__channel__call__data.html
new file mode 100644
index 0000000000..95d6b7a214
--- /dev/null
+++ b/doc/ref/core.internal/html/structconnected__channel__call__data.html
@@ -0,0 +1,120 @@
+<!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: connected_channel_call_data 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">connected_channel_call_data Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ab7364ac5f5abf2c67075fd09e829cffd"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnected__channel__call__data.html#ab7364ac5f5abf2c67075fd09e829cffd">unused</a></td></tr>
+<tr class="separator:ab7364ac5f5abf2c67075fd09e829cffd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab7364ac5f5abf2c67075fd09e829cffd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* connected_channel_call_data::unused</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="connected__channel_8c.html">connected_channel.c</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>
diff --git a/doc/ref/core.internal/html/structconnected__channel__channel__data.html b/doc/ref/core.internal/html/structconnected__channel__channel__data.html
new file mode 100644
index 0000000000..b16d63dc8e
--- /dev/null
+++ b/doc/ref/core.internal/html/structconnected__channel__channel__data.html
@@ -0,0 +1,120 @@
+<!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: connected_channel_channel_data 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">connected_channel_channel_data Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a7f95ecc760083ad9d72bada84f33ca6b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnected__channel__channel__data.html#a7f95ecc760083ad9d72bada84f33ca6b">transport</a></td></tr>
+<tr class="separator:a7f95ecc760083ad9d72bada84f33ca6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7f95ecc760083ad9d72bada84f33ca6b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport.html">grpc_transport</a>* connected_channel_channel_data::transport</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="connected__channel_8c.html">connected_channel.c</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>
diff --git a/doc/ref/core.internal/html/structconnection.html b/doc/ref/core.internal/html/structconnection.html
new file mode 100644
index 0000000000..54ec0732f6
--- /dev/null
+++ b/doc/ref/core.internal/html/structconnection.html
@@ -0,0 +1,140 @@
+<!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: connection 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">connection Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a4f45cf20601ceebe1381dc83f1dbf516"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnection.html#a4f45cf20601ceebe1381dc83f1dbf516">refs</a></td></tr>
+<tr class="memdesc:a4f45cf20601ceebe1381dc83f1dbf516"><td class="mdescLeft">&#160;</td><td class="mdescRight">refcount <a href="#a4f45cf20601ceebe1381dc83f1dbf516">More...</a><br/></td></tr>
+<tr class="separator:a4f45cf20601ceebe1381dc83f1dbf516"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac46b9b593d187793cf2685550b615dc7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnection.html#ac46b9b593d187793cf2685550b615dc7">subchannel</a></td></tr>
+<tr class="memdesc:ac46b9b593d187793cf2685550b615dc7"><td class="mdescLeft">&#160;</td><td class="mdescRight">parent subchannel <a href="#ac46b9b593d187793cf2685550b615dc7">More...</a><br/></td></tr>
+<tr class="separator:ac46b9b593d187793cf2685550b615dc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a4f45cf20601ceebe1381dc83f1dbf516"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int connection::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>refcount </p>
+
+</div>
+</div>
+<a class="anchor" id="ac46b9b593d187793cf2685550b615dc7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* connection::subchannel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>parent subchannel </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel_8c.html">subchannel.c</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>
diff --git a/doc/ref/core.internal/html/structconnector.html b/doc/ref/core.internal/html/structconnector.html
new file mode 100644
index 0000000000..5571c5195e
--- /dev/null
+++ b/doc/ref/core.internal/html/structconnector.html
@@ -0,0 +1,191 @@
+<!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: connector 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">connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a073303affdd652e8688303df9a126bd2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connector.html">grpc_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html#a073303affdd652e8688303df9a126bd2">base</a></td></tr>
+<tr class="separator:a073303affdd652e8688303df9a126bd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2f6962cb7eff201b6b79655d8bace00"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html#ab2f6962cb7eff201b6b79655d8bace00">refs</a></td></tr>
+<tr class="separator:ab2f6962cb7eff201b6b79655d8bace00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83d8a5c7e3b72cdee46c36cca81d5cb0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html#a83d8a5c7e3b72cdee46c36cca81d5cb0">security_connector</a></td></tr>
+<tr class="separator:a83d8a5c7e3b72cdee46c36cca81d5cb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae73053d157c31e9015427d56228e7123"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html#ae73053d157c31e9015427d56228e7123">notify</a></td></tr>
+<tr class="separator:ae73053d157c31e9015427d56228e7123"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3d70fc61b888fcb246a4a307b16c4ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html#ad3d70fc61b888fcb246a4a307b16c4ec">args</a></td></tr>
+<tr class="separator:ad3d70fc61b888fcb246a4a307b16c4ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b15773040e783143121ad19ad3582d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnector.html#a9b15773040e783143121ad19ad3582d8">result</a></td></tr>
+<tr class="separator:a9b15773040e783143121ad19ad3582d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad3d70fc61b888fcb246a4a307b16c4ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> connector::args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a073303affdd652e8688303df9a126bd2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connector.html">grpc_connector</a> connector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae73053d157c31e9015427d56228e7123"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> * connector::notify</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2f6962cb7eff201b6b79655d8bace00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> connector::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b15773040e783143121ad19ad3582d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> * connector::result</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83d8a5c7e3b72cdee46c36cca81d5cb0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>* connector::security_connector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/surface/<a class="el" href="secure__channel__create_8c.html">secure_channel_create.c</a></li>
+<li>src/core/surface/<a class="el" href="channel__create_8c.html">channel_create.c</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>
diff --git a/doc/ref/core.internal/html/structdns__resolver.html b/doc/ref/core.internal/html/structdns__resolver.html
new file mode 100644
index 0000000000..55ce6557b1
--- /dev/null
+++ b/doc/ref/core.internal/html/structdns__resolver.html
@@ -0,0 +1,327 @@
+<!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: dns_resolver 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">dns_resolver Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a135f51d63ab8d730d7ba491f0d94b6f6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#a135f51d63ab8d730d7ba491f0d94b6f6">base</a></td></tr>
+<tr class="memdesc:a135f51d63ab8d730d7ba491f0d94b6f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">base class: must be first <a href="#a135f51d63ab8d730d7ba491f0d94b6f6">More...</a><br/></td></tr>
+<tr class="separator:a135f51d63ab8d730d7ba491f0d94b6f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab33e01167cedc1126007318a3c71238e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#ab33e01167cedc1126007318a3c71238e">refs</a></td></tr>
+<tr class="memdesc:ab33e01167cedc1126007318a3c71238e"><td class="mdescLeft">&#160;</td><td class="mdescRight">refcount <a href="#ab33e01167cedc1126007318a3c71238e">More...</a><br/></td></tr>
+<tr class="separator:ab33e01167cedc1126007318a3c71238e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5670dbafe81b9e38af022bd5cf907fa3"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#a5670dbafe81b9e38af022bd5cf907fa3">name</a></td></tr>
+<tr class="memdesc:a5670dbafe81b9e38af022bd5cf907fa3"><td class="mdescLeft">&#160;</td><td class="mdescRight">name to resolve <a href="#a5670dbafe81b9e38af022bd5cf907fa3">More...</a><br/></td></tr>
+<tr class="separator:a5670dbafe81b9e38af022bd5cf907fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3a4ce330d39e62347c8d230dc0431f4"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#ad3a4ce330d39e62347c8d230dc0431f4">default_port</a></td></tr>
+<tr class="memdesc:ad3a4ce330d39e62347c8d230dc0431f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">default port to use <a href="#ad3a4ce330d39e62347c8d230dc0431f4">More...</a><br/></td></tr>
+<tr class="separator:ad3a4ce330d39e62347c8d230dc0431f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad80a689714c3c2d68bba566d1c5ae236"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#ad80a689714c3c2d68bba566d1c5ae236">subchannel_factory</a></td></tr>
+<tr class="memdesc:ad80a689714c3c2d68bba566d1c5ae236"><td class="mdescLeft">&#160;</td><td class="mdescRight">subchannel factory <a href="#ad80a689714c3c2d68bba566d1c5ae236">More...</a><br/></td></tr>
+<tr class="separator:ad80a689714c3c2d68bba566d1c5ae236"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e7953dbbac44c59c5f8d2946e4295f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#a9e7953dbbac44c59c5f8d2946e4295f7">lb_policy_factory</a> )(<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels, size_t num_subchannels)</td></tr>
+<tr class="memdesc:a9e7953dbbac44c59c5f8d2946e4295f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">load balancing policy factory <a href="#a9e7953dbbac44c59c5f8d2946e4295f7">More...</a><br/></td></tr>
+<tr class="separator:a9e7953dbbac44c59c5f8d2946e4295f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1661d76a33a19a305d5edb1b354ce8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#aa1661d76a33a19a305d5edb1b354ce8a">mu</a></td></tr>
+<tr class="memdesc:aa1661d76a33a19a305d5edb1b354ce8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">mutex guarding the rest of the state <a href="#aa1661d76a33a19a305d5edb1b354ce8a">More...</a><br/></td></tr>
+<tr class="separator:aa1661d76a33a19a305d5edb1b354ce8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc4a241cfa112a6b430d39749a2f6faf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#abc4a241cfa112a6b430d39749a2f6faf">resolving</a></td></tr>
+<tr class="memdesc:abc4a241cfa112a6b430d39749a2f6faf"><td class="mdescLeft">&#160;</td><td class="mdescRight">are we currently resolving? <a href="#abc4a241cfa112a6b430d39749a2f6faf">More...</a><br/></td></tr>
+<tr class="separator:abc4a241cfa112a6b430d39749a2f6faf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf1729e3f0480a378eb4689e6105454b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#aaf1729e3f0480a378eb4689e6105454b">published_version</a></td></tr>
+<tr class="memdesc:aaf1729e3f0480a378eb4689e6105454b"><td class="mdescLeft">&#160;</td><td class="mdescRight">which version of resolved_config have we published? <a href="#aaf1729e3f0480a378eb4689e6105454b">More...</a><br/></td></tr>
+<tr class="separator:aaf1729e3f0480a378eb4689e6105454b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee7098ec311fd223ceb6e57e8bfdd2fc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#aee7098ec311fd223ceb6e57e8bfdd2fc">resolved_version</a></td></tr>
+<tr class="memdesc:aee7098ec311fd223ceb6e57e8bfdd2fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">which version of resolved_config is current? <a href="#aee7098ec311fd223ceb6e57e8bfdd2fc">More...</a><br/></td></tr>
+<tr class="separator:aee7098ec311fd223ceb6e57e8bfdd2fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ed64036e71eb1ee7dc886adb51820d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#a6ed64036e71eb1ee7dc886adb51820d6">next_completion</a></td></tr>
+<tr class="memdesc:a6ed64036e71eb1ee7dc886adb51820d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">pending next completion, or NULL <a href="#a6ed64036e71eb1ee7dc886adb51820d6">More...</a><br/></td></tr>
+<tr class="separator:a6ed64036e71eb1ee7dc886adb51820d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a757b9b42d89d961103798397c2cddefb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#a757b9b42d89d961103798397c2cddefb">target_config</a></td></tr>
+<tr class="memdesc:a757b9b42d89d961103798397c2cddefb"><td class="mdescLeft">&#160;</td><td class="mdescRight">target config address for next completion <a href="#a757b9b42d89d961103798397c2cddefb">More...</a><br/></td></tr>
+<tr class="separator:a757b9b42d89d961103798397c2cddefb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a368c90c0b364fd6b3459ca6ef25cfd6d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdns__resolver.html#a368c90c0b364fd6b3459ca6ef25cfd6d">resolved_config</a></td></tr>
+<tr class="memdesc:a368c90c0b364fd6b3459ca6ef25cfd6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">current (fully resolved) config <a href="#a368c90c0b364fd6b3459ca6ef25cfd6d">More...</a><br/></td></tr>
+<tr class="separator:a368c90c0b364fd6b3459ca6ef25cfd6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a135f51d63ab8d730d7ba491f0d94b6f6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> dns_resolver::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>base class: must be first </p>
+
+</div>
+</div>
+<a class="anchor" id="ad3a4ce330d39e62347c8d230dc0431f4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* dns_resolver::default_port</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>default port to use </p>
+
+</div>
+</div>
+<a class="anchor" id="a9e7953dbbac44c59c5f8d2946e4295f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>*(* dns_resolver::lb_policy_factory)(<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels, size_t num_subchannels)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>load balancing policy factory </p>
+
+</div>
+</div>
+<a class="anchor" id="aa1661d76a33a19a305d5edb1b354ce8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> dns_resolver::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mutex guarding the rest of the state </p>
+
+</div>
+</div>
+<a class="anchor" id="a5670dbafe81b9e38af022bd5cf907fa3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* dns_resolver::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>name to resolve </p>
+
+</div>
+</div>
+<a class="anchor" id="a6ed64036e71eb1ee7dc886adb51820d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* dns_resolver::next_completion</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pending next completion, or NULL </p>
+
+</div>
+</div>
+<a class="anchor" id="aaf1729e3f0480a378eb4689e6105454b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int dns_resolver::published_version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>which version of resolved_config have we published? </p>
+
+</div>
+</div>
+<a class="anchor" id="ab33e01167cedc1126007318a3c71238e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> dns_resolver::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>refcount </p>
+
+</div>
+</div>
+<a class="anchor" id="a368c90c0b364fd6b3459ca6ef25cfd6d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>* dns_resolver::resolved_config</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>current (fully resolved) config </p>
+
+</div>
+</div>
+<a class="anchor" id="aee7098ec311fd223ceb6e57e8bfdd2fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int dns_resolver::resolved_version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>which version of resolved_config is current? </p>
+
+</div>
+</div>
+<a class="anchor" id="abc4a241cfa112a6b430d39749a2f6faf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int dns_resolver::resolving</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>are we currently resolving? </p>
+
+</div>
+</div>
+<a class="anchor" id="ad80a689714c3c2d68bba566d1c5ae236"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* dns_resolver::subchannel_factory</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>subchannel factory </p>
+
+</div>
+</div>
+<a class="anchor" id="a757b9b42d89d961103798397c2cddefb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>** dns_resolver::target_config</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>target config address for next completion </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/resolvers/<a class="el" href="dns__resolver_8c.html">dns_resolver.c</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>
diff --git a/doc/ref/core.internal/html/structdump__out.html b/doc/ref/core.internal/html/structdump__out.html
new file mode 100644
index 0000000000..b3d643fddf
--- /dev/null
+++ b/doc/ref/core.internal/html/structdump__out.html
@@ -0,0 +1,148 @@
+<!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: dump_out 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">dump_out Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ad4ef0a9a3b2494b534b9fcba9d349f21"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdump__out.html#ad4ef0a9a3b2494b534b9fcba9d349f21">capacity</a></td></tr>
+<tr class="separator:ad4ef0a9a3b2494b534b9fcba9d349f21"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae5a2d8bf503113afc8d2da2cb36d70ad"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdump__out.html#ae5a2d8bf503113afc8d2da2cb36d70ad">length</a></td></tr>
+<tr class="separator:ae5a2d8bf503113afc8d2da2cb36d70ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaceca2e7d88a29bcd3593c5cba3e8a3a"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structdump__out.html#aaceca2e7d88a29bcd3593c5cba3e8a3a">data</a></td></tr>
+<tr class="separator:aaceca2e7d88a29bcd3593c5cba3e8a3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad4ef0a9a3b2494b534b9fcba9d349f21"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t dump_out::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaceca2e7d88a29bcd3593c5cba3e8a3a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* dump_out::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae5a2d8bf503113afc8d2da2cb36d70ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t dump_out::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="string_8c.html">string.c</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>
diff --git a/doc/ref/core.internal/html/structemail__key__mapping.html b/doc/ref/core.internal/html/structemail__key__mapping.html
new file mode 100644
index 0000000000..56002d32fc
--- /dev/null
+++ b/doc/ref/core.internal/html/structemail__key__mapping.html
@@ -0,0 +1,134 @@
+<!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: email_key_mapping 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">email_key_mapping Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a379069d9b6baffade9583b28046eab90"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structemail__key__mapping.html#a379069d9b6baffade9583b28046eab90">email_domain</a></td></tr>
+<tr class="separator:a379069d9b6baffade9583b28046eab90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c0fa6aa94861adf3c6a4f5f9579d37a"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structemail__key__mapping.html#a0c0fa6aa94861adf3c6a4f5f9579d37a">key_url_prefix</a></td></tr>
+<tr class="separator:a0c0fa6aa94861adf3c6a4f5f9579d37a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a379069d9b6baffade9583b28046eab90"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* email_key_mapping::email_domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c0fa6aa94861adf3c6a4f5f9579d37a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* email_key_mapping::key_url_prefix</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="jwt__verifier_8c.html">jwt_verifier.c</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>
diff --git a/doc/ref/core.internal/html/structfinished__loose__op__allocated__args.html b/doc/ref/core.internal/html/structfinished__loose__op__allocated__args.html
new file mode 100644
index 0000000000..fa9a5374f5
--- /dev/null
+++ b/doc/ref/core.internal/html/structfinished__loose__op__allocated__args.html
@@ -0,0 +1,134 @@
+<!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: finished_loose_op_allocated_args 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">finished_loose_op_allocated_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a39f5408992820aa61c3aa11e378612d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfinished__loose__op__allocated__args.html#a39f5408992820aa61c3aa11e378612d3">call</a></td></tr>
+<tr class="separator:a39f5408992820aa61c3aa11e378612d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bf518b8de4a386cbf55698134e8c485"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfinished__loose__op__allocated__args.html#a1bf518b8de4a386cbf55698134e8c485">closure</a></td></tr>
+<tr class="separator:a1bf518b8de4a386cbf55698134e8c485"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a39f5408992820aa61c3aa11e378612d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>* finished_loose_op_allocated_args::call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1bf518b8de4a386cbf55698134e8c485"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> finished_loose_op_allocated_args::closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8c.html">call.c</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>
diff --git a/doc/ref/core.internal/html/structframer__state.html b/doc/ref/core.internal/html/structframer__state.html
new file mode 100644
index 0000000000..bedc2a403f
--- /dev/null
+++ b/doc/ref/core.internal/html/structframer__state.html
@@ -0,0 +1,190 @@
+<!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: framer_state 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">framer_state Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ab6d529c8b0d12ca60075d0c9e29d037b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f">frame_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structframer__state.html#ab6d529c8b0d12ca60075d0c9e29d037b">cur_frame_type</a></td></tr>
+<tr class="separator:ab6d529c8b0d12ca60075d0c9e29d037b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a268504b075ec06de3ff0abb7ee7e589b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structframer__state.html#a268504b075ec06de3ff0abb7ee7e589b">output_length_at_start_of_frame</a></td></tr>
+<tr class="separator:a268504b075ec06de3ff0abb7ee7e589b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f1aacf4453938a5e335e77c6d775dc1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structframer__state.html#a8f1aacf4453938a5e335e77c6d775dc1">header_idx</a></td></tr>
+<tr class="separator:a8f1aacf4453938a5e335e77c6d775dc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81d1d4409a7212a9da08212e55772b20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structframer__state.html#a81d1d4409a7212a9da08212e55772b20">last_was_header</a></td></tr>
+<tr class="separator:a81d1d4409a7212a9da08212e55772b20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a568da28436bbdcbf1a1eb321cf064651"><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="structframer__state.html#a568da28436bbdcbf1a1eb321cf064651">stream_id</a></td></tr>
+<tr class="separator:a568da28436bbdcbf1a1eb321cf064651"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6ebee785ebffe4a16a2ccd010ad08d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structframer__state.html#ac6ebee785ebffe4a16a2ccd010ad08d6">output</a></td></tr>
+<tr class="separator:ac6ebee785ebffe4a16a2ccd010ad08d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab6d529c8b0d12ca60075d0c9e29d037b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="stream__encoder_8c.html#a3ca2c0bc7578bf3d337e34b2c08a6c5f">frame_type</a> framer_state::cur_frame_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8f1aacf4453938a5e335e77c6d775dc1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t framer_state::header_idx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a81d1d4409a7212a9da08212e55772b20"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> framer_state::last_was_header</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac6ebee785ebffe4a16a2ccd010ad08d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>* framer_state::output</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a268504b075ec06de3ff0abb7ee7e589b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t framer_state::output_length_at_start_of_frame</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a568da28436bbdcbf1a1eb321cf064651"></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> framer_state::stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="stream__encoder_8c.html">stream_encoder.c</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>
diff --git a/doc/ref/core.internal/html/structgpr__cancellable.html b/doc/ref/core.internal/html/structgpr__cancellable.html
new file mode 100644
index 0000000000..6c705f5446
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__cancellable.html
@@ -0,0 +1,150 @@
+<!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: gpr_cancellable 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">gpr_cancellable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="cancellable__platform_8h_source.html">cancellable_platform.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:a423e728b92c8890d63490cf4b1fdc30f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable.html#a423e728b92c8890d63490cf4b1fdc30f">mu</a></td></tr>
+<tr class="separator:a423e728b92c8890d63490cf4b1fdc30f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1729b5836bf4181d092f3636368d17b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable.html#a1729b5836bf4181d092f3636368d17b2">cancelled</a></td></tr>
+<tr class="separator:a1729b5836bf4181d092f3636368d17b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99dfebf899cae60307fb8b83e8cfdb43"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable.html#a99dfebf899cae60307fb8b83e8cfdb43">waiters</a></td></tr>
+<tr class="separator:a99dfebf899cae60307fb8b83e8cfdb43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1729b5836bf4181d092f3636368d17b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> gpr_cancellable::cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a423e728b92c8890d63490cf4b1fdc30f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> gpr_cancellable::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a99dfebf899cae60307fb8b83e8cfdb43"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> gpr_cancellable::waiters</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/support/<a class="el" href="cancellable__platform_8h_source.html">cancellable_platform.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>
diff --git a/doc/ref/core.internal/html/structgpr__cancellable__list__.html b/doc/ref/core.internal/html/structgpr__cancellable__list__.html
new file mode 100644
index 0000000000..e908d254e6
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__cancellable__list__.html
@@ -0,0 +1,164 @@
+<!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: gpr_cancellable_list_ 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">gpr_cancellable_list_ Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="cancellable__platform_8h_source.html">cancellable_platform.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:a425195e5ab594a2cfdcc976e5167242a"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable__list__.html#a425195e5ab594a2cfdcc976e5167242a">next</a></td></tr>
+<tr class="separator:a425195e5ab594a2cfdcc976e5167242a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58fba7e59ac49bbb9468c2669e21b8b4"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable__list__.html#a58fba7e59ac49bbb9468c2669e21b8b4">prev</a></td></tr>
+<tr class="separator:a58fba7e59ac49bbb9468c2669e21b8b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf62ecf7376ec1e9f708e2671e494282"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable__list__.html#abf62ecf7376ec1e9f708e2671e494282">mu</a></td></tr>
+<tr class="separator:abf62ecf7376ec1e9f708e2671e494282"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae47b7ccae73001ae1539dfe3bcc8a459"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cancellable__list__.html#ae47b7ccae73001ae1539dfe3bcc8a459">cv</a></td></tr>
+<tr class="separator:ae47b7ccae73001ae1539dfe3bcc8a459"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae47b7ccae73001ae1539dfe3bcc8a459"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a>* gpr_cancellable_list_::cv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf62ecf7376ec1e9f708e2671e494282"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a>* gpr_cancellable_list_::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a425195e5ab594a2cfdcc976e5167242a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a>* gpr_cancellable_list_::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58fba7e59ac49bbb9468c2669e21b8b4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgpr__cancellable__list__.html">gpr_cancellable_list_</a>* gpr_cancellable_list_::prev</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/support/<a class="el" href="cancellable__platform_8h_source.html">cancellable_platform.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>
diff --git a/doc/ref/core.internal/html/structgpr__cmdline.html b/doc/ref/core.internal/html/structgpr__cmdline.html
new file mode 100644
index 0000000000..c14f14ddc1
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__cmdline.html
@@ -0,0 +1,232 @@
+<!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: gpr_cmdline 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">gpr_cmdline Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ad7ac4f9585e0c93920079bec3a258c5d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#ad7ac4f9585e0c93920079bec3a258c5d">description</a></td></tr>
+<tr class="separator:ad7ac4f9585e0c93920079bec3a258c5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7966fa04e7e92065675c49535ea9c078"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarg.html">arg</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#a7966fa04e7e92065675c49535ea9c078">args</a></td></tr>
+<tr class="separator:a7966fa04e7e92065675c49535ea9c078"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad262ed090b9dca4ea6d4bd7be222a40e"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#ad262ed090b9dca4ea6d4bd7be222a40e">argv0</a></td></tr>
+<tr class="separator:ad262ed090b9dca4ea6d4bd7be222a40e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc1adda9fabb39a4cb8beba086aaa8b5"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#abc1adda9fabb39a4cb8beba086aaa8b5">extra_arg_name</a></td></tr>
+<tr class="separator:abc1adda9fabb39a4cb8beba086aaa8b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1e7d3da9d7dac50a04411059cf856fb"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#ab1e7d3da9d7dac50a04411059cf856fb">extra_arg_help</a></td></tr>
+<tr class="separator:ab1e7d3da9d7dac50a04411059cf856fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1109c69ceb7d9c2ae8f374377690b4cb"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#a1109c69ceb7d9c2ae8f374377690b4cb">extra_arg</a> )(void *user_data, const char *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:a1109c69ceb7d9c2ae8f374377690b4cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcf2c751450c2b09eea9ac769ddb2f11"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#afcf2c751450c2b09eea9ac769ddb2f11">extra_arg_user_data</a></td></tr>
+<tr class="separator:afcf2c751450c2b09eea9ac769ddb2f11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb165b9b6f98c942dd65d66f1c95a806"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#acb165b9b6f98c942dd65d66f1c95a806">state</a> )(<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, char *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:acb165b9b6f98c942dd65d66f1c95a806"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4b1fcaf802c2ca83c9e2213b8283297"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structarg.html">arg</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__cmdline.html#aa4b1fcaf802c2ca83c9e2213b8283297">cur_arg</a></td></tr>
+<tr class="separator:aa4b1fcaf802c2ca83c9e2213b8283297"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7966fa04e7e92065675c49535ea9c078"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarg.html">arg</a>* gpr_cmdline::args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad262ed090b9dca4ea6d4bd7be222a40e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_cmdline::argv0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa4b1fcaf802c2ca83c9e2213b8283297"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structarg.html">arg</a>* gpr_cmdline::cur_arg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad7ac4f9585e0c93920079bec3a258c5d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_cmdline::description</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1109c69ceb7d9c2ae8f374377690b4cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* gpr_cmdline::extra_arg)(void *user_data, const char *<a class="el" href="structarg.html">arg</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab1e7d3da9d7dac50a04411059cf856fb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_cmdline::extra_arg_help</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc1adda9fabb39a4cb8beba086aaa8b5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_cmdline::extra_arg_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afcf2c751450c2b09eea9ac769ddb2f11"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_cmdline::extra_arg_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb165b9b6f98c942dd65d66f1c95a806"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* gpr_cmdline::state)(<a class="el" href="structgpr__cmdline.html">gpr_cmdline</a> *cl, char *<a class="el" href="structarg.html">arg</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="cmdline_8c.html">cmdline.c</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>
diff --git a/doc/ref/core.internal/html/structgpr__event.html b/doc/ref/core.internal/html/structgpr__event.html
new file mode 100644
index 0000000000..540a63192b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__event.html
@@ -0,0 +1,122 @@
+<!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: gpr_event 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">gpr_event Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__generic_8h_source.html">sync_generic.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:a9eb43867719fcdf48f33df11cd138be9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9">state</a></td></tr>
+<tr class="separator:a9eb43867719fcdf48f33df11cd138be9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9eb43867719fcdf48f33df11cd138be9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> gpr_event::state</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/support/<a class="el" href="sync__generic_8h_source.html">sync_generic.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>
diff --git a/doc/ref/core.internal/html/structgpr__gcc__thread__local.html b/doc/ref/core.internal/html/structgpr__gcc__thread__local.html
new file mode 100644
index 0000000000..a5442500a3
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__gcc__thread__local.html
@@ -0,0 +1,122 @@
+<!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: gpr_gcc_thread_local 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">gpr_gcc_thread_local Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="tls__gcc_8h_source.html">tls_gcc.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:a057ec2885013c01ce37fffc6d9afece1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1">value</a></td></tr>
+<tr class="separator:a057ec2885013c01ce37fffc6d9afece1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a057ec2885013c01ce37fffc6d9afece1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> gpr_gcc_thread_local::value</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/support/<a class="el" href="tls__gcc_8h_source.html">tls_gcc.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>
diff --git a/doc/ref/core.internal/html/structgpr__histogram.html b/doc/ref/core.internal/html/structgpr__histogram.html
new file mode 100644
index 0000000000..4b522a56a2
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__histogram.html
@@ -0,0 +1,246 @@
+<!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: gpr_histogram 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">gpr_histogram Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1e154b0be9b7d5b4ee4ccbf955cd0b8a"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#a1e154b0be9b7d5b4ee4ccbf955cd0b8a">sum</a></td></tr>
+<tr class="separator:a1e154b0be9b7d5b4ee4ccbf955cd0b8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b675fe1da756eba043d76ead28089a1"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#a4b675fe1da756eba043d76ead28089a1">sum_of_squares</a></td></tr>
+<tr class="separator:a4b675fe1da756eba043d76ead28089a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a283be15ea1e5ba755f9b4b7d0d70402d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#a283be15ea1e5ba755f9b4b7d0d70402d">count</a></td></tr>
+<tr class="separator:a283be15ea1e5ba755f9b4b7d0d70402d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3b6846c10a297bf1a9706ab348ffead"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#aa3b6846c10a297bf1a9706ab348ffead">multiplier</a></td></tr>
+<tr class="separator:aa3b6846c10a297bf1a9706ab348ffead"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63929f09cc7a7feedf7b1f330b0458c3"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#a63929f09cc7a7feedf7b1f330b0458c3">one_on_log_multiplier</a></td></tr>
+<tr class="separator:a63929f09cc7a7feedf7b1f330b0458c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbeba96ddecdda3b716922c510fc1cbf"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#abbeba96ddecdda3b716922c510fc1cbf">min_seen</a></td></tr>
+<tr class="separator:abbeba96ddecdda3b716922c510fc1cbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2fa92c952ba4d7edccefd7702701ee1"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#ac2fa92c952ba4d7edccefd7702701ee1">max_seen</a></td></tr>
+<tr class="separator:ac2fa92c952ba4d7edccefd7702701ee1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af94ad5cd243aff89bbe7b0a9918dab77"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#af94ad5cd243aff89bbe7b0a9918dab77">max_possible</a></td></tr>
+<tr class="separator:af94ad5cd243aff89bbe7b0a9918dab77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a039f2094c3aea146aaf6a9a75bc5ab12"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__histogram.html#a039f2094c3aea146aaf6a9a75bc5ab12">num_buckets</a></td></tr>
+<tr class="separator:a039f2094c3aea146aaf6a9a75bc5ab12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc707964e4925f4b7abf4c69daaaef73"><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="structgpr__histogram.html#abc707964e4925f4b7abf4c69daaaef73">buckets</a></td></tr>
+<tr class="separator:abc707964e4925f4b7abf4c69daaaef73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abc707964e4925f4b7abf4c69daaaef73"></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>* gpr_histogram::buckets</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a283be15ea1e5ba755f9b4b7d0d70402d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af94ad5cd243aff89bbe7b0a9918dab77"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::max_possible</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac2fa92c952ba4d7edccefd7702701ee1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::max_seen</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abbeba96ddecdda3b716922c510fc1cbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::min_seen</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa3b6846c10a297bf1a9706ab348ffead"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::multiplier</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a039f2094c3aea146aaf6a9a75bc5ab12"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_histogram::num_buckets</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63929f09cc7a7feedf7b1f330b0458c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::one_on_log_multiplier</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1e154b0be9b7d5b4ee4ccbf955cd0b8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::sum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b675fe1da756eba043d76ead28089a1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_histogram::sum_of_squares</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="histogram_8c.html">histogram.c</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>
diff --git a/doc/ref/core.internal/html/structgpr__log__func__args.html b/doc/ref/core.internal/html/structgpr__log__func__args.html
new file mode 100644
index 0000000000..5a3253483d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__log__func__args.html
@@ -0,0 +1,164 @@
+<!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: gpr_log_func_args 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">gpr_log_func_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="log_8h_source.html">log.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:a7961b2303b10d4f66d1aee6b5857ef89"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__log__func__args.html#a7961b2303b10d4f66d1aee6b5857ef89">file</a></td></tr>
+<tr class="separator:a7961b2303b10d4f66d1aee6b5857ef89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1a051bbc7e0ef6c58de0db3efda24bb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__log__func__args.html#ae1a051bbc7e0ef6c58de0db3efda24bb">line</a></td></tr>
+<tr class="separator:ae1a051bbc7e0ef6c58de0db3efda24bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0b4b9d8beace1cae0d1a24783d70ccc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__log__func__args.html#af0b4b9d8beace1cae0d1a24783d70ccc">severity</a></td></tr>
+<tr class="separator:af0b4b9d8beace1cae0d1a24783d70ccc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9ce882bef15e3127620a8ef47f2b74b"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__log__func__args.html#ad9ce882bef15e3127620a8ef47f2b74b">message</a></td></tr>
+<tr class="separator:ad9ce882bef15e3127620a8ef47f2b74b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7961b2303b10d4f66d1aee6b5857ef89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_log_func_args::file</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae1a051bbc7e0ef6c58de0db3efda24bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_log_func_args::line</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad9ce882bef15e3127620a8ef47f2b74b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_log_func_args::message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0b4b9d8beace1cae0d1a24783d70ccc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> gpr_log_func_args::severity</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/support/<a class="el" href="log_8h_source.html">log.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>
diff --git a/doc/ref/core.internal/html/structgpr__msvc__thread__local.html b/doc/ref/core.internal/html/structgpr__msvc__thread__local.html
new file mode 100644
index 0000000000..927262fda2
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__msvc__thread__local.html
@@ -0,0 +1,122 @@
+<!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: gpr_msvc_thread_local 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">gpr_msvc_thread_local Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="tls__msvc_8h_source.html">tls_msvc.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:a0187c953da78c5a0620d75aaaaaa5798"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798">value</a></td></tr>
+<tr class="separator:a0187c953da78c5a0620d75aaaaaa5798"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a0187c953da78c5a0620d75aaaaaa5798"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> gpr_msvc_thread_local::value</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/support/<a class="el" href="tls__msvc_8h_source.html">tls_msvc.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>
diff --git a/doc/ref/core.internal/html/structgpr__mu.html b/doc/ref/core.internal/html/structgpr__mu.html
new file mode 100644
index 0000000000..de8696f0ac
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__mu.html
@@ -0,0 +1,136 @@
+<!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: gpr_mu 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">gpr_mu Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__win32_8h_source.html">sync_win32.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:abab5a72a693be27488fb7a9b2cb23e5c"><td class="memItemLeft" align="right" valign="top">CRITICAL_SECTION&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c">cs</a></td></tr>
+<tr class="separator:abab5a72a693be27488fb7a9b2cb23e5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac16a7b74cd7175a34b776215fd357342"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342">locked</a></td></tr>
+<tr class="separator:ac16a7b74cd7175a34b776215fd357342"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abab5a72a693be27488fb7a9b2cb23e5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">CRITICAL_SECTION gpr_mu::cs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac16a7b74cd7175a34b776215fd357342"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_mu::locked</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/support/<a class="el" href="sync__win32_8h_source.html">sync_win32.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>
diff --git a/doc/ref/core.internal/html/structgpr__pthread__thread__local.html b/doc/ref/core.internal/html/structgpr__pthread__thread__local.html
new file mode 100644
index 0000000000..78d58bcdbf
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__pthread__thread__local.html
@@ -0,0 +1,122 @@
+<!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: gpr_pthread_thread_local 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">gpr_pthread_thread_local Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="tls__pthread_8h_source.html">tls_pthread.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:a006cbb5f30eb7c7c53a99a19f242fece"><td class="memItemLeft" align="right" valign="top">pthread_key_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece">key</a></td></tr>
+<tr class="separator:a006cbb5f30eb7c7c53a99a19f242fece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a006cbb5f30eb7c7c53a99a19f242fece"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">pthread_key_t gpr_pthread_thread_local::key</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/support/<a class="el" href="tls__pthread_8h_source.html">tls_pthread.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>
diff --git a/doc/ref/core.internal/html/structgpr__refcount.html b/doc/ref/core.internal/html/structgpr__refcount.html
new file mode 100644
index 0000000000..db5168f46d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__refcount.html
@@ -0,0 +1,122 @@
+<!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: gpr_refcount 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">gpr_refcount Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__generic_8h_source.html">sync_generic.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:ae1e2d58344b59ff6c0db0dc4f2953470"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470">count</a></td></tr>
+<tr class="separator:ae1e2d58344b59ff6c0db0dc4f2953470"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae1e2d58344b59ff6c0db0dc4f2953470"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> gpr_refcount::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/support/<a class="el" href="sync__generic_8h_source.html">sync_generic.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>
diff --git a/doc/ref/core.internal/html/structgpr__slice.html b/doc/ref/core.internal/html/structgpr__slice.html
new file mode 100644
index 0000000000..fc5fe7b945
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__slice.html
@@ -0,0 +1,223 @@
+<!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: gpr_slice 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">gpr_slice Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="slice_8h_source.html">slice.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:a04d0bcc8331409fa3b3af29ee0b86a24"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice.html#a04d0bcc8331409fa3b3af29ee0b86a24">refcount</a></td></tr>
+<tr class="separator:a04d0bcc8331409fa3b3af29ee0b86a24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a122218a8a00205225f56ee71ade6e8da"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:aab57a94d3e34cf2a8b6f01569fd006c5"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:ad693875ead91f52165e72c5db4f35276"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;&#160;&#160;<a class="el" href="structgpr__slice.html#a16646e1a137851f2b031cf2c431b2864">bytes</a></td></tr>
+<tr class="separator:ad693875ead91f52165e72c5db4f35276"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeebcfe7209c6184b7569ae95ebc394ea"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;size_t&#160;&#160;&#160;<a class="el" href="structgpr__slice.html#a8867b2d660a87061534be9c8098d4fa5">length</a></td></tr>
+<tr class="separator:aeebcfe7209c6184b7569ae95ebc394ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab57a94d3e34cf2a8b6f01569fd006c5"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgpr__slice.html#a50bbfa04c0c8f5db1190cbc86bdfd102">refcounted</a></td></tr>
+<tr class="separator:aab57a94d3e34cf2a8b6f01569fd006c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeeef0115fe33c44d1b6fa8c61aadd84d"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a388b17fd9d14ddfc49bb8bcb49e9327e"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;&#160;&#160;<a class="el" href="structgpr__slice.html#acd3242f89b2999d12788e65337662cf3">length</a></td></tr>
+<tr class="separator:a388b17fd9d14ddfc49bb8bcb49e9327e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97fb81f0feddff32f338547a909c4a60"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;&#160;&#160;<a class="el" href="structgpr__slice.html#a39592633c4ad594a15b3a52aadff398d">bytes</a> [(sizeof(size_t)+sizeof(<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *)-1)]</td></tr>
+<tr class="separator:a97fb81f0feddff32f338547a909c4a60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeeef0115fe33c44d1b6fa8c61aadd84d"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgpr__slice.html#a1fd4cfd75079d6f30184f0340276eb28">inlined</a></td></tr>
+<tr class="separator:aeeef0115fe33c44d1b6fa8c61aadd84d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a122218a8a00205225f56ee71ade6e8da"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice.html#a122218a8a00205225f56ee71ade6e8da">data</a></td></tr>
+<tr class="separator:a122218a8a00205225f56ee71ade6e8da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a16646e1a137851f2b031cf2c431b2864"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* gpr_slice::bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a39592633c4ad594a15b3a52aadff398d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> gpr_slice::bytes[(sizeof(size_t)+sizeof(<a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *)-1)]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a122218a8a00205225f56ee71ade6e8da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } gpr_slice::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1fd4cfd75079d6f30184f0340276eb28"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } gpr_slice::inlined</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8867b2d660a87061534be9c8098d4fa5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_slice::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acd3242f89b2999d12788e65337662cf3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> gpr_slice::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a04d0bcc8331409fa3b3af29ee0b86a24"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>* gpr_slice::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a50bbfa04c0c8f5db1190cbc86bdfd102"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } gpr_slice::refcounted</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/support/<a class="el" href="slice_8h_source.html">slice.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>
diff --git a/doc/ref/core.internal/html/structgpr__slice__buffer.html b/doc/ref/core.internal/html/structgpr__slice__buffer.html
new file mode 100644
index 0000000000..fc818120b6
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__slice__buffer.html
@@ -0,0 +1,178 @@
+<!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: gpr_slice_buffer 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">gpr_slice_buffer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="slice__buffer_8h_source.html">slice_buffer.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:a07c0e3196f5e197af878ee94fd5df3ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__buffer.html#a07c0e3196f5e197af878ee94fd5df3ba">slices</a></td></tr>
+<tr class="separator:a07c0e3196f5e197af878ee94fd5df3ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3adc77c3ef399ae0aa1ce1377e0e9fff"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__buffer.html#a3adc77c3ef399ae0aa1ce1377e0e9fff">count</a></td></tr>
+<tr class="separator:a3adc77c3ef399ae0aa1ce1377e0e9fff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48b6efc57238e7abd0bcbb579219456e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__buffer.html#a48b6efc57238e7abd0bcbb579219456e">capacity</a></td></tr>
+<tr class="separator:a48b6efc57238e7abd0bcbb579219456e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2150637602d9080cdb111d09c1d669c3"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__buffer.html#a2150637602d9080cdb111d09c1d669c3">length</a></td></tr>
+<tr class="separator:a2150637602d9080cdb111d09c1d669c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb678a23dc27e50c478bc48d365420e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__buffer.html#adb678a23dc27e50c478bc48d365420e2">inlined</a> [8]</td></tr>
+<tr class="separator:adb678a23dc27e50c478bc48d365420e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a48b6efc57238e7abd0bcbb579219456e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_slice_buffer::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3adc77c3ef399ae0aa1ce1377e0e9fff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_slice_buffer::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adb678a23dc27e50c478bc48d365420e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> gpr_slice_buffer::inlined[8]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2150637602d9080cdb111d09c1d669c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_slice_buffer::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a07c0e3196f5e197af878ee94fd5df3ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a>* gpr_slice_buffer::slices</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/support/<a class="el" href="slice__buffer_8h_source.html">slice_buffer.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>
diff --git a/doc/ref/core.internal/html/structgpr__slice__refcount.html b/doc/ref/core.internal/html/structgpr__slice__refcount.html
new file mode 100644
index 0000000000..ce8f45abd8
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__slice__refcount.html
@@ -0,0 +1,136 @@
+<!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: gpr_slice_refcount 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">gpr_slice_refcount Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="slice_8h_source.html">slice.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:abf3fba35fdc6a4cd2d47e5ca19107ed7"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__refcount.html#abf3fba35fdc6a4cd2d47e5ca19107ed7">ref</a> )(void *)</td></tr>
+<tr class="separator:abf3fba35fdc6a4cd2d47e5ca19107ed7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae31a3f84f0032dd388418eee26aa9c00"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__slice__refcount.html#ae31a3f84f0032dd388418eee26aa9c00">unref</a> )(void *)</td></tr>
+<tr class="separator:ae31a3f84f0032dd388418eee26aa9c00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abf3fba35fdc6a4cd2d47e5ca19107ed7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* gpr_slice_refcount::ref)(void *)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae31a3f84f0032dd388418eee26aa9c00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* gpr_slice_refcount::unref)(void *)</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/support/<a class="el" href="slice_8h_source.html">slice.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>
diff --git a/doc/ref/core.internal/html/structgpr__stack__lockfree.html b/doc/ref/core.internal/html/structgpr__stack__lockfree.html
new file mode 100644
index 0000000000..1b0449484a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__stack__lockfree.html
@@ -0,0 +1,148 @@
+<!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: gpr_stack_lockfree 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">gpr_stack_lockfree Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a68282ed7eeb9cb7ce537b15ed25e7eb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionlockfree__node.html">lockfree_node</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__stack__lockfree.html#a68282ed7eeb9cb7ce537b15ed25e7eb1">entries</a></td></tr>
+<tr class="separator:a68282ed7eeb9cb7ce537b15ed25e7eb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63a10f40dc93803a1d97846f659860eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="unionlockfree__node.html">lockfree_node</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__stack__lockfree.html#a63a10f40dc93803a1d97846f659860eb">head</a></td></tr>
+<tr class="separator:a63a10f40dc93803a1d97846f659860eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e9bcdf7ab0d5eba90feec6754a7884a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__stack__lockfree.html#a2e9bcdf7ab0d5eba90feec6754a7884a">pushed</a> [(((1&lt;&lt; 16)-1)+1)/(8 *sizeof(<a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>))]</td></tr>
+<tr class="separator:a2e9bcdf7ab0d5eba90feec6754a7884a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a68282ed7eeb9cb7ce537b15ed25e7eb1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="unionlockfree__node.html">lockfree_node</a>* gpr_stack_lockfree::entries</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63a10f40dc93803a1d97846f659860eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="unionlockfree__node.html">lockfree_node</a> gpr_stack_lockfree::head</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e9bcdf7ab0d5eba90feec6754a7884a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> gpr_stack_lockfree::pushed[(((1&lt;&lt; 16)-1)+1)/(8 *sizeof(<a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>))]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="stack__lockfree_8c.html">stack_lockfree.c</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>
diff --git a/doc/ref/core.internal/html/structgpr__stats__counter.html b/doc/ref/core.internal/html/structgpr__stats__counter.html
new file mode 100644
index 0000000000..40170c1f07
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__stats__counter.html
@@ -0,0 +1,122 @@
+<!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: gpr_stats_counter 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">gpr_stats_counter Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__generic_8h_source.html">sync_generic.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:ab9338ff7b5fd9f0c0830a8a788aab04a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a">value</a></td></tr>
+<tr class="separator:ab9338ff7b5fd9f0c0830a8a788aab04a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab9338ff7b5fd9f0c0830a8a788aab04a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> gpr_stats_counter::value</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/support/<a class="el" href="sync__generic_8h_source.html">sync_generic.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>
diff --git a/doc/ref/core.internal/html/structgpr__strvec.html b/doc/ref/core.internal/html/structgpr__strvec.html
new file mode 100644
index 0000000000..8b9db8b51f
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__strvec.html
@@ -0,0 +1,150 @@
+<!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: gpr_strvec 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">gpr_strvec Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="string_8h_source.html">string.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:a6c928c402061e0a51346155669029795"><td class="memItemLeft" align="right" valign="top">char **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__strvec.html#a6c928c402061e0a51346155669029795">strs</a></td></tr>
+<tr class="separator:a6c928c402061e0a51346155669029795"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d62db9061e6c23fcac741812f9af387"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__strvec.html#a3d62db9061e6c23fcac741812f9af387">count</a></td></tr>
+<tr class="separator:a3d62db9061e6c23fcac741812f9af387"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2ee1037640e1a4e0b7e81d69eeaf2cd"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__strvec.html#af2ee1037640e1a4e0b7e81d69eeaf2cd">capacity</a></td></tr>
+<tr class="separator:af2ee1037640e1a4e0b7e81d69eeaf2cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af2ee1037640e1a4e0b7e81d69eeaf2cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_strvec::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3d62db9061e6c23fcac741812f9af387"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t gpr_strvec::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c928c402061e0a51346155669029795"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char** gpr_strvec::strs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="string_8h_source.html">string.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>
diff --git a/doc/ref/core.internal/html/structgpr__thd__options.html b/doc/ref/core.internal/html/structgpr__thd__options.html
new file mode 100644
index 0000000000..c20bbdad76
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__thd__options.html
@@ -0,0 +1,122 @@
+<!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: gpr_thd_options 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">gpr_thd_options Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="thd_8h_source.html">thd.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:aaa966777aca6604109eb4cd6cae7984c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c">flags</a></td></tr>
+<tr class="separator:aaa966777aca6604109eb4cd6cae7984c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aaa966777aca6604109eb4cd6cae7984c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_thd_options::flags</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/support/<a class="el" href="thd_8h_source.html">thd.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>
diff --git a/doc/ref/core.internal/html/structgpr__timespec.html b/doc/ref/core.internal/html/structgpr__timespec.html
new file mode 100644
index 0000000000..25da184114
--- /dev/null
+++ b/doc/ref/core.internal/html/structgpr__timespec.html
@@ -0,0 +1,153 @@
+<!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: gpr_timespec 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">gpr_timespec Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="time_8h_source.html">time.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:af9294cf0049fd33c76ad2da925d9051e"><td class="memItemLeft" align="right" valign="top">time_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">tv_sec</a></td></tr>
+<tr class="separator:af9294cf0049fd33c76ad2da925d9051e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac326c2133cd003cb206715cf5f500268"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">tv_nsec</a></td></tr>
+<tr class="separator:ac326c2133cd003cb206715cf5f500268"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dd26976820fa71a7c5a710d4c1845ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff">clock_type</a></td></tr>
+<tr class="memdesc:a6dd26976820fa71a7c5a710d4c1845ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Against which clock was this time measured? (or GPR_TIMESPAN if this is a relative time meaure) <a href="#a6dd26976820fa71a7c5a710d4c1845ff">More...</a><br/></td></tr>
+<tr class="separator:a6dd26976820fa71a7c5a710d4c1845ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6dd26976820fa71a7c5a710d4c1845ff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> gpr_timespec::clock_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Against which clock was this time measured? (or GPR_TIMESPAN if this is a relative time meaure) </p>
+
+</div>
+</div>
+<a class="anchor" id="ac326c2133cd003cb206715cf5f500268"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_timespec::tv_nsec</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af9294cf0049fd33c76ad2da925d9051e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">time_t gpr_timespec::tv_sec</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/support/<a class="el" href="time_8h_source.html">time.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>
diff --git a/doc/ref/core.internal/html/structgrpc__access__token__credentials.html b/doc/ref/core.internal/html/structgrpc__access__token__credentials.html
new file mode 100644
index 0000000000..f3c027c2ed
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__access__token__credentials.html
@@ -0,0 +1,136 @@
+<!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_access_token_credentials 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_access_token_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a594ae3c4f36d690eb29a8c0a1ec48d0b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__access__token__credentials.html#a594ae3c4f36d690eb29a8c0a1ec48d0b">base</a></td></tr>
+<tr class="separator:a594ae3c4f36d690eb29a8c0a1ec48d0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a194d95853f9a3b3c8a4d9e421628ab09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__access__token__credentials.html#a194d95853f9a3b3c8a4d9e421628ab09">access_token_md</a></td></tr>
+<tr class="separator:a194d95853f9a3b3c8a4d9e421628ab09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a194d95853f9a3b3c8a4d9e421628ab09"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_access_token_credentials::access_token_md</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a594ae3c4f36d690eb29a8c0a1ec48d0b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_access_token_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__alarm.html b/doc/ref/core.internal/html/structgrpc__alarm.html
new file mode 100644
index 0000000000..6a0b46e85c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__alarm.html
@@ -0,0 +1,206 @@
+<!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_alarm 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_alarm Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="alarm_8h_source.html">alarm.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:a8f3f1ae9b65a0cc76971ea7daed1b126"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html#a8f3f1ae9b65a0cc76971ea7daed1b126">deadline</a></td></tr>
+<tr class="separator:a8f3f1ae9b65a0cc76971ea7daed1b126"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adef760998486aa79b9637e95a83e061b"><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__alarm.html#adef760998486aa79b9637e95a83e061b">heap_index</a></td></tr>
+<tr class="separator:adef760998486aa79b9637e95a83e061b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75136c755eae954d2955f3519ea2919f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html#a75136c755eae954d2955f3519ea2919f">triggered</a></td></tr>
+<tr class="separator:a75136c755eae954d2955f3519ea2919f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f83596c1a3e1337f333dcffebabb7ab"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html#a2f83596c1a3e1337f333dcffebabb7ab">next</a></td></tr>
+<tr class="separator:a2f83596c1a3e1337f333dcffebabb7ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a806b141943b6b45f16cc7459ab035b97"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__alarm.html">grpc_alarm</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html#a806b141943b6b45f16cc7459ab035b97">prev</a></td></tr>
+<tr class="separator:a806b141943b6b45f16cc7459ab035b97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85a6797057eb75a49d63f4301b4b32dd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html#a85a6797057eb75a49d63f4301b4b32dd">cb</a></td></tr>
+<tr class="separator:a85a6797057eb75a49d63f4301b4b32dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f9db224dc882f41a1d676115ede23c3"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm.html#a0f9db224dc882f41a1d676115ede23c3">cb_arg</a></td></tr>
+<tr class="separator:a0f9db224dc882f41a1d676115ede23c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a85a6797057eb75a49d63f4301b4b32dd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> grpc_alarm::cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0f9db224dc882f41a1d676115ede23c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_alarm::cb_arg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8f3f1ae9b65a0cc76971ea7daed1b126"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_alarm::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adef760998486aa79b9637e95a83e061b"></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_alarm::heap_index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2f83596c1a3e1337f333dcffebabb7ab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__alarm.html">grpc_alarm</a>* grpc_alarm::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a806b141943b6b45f16cc7459ab035b97"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__alarm.html">grpc_alarm</a>* grpc_alarm::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a75136c755eae954d2955f3519ea2919f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm::triggered</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="alarm_8h_source.html">alarm.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>
diff --git a/doc/ref/core.internal/html/structgrpc__alarm__heap.html b/doc/ref/core.internal/html/structgrpc__alarm__heap.html
new file mode 100644
index 0000000000..297b14864a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__alarm__heap.html
@@ -0,0 +1,150 @@
+<!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_alarm_heap 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_alarm_heap Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="alarm__heap_8h_source.html">alarm_heap.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:af2b6cbe9ec6e6c97a43d21f874264a82"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm__heap.html#af2b6cbe9ec6e6c97a43d21f874264a82">alarms</a></td></tr>
+<tr class="separator:af2b6cbe9ec6e6c97a43d21f874264a82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d4ddd4a84b673b0bdf91eb5d219bfa5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm__heap.html#a0d4ddd4a84b673b0bdf91eb5d219bfa5">alarm_count</a></td></tr>
+<tr class="separator:a0d4ddd4a84b673b0bdf91eb5d219bfa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f3027df3cbd0286bd72f5f569b6e7bd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__alarm__heap.html#a6f3027df3cbd0286bd72f5f569b6e7bd">alarm_capacity</a></td></tr>
+<tr class="separator:a6f3027df3cbd0286bd72f5f569b6e7bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6f3027df3cbd0286bd72f5f569b6e7bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_heap::alarm_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d4ddd4a84b673b0bdf91eb5d219bfa5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_alarm_heap::alarm_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2b6cbe9ec6e6c97a43d21f874264a82"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>** grpc_alarm_heap::alarms</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="alarm__heap_8h_source.html">alarm_heap.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>
diff --git a/doc/ref/core.internal/html/structgrpc__arg.html b/doc/ref/core.internal/html/structgrpc__arg.html
new file mode 100644
index 0000000000..76b6ddd254
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__arg.html
@@ -0,0 +1,245 @@
+<!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_arg 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_arg Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single argument...
+ <a href="structgrpc__arg.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:aa26f2d3c4b1649c9eb061d24a8c10fd4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__arg.html#aa26f2d3c4b1649c9eb061d24a8c10fd4">type</a></td></tr>
+<tr class="separator:aa26f2d3c4b1649c9eb061d24a8c10fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb230fbd50daacfe654abc3500a44968"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__arg.html#aeb230fbd50daacfe654abc3500a44968">key</a></td></tr>
+<tr class="separator:aeb230fbd50daacfe654abc3500a44968"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2be4ee606c82fc084af1661d30f6f7f"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:ae54d20350dbf96bfd131ddd04dc47831"><td class="memItemLeft" >&#160;&#160;&#160;char *&#160;&#160;&#160;<a class="el" href="structgrpc__arg.html#a05bc3701718db73608ef3598480e8fa8">string</a></td></tr>
+<tr class="separator:ae54d20350dbf96bfd131ddd04dc47831"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3059ab9a295b741b3be65b3a290281b"><td class="memItemLeft" >&#160;&#160;&#160;int&#160;&#160;&#160;<a class="el" href="structgrpc__arg.html#a6871bfca9c52e7f56abbd71c81d97554">integer</a></td></tr>
+<tr class="separator:aa3059ab9a295b741b3be65b3a290281b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13eb7d610b7e4cb4b7f04802dc62bb15"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a952787b29101f56c76e0263cd9fb5262"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;void *&#160;&#160;&#160;<a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">p</a></td></tr>
+<tr class="separator:a952787b29101f56c76e0263cd9fb5262"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a139c5e770cc800fcf42fb88503c79b59"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;void *(*&#160;&#160;&#160;<a class="el" href="structgrpc__arg.html#abef4f8be0109b19fcbe7f614f1243303">copy</a> )(void *<a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">p</a>)</td></tr>
+<tr class="separator:a139c5e770cc800fcf42fb88503c79b59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a271464c1688d667e27044ea71b92ac"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;void(*&#160;&#160;&#160;<a class="el" href="structgrpc__arg.html#a15c9a748974a6ac525074f3ed1e04eb4">destroy</a> )(void *<a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">p</a>)</td></tr>
+<tr class="separator:a4a271464c1688d667e27044ea71b92ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13eb7d610b7e4cb4b7f04802dc62bb15"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgrpc__arg.html#a85b5bbfbdec09ae46cff15628096137a">pointer</a></td></tr>
+<tr class="separator:a13eb7d610b7e4cb4b7f04802dc62bb15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2be4ee606c82fc084af1661d30f6f7f"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__arg.html#ad2be4ee606c82fc084af1661d30f6f7f">value</a></td></tr>
+<tr class="separator:ad2be4ee606c82fc084af1661d30f6f7f"><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>A single argument... </p>
+<p>each argument has a key and a value</p>
+<p>A note on naming keys: Keys are namespaced into groups, usually grouped by library, and are keys for module XYZ are named XYZ.key1, XYZ.key2, etc. Module names must be restricted to the regex [A-Za-z][_A-Za-z0-9]{,15}. Key names must be restricted to the regex [A-Za-z][_A-Za-z0-9]{,47}.</p>
+<p>GRPC core library keys are prefixed by grpc.</p>
+<p>Library authors are strongly encouraged to #define symbolic constants for their keys so that it's possible to change them in the future. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abef4f8be0109b19fcbe7f614f1243303"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void*(* grpc_arg::copy)(void *<a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">p</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15c9a748974a6ac525074f3ed1e04eb4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_arg::destroy)(void *<a class="el" href="structgrpc__arg.html#aab5d11432a11b03a53e5d959d9a5328d">p</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6871bfca9c52e7f56abbd71c81d97554"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_arg::integer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb230fbd50daacfe654abc3500a44968"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_arg::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab5d11432a11b03a53e5d959d9a5328d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_arg::p</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85b5bbfbdec09ae46cff15628096137a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_arg::pointer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a05bc3701718db73608ef3598480e8fa8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_arg::string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa26f2d3c4b1649c9eb061d24a8c10fd4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a0b06eae05e70404aedbceaebce6de593">grpc_arg_type</a> grpc_arg::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad2be4ee606c82fc084af1661d30f6f7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_arg::value</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>
diff --git a/doc/ref/core.internal/html/structgrpc__auth__context.html b/doc/ref/core.internal/html/structgrpc__auth__context.html
new file mode 100644
index 0000000000..d70a5e959d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__auth__context.html
@@ -0,0 +1,178 @@
+<!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_auth_context 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_auth_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__context_8h_source.html">security_context.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:aaf39bb67f8b5344fffac5595eee45fe6"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__context.html#aaf39bb67f8b5344fffac5595eee45fe6">chained</a></td></tr>
+<tr class="separator:aaf39bb67f8b5344fffac5595eee45fe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7090965e44ac9d847543646be11f13c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__context.html#a7090965e44ac9d847543646be11f13c7">properties</a></td></tr>
+<tr class="separator:a7090965e44ac9d847543646be11f13c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab537c748115de425b595d9efddc6f5b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__context.html#aab537c748115de425b595d9efddc6f5b">property_count</a></td></tr>
+<tr class="separator:aab537c748115de425b595d9efddc6f5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f00929fc059a0445eb61cbe73deaaae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__context.html#a1f00929fc059a0445eb61cbe73deaaae">refcount</a></td></tr>
+<tr class="separator:a1f00929fc059a0445eb61cbe73deaaae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab2b0fcdafe3cd96b1240ab5b48f1c33"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__context.html#aab2b0fcdafe3cd96b1240ab5b48f1c33">peer_identity_property_name</a></td></tr>
+<tr class="separator:aab2b0fcdafe3cd96b1240ab5b48f1c33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aaf39bb67f8b5344fffac5595eee45fe6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_auth_context::chained</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab2b0fcdafe3cd96b1240ab5b48f1c33"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_auth_context::peer_identity_property_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7090965e44ac9d847543646be11f13c7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__property.html">grpc_auth_property</a>* grpc_auth_context::properties</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab537c748115de425b595d9efddc6f5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_auth_context::property_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f00929fc059a0445eb61cbe73deaaae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_auth_context::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__context_8h_source.html">security_context.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>
diff --git a/doc/ref/core.internal/html/structgrpc__auth__json__key.html b/doc/ref/core.internal/html/structgrpc__auth__json__key.html
new file mode 100644
index 0000000000..56f38f895d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__auth__json__key.html
@@ -0,0 +1,178 @@
+<!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_auth_json_key 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_auth_json_key Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json__token_8h_source.html">json_token.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:a08ca5a9beb5f0538d75d0ac580b83e52"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__json__key.html#a08ca5a9beb5f0538d75d0ac580b83e52">type</a></td></tr>
+<tr class="separator:a08ca5a9beb5f0538d75d0ac580b83e52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e834734c85148fcfa8de3deff36dea4"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__json__key.html#a2e834734c85148fcfa8de3deff36dea4">private_key_id</a></td></tr>
+<tr class="separator:a2e834734c85148fcfa8de3deff36dea4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a925db734b8d7ad62646c260374fa0462"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__json__key.html#a925db734b8d7ad62646c260374fa0462">client_id</a></td></tr>
+<tr class="separator:a925db734b8d7ad62646c260374fa0462"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb20647a4dc6280c30d40a78b35fb7b"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__json__key.html#accb20647a4dc6280c30d40a78b35fb7b">client_email</a></td></tr>
+<tr class="separator:accb20647a4dc6280c30d40a78b35fb7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f2ce4e3cd708243003fc4201f4000b2"><td class="memItemLeft" align="right" valign="top">RSA *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__json__key.html#a1f2ce4e3cd708243003fc4201f4000b2">private_key</a></td></tr>
+<tr class="separator:a1f2ce4e3cd708243003fc4201f4000b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="accb20647a4dc6280c30d40a78b35fb7b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_json_key::client_email</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a925db734b8d7ad62646c260374fa0462"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_json_key::client_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f2ce4e3cd708243003fc4201f4000b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">RSA* grpc_auth_json_key::private_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e834734c85148fcfa8de3deff36dea4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_json_key::private_key_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08ca5a9beb5f0538d75d0ac580b83e52"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_auth_json_key::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="json__token_8h_source.html">json_token.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>
diff --git a/doc/ref/core.internal/html/structgrpc__auth__property.html b/doc/ref/core.internal/html/structgrpc__auth__property.html
new file mode 100644
index 0000000000..aa3e76cf19
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__auth__property.html
@@ -0,0 +1,150 @@
+<!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_auth_property 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_auth_property Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="grpc__security_8h_source.html">grpc_security.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:a83fb830ffe7321265dc9b628e9246a27"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property.html#a83fb830ffe7321265dc9b628e9246a27">name</a></td></tr>
+<tr class="separator:a83fb830ffe7321265dc9b628e9246a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af44f45ac4673a0298d00354c47d0907e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property.html#af44f45ac4673a0298d00354c47d0907e">value</a></td></tr>
+<tr class="separator:af44f45ac4673a0298d00354c47d0907e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07359a178c29240cab42a89ef047b101"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property.html#a07359a178c29240cab42a89ef047b101">value_length</a></td></tr>
+<tr class="separator:a07359a178c29240cab42a89ef047b101"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a83fb830ffe7321265dc9b628e9246a27"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_property::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af44f45ac4673a0298d00354c47d0907e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_property::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a07359a178c29240cab42a89ef047b101"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_auth_property::value_length</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__security_8h_source.html">grpc_security.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>
diff --git a/doc/ref/core.internal/html/structgrpc__auth__property__iterator.html b/doc/ref/core.internal/html/structgrpc__auth__property__iterator.html
new file mode 100644
index 0000000000..1f7a958072
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__auth__property__iterator.html
@@ -0,0 +1,150 @@
+<!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_auth_property_iterator 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_auth_property_iterator Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="grpc__security_8h_source.html">grpc_security.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:a971904d29fa6f6ca6a853d078cae2f58"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property__iterator.html#a971904d29fa6f6ca6a853d078cae2f58">ctx</a></td></tr>
+<tr class="separator:a971904d29fa6f6ca6a853d078cae2f58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2b2a0501f097562a6d8856e3da5e7e6"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property__iterator.html#ac2b2a0501f097562a6d8856e3da5e7e6">index</a></td></tr>
+<tr class="separator:ac2b2a0501f097562a6d8856e3da5e7e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3838efa5eb622c7e2c071497132b1cc7"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__property__iterator.html#a3838efa5eb622c7e2c071497132b1cc7">name</a></td></tr>
+<tr class="separator:a3838efa5eb622c7e2c071497132b1cc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a971904d29fa6f6ca6a853d078cae2f58"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_auth_property_iterator::ctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac2b2a0501f097562a6d8856e3da5e7e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_auth_property_iterator::index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3838efa5eb622c7e2c071497132b1cc7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_auth_property_iterator::name</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__security_8h_source.html">grpc_security.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>
diff --git a/doc/ref/core.internal/html/structgrpc__auth__refresh__token.html b/doc/ref/core.internal/html/structgrpc__auth__refresh__token.html
new file mode 100644
index 0000000000..e29500003c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__auth__refresh__token.html
@@ -0,0 +1,164 @@
+<!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_auth_refresh_token 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_auth_refresh_token Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json__token_8h_source.html">json_token.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:a8f88b86542543e97f441ea0080ab6c8e"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__refresh__token.html#a8f88b86542543e97f441ea0080ab6c8e">type</a></td></tr>
+<tr class="separator:a8f88b86542543e97f441ea0080ab6c8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a802a5c8f34166ec49b6345faea92d52c"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__refresh__token.html#a802a5c8f34166ec49b6345faea92d52c">client_id</a></td></tr>
+<tr class="separator:a802a5c8f34166ec49b6345faea92d52c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad29ccc6f1c4c23bc05841efd3dd5bab4"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__refresh__token.html#ad29ccc6f1c4c23bc05841efd3dd5bab4">client_secret</a></td></tr>
+<tr class="separator:ad29ccc6f1c4c23bc05841efd3dd5bab4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5dea27f01a2952d14e34ea89473d4a12"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__auth__refresh__token.html#a5dea27f01a2952d14e34ea89473d4a12">refresh_token</a></td></tr>
+<tr class="separator:a5dea27f01a2952d14e34ea89473d4a12"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a802a5c8f34166ec49b6345faea92d52c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_refresh_token::client_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad29ccc6f1c4c23bc05841efd3dd5bab4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_refresh_token::client_secret</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5dea27f01a2952d14e34ea89473d4a12"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_auth_refresh_token::refresh_token</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8f88b86542543e97f441ea0080ab6c8e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_auth_refresh_token::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="json__token_8h_source.html">json_token.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>
diff --git a/doc/ref/core.internal/html/structgrpc__bbq__array.html b/doc/ref/core.internal/html/structgrpc__bbq__array.html
new file mode 100644
index 0000000000..00d30662c8
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__bbq__array.html
@@ -0,0 +1,150 @@
+<!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_bbq_array 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_bbq_array Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="byte__buffer__queue_8h_source.html">byte_buffer_queue.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:afbcd5e2a41d2eb5d0ede543818c7cf51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__bbq__array.html#afbcd5e2a41d2eb5d0ede543818c7cf51">data</a></td></tr>
+<tr class="separator:afbcd5e2a41d2eb5d0ede543818c7cf51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b857914bbbac7d1713797819a597fb2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__bbq__array.html#a1b857914bbbac7d1713797819a597fb2">count</a></td></tr>
+<tr class="separator:a1b857914bbbac7d1713797819a597fb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab53971ceac3b56cd690f24fe646bba9"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__bbq__array.html#aab53971ceac3b56cd690f24fe646bba9">capacity</a></td></tr>
+<tr class="separator:aab53971ceac3b56cd690f24fe646bba9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aab53971ceac3b56cd690f24fe646bba9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_bbq_array::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1b857914bbbac7d1713797819a597fb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_bbq_array::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afbcd5e2a41d2eb5d0ede543818c7cf51"></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_bbq_array::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="byte__buffer__queue_8h_source.html">byte_buffer_queue.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>
diff --git a/doc/ref/core.internal/html/structgrpc__begin__message.html b/doc/ref/core.internal/html/structgrpc__begin__message.html
new file mode 100644
index 0000000000..57878f745d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__begin__message.html
@@ -0,0 +1,136 @@
+<!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_begin_message 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_begin_message Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__op_8h_source.html">stream_op.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:a12d8a0f037d922d2a6aecd010d9af9b0"><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__begin__message.html#a12d8a0f037d922d2a6aecd010d9af9b0">length</a></td></tr>
+<tr class="separator:a12d8a0f037d922d2a6aecd010d9af9b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32d937f7978a6fcf19e64ba71ef2dc7b"><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__begin__message.html#a32d937f7978a6fcf19e64ba71ef2dc7b">flags</a></td></tr>
+<tr class="separator:a32d937f7978a6fcf19e64ba71ef2dc7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a32d937f7978a6fcf19e64ba71ef2dc7b"></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_begin_message::flags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12d8a0f037d922d2a6aecd010d9af9b0"></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_begin_message::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="stream__op_8h_source.html">stream_op.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>
diff --git a/doc/ref/core.internal/html/structgrpc__byte__buffer.html b/doc/ref/core.internal/html/structgrpc__byte__buffer.html
new file mode 100644
index 0000000000..f13d1fec60
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__byte__buffer.html
@@ -0,0 +1,180 @@
+<!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_byte_buffer 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_byte_buffer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">byte_buffer.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:aa7357d67e401d5bc9d10d8fed008dec8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer.html#aa7357d67e401d5bc9d10d8fed008dec8">type</a></td></tr>
+<tr class="separator:aa7357d67e401d5bc9d10d8fed008dec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bee8905a97b4972f9ec1d18e5fe513f"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a81235e4f4d607be352658d8f99bd76b9"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a2d99f275d052bd76813e326f7e0b29e6"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer.html#a3663648016e1076b82c5e731dc5b2399">compression</a></td></tr>
+<tr class="separator:a2d99f275d052bd76813e326f7e0b29e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e3c52a4955f3b408a9b5a84f94bfe47"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer.html#ae93126777b4832bc327b7e10104f0eae">slice_buffer</a></td></tr>
+<tr class="separator:a7e3c52a4955f3b408a9b5a84f94bfe47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81235e4f4d607be352658d8f99bd76b9"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer.html#ae8231d6e62b3d7f4cfbc6a564c84bae6">raw</a></td></tr>
+<tr class="separator:a81235e4f4d607be352658d8f99bd76b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bee8905a97b4972f9ec1d18e5fe513f"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer.html#a9bee8905a97b4972f9ec1d18e5fe513f">data</a></td></tr>
+<tr class="separator:a9bee8905a97b4972f9ec1d18e5fe513f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3663648016e1076b82c5e731dc5b2399"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_byte_buffer::compression</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9bee8905a97b4972f9ec1d18e5fe513f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_byte_buffer::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae8231d6e62b3d7f4cfbc6a564c84bae6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_byte_buffer::raw</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae93126777b4832bc327b7e10104f0eae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> grpc_byte_buffer::slice_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7357d67e401d5bc9d10d8fed008dec8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="byte__buffer_8h.html#acdc94363b280bde9c82e3d9b5dc3b3e6">grpc_byte_buffer_type</a> grpc_byte_buffer::type</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="byte__buffer_8h_source.html">byte_buffer.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>
diff --git a/doc/ref/core.internal/html/structgrpc__byte__buffer__queue.html b/doc/ref/core.internal/html/structgrpc__byte__buffer__queue.html
new file mode 100644
index 0000000000..efcec0e696
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__byte__buffer__queue.html
@@ -0,0 +1,164 @@
+<!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_byte_buffer_queue 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_byte_buffer_queue Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="byte__buffer__queue_8h_source.html">byte_buffer_queue.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:a892ef76ec959884e1ac9bfa3bc71912b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__queue.html#a892ef76ec959884e1ac9bfa3bc71912b">drain_pos</a></td></tr>
+<tr class="separator:a892ef76ec959884e1ac9bfa3bc71912b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59362dc489f174084408061a3c86af7c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__bbq__array.html">grpc_bbq_array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__queue.html#a59362dc489f174084408061a3c86af7c">filling</a></td></tr>
+<tr class="separator:a59362dc489f174084408061a3c86af7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ada3647f6060be981ff3dbd1ed2f54b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__bbq__array.html">grpc_bbq_array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__queue.html#a4ada3647f6060be981ff3dbd1ed2f54b">draining</a></td></tr>
+<tr class="separator:a4ada3647f6060be981ff3dbd1ed2f54b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16c6f1877a10ab226a2fd9988612ea59"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__queue.html#a16c6f1877a10ab226a2fd9988612ea59">bytes</a></td></tr>
+<tr class="separator:a16c6f1877a10ab226a2fd9988612ea59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a16c6f1877a10ab226a2fd9988612ea59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_byte_buffer_queue::bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a892ef76ec959884e1ac9bfa3bc71912b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_byte_buffer_queue::drain_pos</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4ada3647f6060be981ff3dbd1ed2f54b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__bbq__array.html">grpc_bbq_array</a> grpc_byte_buffer_queue::draining</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a59362dc489f174084408061a3c86af7c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__bbq__array.html">grpc_bbq_array</a> grpc_byte_buffer_queue::filling</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="byte__buffer__queue_8h_source.html">byte_buffer_queue.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>
diff --git a/doc/ref/core.internal/html/structgrpc__byte__buffer__reader.html b/doc/ref/core.internal/html/structgrpc__byte__buffer__reader.html
new file mode 100644
index 0000000000..46febb820f
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__byte__buffer__reader.html
@@ -0,0 +1,165 @@
+<!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_byte_buffer_reader 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_byte_buffer_reader Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="byte__buffer__reader_8h_source.html">byte_buffer_reader.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:a8856d955b045dab1a425fac372e0be22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__reader.html#a8856d955b045dab1a425fac372e0be22">buffer_in</a></td></tr>
+<tr class="separator:a8856d955b045dab1a425fac372e0be22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa947e8d51e0b4333e2b68f0ac55f4e47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__reader.html#aa947e8d51e0b4333e2b68f0ac55f4e47">buffer_out</a></td></tr>
+<tr class="separator:aa947e8d51e0b4333e2b68f0ac55f4e47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa53ee469c319cbdd72d44548d1f981f"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:ab865a0db76a0a6c0c32cbd1ee98e6db8"><td class="memItemLeft" >&#160;&#160;&#160;unsigned&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer__reader.html#a948b75a404899c348fc6a52e1a6e63cb">index</a></td></tr>
+<tr class="separator:ab865a0db76a0a6c0c32cbd1ee98e6db8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa53ee469c319cbdd72d44548d1f981f"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__byte__buffer__reader.html#aaa53ee469c319cbdd72d44548d1f981f">current</a></td></tr>
+<tr class="separator:aaa53ee469c319cbdd72d44548d1f981f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8856d955b045dab1a425fac372e0be22"></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_byte_buffer_reader::buffer_in</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa947e8d51e0b4333e2b68f0ac55f4e47"></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_byte_buffer_reader::buffer_out</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa53ee469c319cbdd72d44548d1f981f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_byte_buffer_reader::current</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a948b75a404899c348fc6a52e1a6e63cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned grpc_byte_buffer_reader::index</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="byte__buffer__reader_8h_source.html">byte_buffer_reader.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>
diff --git a/doc/ref/core.internal/html/structgrpc__call.html b/doc/ref/core.internal/html/structgrpc__call.html
new file mode 100644
index 0000000000..3e1d0a47cf
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__call.html
@@ -0,0 +1,846 @@
+<!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_call 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_call Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ae24201f3b8347e790898e3bc2ae1ad09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ae24201f3b8347e790898e3bc2ae1ad09">cq</a></td></tr>
+<tr class="separator:ae24201f3b8347e790898e3bc2ae1ad09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefaa9e839c97ca63876add3d3a04a94d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#aefaa9e839c97ca63876add3d3a04a94d">channel</a></td></tr>
+<tr class="separator:aefaa9e839c97ca63876add3d3a04a94d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fcf672edf744df8c192aba2da0da3f2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a1fcf672edf744df8c192aba2da0da3f2">metadata_context</a></td></tr>
+<tr class="separator:a1fcf672edf744df8c192aba2da0da3f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0641698dba5cf939dbc61e2a6019199c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a0641698dba5cf939dbc61e2a6019199c">mu</a></td></tr>
+<tr class="separator:a0641698dba5cf939dbc61e2a6019199c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf50407acc01602b67f4e442b3a3121d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#aaf50407acc01602b67f4e442b3a3121d">completion_mu</a></td></tr>
+<tr class="separator:aaf50407acc01602b67f4e442b3a3121d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f26a9a6519f11d88d97cd0b1f92c440"><td class="memItemLeft" align="right" valign="top"><a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17">read_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a9f26a9a6519f11d88d97cd0b1f92c440">read_state</a></td></tr>
+<tr class="separator:a9f26a9a6519f11d88d97cd0b1f92c440"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a08d62d6d129d629c2cbe25511983ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688d">write_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a9a08d62d6d129d629c2cbe25511983ac">write_state</a></td></tr>
+<tr class="separator:a9a08d62d6d129d629c2cbe25511983ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a4810b490545e9b18b488bef197314f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a5a4810b490545e9b18b488bef197314f">is_client</a></td></tr>
+<tr class="separator:a5a4810b490545e9b18b488bef197314f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ef6ebfaceedd93d50960c7e11a279b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a8ef6ebfaceedd93d50960c7e11a279b2">have_alarm</a></td></tr>
+<tr class="separator:a8ef6ebfaceedd93d50960c7e11a279b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d64e836e0421c8129ac75e477271ef8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a7d64e836e0421c8129ac75e477271ef8">sending</a></td></tr>
+<tr class="separator:a7d64e836e0421c8129ac75e477271ef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95e4aaa4d6cd6b6f1568282178ba3682"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a95e4aaa4d6cd6b6f1568282178ba3682">receiving</a></td></tr>
+<tr class="separator:a95e4aaa4d6cd6b6f1568282178ba3682"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ad5b28a10c5453b5fcd3cbf5e9ec0cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a0ad5b28a10c5453b5fcd3cbf5e9ec0cc">completing</a></td></tr>
+<tr class="separator:a0ad5b28a10c5453b5fcd3cbf5e9ec0cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af72cb94597b41817f2c12e8d4ac5ae95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#af72cb94597b41817f2c12e8d4ac5ae95">destroy_called</a></td></tr>
+<tr class="memdesc:af72cb94597b41817f2c12e8d4ac5ae95"><td class="mdescLeft">&#160;</td><td class="mdescRight">has grpc_call_destroy been called <a href="#af72cb94597b41817f2c12e8d4ac5ae95">More...</a><br/></td></tr>
+<tr class="separator:af72cb94597b41817f2c12e8d4ac5ae95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae92d9e5f96d5e80d9c480ab79e051ada"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ae92d9e5f96d5e80d9c480ab79e051ada">num_completed_requests</a></td></tr>
+<tr class="separator:ae92d9e5f96d5e80d9c480ab79e051ada"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9db5a5b3f304f49fef8c5ed3ce754761"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a9db5a5b3f304f49fef8c5ed3ce754761">reading_message</a></td></tr>
+<tr class="separator:a9db5a5b3f304f49fef8c5ed3ce754761"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cd66ac4c2f69f16f6037fc63f0d49db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a3cd66ac4c2f69f16f6037fc63f0d49db">bound_pollset</a></td></tr>
+<tr class="separator:a3cd66ac4c2f69f16f6037fc63f0d49db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cb38ade0e31380920c4afe56eea7b85"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a5cb38ade0e31380920c4afe56eea7b85">error_status_set</a></td></tr>
+<tr class="separator:a5cb38ade0e31380920c4afe56eea7b85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8ecae45b11c6194a51ccd17b0ae1a724"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a8ecae45b11c6194a51ccd17b0ae1a724">cancel_alarm</a></td></tr>
+<tr class="memdesc:a8ecae45b11c6194a51ccd17b0ae1a724"><td class="mdescLeft">&#160;</td><td class="mdescRight">should the alarm be cancelled <a href="#a8ecae45b11c6194a51ccd17b0ae1a724">More...</a><br/></td></tr>
+<tr class="separator:a8ecae45b11c6194a51ccd17b0ae1a724"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fa8c9ad3543546625b2aaa7d2853c05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a7fa8c9ad3543546625b2aaa7d2853c05">allocated_completions</a></td></tr>
+<tr class="memdesc:a7fa8c9ad3543546625b2aaa7d2853c05"><td class="mdescLeft">&#160;</td><td class="mdescRight">bitmask of allocated completion events in completions <a href="#a7fa8c9ad3543546625b2aaa7d2853c05">More...</a><br/></td></tr>
+<tr class="separator:a7fa8c9ad3543546625b2aaa7d2853c05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4428a5f3615eb7ed703cb5650c379225"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a4428a5f3615eb7ed703cb5650c379225">last_send_contains</a></td></tr>
+<tr class="separator:a4428a5f3615eb7ed703cb5650c379225"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52b7e350723f5cd4a577a86a4b72f026"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a52b7e350723f5cd4a577a86a4b72f026">cancel_with_status</a></td></tr>
+<tr class="separator:a52b7e350723f5cd4a577a86a4b72f026"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adace21c70dcd672521c08f0465e33c95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#adace21c70dcd672521c08f0465e33c95">request_set</a> [<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td></tr>
+<tr class="separator:adace21c70dcd672521c08f0465e33c95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d8e4ea86a2539b59f762ba97652bd8d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a7d8e4ea86a2539b59f762ba97652bd8d">request_data</a> [<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td></tr>
+<tr class="separator:a7d8e4ea86a2539b59f762ba97652bd8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43f9cd5720841b99ea69fd94aed0ee13"><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__call.html#a43f9cd5720841b99ea69fd94aed0ee13">request_flags</a> [<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td></tr>
+<tr class="separator:a43f9cd5720841b99ea69fd94aed0ee13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a0e7c0825db8dc7561af44663cbd75d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreqinfo__master.html">reqinfo_master</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a6a0e7c0825db8dc7561af44663cbd75d">masters</a> [<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td></tr>
+<tr class="separator:a6a0e7c0825db8dc7561af44663cbd75d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af82a58a0e542b5acd8bc4b1e50842ddd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcompleted__request.html">completed_request</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#af82a58a0e542b5acd8bc4b1e50842ddd">completed_requests</a> [<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td></tr>
+<tr class="separator:af82a58a0e542b5acd8bc4b1e50842ddd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae217707d3befc054ac994f12de9e10bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ae217707d3befc054ac994f12de9e10bb">incoming_queue</a></td></tr>
+<tr class="separator:ae217707d3befc054ac994f12de9e10bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae501d7b947eb7a73170ccc5272e83c15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ae501d7b947eb7a73170ccc5272e83c15">buffered_metadata</a> [2]</td></tr>
+<tr class="separator:ae501d7b947eb7a73170ccc5272e83c15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d2b2ada096589b52bfafa00be6e25b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a3d2b2ada096589b52bfafa00be6e25b2">owned_metadata</a></td></tr>
+<tr class="separator:a3d2b2ada096589b52bfafa00be6e25b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc8804b9c6ee72c862e9eba7518a48ee"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#acc8804b9c6ee72c862e9eba7518a48ee">owned_metadata_count</a></td></tr>
+<tr class="separator:acc8804b9c6ee72c862e9eba7518a48ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34cb5caca97e3b28ed0d321d9d38f6c8"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a34cb5caca97e3b28ed0d321d9d38f6c8">owned_metadata_capacity</a></td></tr>
+<tr class="separator:a34cb5caca97e3b28ed0d321d9d38f6c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4f49d27f54bd1436da3ad7cfe662639"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structreceived__status.html">received_status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ac4f49d27f54bd1436da3ad7cfe662639">status</a> [<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22">STATUS_SOURCE_COUNT</a>]</td></tr>
+<tr class="separator:ac4f49d27f54bd1436da3ad7cfe662639"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa14a32dc253da1909a2dd6e44304fdc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#afa14a32dc253da1909a2dd6e44304fdc">compression_algorithm</a></td></tr>
+<tr class="separator:afa14a32dc253da1909a2dd6e44304fdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91cd558ccf432aa44bbe813c4acd022c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__context__element.html">grpc_call_context_element</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a91cd558ccf432aa44bbe813c4acd022c">context</a> [<a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">GRPC_CONTEXT_COUNT</a>]</td></tr>
+<tr class="separator:a91cd558ccf432aa44bbe813c4acd022c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a673a0cdde6bc7ebe5ff66820b8bd0b91"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a673a0cdde6bc7ebe5ff66820b8bd0b91">alarm</a></td></tr>
+<tr class="separator:a673a0cdde6bc7ebe5ff66820b8bd0b91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8aedf0fd044d8d985172fd02293ed55d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a8aedf0fd044d8d985172fd02293ed55d">internal_refcount</a></td></tr>
+<tr class="separator:a8aedf0fd044d8d985172fd02293ed55d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96ac69dc425de5924edd871f93338112"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a96ac69dc425de5924edd871f93338112">send_initial_metadata</a> [3]</td></tr>
+<tr class="separator:a96ac69dc425de5924edd871f93338112"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb6f13c9a524b29da7f4a760332dea6d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#acb6f13c9a524b29da7f4a760332dea6d">status_link</a></td></tr>
+<tr class="separator:acb6f13c9a524b29da7f4a760332dea6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a932212dbec6334868cf997dd275c2192"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a932212dbec6334868cf997dd275c2192">details_link</a></td></tr>
+<tr class="separator:a932212dbec6334868cf997dd275c2192"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb6adc9d5f666a056c89172f506fcc3d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#abb6adc9d5f666a056c89172f506fcc3d">send_initial_metadata_count</a></td></tr>
+<tr class="separator:abb6adc9d5f666a056c89172f506fcc3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5de7c68ffa6939ff2e1c43c4cd418315"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a5de7c68ffa6939ff2e1c43c4cd418315">send_deadline</a></td></tr>
+<tr class="separator:a5de7c68ffa6939ff2e1c43c4cd418315"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab17467642afa4f6c1c27bb9013093592"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ab17467642afa4f6c1c27bb9013093592">send_ops</a></td></tr>
+<tr class="separator:ab17467642afa4f6c1c27bb9013093592"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77c3749f20284b1a9a836286a470a08e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a77c3749f20284b1a9a836286a470a08e">recv_ops</a></td></tr>
+<tr class="separator:a77c3749f20284b1a9a836286a470a08e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23a473fb241cc663a16873d18690535b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a23a473fb241cc663a16873d18690535b">recv_state</a></td></tr>
+<tr class="separator:a23a473fb241cc663a16873d18690535b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98eafd66de3d31324c7a9c113dfb9a56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a98eafd66de3d31324c7a9c113dfb9a56">incoming_message</a></td></tr>
+<tr class="separator:a98eafd66de3d31324c7a9c113dfb9a56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51fb682fa9024d09b2e137edb2fc13d0"><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__call.html#a51fb682fa9024d09b2e137edb2fc13d0">incoming_message_length</a></td></tr>
+<tr class="separator:a51fb682fa9024d09b2e137edb2fc13d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c3b082e465f93d090d6f523e197b43a"><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__call.html#a4c3b082e465f93d090d6f523e197b43a">incoming_message_flags</a></td></tr>
+<tr class="separator:a4c3b082e465f93d090d6f523e197b43a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2cac7abed2fe85b3ddbdde40931ed793"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a2cac7abed2fe85b3ddbdde40931ed793">destroy_closure</a></td></tr>
+<tr class="separator:a2cac7abed2fe85b3ddbdde40931ed793"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7397b6f80ed39e5e5b3cf1c68e88e959"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a7397b6f80ed39e5e5b3cf1c68e88e959">on_done_recv</a></td></tr>
+<tr class="separator:a7397b6f80ed39e5e5b3cf1c68e88e959"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4cef85f8e845ae1f24f043e5d853a843"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a4cef85f8e845ae1f24f043e5d853a843">on_done_send</a></td></tr>
+<tr class="separator:a4cef85f8e845ae1f24f043e5d853a843"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14ae475238cf1ae8b2d022c7a6b755b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#a14ae475238cf1ae8b2d022c7a6b755b7">on_done_bind</a></td></tr>
+<tr class="separator:a14ae475238cf1ae8b2d022c7a6b755b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad48e9f752753814bf9ee0233c392fccd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call.html#ad48e9f752753814bf9ee0233c392fccd">completions</a> [6]</td></tr>
+<tr class="memdesc:ad48e9f752753814bf9ee0233c392fccd"><td class="mdescLeft">&#160;</td><td class="mdescRight">completion events - for completion queue use <a href="#ad48e9f752753814bf9ee0233c392fccd">More...</a><br/></td></tr>
+<tr class="separator:ad48e9f752753814bf9ee0233c392fccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a673a0cdde6bc7ebe5ff66820b8bd0b91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> grpc_call::alarm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fa8c9ad3543546625b2aaa7d2853c05"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::allocated_completions</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>bitmask of allocated completion events in completions </p>
+
+</div>
+</div>
+<a class="anchor" id="a3cd66ac4c2f69f16f6037fc63f0d49db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::bound_pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae501d7b947eb7a73170ccc5272e83c15"></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_call::buffered_metadata[2]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ecae45b11c6194a51ccd17b0ae1a724"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::cancel_alarm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>should the alarm be cancelled </p>
+
+</div>
+</div>
+<a class="anchor" id="a52b7e350723f5cd4a577a86a4b72f026"></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_call::cancel_with_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aefaa9e839c97ca63876add3d3a04a94d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_call::channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af82a58a0e542b5acd8bc4b1e50842ddd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcompleted__request.html">completed_request</a> grpc_call::completed_requests[<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ad5b28a10c5453b5fcd3cbf5e9ec0cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::completing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaf50407acc01602b67f4e442b3a3121d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_call::completion_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad48e9f752753814bf9ee0233c392fccd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> grpc_call::completions[6]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>completion events - for completion queue use </p>
+
+</div>
+</div>
+<a class="anchor" id="afa14a32dc253da1909a2dd6e44304fdc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="compression_8h.html#ab9de0f68bfb1ef8ed09bd00643db14c9">grpc_compression_algorithm</a> grpc_call::compression_algorithm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a91cd558ccf432aa44bbe813c4acd022c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__context__element.html">grpc_call_context_element</a> grpc_call::context[<a class="el" href="channel_2context_8h.html#ad9f29fba1468a9a1384b9104bf368dffa7cc0d6f72e8a72421b89aa61683324a7">GRPC_CONTEXT_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae24201f3b8347e790898e3bc2ae1ad09"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* grpc_call::cq</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af72cb94597b41817f2c12e8d4ac5ae95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::destroy_called</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>has grpc_call_destroy been called </p>
+
+</div>
+</div>
+<a class="anchor" id="a2cac7abed2fe85b3ddbdde40931ed793"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_call::destroy_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a932212dbec6334868cf997dd275c2192"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> grpc_call::details_link</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5cb38ade0e31380920c4afe56eea7b85"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::error_status_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8ef6ebfaceedd93d50960c7e11a279b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::have_alarm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a98eafd66de3d31324c7a9c113dfb9a56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> grpc_call::incoming_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4c3b082e465f93d090d6f523e197b43a"></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_call::incoming_message_flags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a51fb682fa9024d09b2e137edb2fc13d0"></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_call::incoming_message_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae217707d3befc054ac994f12de9e10bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__byte__buffer__queue.html">grpc_byte_buffer_queue</a> grpc_call::incoming_queue</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8aedf0fd044d8d985172fd02293ed55d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_call::internal_refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a4810b490545e9b18b488bef197314f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::is_client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4428a5f3615eb7ed703cb5650c379225"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_call::last_send_contains</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6a0e7c0825db8dc7561af44663cbd75d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structreqinfo__master.html">reqinfo_master</a> grpc_call::masters[<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1fcf672edf744df8c192aba2da0da3f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_call::metadata_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0641698dba5cf939dbc61e2a6019199c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_call::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae92d9e5f96d5e80d9c480ab79e051ada"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::num_completed_requests</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14ae475238cf1ae8b2d022c7a6b755b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_call::on_done_bind</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7397b6f80ed39e5e5b3cf1c68e88e959"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_call::on_done_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4cef85f8e845ae1f24f043e5d853a843"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_call::on_done_send</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3d2b2ada096589b52bfafa00be6e25b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>** grpc_call::owned_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34cb5caca97e3b28ed0d321d9d38f6c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_call::owned_metadata_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acc8804b9c6ee72c862e9eba7518a48ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_call::owned_metadata_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9f26a9a6519f11d88d97cd0b1f92c440"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="call_8c.html#a67c68be8fc9fb0341b9c1c0881f19d17">read_state</a> grpc_call::read_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9db5a5b3f304f49fef8c5ed3ce754761"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::reading_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95e4aaa4d6cd6b6f1568282178ba3682"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::receiving</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a77c3749f20284b1a9a836286a470a08e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> grpc_call::recv_ops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a23a473fb241cc663a16873d18690535b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> grpc_call::recv_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d8e4ea86a2539b59f762ba97652bd8d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a> grpc_call::request_data[<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43f9cd5720841b99ea69fd94aed0ee13"></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_call::request_flags[<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adace21c70dcd672521c08f0465e33c95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::request_set[<a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077a51d3cbf122a04eb94e88015228795660">GRPC_IOREQ_OP_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5de7c68ffa6939ff2e1c43c4cd418315"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_call::send_deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a96ac69dc425de5924edd871f93338112"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> grpc_call::send_initial_metadata[3]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb6adc9d5f666a056c89172f506fcc3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_call::send_initial_metadata_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab17467642afa4f6c1c27bb9013093592"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> grpc_call::send_ops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d64e836e0421c8129ac75e477271ef8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_call::sending</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4f49d27f54bd1436da3ad7cfe662639"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structreceived__status.html">received_status</a> grpc_call::status[<a class="el" href="call_8c.html#a9291c3528e3f346e6ae8137ac9e76271a429d7ee18b26738df32b9a74586afc22">STATUS_SOURCE_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb6f13c9a524b29da7f4a760332dea6d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> grpc_call::status_link</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9a08d62d6d129d629c2cbe25511983ac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="call_8c.html#a5ed0172019dfa72bf69d881d3f06688d">write_state</a> grpc_call::write_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8c.html">call.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__call__context__element.html b/doc/ref/core.internal/html/structgrpc__call__context__element.html
new file mode 100644
index 0000000000..57f3fa4918
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__call__context__element.html
@@ -0,0 +1,136 @@
+<!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_call_context_element 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_call_context_element Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel_2context_8h_source.html">context.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:ad87c86a02e8563e6f99a4711737df3d4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__context__element.html#ad87c86a02e8563e6f99a4711737df3d4">value</a></td></tr>
+<tr class="separator:ad87c86a02e8563e6f99a4711737df3d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a896c4d5b89848f2f14678745b6162f94"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__context__element.html#a896c4d5b89848f2f14678745b6162f94">destroy</a> )(void *)</td></tr>
+<tr class="separator:a896c4d5b89848f2f14678745b6162f94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a896c4d5b89848f2f14678745b6162f94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_call_context_element::destroy)(void *)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad87c86a02e8563e6f99a4711737df3d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_call_context_element::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="channel_2context_8h_source.html">context.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>
diff --git a/doc/ref/core.internal/html/structgrpc__call__details.html b/doc/ref/core.internal/html/structgrpc__call__details.html
new file mode 100644
index 0000000000..3845a31af7
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__call__details.html
@@ -0,0 +1,178 @@
+<!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_call_details 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_call_details Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<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:a97c8019d8fa7cbe2014d97c91f9ed0a5"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__details.html#a97c8019d8fa7cbe2014d97c91f9ed0a5">method</a></td></tr>
+<tr class="separator:a97c8019d8fa7cbe2014d97c91f9ed0a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a7da868f60a88f42918cc9bdd4d26c0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__details.html#a8a7da868f60a88f42918cc9bdd4d26c0">method_capacity</a></td></tr>
+<tr class="separator:a8a7da868f60a88f42918cc9bdd4d26c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a869b5db96e2e0fbd573381e77b859631"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__details.html#a869b5db96e2e0fbd573381e77b859631">host</a></td></tr>
+<tr class="separator:a869b5db96e2e0fbd573381e77b859631"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeab0d9e754bbb1aac1a21ad4ef63d8b1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__details.html#aeab0d9e754bbb1aac1a21ad4ef63d8b1">host_capacity</a></td></tr>
+<tr class="separator:aeab0d9e754bbb1aac1a21ad4ef63d8b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b72caadcf800d975987de18012f0f15"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__details.html#a6b72caadcf800d975987de18012f0f15">deadline</a></td></tr>
+<tr class="separator:a6b72caadcf800d975987de18012f0f15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6b72caadcf800d975987de18012f0f15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_call_details::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a869b5db96e2e0fbd573381e77b859631"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_call_details::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeab0d9e754bbb1aac1a21ad4ef63d8b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_call_details::host_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a97c8019d8fa7cbe2014d97c91f9ed0a5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_call_details::method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8a7da868f60a88f42918cc9bdd4d26c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_call_details::method_capacity</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>
diff --git a/doc/ref/core.internal/html/structgrpc__call__element.html b/doc/ref/core.internal/html/structgrpc__call__element.html
new file mode 100644
index 0000000000..ef129ca778
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__call__element.html
@@ -0,0 +1,150 @@
+<!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_call_element 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_call_element Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__stack_8h_source.html">channel_stack.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:aac551ff2d3e8df1b3d39495eb7f160a8"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__element.html#aac551ff2d3e8df1b3d39495eb7f160a8">filter</a></td></tr>
+<tr class="separator:aac551ff2d3e8df1b3d39495eb7f160a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad74abaaf7860b7dd8f2fef1e2141a27b"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__element.html#ad74abaaf7860b7dd8f2fef1e2141a27b">channel_data</a></td></tr>
+<tr class="separator:ad74abaaf7860b7dd8f2fef1e2141a27b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30f78246a0caa0615e4b48d3091b8c04"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__element.html#a30f78246a0caa0615e4b48d3091b8c04">call_data</a></td></tr>
+<tr class="separator:a30f78246a0caa0615e4b48d3091b8c04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a30f78246a0caa0615e4b48d3091b8c04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_call_element::call_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad74abaaf7860b7dd8f2fef1e2141a27b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_call_element::channel_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aac551ff2d3e8df1b3d39495eb7f160a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>* grpc_call_element::filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="channel__stack_8h_source.html">channel_stack.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>
diff --git a/doc/ref/core.internal/html/structgrpc__call__stack.html b/doc/ref/core.internal/html/structgrpc__call__stack.html
new file mode 100644
index 0000000000..060fc67c2e
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__call__stack.html
@@ -0,0 +1,122 @@
+<!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_call_stack 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_call_stack Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__stack_8h_source.html">channel_stack.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:a145db8509ca1a7e0da0d80e60ad0072a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__call__stack.html#a145db8509ca1a7e0da0d80e60ad0072a">count</a></td></tr>
+<tr class="separator:a145db8509ca1a7e0da0d80e60ad0072a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a145db8509ca1a7e0da0d80e60ad0072a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_call_stack::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="channel__stack_8h_source.html">channel_stack.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>
diff --git a/doc/ref/core.internal/html/structgrpc__channel.html b/doc/ref/core.internal/html/structgrpc__channel.html
new file mode 100644
index 0000000000..85031e142a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__channel.html
@@ -0,0 +1,308 @@
+<!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_channel 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_channel Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a4bfedb17fb28f088111e21abd9c2c4cc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#a4bfedb17fb28f088111e21abd9c2c4cc">is_client</a></td></tr>
+<tr class="separator:a4bfedb17fb28f088111e21abd9c2c4cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc936d967cd122b7b5300387e8ea0abe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#acc936d967cd122b7b5300387e8ea0abe">refs</a></td></tr>
+<tr class="separator:acc936d967cd122b7b5300387e8ea0abe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af25859261f7e57e5c5f2bbafda64dbf1"><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__channel.html#af25859261f7e57e5c5f2bbafda64dbf1">max_message_length</a></td></tr>
+<tr class="separator:af25859261f7e57e5c5f2bbafda64dbf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a715d3ad3606de80c57ea96570e364ec8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#a715d3ad3606de80c57ea96570e364ec8">metadata_context</a></td></tr>
+<tr class="separator:a715d3ad3606de80c57ea96570e364ec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b3d99e4664ffe3399d29f61f7063600"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#a4b3d99e4664ffe3399d29f61f7063600">grpc_status_string</a></td></tr>
+<tr class="memdesc:a4b3d99e4664ffe3399d29f61f7063600"><td class="mdescLeft">&#160;</td><td class="mdescRight">mdstr for the grpc-status key <a href="#a4b3d99e4664ffe3399d29f61f7063600">More...</a><br/></td></tr>
+<tr class="separator:a4b3d99e4664ffe3399d29f61f7063600"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd8f60fef22e201f1e1ba3b00f285602"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#afd8f60fef22e201f1e1ba3b00f285602">grpc_compression_algorithm_string</a></td></tr>
+<tr class="separator:afd8f60fef22e201f1e1ba3b00f285602"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa00f6e53c4b732654311f194aa2f3957"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#aa00f6e53c4b732654311f194aa2f3957">grpc_message_string</a></td></tr>
+<tr class="separator:aa00f6e53c4b732654311f194aa2f3957"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad55dee766f5bae6c7bc00ad07bcb4b04"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#ad55dee766f5bae6c7bc00ad07bcb4b04">path_string</a></td></tr>
+<tr class="separator:ad55dee766f5bae6c7bc00ad07bcb4b04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ad924bb3cc339c10d106f48b9a4a959"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#a9ad924bb3cc339c10d106f48b9a4a959">authority_string</a></td></tr>
+<tr class="separator:a9ad924bb3cc339c10d106f48b9a4a959"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad50abb90c5f7ef77e51f8387b06451f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#ad50abb90c5f7ef77e51f8387b06451f9">grpc_status_elem</a> [3]</td></tr>
+<tr class="memdesc:ad50abb90c5f7ef77e51f8387b06451f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">mdelem for grpc-status: 0 thru grpc-status: 2 <a href="#ad50abb90c5f7ef77e51f8387b06451f9">More...</a><br/></td></tr>
+<tr class="separator:ad50abb90c5f7ef77e51f8387b06451f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa59a21ba43df1a848efbc177cd5725cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#aa59a21ba43df1a848efbc177cd5725cd">registered_call_mu</a></td></tr>
+<tr class="separator:aa59a21ba43df1a848efbc177cd5725cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac92f7c7b4dd87743f30a16aaaf91f061"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structregistered__call.html">registered_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#ac92f7c7b4dd87743f30a16aaaf91f061">registered_calls</a></td></tr>
+<tr class="separator:ac92f7c7b4dd87743f30a16aaaf91f061"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6dda10ffe354ceefda810573f5e80e9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#ae6dda10ffe354ceefda810573f5e80e9">destroy_closure</a></td></tr>
+<tr class="separator:ae6dda10ffe354ceefda810573f5e80e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac84ed7ccb6f221068ee55b5e6c073543"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel.html#ac84ed7ccb6f221068ee55b5e6c073543">target</a></td></tr>
+<tr class="separator:ac84ed7ccb6f221068ee55b5e6c073543"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9ad924bb3cc339c10d106f48b9a4a959"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel::authority_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae6dda10ffe354ceefda810573f5e80e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_channel::destroy_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afd8f60fef22e201f1e1ba3b00f285602"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel::grpc_compression_algorithm_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa00f6e53c4b732654311f194aa2f3957"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel::grpc_message_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad50abb90c5f7ef77e51f8387b06451f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_channel::grpc_status_elem[3]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mdelem for grpc-status: 0 thru grpc-status: 2 </p>
+
+</div>
+</div>
+<a class="anchor" id="a4b3d99e4664ffe3399d29f61f7063600"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel::grpc_status_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mdstr for the grpc-status key </p>
+
+</div>
+</div>
+<a class="anchor" id="a4bfedb17fb28f088111e21abd9c2c4cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_channel::is_client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af25859261f7e57e5c5f2bbafda64dbf1"></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_channel::max_message_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a715d3ad3606de80c57ea96570e364ec8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_channel::metadata_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad55dee766f5bae6c7bc00ad07bcb4b04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_channel::path_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acc936d967cd122b7b5300387e8ea0abe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_channel::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa59a21ba43df1a848efbc177cd5725cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_channel::registered_call_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac92f7c7b4dd87743f30a16aaaf91f061"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structregistered__call.html">registered_call</a>* grpc_channel::registered_calls</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac84ed7ccb6f221068ee55b5e6c073543"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_channel::target</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="channel_8c.html">channel.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__channel__args.html b/doc/ref/core.internal/html/structgrpc__channel__args.html
new file mode 100644
index 0000000000..b7b10927fd
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__channel__args.html
@@ -0,0 +1,142 @@
+<!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_channel_args 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_channel_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>An array of arguments that can be passed around.
+ <a href="structgrpc__channel__args.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:a41e5d0b22449f062b3a7798dd528afde"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__args.html#a41e5d0b22449f062b3a7798dd528afde">num_args</a></td></tr>
+<tr class="separator:a41e5d0b22449f062b3a7798dd528afde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05aa7aeb14aa9ae5f4d6a34f5c222b76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__arg.html">grpc_arg</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__args.html#a05aa7aeb14aa9ae5f4d6a34f5c222b76">args</a></td></tr>
+<tr class="separator:a05aa7aeb14aa9ae5f4d6a34f5c222b76"><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>An array of arguments that can be passed around. </p>
+<p>Used to set optional channel-level configuration. These configuration options are modelled as key-value pairs as defined by <a class="el" href="structgrpc__arg.html" title="A single argument... ">grpc_arg</a>; keys are strings to allow easy backwards-compatible extension by arbitrary parties. All evaluation is performed at channel creation time (i.e. the values in this structure need only live through the creation invocation). </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a05aa7aeb14aa9ae5f4d6a34f5c222b76"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__arg.html">grpc_arg</a>* grpc_channel_args::args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a41e5d0b22449f062b3a7798dd528afde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_args::num_args</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>
diff --git a/doc/ref/core.internal/html/structgrpc__channel__element.html b/doc/ref/core.internal/html/structgrpc__channel__element.html
new file mode 100644
index 0000000000..d8fd507fd5
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__channel__element.html
@@ -0,0 +1,136 @@
+<!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_channel_element 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_channel_element Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__stack_8h_source.html">channel_stack.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:a3f80663d58f2e206836e18fa7ce5aec3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__element.html#a3f80663d58f2e206836e18fa7ce5aec3">filter</a></td></tr>
+<tr class="separator:a3f80663d58f2e206836e18fa7ce5aec3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af498fd50d8b3667b3e20395e341a858d"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__element.html#af498fd50d8b3667b3e20395e341a858d">channel_data</a></td></tr>
+<tr class="separator:af498fd50d8b3667b3e20395e341a858d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af498fd50d8b3667b3e20395e341a858d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_channel_element::channel_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3f80663d58f2e206836e18fa7ce5aec3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>* grpc_channel_element::filter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="channel__stack_8h_source.html">channel_stack.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>
diff --git a/doc/ref/core.internal/html/structgrpc__channel__filter.html b/doc/ref/core.internal/html/structgrpc__channel__filter.html
new file mode 100644
index 0000000000..3c6a2d125a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__channel__filter.html
@@ -0,0 +1,248 @@
+<!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_channel_filter 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_channel_filter Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__stack_8h_source.html">channel_stack.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:a089c1e5997b329703ccaaf633722a6c5"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#a089c1e5997b329703ccaaf633722a6c5">start_transport_stream_op</a> )(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:a089c1e5997b329703ccaaf633722a6c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3508daf2442c8bc11529d0295798819"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#aa3508daf2442c8bc11529d0295798819">start_transport_op</a> )(<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:aa3508daf2442c8bc11529d0295798819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcdf09a04565aee37bf4ddf4b7ed69cc"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#afcdf09a04565aee37bf4ddf4b7ed69cc">sizeof_call_data</a></td></tr>
+<tr class="separator:afcdf09a04565aee37bf4ddf4b7ed69cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea34a13bc660ba869d4c18ed6cd21c2b"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#aea34a13bc660ba869d4c18ed6cd21c2b">init_call_elem</a> )(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, const void *server_transport_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op)</td></tr>
+<tr class="separator:aea34a13bc660ba869d4c18ed6cd21c2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a347e5451860788a084735e66b1684312"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#a347e5451860788a084735e66b1684312">destroy_call_elem</a> )(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a347e5451860788a084735e66b1684312"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac63b36f8c895f18f68ee1d8a862f18a4"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#ac63b36f8c895f18f68ee1d8a862f18a4">sizeof_channel_data</a></td></tr>
+<tr class="separator:ac63b36f8c895f18f68ee1d8a862f18a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7171b1634e5a7d42880f68ae1a4f875a"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#a7171b1634e5a7d42880f68ae1a4f875a">init_channel_elem</a> )(<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__channel.html">grpc_channel</a> *master, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, int is_first, int is_last)</td></tr>
+<tr class="separator:a7171b1634e5a7d42880f68ae1a4f875a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ab39b0d83fd44c9e3be4b930e6b60e2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#a7ab39b0d83fd44c9e3be4b930e6b60e2">destroy_channel_elem</a> )(<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem)</td></tr>
+<tr class="separator:a7ab39b0d83fd44c9e3be4b930e6b60e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ddcbc355118eca15b48ee15476d2ace"><td class="memItemLeft" align="right" valign="top">char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#a6ddcbc355118eca15b48ee15476d2ace">get_peer</a> )(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td></tr>
+<tr class="separator:a6ddcbc355118eca15b48ee15476d2ace"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbf60f6f8b73c26026f266f4fc32fda6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__filter.html#afbf60f6f8b73c26026f266f4fc32fda6">name</a></td></tr>
+<tr class="separator:afbf60f6f8b73c26026f266f4fc32fda6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a347e5451860788a084735e66b1684312"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_channel_filter::destroy_call_elem)(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ab39b0d83fd44c9e3be4b930e6b60e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_channel_filter::destroy_channel_elem)(<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ddcbc355118eca15b48ee15476d2ace"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char*(* grpc_channel_filter::get_peer)(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea34a13bc660ba869d4c18ed6cd21c2b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_channel_filter::init_call_elem)(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, const void *server_transport_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7171b1634e5a7d42880f68ae1a4f875a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_channel_filter::init_channel_elem)(<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__channel.html">grpc_channel</a> *master, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *metadata_context, int is_first, int is_last)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afbf60f6f8b73c26026f266f4fc32fda6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_channel_filter::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afcdf09a04565aee37bf4ddf4b7ed69cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_filter::sizeof_call_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac63b36f8c895f18f68ee1d8a862f18a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_filter::sizeof_channel_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa3508daf2442c8bc11529d0295798819"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_channel_filter::start_transport_op)(<a class="el" href="structgrpc__channel__element.html">grpc_channel_element</a> *elem, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a089c1e5997b329703ccaaf633722a6c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_channel_filter::start_transport_stream_op)(<a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="channel__stack_8h_source.html">channel_stack.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>
diff --git a/doc/ref/core.internal/html/structgrpc__channel__security__connector.html b/doc/ref/core.internal/html/structgrpc__channel__security__connector.html
new file mode 100644
index 0000000000..e957b1c06e
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__channel__security__connector.html
@@ -0,0 +1,150 @@
+<!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_channel_security_connector 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_channel_security_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__connector_8h_source.html">security_connector.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:ac8633820dab73e1d4a083010865ece08"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__security__connector.html#ac8633820dab73e1d4a083010865ece08">base</a></td></tr>
+<tr class="separator:ac8633820dab73e1d4a083010865ece08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56bc3c048e45431ae50bdfec49f22f3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__security__connector.html#a56bc3c048e45431ae50bdfec49f22f3d">request_metadata_creds</a></td></tr>
+<tr class="separator:a56bc3c048e45431ae50bdfec49f22f3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b44a11ba7945991dce2a16a79a6735e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__security__connector.html#a4b44a11ba7945991dce2a16a79a6735e">check_call_host</a> )(<a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *sc, const char *host, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a4b44a11ba7945991dce2a16a79a6735e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac8633820dab73e1d4a083010865ece08"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> grpc_channel_security_connector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b44a11ba7945991dce2a16a79a6735e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(* grpc_channel_security_connector::check_call_host)(<a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *sc, const char *host, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a56bc3c048e45431ae50bdfec49f22f3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_channel_security_connector::request_metadata_creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8h_source.html">security_connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__channel__stack.html b/doc/ref/core.internal/html/structgrpc__channel__stack.html
new file mode 100644
index 0000000000..e68f9366fd
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__channel__stack.html
@@ -0,0 +1,136 @@
+<!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_channel_stack 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_channel_stack Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__stack_8h_source.html">channel_stack.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:ad15f03f108b390c70244d9d862011f67"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__stack.html#ad15f03f108b390c70244d9d862011f67">count</a></td></tr>
+<tr class="separator:ad15f03f108b390c70244d9d862011f67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1fc6184d7523f318b00ed1d5dd2562c2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__channel__stack.html#a1fc6184d7523f318b00ed1d5dd2562c2">call_stack_size</a></td></tr>
+<tr class="separator:a1fc6184d7523f318b00ed1d5dd2562c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1fc6184d7523f318b00ed1d5dd2562c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_stack::call_stack_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad15f03f108b390c70244d9d862011f67"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_channel_stack::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="channel__stack_8h_source.html">channel_stack.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__data__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__data__parser.html
new file mode 100644
index 0000000000..474926eb83
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__data__parser.html
@@ -0,0 +1,192 @@
+<!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_chttp2_data_parser 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_chttp2_data_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__data_8h_source.html">frame_data.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:a4f5b790cb938400757b8f1fdbf6125ab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__data__parser.html#a4f5b790cb938400757b8f1fdbf6125ab">state</a></td></tr>
+<tr class="separator:a4f5b790cb938400757b8f1fdbf6125ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3b9c3b2e6d778a42225361adbad882e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__data__parser.html#ae3b9c3b2e6d778a42225361adbad882e">is_last_frame</a></td></tr>
+<tr class="separator:ae3b9c3b2e6d778a42225361adbad882e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a9b5ff25be677ae71473791fc201865"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__data__parser.html#a0a9b5ff25be677ae71473791fc201865">frame_type</a></td></tr>
+<tr class="separator:a0a9b5ff25be677ae71473791fc201865"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82d208096ae99ff778356f549de2647a"><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__chttp2__data__parser.html#a82d208096ae99ff778356f549de2647a">frame_size</a></td></tr>
+<tr class="separator:a82d208096ae99ff778356f549de2647a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b6ee9238d492fc7ed2a0e21fd483aa7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__data__parser.html#a0b6ee9238d492fc7ed2a0e21fd483aa7">is_frame_compressed</a></td></tr>
+<tr class="separator:a0b6ee9238d492fc7ed2a0e21fd483aa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fd6d128f7954d9ece6b375d2699619c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__data__parser.html#a6fd6d128f7954d9ece6b375d2699619c">incoming_sopb</a></td></tr>
+<tr class="separator:a6fd6d128f7954d9ece6b375d2699619c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a82d208096ae99ff778356f549de2647a"></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_chttp2_data_parser::frame_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a9b5ff25be677ae71473791fc201865"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_data_parser::frame_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6fd6d128f7954d9ece6b375d2699619c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> grpc_chttp2_data_parser::incoming_sopb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0b6ee9238d492fc7ed2a0e21fd483aa7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_data_parser::is_frame_compressed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3b9c3b2e6d778a42225361adbad882e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_data_parser::is_last_frame</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f5b790cb938400757b8f1fdbf6125ab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame__data_8h.html#a0217c22db3da53fe20f70cb48dd3a910">grpc_chttp2_stream_state</a> grpc_chttp2_data_parser::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__data_8h_source.html">frame_data.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__goaway__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__goaway__parser.html
new file mode 100644
index 0000000000..dd9615e096
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__goaway__parser.html
@@ -0,0 +1,192 @@
+<!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_chttp2_goaway_parser 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_chttp2_goaway_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__goaway_8h_source.html">frame_goaway.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:afc5c60968d8b1b68e4c0705a66129589"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__goaway__parser.html#afc5c60968d8b1b68e4c0705a66129589">state</a></td></tr>
+<tr class="separator:afc5c60968d8b1b68e4c0705a66129589"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c4cd3884d0d1351a86466cbcd5f58be"><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__chttp2__goaway__parser.html#a0c4cd3884d0d1351a86466cbcd5f58be">last_stream_id</a></td></tr>
+<tr class="separator:a0c4cd3884d0d1351a86466cbcd5f58be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d67619fd763e569f825792784814aa5"><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__chttp2__goaway__parser.html#a7d67619fd763e569f825792784814aa5">error_code</a></td></tr>
+<tr class="separator:a7d67619fd763e569f825792784814aa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aacb3c390aaaf7d9bfd7a047a32cf6a0e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__goaway__parser.html#aacb3c390aaaf7d9bfd7a047a32cf6a0e">debug_data</a></td></tr>
+<tr class="separator:aacb3c390aaaf7d9bfd7a047a32cf6a0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa3aaf26c909bb9bfae33386f1ececd23"><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__chttp2__goaway__parser.html#aa3aaf26c909bb9bfae33386f1ececd23">debug_length</a></td></tr>
+<tr class="separator:aa3aaf26c909bb9bfae33386f1ececd23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13fecb34da53cca561d7b0e1db1484ce"><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__chttp2__goaway__parser.html#a13fecb34da53cca561d7b0e1db1484ce">debug_pos</a></td></tr>
+<tr class="separator:a13fecb34da53cca561d7b0e1db1484ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aacb3c390aaaf7d9bfd7a047a32cf6a0e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_chttp2_goaway_parser::debug_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa3aaf26c909bb9bfae33386f1ececd23"></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_chttp2_goaway_parser::debug_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a13fecb34da53cca561d7b0e1db1484ce"></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_chttp2_goaway_parser::debug_pos</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d67619fd763e569f825792784814aa5"></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_chttp2_goaway_parser::error_code</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c4cd3884d0d1351a86466cbcd5f58be"></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_chttp2_goaway_parser::last_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afc5c60968d8b1b68e4c0705a66129589"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame__goaway_8h.html#a14004d750241aad1932b7a6abdcd436a">grpc_chttp2_goaway_parse_state</a> grpc_chttp2_goaway_parser::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__goaway_8h_source.html">frame_goaway.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__hpack__compressor.html b/doc/ref/core.internal/html/structgrpc__chttp2__hpack__compressor.html
new file mode 100644
index 0000000000..03c1beb3c7
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__hpack__compressor.html
@@ -0,0 +1,276 @@
+<!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_chttp2_hpack_compressor 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_chttp2_hpack_compressor Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__encoder_8h_source.html">stream_encoder.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:a0277765b866665337a7cd5f780e346a8"><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__chttp2__hpack__compressor.html#a0277765b866665337a7cd5f780e346a8">filter_elems_sum</a></td></tr>
+<tr class="separator:a0277765b866665337a7cd5f780e346a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80e568a0851010b6ef859b7ee4235893"><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__chttp2__hpack__compressor.html#a80e568a0851010b6ef859b7ee4235893">tail_remote_index</a></td></tr>
+<tr class="separator:a80e568a0851010b6ef859b7ee4235893"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a814ba9e8a221237a5bdca7fd0e3e0425"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a814ba9e8a221237a5bdca7fd0e3e0425">table_size</a></td></tr>
+<tr class="separator:a814ba9e8a221237a5bdca7fd0e3e0425"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2544f2f9897f1d74cc979eb8f91bfd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#ab2544f2f9897f1d74cc979eb8f91bfd6">table_elems</a></td></tr>
+<tr class="separator:ab2544f2f9897f1d74cc979eb8f91bfd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a387e0eb34c64c7faaf16e0f2f3ad4d0e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a387e0eb34c64c7faaf16e0f2f3ad4d0e">filter_elems</a> [256]</td></tr>
+<tr class="separator:a387e0eb34c64c7faaf16e0f2f3ad4d0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61abe6f1abcdf8aa50589996f524303c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a61abe6f1abcdf8aa50589996f524303c">mdctx</a></td></tr>
+<tr class="separator:a61abe6f1abcdf8aa50589996f524303c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5235d25f72e66a4e08e28577002047a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a5235d25f72e66a4e08e28577002047a1">timeout_key_str</a></td></tr>
+<tr class="separator:a5235d25f72e66a4e08e28577002047a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80cc9b5282b637b3facbb68cf1038125"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a80cc9b5282b637b3facbb68cf1038125">entries_keys</a> [256]</td></tr>
+<tr class="separator:a80cc9b5282b637b3facbb68cf1038125"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a028e3752a9b203d820e194029f6df186"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a028e3752a9b203d820e194029f6df186">entries_elems</a> [256]</td></tr>
+<tr class="separator:a028e3752a9b203d820e194029f6df186"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd71f91eced6cc4bfdef970d00bbe808"><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__chttp2__hpack__compressor.html#abd71f91eced6cc4bfdef970d00bbe808">indices_keys</a> [256]</td></tr>
+<tr class="separator:abd71f91eced6cc4bfdef970d00bbe808"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae15305b7ada7f6b084088b9ab64240a1"><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__chttp2__hpack__compressor.html#ae15305b7ada7f6b084088b9ab64240a1">indices_elems</a> [256]</td></tr>
+<tr class="separator:ae15305b7ada7f6b084088b9ab64240a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a067f49c14e2c169678f44c10a7e4ee2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__compressor.html#a067f49c14e2c169678f44c10a7e4ee2e">table_elem_size</a> [(4096/32)]</td></tr>
+<tr class="separator:a067f49c14e2c169678f44c10a7e4ee2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a028e3752a9b203d820e194029f6df186"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_chttp2_hpack_compressor::entries_elems[256]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a80cc9b5282b637b3facbb68cf1038125"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_chttp2_hpack_compressor::entries_keys[256]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a387e0eb34c64c7faaf16e0f2f3ad4d0e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_hpack_compressor::filter_elems[256]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0277765b866665337a7cd5f780e346a8"></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_chttp2_hpack_compressor::filter_elems_sum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae15305b7ada7f6b084088b9ab64240a1"></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_chttp2_hpack_compressor::indices_elems[256]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abd71f91eced6cc4bfdef970d00bbe808"></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_chttp2_hpack_compressor::indices_keys[256]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a61abe6f1abcdf8aa50589996f524303c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_chttp2_hpack_compressor::mdctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a067f49c14e2c169678f44c10a7e4ee2e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hpack_compressor::table_elem_size[(4096/32)]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2544f2f9897f1d74cc979eb8f91bfd6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hpack_compressor::table_elems</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a814ba9e8a221237a5bdca7fd0e3e0425"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hpack_compressor::table_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a80e568a0851010b6ef859b7ee4235893"></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_chttp2_hpack_compressor::tail_remote_index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5235d25f72e66a4e08e28577002047a1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_chttp2_hpack_compressor::timeout_key_str</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="stream__encoder_8h_source.html">stream_encoder.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser.html
new file mode 100644
index 0000000000..7833bad6ae
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser.html
@@ -0,0 +1,390 @@
+<!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_chttp2_hpack_parser 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_chttp2_hpack_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="hpack__parser_8h_source.html">hpack_parser.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:aca1b62cf2179b2ce2c815f80434d408f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#aca1b62cf2179b2ce2c815f80434d408f">on_header</a> )(void *user_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td></tr>
+<tr class="separator:aca1b62cf2179b2ce2c815f80434d408f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a8a711d5609cf6886cdddbe3c245d1b"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a8a8a711d5609cf6886cdddbe3c245d1b">on_header_user_data</a></td></tr>
+<tr class="separator:a8a8a711d5609cf6886cdddbe3c245d1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70ad6a4061f4f49362959615eb0c3ca4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a70ad6a4061f4f49362959615eb0c3ca4">state</a></td></tr>
+<tr class="separator:a70ad6a4061f4f49362959615eb0c3ca4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a75cd26cf599e1a3762287726f8f9a7b1"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a75cd26cf599e1a3762287726f8f9a7b1">next_state</a></td></tr>
+<tr class="separator:a75cd26cf599e1a3762287726f8f9a7b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ace46342325728ee279253c5ee146d6d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#ace46342325728ee279253c5ee146d6d0">after_prioritization</a></td></tr>
+<tr class="separator:ace46342325728ee279253c5ee146d6d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98070825a1d0d4d2c3adabbe127d5eae"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a416573a4064359a6baeee82ce8b29d32"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__hpack__parser.html#a3098a6ec6adb9222dd0d64681eb9af6e">value</a></td></tr>
+<tr class="separator:a416573a4064359a6baeee82ce8b29d32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea8542f90579906dedb9586087505272"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__hpack__parser.html#a4dda24b6baf059519437033ace4239fe">str</a></td></tr>
+<tr class="separator:aea8542f90579906dedb9586087505272"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98070825a1d0d4d2c3adabbe127d5eae"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a98070825a1d0d4d2c3adabbe127d5eae">parsing</a></td></tr>
+<tr class="separator:a98070825a1d0d4d2c3adabbe127d5eae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d3edf20019517c6ba89d16183287f10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a4d3edf20019517c6ba89d16183287f10">key</a></td></tr>
+<tr class="separator:a4d3edf20019517c6ba89d16183287f10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5291e99e19d95c5e130b62958750adef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a5291e99e19d95c5e130b62958750adef">value</a></td></tr>
+<tr class="separator:a5291e99e19d95c5e130b62958750adef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a032576122c56272a9546fb4cb4628aef"><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__chttp2__hpack__parser.html#a032576122c56272a9546fb4cb4628aef">index</a></td></tr>
+<tr class="separator:a032576122c56272a9546fb4cb4628aef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0fdab43244f12be74b24f284fa0df8ab"><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__chttp2__hpack__parser.html#a0fdab43244f12be74b24f284fa0df8ab">strlen</a></td></tr>
+<tr class="separator:a0fdab43244f12be74b24f284fa0df8ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2150e272b5d12395b762aef039b58f6"><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__chttp2__hpack__parser.html#aa2150e272b5d12395b762aef039b58f6">strgot</a></td></tr>
+<tr class="separator:aa2150e272b5d12395b762aef039b58f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefbc0edc85975abf14cd4f52ca1b823c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#aefbc0edc85975abf14cd4f52ca1b823c">huff_state</a></td></tr>
+<tr class="separator:aefbc0edc85975abf14cd4f52ca1b823c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7bd236697b3923633920b3dcc26079f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#ac7bd236697b3923633920b3dcc26079f">binary</a></td></tr>
+<tr class="separator:ac7bd236697b3923633920b3dcc26079f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72b104abd60bed440243eab839b6d1e5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a72b104abd60bed440243eab839b6d1e5">huff</a></td></tr>
+<tr class="separator:a72b104abd60bed440243eab839b6d1e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc642ac806512e13229d13c5d4a64aec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#adc642ac806512e13229d13c5d4a64aec">is_boundary</a></td></tr>
+<tr class="separator:adc642ac806512e13229d13c5d4a64aec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ced7637ac446a9c535391ffdeb7990b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a0ced7637ac446a9c535391ffdeb7990b">is_eof</a></td></tr>
+<tr class="separator:a0ced7637ac446a9c535391ffdeb7990b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af48331853250257b1640d07e06d6e47e"><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__chttp2__hpack__parser.html#af48331853250257b1640d07e06d6e47e">base64_buffer</a></td></tr>
+<tr class="separator:af48331853250257b1640d07e06d6e47e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f94c4cc12d5f84f639914d59491ae17"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser.html#a8f94c4cc12d5f84f639914d59491ae17">table</a></td></tr>
+<tr class="separator:a8f94c4cc12d5f84f639914d59491ae17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ace46342325728ee279253c5ee146d6d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> grpc_chttp2_hpack_parser::after_prioritization</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af48331853250257b1640d07e06d6e47e"></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_chttp2_hpack_parser::base64_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac7bd236697b3923633920b3dcc26079f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_hpack_parser::binary</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a72b104abd60bed440243eab839b6d1e5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_hpack_parser::huff</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aefbc0edc85975abf14cd4f52ca1b823c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hpack_parser::huff_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a032576122c56272a9546fb4cb4628aef"></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_chttp2_hpack_parser::index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adc642ac806512e13229d13c5d4a64aec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_hpack_parser::is_boundary</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ced7637ac446a9c535391ffdeb7990b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_hpack_parser::is_eof</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d3edf20019517c6ba89d16183287f10"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a> grpc_chttp2_hpack_parser::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a75cd26cf599e1a3762287726f8f9a7b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a>* grpc_chttp2_hpack_parser::next_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aca1b62cf2179b2ce2c815f80434d408f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_chttp2_hpack_parser::on_header)(void *user_data, <a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *md)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8a8a711d5609cf6886cdddbe3c245d1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_hpack_parser::on_header_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a98070825a1d0d4d2c3adabbe127d5eae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_chttp2_hpack_parser::parsing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a70ad6a4061f4f49362959615eb0c3ca4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="hpack__parser_8h.html#a8d59a71bfcb4d8ae6c14950f0cb67507">grpc_chttp2_hpack_parser_state</a> grpc_chttp2_hpack_parser::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4dda24b6baf059519437033ace4239fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a>* grpc_chttp2_hpack_parser::str</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2150e272b5d12395b762aef039b58f6"></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_chttp2_hpack_parser::strgot</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0fdab43244f12be74b24f284fa0df8ab"></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_chttp2_hpack_parser::strlen</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8f94c4cc12d5f84f639914d59491ae17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hptbl.html">grpc_chttp2_hptbl</a> grpc_chttp2_hpack_parser::table</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3098a6ec6adb9222dd0d64681eb9af6e"></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_chttp2_hpack_parser::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5291e99e19d95c5e130b62958750adef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html">grpc_chttp2_hpack_parser_string</a> grpc_chttp2_hpack_parser::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="hpack__parser_8h_source.html">hpack_parser.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser__string.html b/doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser__string.html
new file mode 100644
index 0000000000..0c1e487939
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__hpack__parser__string.html
@@ -0,0 +1,150 @@
+<!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_chttp2_hpack_parser_string 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_chttp2_hpack_parser_string Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="hpack__parser_8h_source.html">hpack_parser.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:abf43da36039226667926801751825b3c"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hpack__parser__string.html#abf43da36039226667926801751825b3c">str</a></td></tr>
+<tr class="separator:abf43da36039226667926801751825b3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26e2d9594af6c89057408a16e1132fe5"><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__chttp2__hpack__parser__string.html#a26e2d9594af6c89057408a16e1132fe5">length</a></td></tr>
+<tr class="separator:a26e2d9594af6c89057408a16e1132fe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21d97a477e18ea3973332a21fe664613"><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__chttp2__hpack__parser__string.html#a21d97a477e18ea3973332a21fe664613">capacity</a></td></tr>
+<tr class="separator:a21d97a477e18ea3973332a21fe664613"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a21d97a477e18ea3973332a21fe664613"></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_chttp2_hpack_parser_string::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a26e2d9594af6c89057408a16e1132fe5"></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_chttp2_hpack_parser_string::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf43da36039226667926801751825b3c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_chttp2_hpack_parser_string::str</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="hpack__parser_8h_source.html">hpack_parser.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__hptbl.html b/doc/ref/core.internal/html/structgrpc__chttp2__hptbl.html
new file mode 100644
index 0000000000..01f6f9f697
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__hptbl.html
@@ -0,0 +1,220 @@
+<!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_chttp2_hptbl 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_chttp2_hptbl Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="hpack__table_8h_source.html">hpack_table.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:a6c63d76ec5273e0eb935906636d1325b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#a6c63d76ec5273e0eb935906636d1325b">mdctx</a></td></tr>
+<tr class="separator:a6c63d76ec5273e0eb935906636d1325b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b28482c4a9c59a1ce11cad63b2eeb77"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#a4b28482c4a9c59a1ce11cad63b2eeb77">first_ent</a></td></tr>
+<tr class="separator:a4b28482c4a9c59a1ce11cad63b2eeb77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a396719b339f0d4d2d7425b5db960536b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#a396719b339f0d4d2d7425b5db960536b">last_ent</a></td></tr>
+<tr class="separator:a396719b339f0d4d2d7425b5db960536b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bd6b0eec3b771fb745295fe4ea57ff1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#a3bd6b0eec3b771fb745295fe4ea57ff1">num_ents</a></td></tr>
+<tr class="separator:a3bd6b0eec3b771fb745295fe4ea57ff1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab542479dd03d89957ea9920213371878"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#ab542479dd03d89957ea9920213371878">mem_used</a></td></tr>
+<tr class="separator:ab542479dd03d89957ea9920213371878"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cd55ea4e1f534ff161788d6609ff27b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#a3cd55ea4e1f534ff161788d6609ff27b">max_bytes</a></td></tr>
+<tr class="separator:a3cd55ea4e1f534ff161788d6609ff27b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af14d20a9a16ee86be7d9f18b2f5334eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#af14d20a9a16ee86be7d9f18b2f5334eb">ents</a> [((4096+32-1)/32)]</td></tr>
+<tr class="separator:af14d20a9a16ee86be7d9f18b2f5334eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe1cceb7c0988d6c29df983ad3764344"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl.html#afe1cceb7c0988d6c29df983ad3764344">static_ents</a> [61]</td></tr>
+<tr class="separator:afe1cceb7c0988d6c29df983ad3764344"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af14d20a9a16ee86be7d9f18b2f5334eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_chttp2_hptbl::ents[((4096+32-1)/32)]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b28482c4a9c59a1ce11cad63b2eeb77"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hptbl::first_ent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a396719b339f0d4d2d7425b5db960536b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hptbl::last_ent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3cd55ea4e1f534ff161788d6609ff27b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hptbl::max_bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c63d76ec5273e0eb935906636d1325b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_chttp2_hptbl::mdctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab542479dd03d89957ea9920213371878"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hptbl::mem_used</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3bd6b0eec3b771fb745295fe4ea57ff1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hptbl::num_ents</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe1cceb7c0988d6c29df983ad3764344"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_chttp2_hptbl::static_ents[61]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="hpack__table_8h_source.html">hpack_table.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__hptbl__find__result.html b/doc/ref/core.internal/html/structgrpc__chttp2__hptbl__find__result.html
new file mode 100644
index 0000000000..5f95ab2732
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__hptbl__find__result.html
@@ -0,0 +1,136 @@
+<!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_chttp2_hptbl_find_result 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_chttp2_hptbl_find_result Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="hpack__table_8h_source.html">hpack_table.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:afde6a296e3d2b379395ccf89141e7aea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html#afde6a296e3d2b379395ccf89141e7aea">index</a></td></tr>
+<tr class="separator:afde6a296e3d2b379395ccf89141e7aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae93485f3e3efeb1b621e2307aa53c2b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__hptbl__find__result.html#ae93485f3e3efeb1b621e2307aa53c2b7">has_value</a></td></tr>
+<tr class="separator:ae93485f3e3efeb1b621e2307aa53c2b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae93485f3e3efeb1b621e2307aa53c2b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_hptbl_find_result::has_value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afde6a296e3d2b379395ccf89141e7aea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_hptbl_find_result::index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="hpack__table_8h_source.html">hpack_table.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__huffsym.html b/doc/ref/core.internal/html/structgrpc__chttp2__huffsym.html
new file mode 100644
index 0000000000..58ad5e8339
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__huffsym.html
@@ -0,0 +1,136 @@
+<!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_chttp2_huffsym 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_chttp2_huffsym Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="huffsyms_8h_source.html">huffsyms.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:a90ee6b96d9c7946f78271d280f881b88"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__huffsym.html#a90ee6b96d9c7946f78271d280f881b88">bits</a></td></tr>
+<tr class="separator:a90ee6b96d9c7946f78271d280f881b88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11ba8572355dad4e35ac61f2289d1e88"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__huffsym.html#a11ba8572355dad4e35ac61f2289d1e88">length</a></td></tr>
+<tr class="separator:a11ba8572355dad4e35ac61f2289d1e88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a90ee6b96d9c7946f78271d280f881b88"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned grpc_chttp2_huffsym::bits</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a11ba8572355dad4e35ac61f2289d1e88"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned grpc_chttp2_huffsym::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="huffsyms_8h_source.html">huffsyms.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__buffer.html b/doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__buffer.html
new file mode 100644
index 0000000000..60a024ac81
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__buffer.html
@@ -0,0 +1,164 @@
+<!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_chttp2_incoming_metadata_buffer 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_chttp2_incoming_metadata_buffer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="incoming__metadata_8h_source.html">incoming_metadata.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:a899a942462aa9b89bec8e0589cde8a92"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#a899a942462aa9b89bec8e0589cde8a92">elems</a></td></tr>
+<tr class="separator:a899a942462aa9b89bec8e0589cde8a92"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82dc3f5a9b456b6fd15b5d559eb2c4bd"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#a82dc3f5a9b456b6fd15b5d559eb2c4bd">count</a></td></tr>
+<tr class="separator:a82dc3f5a9b456b6fd15b5d559eb2c4bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae83511b7dc5b74ca64f15a23e552c0cd"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#ae83511b7dc5b74ca64f15a23e552c0cd">capacity</a></td></tr>
+<tr class="separator:ae83511b7dc5b74ca64f15a23e552c0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5170826c627b8191d4def6aa2959589"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html#ab5170826c627b8191d4def6aa2959589">deadline</a></td></tr>
+<tr class="separator:ab5170826c627b8191d4def6aa2959589"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae83511b7dc5b74ca64f15a23e552c0cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_incoming_metadata_buffer::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a82dc3f5a9b456b6fd15b5d559eb2c4bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_incoming_metadata_buffer::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5170826c627b8191d4def6aa2959589"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_chttp2_incoming_metadata_buffer::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a899a942462aa9b89bec8e0589cde8a92"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>* grpc_chttp2_incoming_metadata_buffer::elems</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="incoming__metadata_8h_source.html">incoming_metadata.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__live__op__buffer.html b/doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__live__op__buffer.html
new file mode 100644
index 0000000000..0698bc001d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__incoming__metadata__live__op__buffer.html
@@ -0,0 +1,122 @@
+<!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_chttp2_incoming_metadata_live_op_buffer 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_chttp2_incoming_metadata_live_op_buffer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="incoming__metadata_8h_source.html">incoming_metadata.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:ae11e8fc642ff7d933c26992dee443b9d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html#ae11e8fc642ff7d933c26992dee443b9d">elems</a></td></tr>
+<tr class="separator:ae11e8fc642ff7d933c26992dee443b9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae11e8fc642ff7d933c26992dee443b9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>* grpc_chttp2_incoming_metadata_live_op_buffer::elems</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="incoming__metadata_8h_source.html">incoming_metadata.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__outstanding__ping.html b/doc/ref/core.internal/html/structgrpc__chttp2__outstanding__ping.html
new file mode 100644
index 0000000000..70de6a25ce
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__outstanding__ping.html
@@ -0,0 +1,166 @@
+<!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_chttp2_outstanding_ping 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_chttp2_outstanding_ping Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:a3cf40734ac72489211630654aaa02bd9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__outstanding__ping.html#a3cf40734ac72489211630654aaa02bd9">id</a> [8]</td></tr>
+<tr class="separator:a3cf40734ac72489211630654aaa02bd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e862f14887e10503dc72b98eb33e88c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__outstanding__ping.html#a5e862f14887e10503dc72b98eb33e88c">on_recv</a></td></tr>
+<tr class="separator:a5e862f14887e10503dc72b98eb33e88c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5080d611692ac78edffef1ead748d34f"><td class="memItemLeft" align="right" valign="top">struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__outstanding__ping.html#a5080d611692ac78edffef1ead748d34f">next</a></td></tr>
+<tr class="separator:a5080d611692ac78edffef1ead748d34f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaad08393f94e4da9275e8c5c113b08a6"><td class="memItemLeft" align="right" valign="top">struct <br class="typebreak"/>
+<a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__outstanding__ping.html#aaad08393f94e4da9275e8c5c113b08a6">prev</a></td></tr>
+<tr class="separator:aaad08393f94e4da9275e8c5c113b08a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3cf40734ac72489211630654aaa02bd9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_outstanding_ping::id[8]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5080d611692ac78edffef1ead748d34f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a>* grpc_chttp2_outstanding_ping::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e862f14887e10503dc72b98eb33e88c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_chttp2_outstanding_ping::on_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaad08393f94e4da9275e8c5c113b08a6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a>* grpc_chttp2_outstanding_ping::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__ping__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__ping__parser.html
new file mode 100644
index 0000000000..91bdc6543d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__ping__parser.html
@@ -0,0 +1,150 @@
+<!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_chttp2_ping_parser 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_chttp2_ping_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__ping_8h_source.html">frame_ping.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:a210db2114f01c53a41e466da1cf1af33"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__ping__parser.html#a210db2114f01c53a41e466da1cf1af33">byte</a></td></tr>
+<tr class="separator:a210db2114f01c53a41e466da1cf1af33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbc3402e14a75f592502d3185165a59c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__ping__parser.html#adbc3402e14a75f592502d3185165a59c">is_ack</a></td></tr>
+<tr class="separator:adbc3402e14a75f592502d3185165a59c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a338f5adfa9a1236094e16c36c5cd5b4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__ping__parser.html#a338f5adfa9a1236094e16c36c5cd5b4e">opaque_8bytes</a> [8]</td></tr>
+<tr class="separator:a338f5adfa9a1236094e16c36c5cd5b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a210db2114f01c53a41e466da1cf1af33"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_ping_parser::byte</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adbc3402e14a75f592502d3185165a59c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_ping_parser::is_ack</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a338f5adfa9a1236094e16c36c5cd5b4e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_ping_parser::opaque_8bytes[8]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__ping_8h_source.html">frame_ping.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__rst__stream__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__rst__stream__parser.html
new file mode 100644
index 0000000000..86a83bfb2c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__rst__stream__parser.html
@@ -0,0 +1,136 @@
+<!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_chttp2_rst_stream_parser 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_chttp2_rst_stream_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__rst__stream_8h_source.html">frame_rst_stream.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:aee8f43a9cfb3468529d9bfa7ad30d665"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html#aee8f43a9cfb3468529d9bfa7ad30d665">byte</a></td></tr>
+<tr class="separator:aee8f43a9cfb3468529d9bfa7ad30d665"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a254db3891d5bf60dec2f27a5ee6ef496"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html#a254db3891d5bf60dec2f27a5ee6ef496">reason_bytes</a> [4]</td></tr>
+<tr class="separator:a254db3891d5bf60dec2f27a5ee6ef496"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aee8f43a9cfb3468529d9bfa7ad30d665"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_rst_stream_parser::byte</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a254db3891d5bf60dec2f27a5ee6ef496"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_rst_stream_parser::reason_bytes[4]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__rst__stream_8h_source.html">frame_rst_stream.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__setting__parameters.html b/doc/ref/core.internal/html/structgrpc__chttp2__setting__parameters.html
new file mode 100644
index 0000000000..f1165e7dcf
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__setting__parameters.html
@@ -0,0 +1,178 @@
+<!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_chttp2_setting_parameters 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_chttp2_setting_parameters Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__settings_8h_source.html">frame_settings.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:a2a66171eecdc68ef2e5ec07cbfbbc21f"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__setting__parameters.html#a2a66171eecdc68ef2e5ec07cbfbbc21f">name</a></td></tr>
+<tr class="separator:a2a66171eecdc68ef2e5ec07cbfbbc21f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47307bf712f4e37e397eb03c272bafdb"><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__chttp2__setting__parameters.html#a47307bf712f4e37e397eb03c272bafdb">default_value</a></td></tr>
+<tr class="separator:a47307bf712f4e37e397eb03c272bafdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a53661f0f5873a104014c0f9603ebec82"><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__chttp2__setting__parameters.html#a53661f0f5873a104014c0f9603ebec82">min_value</a></td></tr>
+<tr class="separator:a53661f0f5873a104014c0f9603ebec82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af8a60fd353bdb4a187535b0abd9ff001"><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__chttp2__setting__parameters.html#af8a60fd353bdb4a187535b0abd9ff001">max_value</a></td></tr>
+<tr class="separator:af8a60fd353bdb4a187535b0abd9ff001"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b900f51c9a7756a67cbf502094d92df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__setting__parameters.html#a9b900f51c9a7756a67cbf502094d92df">invalid_value_behavior</a></td></tr>
+<tr class="separator:a9b900f51c9a7756a67cbf502094d92df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a47307bf712f4e37e397eb03c272bafdb"></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_chttp2_setting_parameters::default_value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b900f51c9a7756a67cbf502094d92df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame__settings_8h.html#a4df6da81a733ff99e174c9502a7e69df">grpc_chttp2_invalid_value_behavior</a> grpc_chttp2_setting_parameters::invalid_value_behavior</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af8a60fd353bdb4a187535b0abd9ff001"></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_chttp2_setting_parameters::max_value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a53661f0f5873a104014c0f9603ebec82"></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_chttp2_setting_parameters::min_value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2a66171eecdc68ef2e5ec07cbfbbc21f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_chttp2_setting_parameters::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__settings_8h_source.html">frame_settings.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__settings__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__settings__parser.html
new file mode 100644
index 0000000000..48981d18ed
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__settings__parser.html
@@ -0,0 +1,192 @@
+<!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_chttp2_settings_parser 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_chttp2_settings_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__settings_8h_source.html">frame_settings.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:ad7e412c7ebd8595533c129f0b5a571c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__settings__parser.html#ad7e412c7ebd8595533c129f0b5a571c4">state</a></td></tr>
+<tr class="separator:ad7e412c7ebd8595533c129f0b5a571c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8ede4f13bcb8e7146527ce98284d528"><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__chttp2__settings__parser.html#ac8ede4f13bcb8e7146527ce98284d528">target_settings</a></td></tr>
+<tr class="separator:ac8ede4f13bcb8e7146527ce98284d528"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3237e1bd69e648a47181625a1c310eec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__settings__parser.html#a3237e1bd69e648a47181625a1c310eec">is_ack</a></td></tr>
+<tr class="separator:a3237e1bd69e648a47181625a1c310eec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78292a3a593ad3806e8067b055687745"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__settings__parser.html#a78292a3a593ad3806e8067b055687745">id</a></td></tr>
+<tr class="separator:a78292a3a593ad3806e8067b055687745"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0aa608ce7e3352061233d6ffb3656327"><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__chttp2__settings__parser.html#a0aa608ce7e3352061233d6ffb3656327">value</a></td></tr>
+<tr class="separator:a0aa608ce7e3352061233d6ffb3656327"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b6b73681cb815b663dda8008ff3d519"><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__chttp2__settings__parser.html#a4b6b73681cb815b663dda8008ff3d519">incoming_settings</a> [<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td></tr>
+<tr class="separator:a4b6b73681cb815b663dda8008ff3d519"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a78292a3a593ad3806e8067b055687745"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_chttp2_settings_parser::id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b6b73681cb815b663dda8008ff3d519"></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_chttp2_settings_parser::incoming_settings[<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3237e1bd69e648a47181625a1c310eec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_settings_parser::is_ack</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad7e412c7ebd8595533c129f0b5a571c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame__settings_8h.html#ae964433822fb14f6c7d72fc1f3420b8f">grpc_chttp2_settings_parse_state</a> grpc_chttp2_settings_parser::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac8ede4f13bcb8e7146527ce98284d528"></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_chttp2_settings_parser::target_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0aa608ce7e3352061233d6ffb3656327"></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_chttp2_settings_parser::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__settings_8h_source.html">frame_settings.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream.html
new file mode 100644
index 0000000000..bddc5cd8cd
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream.html
@@ -0,0 +1,178 @@
+<!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_chttp2_stream 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_chttp2_stream Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:ae6fe61537b60639a3d969eacde593be5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream.html#ae6fe61537b60639a3d969eacde593be5">global</a></td></tr>
+<tr class="separator:ae6fe61537b60639a3d969eacde593be5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a56eaa3786a61b45591c0e3825ddd5e2e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream.html#a56eaa3786a61b45591c0e3825ddd5e2e">writing</a></td></tr>
+<tr class="separator:a56eaa3786a61b45591c0e3825ddd5e2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a738b484ef0e8926cdd88fd38cdb7e8f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream.html#a738b484ef0e8926cdd88fd38cdb7e8f9">parsing</a></td></tr>
+<tr class="separator:a738b484ef0e8926cdd88fd38cdb7e8f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ffcd70fca0b8574e024e572c3928624"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream.html#a6ffcd70fca0b8574e024e572c3928624">links</a> [<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td></tr>
+<tr class="separator:a6ffcd70fca0b8574e024e572c3928624"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab8404714b48a6b7921040a154e4d0d95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream.html#ab8404714b48a6b7921040a154e4d0d95">included</a> [<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td></tr>
+<tr class="separator:ab8404714b48a6b7921040a154e4d0d95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae6fe61537b60639a3d969eacde593be5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__global.html">grpc_chttp2_stream_global</a> grpc_chttp2_stream::global</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab8404714b48a6b7921040a154e4d0d95"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream::included[<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ffcd70fca0b8574e024e572c3928624"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__link.html">grpc_chttp2_stream_link</a> grpc_chttp2_stream::links[<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a738b484ef0e8926cdd88fd38cdb7e8f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> grpc_chttp2_stream::parsing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a56eaa3786a61b45591c0e3825ddd5e2e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__writing.html">grpc_chttp2_stream_writing</a> grpc_chttp2_stream::writing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream__global.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream__global.html
new file mode 100644
index 0000000000..2b705c7403
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream__global.html
@@ -0,0 +1,453 @@
+<!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_chttp2_stream_global 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_chttp2_stream_global Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:af978119004439db266373fc347d553d4"><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__chttp2__stream__global.html#af978119004439db266373fc347d553d4">id</a></td></tr>
+<tr class="memdesc:af978119004439db266373fc347d553d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">HTTP2 stream id for this stream, or zero if one has not been assigned. <a href="#af978119004439db266373fc347d553d4">More...</a><br/></td></tr>
+<tr class="separator:af978119004439db266373fc347d553d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f16eb7d0da87fe60a2fcc35536f3905"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a2f16eb7d0da87fe60a2fcc35536f3905">send_done_closure</a></td></tr>
+<tr class="separator:a2f16eb7d0da87fe60a2fcc35536f3905"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a353666e2dbff4aaebc6744de4dd08c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a4a353666e2dbff4aaebc6744de4dd08c">recv_done_closure</a></td></tr>
+<tr class="separator:a4a353666e2dbff4aaebc6744de4dd08c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea8ef0f5795a15621ca9e5e4c7ca0aec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#aea8ef0f5795a15621ca9e5e4c7ca0aec">outgoing_window</a></td></tr>
+<tr class="memdesc:aea8ef0f5795a15621ca9e5e4c7ca0aec"><td class="mdescLeft">&#160;</td><td class="mdescRight">window available for us to send to peer <a href="#aea8ef0f5795a15621ca9e5e4c7ca0aec">More...</a><br/></td></tr>
+<tr class="separator:aea8ef0f5795a15621ca9e5e4c7ca0aec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cce3879b45e4a8553d25aba1fe85ed7"><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__chttp2__stream__global.html#a5cce3879b45e4a8553d25aba1fe85ed7">max_recv_bytes</a></td></tr>
+<tr class="memdesc:a5cce3879b45e4a8553d25aba1fe85ed7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of bytes the upper layers have offered to receive. <a href="#a5cce3879b45e4a8553d25aba1fe85ed7">More...</a><br/></td></tr>
+<tr class="separator:a5cce3879b45e4a8553d25aba1fe85ed7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a23dec30ddec4c30cebc9e4110d1bb9f9"><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__chttp2__stream__global.html#a23dec30ddec4c30cebc9e4110d1bb9f9">unannounced_incoming_window</a></td></tr>
+<tr class="memdesc:a23dec30ddec4c30cebc9e4110d1bb9f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of bytes the upper layer has offered to read but we have not yet announced to HTTP2 flow control. <a href="#a23dec30ddec4c30cebc9e4110d1bb9f9">More...</a><br/></td></tr>
+<tr class="separator:a23dec30ddec4c30cebc9e4110d1bb9f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a61488c0b537d712411fd90e1ea3bf363"><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__chttp2__stream__global.html#a61488c0b537d712411fd90e1ea3bf363">incoming_window</a></td></tr>
+<tr class="memdesc:a61488c0b537d712411fd90e1ea3bf363"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of bytes of HTTP2 flow control we have advertised. <a href="#a61488c0b537d712411fd90e1ea3bf363">More...</a><br/></td></tr>
+<tr class="separator:a61488c0b537d712411fd90e1ea3bf363"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70e7155660cf0d3bc3dde94b9093a08d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a70e7155660cf0d3bc3dde94b9093a08d">outgoing_sopb</a></td></tr>
+<tr class="memdesc:a70e7155660cf0d3bc3dde94b9093a08d"><td class="mdescLeft">&#160;</td><td class="mdescRight">stream ops the transport user would like to send <a href="#a70e7155660cf0d3bc3dde94b9093a08d">More...</a><br/></td></tr>
+<tr class="separator:a70e7155660cf0d3bc3dde94b9093a08d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab4958ab848ae72e29c8161de9df1cf9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#aab4958ab848ae72e29c8161de9df1cf9">write_state</a></td></tr>
+<tr class="memdesc:aab4958ab848ae72e29c8161de9df1cf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">when the application requests writes be closed, the write_closed is 'queued'; when the close is flow controlled into the send path, we are 'sending' it; when the write has been performed it is 'sent' <a href="#aab4958ab848ae72e29c8161de9df1cf9">More...</a><br/></td></tr>
+<tr class="separator:aab4958ab848ae72e29c8161de9df1cf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab66f69dae83b6afaa33709e97b75243a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#ab66f69dae83b6afaa33709e97b75243a">read_closed</a></td></tr>
+<tr class="memdesc:ab66f69dae83b6afaa33709e97b75243a"><td class="mdescLeft">&#160;</td><td class="mdescRight">is this stream closed (boolean) <a href="#ab66f69dae83b6afaa33709e97b75243a">More...</a><br/></td></tr>
+<tr class="separator:ab66f69dae83b6afaa33709e97b75243a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a230b4b34a38f62d1871ac3726c211312"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a230b4b34a38f62d1871ac3726c211312">cancelled</a></td></tr>
+<tr class="memdesc:a230b4b34a38f62d1871ac3726c211312"><td class="mdescLeft">&#160;</td><td class="mdescRight">has this stream been cancelled? (boolean) <a href="#a230b4b34a38f62d1871ac3726c211312">More...</a><br/></td></tr>
+<tr class="separator:a230b4b34a38f62d1871ac3726c211312"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af27d45b43390f9dc4d1dc197d9864098"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#af27d45b43390f9dc4d1dc197d9864098">cancelled_status</a></td></tr>
+<tr class="separator:af27d45b43390f9dc4d1dc197d9864098"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b7f83db6f582e75152fbf85aeedd6be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a7b7f83db6f582e75152fbf85aeedd6be">published_cancelled</a></td></tr>
+<tr class="memdesc:a7b7f83db6f582e75152fbf85aeedd6be"><td class="mdescLeft">&#160;</td><td class="mdescRight">have we told the upper layer that this stream is cancelled? <a href="#a7b7f83db6f582e75152fbf85aeedd6be">More...</a><br/></td></tr>
+<tr class="separator:a7b7f83db6f582e75152fbf85aeedd6be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12c9f137d984cf478ab590b35e42f3c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a12c9f137d984cf478ab590b35e42f3c4">in_stream_map</a></td></tr>
+<tr class="memdesc:a12c9f137d984cf478ab590b35e42f3c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">is this stream in the stream map? (boolean) <a href="#a12c9f137d984cf478ab590b35e42f3c4">More...</a><br/></td></tr>
+<tr class="separator:a12c9f137d984cf478ab590b35e42f3c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a80827ad1a2e6f7ddce4f73c1b8964c2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a80827ad1a2e6f7ddce4f73c1b8964c2c">writing_now</a></td></tr>
+<tr class="memdesc:a80827ad1a2e6f7ddce4f73c1b8964c2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">is this stream actively being written? <a href="#a80827ad1a2e6f7ddce4f73c1b8964c2c">More...</a><br/></td></tr>
+<tr class="separator:a80827ad1a2e6f7ddce4f73c1b8964c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e33abb09685b8b27f46befe38c82665"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a9e33abb09685b8b27f46befe38c82665">published_state</a></td></tr>
+<tr class="memdesc:a9e33abb09685b8b27f46befe38c82665"><td class="mdescLeft">&#160;</td><td class="mdescRight">stream state already published to the upper layer <a href="#a9e33abb09685b8b27f46befe38c82665">More...</a><br/></td></tr>
+<tr class="separator:a9e33abb09685b8b27f46befe38c82665"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62637fc6cff3b84aabacc3e9d9bdd1e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a62637fc6cff3b84aabacc3e9d9bdd1e3">publish_state</a></td></tr>
+<tr class="memdesc:a62637fc6cff3b84aabacc3e9d9bdd1e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">address to publish next stream state to <a href="#a62637fc6cff3b84aabacc3e9d9bdd1e3">More...</a><br/></td></tr>
+<tr class="separator:a62637fc6cff3b84aabacc3e9d9bdd1e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fb7af1b8962b843978bd8f7fff400fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#a8fb7af1b8962b843978bd8f7fff400fe">publish_sopb</a></td></tr>
+<tr class="memdesc:a8fb7af1b8962b843978bd8f7fff400fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">pointer to sop buffer to fill in with new stream ops <a href="#a8fb7af1b8962b843978bd8f7fff400fe">More...</a><br/></td></tr>
+<tr class="separator:a8fb7af1b8962b843978bd8f7fff400fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9b5d27432602aed7ad614427579643e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#ad9b5d27432602aed7ad614427579643e">incoming_sopb</a></td></tr>
+<tr class="separator:ad9b5d27432602aed7ad614427579643e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5202346d6771ba38232b4d1fd290da5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#aa5202346d6771ba38232b4d1fd290da5">incoming_metadata</a></td></tr>
+<tr class="memdesc:aa5202346d6771ba38232b4d1fd290da5"><td class="mdescLeft">&#160;</td><td class="mdescRight">incoming metadata <a href="#aa5202346d6771ba38232b4d1fd290da5">More...</a><br/></td></tr>
+<tr class="separator:aa5202346d6771ba38232b4d1fd290da5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca96799d31e4980af7c974d211534cc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__global.html#aca96799d31e4980af7c974d211534cc0">outstanding_metadata</a></td></tr>
+<tr class="separator:aca96799d31e4980af7c974d211534cc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a230b4b34a38f62d1871ac3726c211312"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_global::cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>has this stream been cancelled? (boolean) </p>
+
+</div>
+</div>
+<a class="anchor" id="af27d45b43390f9dc4d1dc197d9864098"></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_chttp2_stream_global::cancelled_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af978119004439db266373fc347d553d4"></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_chttp2_stream_global::id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>HTTP2 stream id for this stream, or zero if one has not been assigned. </p>
+
+</div>
+</div>
+<a class="anchor" id="a12c9f137d984cf478ab590b35e42f3c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_global::in_stream_map</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is this stream in the stream map? (boolean) </p>
+
+</div>
+</div>
+<a class="anchor" id="aa5202346d6771ba38232b4d1fd290da5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> grpc_chttp2_stream_global::incoming_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>incoming metadata </p>
+
+</div>
+</div>
+<a class="anchor" id="ad9b5d27432602aed7ad614427579643e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> grpc_chttp2_stream_global::incoming_sopb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a61488c0b537d712411fd90e1ea3bf363"></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_chttp2_stream_global::incoming_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The number of bytes of HTTP2 flow control we have advertised. </p>
+<p>As we advertise incoming flow control window, this value increases. As bytes are read, this value decreases. Updated after parse. </p>
+
+</div>
+</div>
+<a class="anchor" id="a5cce3879b45e4a8553d25aba1fe85ed7"></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_chttp2_stream_global::max_recv_bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The number of bytes the upper layers have offered to receive. </p>
+<p>As the upper layer offers more bytes, this value increases. As bytes are read, this value decreases. </p>
+
+</div>
+</div>
+<a class="anchor" id="a70e7155660cf0d3bc3dde94b9093a08d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>* grpc_chttp2_stream_global::outgoing_sopb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>stream ops the transport user would like to send </p>
+
+</div>
+</div>
+<a class="anchor" id="aea8ef0f5795a15621ca9e5e4c7ca0aec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> grpc_chttp2_stream_global::outgoing_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>window available for us to send to peer </p>
+
+</div>
+</div>
+<a class="anchor" id="aca96799d31e4980af7c974d211534cc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__incoming__metadata__live__op__buffer.html">grpc_chttp2_incoming_metadata_live_op_buffer</a> grpc_chttp2_stream_global::outstanding_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8fb7af1b8962b843978bd8f7fff400fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>* grpc_chttp2_stream_global::publish_sopb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pointer to sop buffer to fill in with new stream ops </p>
+
+</div>
+</div>
+<a class="anchor" id="a62637fc6cff3b84aabacc3e9d9bdd1e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>* grpc_chttp2_stream_global::publish_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>address to publish next stream state to </p>
+
+</div>
+</div>
+<a class="anchor" id="a7b7f83db6f582e75152fbf85aeedd6be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_global::published_cancelled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have we told the upper layer that this stream is cancelled? </p>
+
+</div>
+</div>
+<a class="anchor" id="a9e33abb09685b8b27f46befe38c82665"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> grpc_chttp2_stream_global::published_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>stream state already published to the upper layer </p>
+
+</div>
+</div>
+<a class="anchor" id="ab66f69dae83b6afaa33709e97b75243a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_global::read_closed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is this stream closed (boolean) </p>
+
+</div>
+</div>
+<a class="anchor" id="a4a353666e2dbff4aaebc6744de4dd08c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_chttp2_stream_global::recv_done_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2f16eb7d0da87fe60a2fcc35536f3905"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_chttp2_stream_global::send_done_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a23dec30ddec4c30cebc9e4110d1bb9f9"></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_chttp2_stream_global::unannounced_incoming_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The number of bytes the upper layer has offered to read but we have not yet announced to HTTP2 flow control. </p>
+<p>As the upper layers offer to read more bytes, this value increases. As we advertise incoming flow control window, this value decreases. </p>
+
+</div>
+</div>
+<a class="anchor" id="aab4958ab848ae72e29c8161de9df1cf9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="internal_8h.html#a3b93cb6f95aff10ba74b6aa06d7e99cc">grpc_chttp2_write_state</a> grpc_chttp2_stream_global::write_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>when the application requests writes be closed, the write_closed is 'queued'; when the close is flow controlled into the send path, we are 'sending' it; when the write has been performed it is 'sent' </p>
+
+</div>
+</div>
+<a class="anchor" id="a80827ad1a2e6f7ddce4f73c1b8964c2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_global::writing_now</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is this stream actively being written? </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream__link.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream__link.html
new file mode 100644
index 0000000000..834a2df5bd
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream__link.html
@@ -0,0 +1,136 @@
+<!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_chttp2_stream_link 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_chttp2_stream_link Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:a5797275d863aafdfa8342d0b73a890de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__link.html#a5797275d863aafdfa8342d0b73a890de">next</a></td></tr>
+<tr class="separator:a5797275d863aafdfa8342d0b73a890de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19808cff31bc258c69411406e3f65400"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__link.html#a19808cff31bc258c69411406e3f65400">prev</a></td></tr>
+<tr class="separator:a19808cff31bc258c69411406e3f65400"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a5797275d863aafdfa8342d0b73a890de"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>* grpc_chttp2_stream_link::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19808cff31bc258c69411406e3f65400"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>* grpc_chttp2_stream_link::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream__list.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream__list.html
new file mode 100644
index 0000000000..953aa8049a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream__list.html
@@ -0,0 +1,136 @@
+<!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_chttp2_stream_list 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_chttp2_stream_list Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:af0f7bfa4b2e03157bd08f46091534e73"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__list.html#af0f7bfa4b2e03157bd08f46091534e73">head</a></td></tr>
+<tr class="separator:af0f7bfa4b2e03157bd08f46091534e73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8be7bdb2c4da40b8994790885ac7620"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__list.html#ac8be7bdb2c4da40b8994790885ac7620">tail</a></td></tr>
+<tr class="separator:ac8be7bdb2c4da40b8994790885ac7620"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af0f7bfa4b2e03157bd08f46091534e73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>* grpc_chttp2_stream_list::head</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac8be7bdb2c4da40b8994790885ac7620"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>* grpc_chttp2_stream_list::tail</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream__map.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream__map.html
new file mode 100644
index 0000000000..03e5ea7c47
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream__map.html
@@ -0,0 +1,178 @@
+<!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_chttp2_stream_map 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_chttp2_stream_map Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__map_8h_source.html">stream_map.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:acf47fcc774eb5ea9c07f3c7b57179be6"><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__chttp2__stream__map.html#acf47fcc774eb5ea9c07f3c7b57179be6">keys</a></td></tr>
+<tr class="separator:acf47fcc774eb5ea9c07f3c7b57179be6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c6cf5f3722e7931c5b7ebe09a1ec824"><td class="memItemLeft" align="right" valign="top">void **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__map.html#a3c6cf5f3722e7931c5b7ebe09a1ec824">values</a></td></tr>
+<tr class="separator:a3c6cf5f3722e7931c5b7ebe09a1ec824"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30c8c72cf07b6c0c0970e8ecb54c1ac8"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__map.html#a30c8c72cf07b6c0c0970e8ecb54c1ac8">count</a></td></tr>
+<tr class="separator:a30c8c72cf07b6c0c0970e8ecb54c1ac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e3dfe8b74da93be4d32197725bb4ece"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__map.html#a8e3dfe8b74da93be4d32197725bb4ece">free</a></td></tr>
+<tr class="separator:a8e3dfe8b74da93be4d32197725bb4ece"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a104df65d0beac0c3f27d8823b0ff59ef"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__map.html#a104df65d0beac0c3f27d8823b0ff59ef">capacity</a></td></tr>
+<tr class="separator:a104df65d0beac0c3f27d8823b0ff59ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a104df65d0beac0c3f27d8823b0ff59ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_stream_map::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a30c8c72cf07b6c0c0970e8ecb54c1ac8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_stream_map::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8e3dfe8b74da93be4d32197725bb4ece"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_chttp2_stream_map::free</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf47fcc774eb5ea9c07f3c7b57179be6"></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_chttp2_stream_map::keys</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3c6cf5f3722e7931c5b7ebe09a1ec824"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void** grpc_chttp2_stream_map::values</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="stream__map_8h_source.html">stream_map.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream__parsing.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream__parsing.html
new file mode 100644
index 0000000000..f7b027dd5d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream__parsing.html
@@ -0,0 +1,258 @@
+<!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_chttp2_stream_parsing 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_chttp2_stream_parsing Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:a177b90ba6af8f43e85ca7d96e6f3db83"><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__chttp2__stream__parsing.html#a177b90ba6af8f43e85ca7d96e6f3db83">id</a></td></tr>
+<tr class="memdesc:a177b90ba6af8f43e85ca7d96e6f3db83"><td class="mdescLeft">&#160;</td><td class="mdescRight">HTTP2 stream id for this stream, or zero if one has not been assigned. <a href="#a177b90ba6af8f43e85ca7d96e6f3db83">More...</a><br/></td></tr>
+<tr class="separator:a177b90ba6af8f43e85ca7d96e6f3db83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a906592013b034420e0a9e8de6321322b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__parsing.html#a906592013b034420e0a9e8de6321322b">received_close</a></td></tr>
+<tr class="memdesc:a906592013b034420e0a9e8de6321322b"><td class="mdescLeft">&#160;</td><td class="mdescRight">has this stream received a close <a href="#a906592013b034420e0a9e8de6321322b">More...</a><br/></td></tr>
+<tr class="separator:a906592013b034420e0a9e8de6321322b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6a925394f238fec8e6089fa07aaa03b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__parsing.html#ad6a925394f238fec8e6089fa07aaa03b">saw_rst_stream</a></td></tr>
+<tr class="memdesc:ad6a925394f238fec8e6089fa07aaa03b"><td class="mdescLeft">&#160;</td><td class="mdescRight">saw a rst_stream <a href="#ad6a925394f238fec8e6089fa07aaa03b">More...</a><br/></td></tr>
+<tr class="separator:ad6a925394f238fec8e6089fa07aaa03b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a981536ef5bd42bfaf2940b005ae4d1ed"><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__chttp2__stream__parsing.html#a981536ef5bd42bfaf2940b005ae4d1ed">incoming_window_delta</a></td></tr>
+<tr class="memdesc:a981536ef5bd42bfaf2940b005ae4d1ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">incoming_window has been reduced by this much during parsing <a href="#a981536ef5bd42bfaf2940b005ae4d1ed">More...</a><br/></td></tr>
+<tr class="separator:a981536ef5bd42bfaf2940b005ae4d1ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6764e27bf94c79201b4408c7b2deb622"><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__chttp2__stream__parsing.html#a6764e27bf94c79201b4408c7b2deb622">incoming_window</a></td></tr>
+<tr class="memdesc:a6764e27bf94c79201b4408c7b2deb622"><td class="mdescLeft">&#160;</td><td class="mdescRight">window available for peer to send to us <a href="#a6764e27bf94c79201b4408c7b2deb622">More...</a><br/></td></tr>
+<tr class="separator:a6764e27bf94c79201b4408c7b2deb622"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a944472500c9ce6b5f9b3c217c465cf54"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__parsing.html#a944472500c9ce6b5f9b3c217c465cf54">data_parser</a></td></tr>
+<tr class="memdesc:a944472500c9ce6b5f9b3c217c465cf54"><td class="mdescLeft">&#160;</td><td class="mdescRight">parsing state for data frames <a href="#a944472500c9ce6b5f9b3c217c465cf54">More...</a><br/></td></tr>
+<tr class="separator:a944472500c9ce6b5f9b3c217c465cf54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6226c0cb8e4d6bd5830cc36f1efd4d2"><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__chttp2__stream__parsing.html#aa6226c0cb8e4d6bd5830cc36f1efd4d2">rst_stream_reason</a></td></tr>
+<tr class="memdesc:aa6226c0cb8e4d6bd5830cc36f1efd4d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">reason give to rst_stream <a href="#aa6226c0cb8e4d6bd5830cc36f1efd4d2">More...</a><br/></td></tr>
+<tr class="separator:aa6226c0cb8e4d6bd5830cc36f1efd4d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9df25144aa81fccd8cb2fa0b30e9196"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__parsing.html#af9df25144aa81fccd8cb2fa0b30e9196">outgoing_window_update</a></td></tr>
+<tr class="separator:af9df25144aa81fccd8cb2fa0b30e9196"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5cdeb7e94802970d5748ec4c218003cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__parsing.html#a5cdeb7e94802970d5748ec4c218003cc">incoming_metadata</a></td></tr>
+<tr class="memdesc:a5cdeb7e94802970d5748ec4c218003cc"><td class="mdescLeft">&#160;</td><td class="mdescRight">incoming metadata <a href="#a5cdeb7e94802970d5748ec4c218003cc">More...</a><br/></td></tr>
+<tr class="separator:a5cdeb7e94802970d5748ec4c218003cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a944472500c9ce6b5f9b3c217c465cf54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__data__parser.html">grpc_chttp2_data_parser</a> grpc_chttp2_stream_parsing::data_parser</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>parsing state for data frames </p>
+
+</div>
+</div>
+<a class="anchor" id="a177b90ba6af8f43e85ca7d96e6f3db83"></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_chttp2_stream_parsing::id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>HTTP2 stream id for this stream, or zero if one has not been assigned. </p>
+
+</div>
+</div>
+<a class="anchor" id="a5cdeb7e94802970d5748ec4c218003cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__incoming__metadata__buffer.html">grpc_chttp2_incoming_metadata_buffer</a> grpc_chttp2_stream_parsing::incoming_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>incoming metadata </p>
+
+</div>
+</div>
+<a class="anchor" id="a6764e27bf94c79201b4408c7b2deb622"></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_chttp2_stream_parsing::incoming_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>window available for peer to send to us </p>
+
+</div>
+</div>
+<a class="anchor" id="a981536ef5bd42bfaf2940b005ae4d1ed"></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_chttp2_stream_parsing::incoming_window_delta</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>incoming_window has been reduced by this much during parsing </p>
+
+</div>
+</div>
+<a class="anchor" id="af9df25144aa81fccd8cb2fa0b30e9196"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> grpc_chttp2_stream_parsing::outgoing_window_update</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a906592013b034420e0a9e8de6321322b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_parsing::received_close</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>has this stream received a close </p>
+
+</div>
+</div>
+<a class="anchor" id="aa6226c0cb8e4d6bd5830cc36f1efd4d2"></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_chttp2_stream_parsing::rst_stream_reason</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>reason give to rst_stream </p>
+
+</div>
+</div>
+<a class="anchor" id="ad6a925394f238fec8e6089fa07aaa03b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_stream_parsing::saw_rst_stream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>saw a rst_stream </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__stream__writing.html b/doc/ref/core.internal/html/structgrpc__chttp2__stream__writing.html
new file mode 100644
index 0000000000..fa61f77adc
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__stream__writing.html
@@ -0,0 +1,176 @@
+<!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_chttp2_stream_writing 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_chttp2_stream_writing Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:a294162cbd6c888161e51278dde204832"><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__chttp2__stream__writing.html#a294162cbd6c888161e51278dde204832">id</a></td></tr>
+<tr class="memdesc:a294162cbd6c888161e51278dde204832"><td class="mdescLeft">&#160;</td><td class="mdescRight">HTTP2 stream id for this stream, or zero if one has not been assigned. <a href="#a294162cbd6c888161e51278dde204832">More...</a><br/></td></tr>
+<tr class="separator:a294162cbd6c888161e51278dde204832"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54f5afcc25f62a2e138a04c69f1be120"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__writing.html#a54f5afcc25f62a2e138a04c69f1be120">sopb</a></td></tr>
+<tr class="memdesc:a54f5afcc25f62a2e138a04c69f1be120"><td class="mdescLeft">&#160;</td><td class="mdescRight">sops that have passed flow control to be written <a href="#a54f5afcc25f62a2e138a04c69f1be120">More...</a><br/></td></tr>
+<tr class="separator:a54f5afcc25f62a2e138a04c69f1be120"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbea2f6f529041a009046136dcff99f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__stream__writing.html#abbea2f6f529041a009046136dcff99f0">send_closed</a></td></tr>
+<tr class="memdesc:abbea2f6f529041a009046136dcff99f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">how strongly should we indicate closure with the next write <a href="#abbea2f6f529041a009046136dcff99f0">More...</a><br/></td></tr>
+<tr class="separator:abbea2f6f529041a009046136dcff99f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a261161be44a3f481f38c7d498da4aa17"><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__chttp2__stream__writing.html#a261161be44a3f481f38c7d498da4aa17">announce_window</a></td></tr>
+<tr class="memdesc:a261161be44a3f481f38c7d498da4aa17"><td class="mdescLeft">&#160;</td><td class="mdescRight">how much window should we announce? <a href="#a261161be44a3f481f38c7d498da4aa17">More...</a><br/></td></tr>
+<tr class="separator:a261161be44a3f481f38c7d498da4aa17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a261161be44a3f481f38c7d498da4aa17"></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_chttp2_stream_writing::announce_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>how much window should we announce? </p>
+
+</div>
+</div>
+<a class="anchor" id="a294162cbd6c888161e51278dde204832"></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_chttp2_stream_writing::id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>HTTP2 stream id for this stream, or zero if one has not been assigned. </p>
+
+</div>
+</div>
+<a class="anchor" id="abbea2f6f529041a009046136dcff99f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="internal_8h.html#a9d3b30dd29e854143c461aa7e03cbfb9">grpc_chttp2_send_closed</a> grpc_chttp2_stream_writing::send_closed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>how strongly should we indicate closure with the next write </p>
+
+</div>
+</div>
+<a class="anchor" id="a54f5afcc25f62a2e138a04c69f1be120"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> grpc_chttp2_stream_writing::sopb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>sops that have passed flow control to be written </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__transport.html b/doc/ref/core.internal/html/structgrpc__chttp2__transport.html
new file mode 100644
index 0000000000..e7253a330b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__transport.html
@@ -0,0 +1,492 @@
+<!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_chttp2_transport 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_chttp2_transport Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:aafdcf31c8c77411e25dfa9b94eeb283f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f">base</a></td></tr>
+<tr class="separator:aafdcf31c8c77411e25dfa9b94eeb283f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa15d7fee63a356880346a9f961b9bdff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff">ep</a></td></tr>
+<tr class="separator:aa15d7fee63a356880346a9f961b9bdff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ef8d064cc295865edf61d27ea8b71a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2">metadata_context</a></td></tr>
+<tr class="separator:a6ef8d064cc295865edf61d27ea8b71a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90319aafb59fb5c00ee8ae113e9a3d69"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69">refs</a></td></tr>
+<tr class="separator:a90319aafb59fb5c00ee8ae113e9a3d69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05c91e8c28afe70631f28384957044d7"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7">peer_string</a></td></tr>
+<tr class="separator:a05c91e8c28afe70631f28384957044d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab31ca67e25cd2f326a2e72cdfb67254e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e">mu</a></td></tr>
+<tr class="separator:ab31ca67e25cd2f326a2e72cdfb67254e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac604ea7777d5d1c6d1ca243bd4caef0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f">destroying</a></td></tr>
+<tr class="memdesc:ac604ea7777d5d1c6d1ca243bd4caef0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">is the transport destroying itself? <a href="#ac604ea7777d5d1c6d1ca243bd4caef0f">More...</a><br/></td></tr>
+<tr class="separator:ac604ea7777d5d1c6d1ca243bd4caef0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a727a1168723b305b97a5dc2c25bd2405"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405">closed</a></td></tr>
+<tr class="memdesc:a727a1168723b305b97a5dc2c25bd2405"><td class="mdescLeft">&#160;</td><td class="mdescRight">has the upper layer closed the transport? <a href="#a727a1168723b305b97a5dc2c25bd2405">More...</a><br/></td></tr>
+<tr class="separator:a727a1168723b305b97a5dc2c25bd2405"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e550b67b429a603f37decfc8b29449b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b">writing_active</a></td></tr>
+<tr class="memdesc:a2e550b67b429a603f37decfc8b29449b"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a thread currently writing <a href="#a2e550b67b429a603f37decfc8b29449b">More...</a><br/></td></tr>
+<tr class="separator:a2e550b67b429a603f37decfc8b29449b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab922e6a980797f432ade63042db8a1a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3">parsing_active</a></td></tr>
+<tr class="memdesc:ab922e6a980797f432ade63042db8a1a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a thread currently parsing <a href="#ab922e6a980797f432ade63042db8a1a3">More...</a><br/></td></tr>
+<tr class="separator:ab922e6a980797f432ade63042db8a1a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2011b2483741ec634614fc4240b26905"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905">endpoint_reading</a></td></tr>
+<tr class="memdesc:a2011b2483741ec634614fc4240b26905"><td class="mdescLeft">&#160;</td><td class="mdescRight">is there a read request to the endpoint outstanding? <a href="#a2011b2483741ec634614fc4240b26905">More...</a><br/></td></tr>
+<tr class="separator:a2011b2483741ec634614fc4240b26905"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70d937138945c07b53f7be848fb1cc4a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a">lists</a> [<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td></tr>
+<tr class="memdesc:a70d937138945c07b53f7be848fb1cc4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">various lists of streams <a href="#a70d937138945c07b53f7be848fb1cc4a">More...</a><br/></td></tr>
+<tr class="separator:a70d937138945c07b53f7be848fb1cc4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bd7506a4e310f2ebc1969250b3c7694"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694">global</a></td></tr>
+<tr class="memdesc:a9bd7506a4e310f2ebc1969250b3c7694"><td class="mdescLeft">&#160;</td><td class="mdescRight">global state for reading/writing <a href="#a9bd7506a4e310f2ebc1969250b3c7694">More...</a><br/></td></tr>
+<tr class="separator:a9bd7506a4e310f2ebc1969250b3c7694"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42e022f4775a11184006e08ba9c1afbf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf">writing</a></td></tr>
+<tr class="memdesc:a42e022f4775a11184006e08ba9c1afbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">state only accessible by the chain of execution that set writing_active=1 <a href="#a42e022f4775a11184006e08ba9c1afbf">More...</a><br/></td></tr>
+<tr class="separator:a42e022f4775a11184006e08ba9c1afbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8dc6706fb9f342cca10ee7625630b2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c">parsing</a></td></tr>
+<tr class="memdesc:ae8dc6706fb9f342cca10ee7625630b2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">state only accessible by the chain of execution that set parsing_active=1 <a href="#ae8dc6706fb9f342cca10ee7625630b2c">More...</a><br/></td></tr>
+<tr class="separator:ae8dc6706fb9f342cca10ee7625630b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9836b789695d32031897da007fc3937"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937">parsing_stream_map</a></td></tr>
+<tr class="memdesc:af9836b789695d32031897da007fc3937"><td class="mdescLeft">&#160;</td><td class="mdescRight">maps stream id to <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> objects; owned by the parsing thread when parsing <a href="#af9836b789695d32031897da007fc3937">More...</a><br/></td></tr>
+<tr class="separator:af9836b789695d32031897da007fc3937"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f38d1bd29aad2855ebf9d15bdcaaeca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca">new_stream_map</a></td></tr>
+<tr class="memdesc:a8f38d1bd29aad2855ebf9d15bdcaaeca"><td class="mdescLeft">&#160;</td><td class="mdescRight">streams created by the client (possibly during parsing); merged with parsing_stream_map during unlock when no parsing is occurring <a href="#a8f38d1bd29aad2855ebf9d15bdcaaeca">More...</a><br/></td></tr>
+<tr class="separator:a8f38d1bd29aad2855ebf9d15bdcaaeca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18d7c2fe14df07bc43840698aa5a3224"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224">writing_action</a></td></tr>
+<tr class="memdesc:a18d7c2fe14df07bc43840698aa5a3224"><td class="mdescLeft">&#160;</td><td class="mdescRight">closure to execute writing <a href="#a18d7c2fe14df07bc43840698aa5a3224">More...</a><br/></td></tr>
+<tr class="separator:a18d7c2fe14df07bc43840698aa5a3224"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab53eb8ec23d323a389f1a5456d3f1885"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885">reading_action</a></td></tr>
+<tr class="memdesc:ab53eb8ec23d323a389f1a5456d3f1885"><td class="mdescLeft">&#160;</td><td class="mdescRight">closure to start reading from the endpoint <a href="#ab53eb8ec23d323a389f1a5456d3f1885">More...</a><br/></td></tr>
+<tr class="separator:ab53eb8ec23d323a389f1a5456d3f1885"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a480ae47b5ab8e7f2926cb83b79952c7e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e">accepting_stream</a></td></tr>
+<tr class="memdesc:a480ae47b5ab8e7f2926cb83b79952c7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">address to place a newly accepted stream - set and unset by grpc_chttp2_parsing_accept_stream; used by init_stream to publish the accepted server stream <a href="#a480ae47b5ab8e7f2926cb83b79952c7e">More...</a><br/></td></tr>
+<tr class="separator:a480ae47b5ab8e7f2926cb83b79952c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8dc1af0f203166b32f22634edb3b47bb"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:acb9f71a10cf469cfa6272458eab082f7"><td class="memItemLeft" >&#160;&#160;&#160;void(*&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a">accept_stream</a> )(void *user_data, <br class="typebreak"/>
+&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <br class="typebreak"/>
+&#160;&#160;&#160;&#160;&#160;&#160;const void *server_data)</td></tr>
+<tr class="separator:acb9f71a10cf469cfa6272458eab082f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a356cb0fb754cb53428769f8577047021"><td class="memItemLeft" >&#160;&#160;&#160;void *&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f">accept_stream_user_data</a></td></tr>
+<tr class="separator:a356cb0fb754cb53428769f8577047021"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa82c411fc2ed48a783afc7481f2bde49"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857">state_tracker</a></td></tr>
+<tr class="memdesc:aa82c411fc2ed48a783afc7481f2bde49"><td class="mdescLeft">&#160;</td><td class="mdescRight">connectivity tracking <a href="#aa82c411fc2ed48a783afc7481f2bde49">More...</a><br/></td></tr>
+<tr class="separator:aa82c411fc2ed48a783afc7481f2bde49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8dc1af0f203166b32f22634edb3b47bb"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb">channel_callback</a></td></tr>
+<tr class="separator:a8dc1af0f203166b32f22634edb3b47bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a563b98e58df202ea2654dcada575ff2a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_chttp2_transport::accept_stream)(void *user_data, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, const void *server_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a039e50d9c69f5c8ea2faa685f41d4c8f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_transport::accept_stream_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a480ae47b5ab8e7f2926cb83b79952c7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>** grpc_chttp2_transport::accepting_stream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>address to place a newly accepted stream - set and unset by grpc_chttp2_parsing_accept_stream; used by init_stream to publish the accepted server stream </p>
+
+</div>
+</div>
+<a class="anchor" id="aafdcf31c8c77411e25dfa9b94eeb283f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport.html">grpc_transport</a> grpc_chttp2_transport::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8dc1af0f203166b32f22634edb3b47bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_chttp2_transport::channel_callback</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a727a1168723b305b97a5dc2c25bd2405"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::closed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>has the upper layer closed the transport? </p>
+
+</div>
+</div>
+<a class="anchor" id="ac604ea7777d5d1c6d1ca243bd4caef0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::destroying</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is the transport destroying itself? </p>
+
+</div>
+</div>
+<a class="anchor" id="a2011b2483741ec634614fc4240b26905"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::endpoint_reading</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is there a read request to the endpoint outstanding? </p>
+
+</div>
+</div>
+<a class="anchor" id="aa15d7fee63a356880346a9f961b9bdff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_chttp2_transport::ep</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9bd7506a4e310f2ebc1969250b3c7694"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> grpc_chttp2_transport::global</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>global state for reading/writing </p>
+
+</div>
+</div>
+<a class="anchor" id="a70d937138945c07b53f7be848fb1cc4a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a> grpc_chttp2_transport::lists[<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>various lists of streams </p>
+
+</div>
+</div>
+<a class="anchor" id="a6ef8d064cc295865edf61d27ea8b71a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_chttp2_transport::metadata_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab31ca67e25cd2f326a2e72cdfb67254e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_chttp2_transport::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8f38d1bd29aad2855ebf9d15bdcaaeca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> grpc_chttp2_transport::new_stream_map</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>streams created by the client (possibly during parsing); merged with parsing_stream_map during unlock when no parsing is occurring </p>
+
+</div>
+</div>
+<a class="anchor" id="ae8dc6706fb9f342cca10ee7625630b2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> grpc_chttp2_transport::parsing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>state only accessible by the chain of execution that set parsing_active=1 </p>
+
+</div>
+</div>
+<a class="anchor" id="ab922e6a980797f432ade63042db8a1a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::parsing_active</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is a thread currently parsing </p>
+
+</div>
+</div>
+<a class="anchor" id="af9836b789695d32031897da007fc3937"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> grpc_chttp2_transport::parsing_stream_map</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>maps stream id to <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> objects; owned by the parsing thread when parsing </p>
+
+</div>
+</div>
+<a class="anchor" id="a05c91e8c28afe70631f28384957044d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_chttp2_transport::peer_string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab53eb8ec23d323a389f1a5456d3f1885"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_chttp2_transport::reading_action</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>closure to start reading from the endpoint </p>
+
+</div>
+</div>
+<a class="anchor" id="a90319aafb59fb5c00ee8ae113e9a3d69"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_chttp2_transport::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1808fd9ed1150b5397b26461d4de7857"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> grpc_chttp2_transport::state_tracker</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>connectivity tracking </p>
+
+</div>
+</div>
+<a class="anchor" id="a42e022f4775a11184006e08ba9c1afbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> grpc_chttp2_transport::writing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>state only accessible by the chain of execution that set writing_active=1 </p>
+
+</div>
+</div>
+<a class="anchor" id="a18d7c2fe14df07bc43840698aa5a3224"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_chttp2_transport::writing_action</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>closure to execute writing </p>
+
+</div>
+</div>
+<a class="anchor" id="a2e550b67b429a603f37decfc8b29449b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::writing_active</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is a thread currently writing </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__transport__global.html b/doc/ref/core.internal/html/structgrpc__chttp2__transport__global.html
new file mode 100644
index 0000000000..27dc1dc288
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__transport__global.html
@@ -0,0 +1,411 @@
+<!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_chttp2_transport_global 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_chttp2_transport_global Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:abc8dc77619b0938e2ffa35bdf35bbae4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#abc8dc77619b0938e2ffa35bdf35bbae4">qbuf</a></td></tr>
+<tr class="memdesc:abc8dc77619b0938e2ffa35bdf35bbae4"><td class="mdescLeft">&#160;</td><td class="mdescRight">data to write next write <a href="#abc8dc77619b0938e2ffa35bdf35bbae4">More...</a><br/></td></tr>
+<tr class="separator:abc8dc77619b0938e2ffa35bdf35bbae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2e898e62f398f90f830a543a4bb5b84"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#ab2e898e62f398f90f830a543a4bb5b84">pending_closures_head</a></td></tr>
+<tr class="memdesc:ab2e898e62f398f90f830a543a4bb5b84"><td class="mdescLeft">&#160;</td><td class="mdescRight">queued callbacks <a href="#ab2e898e62f398f90f830a543a4bb5b84">More...</a><br/></td></tr>
+<tr class="separator:ab2e898e62f398f90f830a543a4bb5b84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a725d69688880a644d58001be3526abaf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#a725d69688880a644d58001be3526abaf">pending_closures_tail</a></td></tr>
+<tr class="separator:a725d69688880a644d58001be3526abaf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af48fb355cfabb488dda83d994c1c04c7"><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__chttp2__transport__global.html#af48fb355cfabb488dda83d994c1c04c7">outgoing_window</a></td></tr>
+<tr class="memdesc:af48fb355cfabb488dda83d994c1c04c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">window available for us to send to peer <a href="#af48fb355cfabb488dda83d994c1c04c7">More...</a><br/></td></tr>
+<tr class="separator:af48fb355cfabb488dda83d994c1c04c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d452aa09888c083335eedc6df456bd3"><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__chttp2__transport__global.html#a0d452aa09888c083335eedc6df456bd3">incoming_window</a></td></tr>
+<tr class="memdesc:a0d452aa09888c083335eedc6df456bd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">window available for peer to send to us - updated after parse <a href="#a0d452aa09888c083335eedc6df456bd3">More...</a><br/></td></tr>
+<tr class="separator:a0d452aa09888c083335eedc6df456bd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9eb0479db2dffbb2637e771adab2ef06"><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__chttp2__transport__global.html#a9eb0479db2dffbb2637e771adab2ef06">connection_window_target</a></td></tr>
+<tr class="memdesc:a9eb0479db2dffbb2637e771adab2ef06"><td class="mdescLeft">&#160;</td><td class="mdescRight">how much window would we like to have for incoming_window <a href="#a9eb0479db2dffbb2637e771adab2ef06">More...</a><br/></td></tr>
+<tr class="separator:a9eb0479db2dffbb2637e771adab2ef06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac23343b063865623cab752f3882ef829"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#ac23343b063865623cab752f3882ef829">seen_goaway</a></td></tr>
+<tr class="memdesc:ac23343b063865623cab752f3882ef829"><td class="mdescLeft">&#160;</td><td class="mdescRight">have we seen a goaway <a href="#ac23343b063865623cab752f3882ef829">More...</a><br/></td></tr>
+<tr class="separator:ac23343b063865623cab752f3882ef829"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad06b0ee92495f66aa27bd606459fcaf8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#ad06b0ee92495f66aa27bd606459fcaf8">sent_goaway</a></td></tr>
+<tr class="memdesc:ad06b0ee92495f66aa27bd606459fcaf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">have we sent a goaway <a href="#ad06b0ee92495f66aa27bd606459fcaf8">More...</a><br/></td></tr>
+<tr class="separator:ad06b0ee92495f66aa27bd606459fcaf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb27a0ca3039e6e2713467e7dcef539e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#acb27a0ca3039e6e2713467e7dcef539e">is_client</a></td></tr>
+<tr class="memdesc:acb27a0ca3039e6e2713467e7dcef539e"><td class="mdescLeft">&#160;</td><td class="mdescRight">is this transport a client? <a href="#acb27a0ca3039e6e2713467e7dcef539e">More...</a><br/></td></tr>
+<tr class="separator:acb27a0ca3039e6e2713467e7dcef539e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abbbb9c2b1f0667f1dd203faf76f0ca5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#abbbb9c2b1f0667f1dd203faf76f0ca5e">dirtied_local_settings</a></td></tr>
+<tr class="memdesc:abbbb9c2b1f0667f1dd203faf76f0ca5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">are the local settings dirty and need to be sent? <a href="#abbbb9c2b1f0667f1dd203faf76f0ca5e">More...</a><br/></td></tr>
+<tr class="separator:abbbb9c2b1f0667f1dd203faf76f0ca5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1afb189034e53b6596d41698cd3ce34d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#a1afb189034e53b6596d41698cd3ce34d">sent_local_settings</a></td></tr>
+<tr class="memdesc:a1afb189034e53b6596d41698cd3ce34d"><td class="mdescLeft">&#160;</td><td class="mdescRight">have local settings been sent? <a href="#a1afb189034e53b6596d41698cd3ce34d">More...</a><br/></td></tr>
+<tr class="separator:a1afb189034e53b6596d41698cd3ce34d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a460e875d57d437e6489aef4b7473f027"><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__chttp2__transport__global.html#a460e875d57d437e6489aef4b7473f027">force_send_settings</a></td></tr>
+<tr class="memdesc:a460e875d57d437e6489aef4b7473f027"><td class="mdescLeft">&#160;</td><td class="mdescRight">bitmask of setting indexes to send out <a href="#a460e875d57d437e6489aef4b7473f027">More...</a><br/></td></tr>
+<tr class="separator:a460e875d57d437e6489aef4b7473f027"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab25f0c4b45d1c12d29eaf856e7b1b4a7"><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__chttp2__transport__global.html#ab25f0c4b45d1c12d29eaf856e7b1b4a7">settings</a> [<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">GRPC_NUM_SETTING_SETS</a>][<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td></tr>
+<tr class="memdesc:ab25f0c4b45d1c12d29eaf856e7b1b4a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">settings values <a href="#ab25f0c4b45d1c12d29eaf856e7b1b4a7">More...</a><br/></td></tr>
+<tr class="separator:ab25f0c4b45d1c12d29eaf856e7b1b4a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5d0acae1272818f552268b1ecb2900f"><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__chttp2__transport__global.html#ab5d0acae1272818f552268b1ecb2900f">next_stream_id</a></td></tr>
+<tr class="memdesc:ab5d0acae1272818f552268b1ecb2900f"><td class="mdescLeft">&#160;</td><td class="mdescRight">what is the next stream id to be allocated by this peer? copied to next_stream_id in parsing when parsing commences <a href="#ab5d0acae1272818f552268b1ecb2900f">More...</a><br/></td></tr>
+<tr class="separator:ab5d0acae1272818f552268b1ecb2900f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4038fcd84b5ed8d5be85871bbd7bf362"><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__chttp2__transport__global.html#a4038fcd84b5ed8d5be85871bbd7bf362">last_incoming_stream_id</a></td></tr>
+<tr class="memdesc:a4038fcd84b5ed8d5be85871bbd7bf362"><td class="mdescLeft">&#160;</td><td class="mdescRight">last received stream id <a href="#a4038fcd84b5ed8d5be85871bbd7bf362">More...</a><br/></td></tr>
+<tr class="separator:a4038fcd84b5ed8d5be85871bbd7bf362"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a845e72fcdab9af17a971d064ca0fcfad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#a845e72fcdab9af17a971d064ca0fcfad">pings</a></td></tr>
+<tr class="memdesc:a845e72fcdab9af17a971d064ca0fcfad"><td class="mdescLeft">&#160;</td><td class="mdescRight">pings awaiting responses <a href="#a845e72fcdab9af17a971d064ca0fcfad">More...</a><br/></td></tr>
+<tr class="separator:a845e72fcdab9af17a971d064ca0fcfad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e21a69530e1002dc3929ecd085aa2a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__global.html#a1e21a69530e1002dc3929ecd085aa2a7">ping_counter</a></td></tr>
+<tr class="memdesc:a1e21a69530e1002dc3929ecd085aa2a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">next payload for an outgoing ping <a href="#a1e21a69530e1002dc3929ecd085aa2a7">More...</a><br/></td></tr>
+<tr class="separator:a1e21a69530e1002dc3929ecd085aa2a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77c29c9318b9c732bb57bac183abc995"><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__chttp2__transport__global.html#a77c29c9318b9c732bb57bac183abc995">concurrent_stream_count</a></td></tr>
+<tr class="memdesc:a77c29c9318b9c732bb57bac183abc995"><td class="mdescLeft">&#160;</td><td class="mdescRight">concurrent stream count: updated when not parsing, so this is a strict over-estimation on the client <a href="#a77c29c9318b9c732bb57bac183abc995">More...</a><br/></td></tr>
+<tr class="separator:a77c29c9318b9c732bb57bac183abc995"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a77c29c9318b9c732bb57bac183abc995"></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_chttp2_transport_global::concurrent_stream_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>concurrent stream count: updated when not parsing, so this is a strict over-estimation on the client </p>
+
+</div>
+</div>
+<a class="anchor" id="a9eb0479db2dffbb2637e771adab2ef06"></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_chttp2_transport_global::connection_window_target</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>how much window would we like to have for incoming_window </p>
+
+</div>
+</div>
+<a class="anchor" id="abbbb9c2b1f0667f1dd203faf76f0ca5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_global::dirtied_local_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>are the local settings dirty and need to be sent? </p>
+
+</div>
+</div>
+<a class="anchor" id="a460e875d57d437e6489aef4b7473f027"></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_chttp2_transport_global::force_send_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>bitmask of setting indexes to send out </p>
+
+</div>
+</div>
+<a class="anchor" id="a0d452aa09888c083335eedc6df456bd3"></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_chttp2_transport_global::incoming_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>window available for peer to send to us - updated after parse </p>
+
+</div>
+</div>
+<a class="anchor" id="acb27a0ca3039e6e2713467e7dcef539e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_global::is_client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is this transport a client? </p>
+
+</div>
+</div>
+<a class="anchor" id="a4038fcd84b5ed8d5be85871bbd7bf362"></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_chttp2_transport_global::last_incoming_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>last received stream id </p>
+
+</div>
+</div>
+<a class="anchor" id="ab5d0acae1272818f552268b1ecb2900f"></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_chttp2_transport_global::next_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>what is the next stream id to be allocated by this peer? copied to next_stream_id in parsing when parsing commences </p>
+
+</div>
+</div>
+<a class="anchor" id="af48fb355cfabb488dda83d994c1c04c7"></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_chttp2_transport_global::outgoing_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>window available for us to send to peer </p>
+
+</div>
+</div>
+<a class="anchor" id="ab2e898e62f398f90f830a543a4bb5b84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_chttp2_transport_global::pending_closures_head</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>queued callbacks </p>
+
+</div>
+</div>
+<a class="anchor" id="a725d69688880a644d58001be3526abaf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_chttp2_transport_global::pending_closures_tail</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1e21a69530e1002dc3929ecd085aa2a7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> grpc_chttp2_transport_global::ping_counter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>next payload for an outgoing ping </p>
+
+</div>
+</div>
+<a class="anchor" id="a845e72fcdab9af17a971d064ca0fcfad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> grpc_chttp2_transport_global::pings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pings awaiting responses </p>
+
+</div>
+</div>
+<a class="anchor" id="abc8dc77619b0938e2ffa35bdf35bbae4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> grpc_chttp2_transport_global::qbuf</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>data to write next write </p>
+
+</div>
+</div>
+<a class="anchor" id="ac23343b063865623cab752f3882ef829"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_global::seen_goaway</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have we seen a goaway </p>
+
+</div>
+</div>
+<a class="anchor" id="ad06b0ee92495f66aa27bd606459fcaf8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_global::sent_goaway</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have we sent a goaway </p>
+
+</div>
+</div>
+<a class="anchor" id="a1afb189034e53b6596d41698cd3ce34d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_global::sent_local_settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have local settings been sent? </p>
+
+</div>
+</div>
+<a class="anchor" id="ab25f0c4b45d1c12d29eaf856e7b1b4a7"></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_chttp2_transport_global::settings[<a class="el" href="internal_8h.html#a6c14b42c5aba744e7f99831e0b7901adaa20accbdc29feba4c2f081ecc91e6641">GRPC_NUM_SETTING_SETS</a>][<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>settings values </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__transport__parsing.html b/doc/ref/core.internal/html/structgrpc__chttp2__transport__parsing.html
new file mode 100644
index 0000000000..a228767189
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__transport__parsing.html
@@ -0,0 +1,621 @@
+<!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_chttp2_transport_parsing 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_chttp2_transport_parsing Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:a1f45954c73c17a9a0cff3c0c7ac26d58"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a1f45954c73c17a9a0cff3c0c7ac26d58">is_client</a></td></tr>
+<tr class="memdesc:a1f45954c73c17a9a0cff3c0c7ac26d58"><td class="mdescLeft">&#160;</td><td class="mdescRight">is this transport a client? (boolean) <a href="#a1f45954c73c17a9a0cff3c0c7ac26d58">More...</a><br/></td></tr>
+<tr class="separator:a1f45954c73c17a9a0cff3c0c7ac26d58"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b0ab60da80d6ffacf7966db31ff7013"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a1b0ab60da80d6ffacf7966db31ff7013">settings_updated</a></td></tr>
+<tr class="memdesc:a1b0ab60da80d6ffacf7966db31ff7013"><td class="mdescLeft">&#160;</td><td class="mdescRight">were settings updated? <a href="#a1b0ab60da80d6ffacf7966db31ff7013">More...</a><br/></td></tr>
+<tr class="separator:a1b0ab60da80d6ffacf7966db31ff7013"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a163a1ce9c8ff2f73e58f2867fada9586"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a163a1ce9c8ff2f73e58f2867fada9586">settings_ack_received</a></td></tr>
+<tr class="memdesc:a163a1ce9c8ff2f73e58f2867fada9586"><td class="mdescLeft">&#160;</td><td class="mdescRight">was a settings ack received? <a href="#a163a1ce9c8ff2f73e58f2867fada9586">More...</a><br/></td></tr>
+<tr class="separator:a163a1ce9c8ff2f73e58f2867fada9586"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82b81ecf5d12a2c75978a343bad9abf5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a82b81ecf5d12a2c75978a343bad9abf5">goaway_received</a></td></tr>
+<tr class="memdesc:a82b81ecf5d12a2c75978a343bad9abf5"><td class="mdescLeft">&#160;</td><td class="mdescRight">was a goaway frame received? <a href="#a82b81ecf5d12a2c75978a343bad9abf5">More...</a><br/></td></tr>
+<tr class="separator:a82b81ecf5d12a2c75978a343bad9abf5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e1fc90d6a29169c350866557ff5903c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a3e1fc90d6a29169c350866557ff5903c">initial_window_update</a></td></tr>
+<tr class="memdesc:a3e1fc90d6a29169c350866557ff5903c"><td class="mdescLeft">&#160;</td><td class="mdescRight">initial window change <a href="#a3e1fc90d6a29169c350866557ff5903c">More...</a><br/></td></tr>
+<tr class="separator:a3e1fc90d6a29169c350866557ff5903c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a187f56865b31b7a1a29a3d95e81ab308"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a187f56865b31b7a1a29a3d95e81ab308">qbuf</a></td></tr>
+<tr class="memdesc:a187f56865b31b7a1a29a3d95e81ab308"><td class="mdescLeft">&#160;</td><td class="mdescRight">data to write later - after parsing <a href="#a187f56865b31b7a1a29a3d95e81ab308">More...</a><br/></td></tr>
+<tr class="separator:a187f56865b31b7a1a29a3d95e81ab308"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad78473e552fc03fcd84af1502bb6115c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#ad78473e552fc03fcd84af1502bb6115c">str_grpc_timeout</a></td></tr>
+<tr class="separator:ad78473e552fc03fcd84af1502bb6115c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c0031bc09c803f4b1440690a896812d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a5c0031bc09c803f4b1440690a896812d">hpack_parser</a></td></tr>
+<tr class="memdesc:a5c0031bc09c803f4b1440690a896812d"><td class="mdescLeft">&#160;</td><td class="mdescRight">parser for headers <a href="#a5c0031bc09c803f4b1440690a896812d">More...</a><br/></td></tr>
+<tr class="separator:a5c0031bc09c803f4b1440690a896812d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc911ee0c36b417e2da7a28a8d45675f"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a8f78fe7b6fe25d06ef5a3017bd212d1e"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a>&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport__parsing.html#a6d6d8e67e0200e9cd62a76e2e3020d2d">window_update</a></td></tr>
+<tr class="separator:a8f78fe7b6fe25d06ef5a3017bd212d1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e3a91e2467d3ef3829f2cb0ce617232"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a>&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport__parsing.html#add21a685d25468b7e778b0a88f961a31">settings</a></td></tr>
+<tr class="separator:a0e3a91e2467d3ef3829f2cb0ce617232"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e79d89696963785b2bcfb03914d3619"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a>&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport__parsing.html#ad6dbcdcca6123f0d8bea8061d6c01e30">ping</a></td></tr>
+<tr class="separator:a9e79d89696963785b2bcfb03914d3619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f449e1b9d261a13eabb61a12a514aff"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a>&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport__parsing.html#a3a0c36ded4c323b01b323643d9750c04">rst_stream</a></td></tr>
+<tr class="separator:a1f449e1b9d261a13eabb61a12a514aff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc911ee0c36b417e2da7a28a8d45675f"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#adc911ee0c36b417e2da7a28a8d45675f">simple</a></td></tr>
+<tr class="memdesc:adc911ee0c36b417e2da7a28a8d45675f"><td class="mdescLeft">&#160;</td><td class="mdescRight">simple one shot parsers <a href="#adc911ee0c36b417e2da7a28a8d45675f">More...</a><br/></td></tr>
+<tr class="separator:adc911ee0c36b417e2da7a28a8d45675f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab28b069fc6b870de365928004832729b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#ab28b069fc6b870de365928004832729b">goaway_parser</a></td></tr>
+<tr class="memdesc:ab28b069fc6b870de365928004832729b"><td class="mdescLeft">&#160;</td><td class="mdescRight">parser for goaway frames <a href="#ab28b069fc6b870de365928004832729b">More...</a><br/></td></tr>
+<tr class="separator:ab28b069fc6b870de365928004832729b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9b14729ff0c67e8b11f11bef74cc498"><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__chttp2__transport__parsing.html#af9b14729ff0c67e8b11f11bef74cc498">incoming_window</a></td></tr>
+<tr class="memdesc:af9b14729ff0c67e8b11f11bef74cc498"><td class="mdescLeft">&#160;</td><td class="mdescRight">window available for peer to send to us <a href="#af9b14729ff0c67e8b11f11bef74cc498">More...</a><br/></td></tr>
+<tr class="separator:af9b14729ff0c67e8b11f11bef74cc498"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a11bb4e6b13a37f1733f0348633e62ca9"><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__chttp2__transport__parsing.html#a11bb4e6b13a37f1733f0348633e62ca9">incoming_window_delta</a></td></tr>
+<tr class="separator:a11bb4e6b13a37f1733f0348633e62ca9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a760ff12814aea655f58e5ef78af31cc9"><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__chttp2__transport__parsing.html#a760ff12814aea655f58e5ef78af31cc9">next_stream_id</a></td></tr>
+<tr class="memdesc:a760ff12814aea655f58e5ef78af31cc9"><td class="mdescLeft">&#160;</td><td class="mdescRight">next stream id available at the time of beginning parsing <a href="#a760ff12814aea655f58e5ef78af31cc9">More...</a><br/></td></tr>
+<tr class="separator:a760ff12814aea655f58e5ef78af31cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaaf91745383884fd3b3df92021c7b542"><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__chttp2__transport__parsing.html#aaaf91745383884fd3b3df92021c7b542">last_incoming_stream_id</a></td></tr>
+<tr class="separator:aaaf91745383884fd3b3df92021c7b542"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad437f5d052e56cd4bcb46f26a7ab4250"><td class="memItemLeft" align="right" valign="top"><a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#ad437f5d052e56cd4bcb46f26a7ab4250">deframe_state</a></td></tr>
+<tr class="separator:ad437f5d052e56cd4bcb46f26a7ab4250"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cc62ba8bd5b95de8d083421cc6f5781"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a3cc62ba8bd5b95de8d083421cc6f5781">incoming_frame_type</a></td></tr>
+<tr class="separator:a3cc62ba8bd5b95de8d083421cc6f5781"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad96b76072847c4d2824167bb3003798f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#ad96b76072847c4d2824167bb3003798f">incoming_frame_flags</a></td></tr>
+<tr class="separator:ad96b76072847c4d2824167bb3003798f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c6bdb40aa08bf5930307f3997961e50"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a0c6bdb40aa08bf5930307f3997961e50">header_eof</a></td></tr>
+<tr class="separator:a0c6bdb40aa08bf5930307f3997961e50"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb9aee1746f86d0af230f41898c2e060"><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__chttp2__transport__parsing.html#acb9aee1746f86d0af230f41898c2e060">expect_continuation_stream_id</a></td></tr>
+<tr class="separator:acb9aee1746f86d0af230f41898c2e060"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d4a217861aaa604dd9f5fc515afd0b0"><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__chttp2__transport__parsing.html#a1d4a217861aaa604dd9f5fc515afd0b0">incoming_frame_size</a></td></tr>
+<tr class="separator:a1d4a217861aaa604dd9f5fc515afd0b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3e785cf84303e183da7de8fd1b534732"><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__chttp2__transport__parsing.html#a3e785cf84303e183da7de8fd1b534732">incoming_stream_id</a></td></tr>
+<tr class="separator:a3e785cf84303e183da7de8fd1b534732"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acc4557af66848465ca976ea792575442"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#acc4557af66848465ca976ea792575442">parser_data</a></td></tr>
+<tr class="separator:acc4557af66848465ca976ea792575442"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab961441cc12e57a8721e7cd1b726e445"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#ab961441cc12e57a8721e7cd1b726e445">incoming_stream</a></td></tr>
+<tr class="separator:ab961441cc12e57a8721e7cd1b726e445"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab12f37091dd64c63d7c175fc19410a61"><td class="memItemLeft" align="right" valign="top"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#ab12f37091dd64c63d7c175fc19410a61">parser</a> )(void *parser_user_data, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td></tr>
+<tr class="separator:ab12f37091dd64c63d7c175fc19410a61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a629d17756af481ff81ea339acb751751"><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__chttp2__transport__parsing.html#a629d17756af481ff81ea339acb751751">settings</a> [<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td></tr>
+<tr class="separator:a629d17756af481ff81ea339acb751751"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fe6b71fbaa164a3a755e274e94d970d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a5fe6b71fbaa164a3a755e274e94d970d">goaway_error</a></td></tr>
+<tr class="separator:a5fe6b71fbaa164a3a755e274e94d970d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae25fb486225d5197c4532c374c04c79f"><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__chttp2__transport__parsing.html#ae25fb486225d5197c4532c374c04c79f">goaway_last_stream_index</a></td></tr>
+<tr class="separator:ae25fb486225d5197c4532c374c04c79f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b872c8382bfd778b44a882fe10916d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a2b872c8382bfd778b44a882fe10916d8">goaway_text</a></td></tr>
+<tr class="separator:a2b872c8382bfd778b44a882fe10916d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a499f90a1aa3d67510b4f63191e04d08a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a499f90a1aa3d67510b4f63191e04d08a">outgoing_window_update</a></td></tr>
+<tr class="separator:a499f90a1aa3d67510b4f63191e04d08a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b235f899262d6aec77cb9995fc8e57b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__parsing.html#a6b235f899262d6aec77cb9995fc8e57b">pings</a></td></tr>
+<tr class="memdesc:a6b235f899262d6aec77cb9995fc8e57b"><td class="mdescLeft">&#160;</td><td class="mdescRight">pings awaiting responses <a href="#a6b235f899262d6aec77cb9995fc8e57b">More...</a><br/></td></tr>
+<tr class="separator:a6b235f899262d6aec77cb9995fc8e57b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad437f5d052e56cd4bcb46f26a7ab4250"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="internal_8h.html#a6f98ba3b22480becf1bcc47253326a62">grpc_chttp2_deframe_transport_state</a> grpc_chttp2_transport_parsing::deframe_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb9aee1746f86d0af230f41898c2e060"></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_chttp2_transport_parsing::expect_continuation_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fe6b71fbaa164a3a755e274e94d970d"></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_chttp2_transport_parsing::goaway_error</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae25fb486225d5197c4532c374c04c79f"></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_chttp2_transport_parsing::goaway_last_stream_index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab28b069fc6b870de365928004832729b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__goaway__parser.html">grpc_chttp2_goaway_parser</a> grpc_chttp2_transport_parsing::goaway_parser</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>parser for goaway frames </p>
+
+</div>
+</div>
+<a class="anchor" id="a82b81ecf5d12a2c75978a343bad9abf5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::goaway_received</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>was a goaway frame received? </p>
+
+</div>
+</div>
+<a class="anchor" id="a2b872c8382bfd778b44a882fe10916d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_chttp2_transport_parsing::goaway_text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c6bdb40aa08bf5930307f3997961e50"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::header_eof</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c0031bc09c803f4b1440690a896812d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hpack__parser.html">grpc_chttp2_hpack_parser</a> grpc_chttp2_transport_parsing::hpack_parser</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>parser for headers </p>
+
+</div>
+</div>
+<a class="anchor" id="ad96b76072847c4d2824167bb3003798f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::incoming_frame_flags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d4a217861aaa604dd9f5fc515afd0b0"></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_chttp2_transport_parsing::incoming_frame_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3cc62ba8bd5b95de8d083421cc6f5781"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::incoming_frame_type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab961441cc12e57a8721e7cd1b726e445"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a>* grpc_chttp2_transport_parsing::incoming_stream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3e785cf84303e183da7de8fd1b534732"></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_chttp2_transport_parsing::incoming_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af9b14729ff0c67e8b11f11bef74cc498"></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_chttp2_transport_parsing::incoming_window</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>window available for peer to send to us </p>
+
+</div>
+</div>
+<a class="anchor" id="a11bb4e6b13a37f1733f0348633e62ca9"></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_chttp2_transport_parsing::incoming_window_delta</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3e1fc90d6a29169c350866557ff5903c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a71edab4bc3421f129764e5cb342f7181">gpr_int64</a> grpc_chttp2_transport_parsing::initial_window_update</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>initial window change </p>
+
+</div>
+</div>
+<a class="anchor" id="a1f45954c73c17a9a0cff3c0c7ac26d58"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::is_client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is this transport a client? (boolean) </p>
+
+</div>
+</div>
+<a class="anchor" id="aaaf91745383884fd3b3df92021c7b542"></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_chttp2_transport_parsing::last_incoming_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a760ff12814aea655f58e5ef78af31cc9"></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_chttp2_transport_parsing::next_stream_id</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>next stream id available at the time of beginning parsing </p>
+
+</div>
+</div>
+<a class="anchor" id="a499f90a1aa3d67510b4f63191e04d08a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> grpc_chttp2_transport_parsing::outgoing_window_update</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab12f37091dd64c63d7c175fc19410a61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="frame_8h.html#ada474db64756bd411eeeaf3de4318e35">grpc_chttp2_parse_error</a>(* grpc_chttp2_transport_parsing::parser)(void *parser_user_data, <a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> *transport_parsing, <a class="el" href="structgrpc__chttp2__stream__parsing.html">grpc_chttp2_stream_parsing</a> *stream_parsing, <a class="el" href="structgpr__slice.html">gpr_slice</a> slice, int is_last)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acc4557af66848465ca976ea792575442"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_chttp2_transport_parsing::parser_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad6dbcdcca6123f0d8bea8061d6c01e30"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__ping__parser.html">grpc_chttp2_ping_parser</a> grpc_chttp2_transport_parsing::ping</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b235f899262d6aec77cb9995fc8e57b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__outstanding__ping.html">grpc_chttp2_outstanding_ping</a> grpc_chttp2_transport_parsing::pings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pings awaiting responses </p>
+
+</div>
+</div>
+<a class="anchor" id="a187f56865b31b7a1a29a3d95e81ab308"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> grpc_chttp2_transport_parsing::qbuf</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>data to write later - after parsing </p>
+
+</div>
+</div>
+<a class="anchor" id="a3a0c36ded4c323b01b323643d9750c04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__rst__stream__parser.html">grpc_chttp2_rst_stream_parser</a> grpc_chttp2_transport_parsing::rst_stream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add21a685d25468b7e778b0a88f961a31"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__settings__parser.html">grpc_chttp2_settings_parser</a> grpc_chttp2_transport_parsing::settings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a629d17756af481ff81ea339acb751751"></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_chttp2_transport_parsing::settings[<a class="el" href="frame__settings_8h.html#a1579a1a90fe405ea3791529c14da11efa8e792bc580a916db8331dc80f6899205">GRPC_CHTTP2_NUM_SETTINGS</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a163a1ce9c8ff2f73e58f2867fada9586"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::settings_ack_received</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>was a settings ack received? </p>
+
+</div>
+</div>
+<a class="anchor" id="a1b0ab60da80d6ffacf7966db31ff7013"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_parsing::settings_updated</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>were settings updated? </p>
+
+</div>
+</div>
+<a class="anchor" id="adc911ee0c36b417e2da7a28a8d45675f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_chttp2_transport_parsing::simple</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>simple one shot parsers </p>
+
+</div>
+</div>
+<a class="anchor" id="ad78473e552fc03fcd84af1502bb6115c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_chttp2_transport_parsing::str_grpc_timeout</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d6d8e67e0200e9cd62a76e2e3020d2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__window__update__parser.html">grpc_chttp2_window_update_parser</a> grpc_chttp2_transport_parsing::window_update</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__transport__writing.html b/doc/ref/core.internal/html/structgrpc__chttp2__transport__writing.html
new file mode 100644
index 0000000000..fc00096b1e
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__transport__writing.html
@@ -0,0 +1,159 @@
+<!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_chttp2_transport_writing 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_chttp2_transport_writing Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.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:a8dbe82f6436d8ae4e3410d0ecb28dfc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__writing.html#a8dbe82f6436d8ae4e3410d0ecb28dfc0">outbuf</a></td></tr>
+<tr class="memdesc:a8dbe82f6436d8ae4e3410d0ecb28dfc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">data to write now <a href="#a8dbe82f6436d8ae4e3410d0ecb28dfc0">More...</a><br/></td></tr>
+<tr class="separator:a8dbe82f6436d8ae4e3410d0ecb28dfc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99f5a7439100ab7bab790117458af460"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__writing.html#a99f5a7439100ab7bab790117458af460">hpack_compressor</a></td></tr>
+<tr class="memdesc:a99f5a7439100ab7bab790117458af460"><td class="mdescLeft">&#160;</td><td class="mdescRight">hpack encoding <a href="#a99f5a7439100ab7bab790117458af460">More...</a><br/></td></tr>
+<tr class="separator:a99f5a7439100ab7bab790117458af460"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43f3459674012631937082d00d553f57"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport__writing.html#a43f3459674012631937082d00d553f57">is_client</a></td></tr>
+<tr class="memdesc:a43f3459674012631937082d00d553f57"><td class="mdescLeft">&#160;</td><td class="mdescRight">is this a client? <a href="#a43f3459674012631937082d00d553f57">More...</a><br/></td></tr>
+<tr class="separator:a43f3459674012631937082d00d553f57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a99f5a7439100ab7bab790117458af460"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__chttp2__hpack__compressor.html">grpc_chttp2_hpack_compressor</a> grpc_chttp2_transport_writing::hpack_compressor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>hpack encoding </p>
+
+</div>
+</div>
+<a class="anchor" id="a43f3459674012631937082d00d553f57"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport_writing::is_client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>is this a client? </p>
+
+</div>
+</div>
+<a class="anchor" id="a8dbe82f6436d8ae4e3410d0ecb28dfc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> grpc_chttp2_transport_writing::outbuf</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>data to write now </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__chttp2__window__update__parser.html b/doc/ref/core.internal/html/structgrpc__chttp2__window__update__parser.html
new file mode 100644
index 0000000000..8fdf2ab505
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__chttp2__window__update__parser.html
@@ -0,0 +1,150 @@
+<!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_chttp2_window_update_parser 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_chttp2_window_update_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="frame__window__update_8h_source.html">frame_window_update.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:a9e8db4c14f00aa3572c81566448cba79"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__window__update__parser.html#a9e8db4c14f00aa3572c81566448cba79">byte</a></td></tr>
+<tr class="separator:a9e8db4c14f00aa3572c81566448cba79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59104211b0db6e55fe6ac2a1409f18ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__window__update__parser.html#a59104211b0db6e55fe6ac2a1409f18ca">is_connection_update</a></td></tr>
+<tr class="separator:a59104211b0db6e55fe6ac2a1409f18ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c822f3aa4adda962a78d20ae3ed0da2"><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__chttp2__window__update__parser.html#a6c822f3aa4adda962a78d20ae3ed0da2">amount</a></td></tr>
+<tr class="separator:a6c822f3aa4adda962a78d20ae3ed0da2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6c822f3aa4adda962a78d20ae3ed0da2"></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_chttp2_window_update_parser::amount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9e8db4c14f00aa3572c81566448cba79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_window_update_parser::byte</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a59104211b0db6e55fe6ac2a1409f18ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_window_update_parser::is_connection_update</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="frame__window__update_8h_source.html">frame_window_update.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>
diff --git a/doc/ref/core.internal/html/structgrpc__client__config.html b/doc/ref/core.internal/html/structgrpc__client__config.html
new file mode 100644
index 0000000000..4cf6bdd11a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__client__config.html
@@ -0,0 +1,134 @@
+<!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_client_config 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_client_config Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a176869d426cb1799e6eeebeb9cefd7e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__client__config.html#a176869d426cb1799e6eeebeb9cefd7e2">refs</a></td></tr>
+<tr class="separator:a176869d426cb1799e6eeebeb9cefd7e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40e0301a0d5ac19d5c5c854703604cc9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__client__config.html#a40e0301a0d5ac19d5c5c854703604cc9">lb_policy</a></td></tr>
+<tr class="separator:a40e0301a0d5ac19d5c5c854703604cc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a40e0301a0d5ac19d5c5c854703604cc9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* grpc_client_config::lb_policy</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a176869d426cb1799e6eeebeb9cefd7e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_client_config::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="client__config_8c.html">client_config.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__client__security__context.html b/doc/ref/core.internal/html/structgrpc__client__security__context.html
new file mode 100644
index 0000000000..815108bc2f
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__client__security__context.html
@@ -0,0 +1,136 @@
+<!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_client_security_context 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_client_security_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__context_8h_source.html">security_context.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:ae5d745d248626f77d4cb57d351fc2edf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__client__security__context.html#ae5d745d248626f77d4cb57d351fc2edf">creds</a></td></tr>
+<tr class="separator:ae5d745d248626f77d4cb57d351fc2edf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add1cf1d4ba571e2a7de7bbe9bcdeda7c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__client__security__context.html#add1cf1d4ba571e2a7de7bbe9bcdeda7c">auth_context</a></td></tr>
+<tr class="separator:add1cf1d4ba571e2a7de7bbe9bcdeda7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="add1cf1d4ba571e2a7de7bbe9bcdeda7c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_client_security_context::auth_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae5d745d248626f77d4cb57d351fc2edf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_client_security_context::creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__context_8h_source.html">security_context.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>
diff --git a/doc/ref/core.internal/html/structgrpc__completion__queue.html b/doc/ref/core.internal/html/structgrpc__completion__queue.html
new file mode 100644
index 0000000000..8d6351624b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__completion__queue.html
@@ -0,0 +1,233 @@
+<!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_completion_queue 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_completion_queue Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a484ad9fad34b51c8ab2e0f6a144e6d5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#a484ad9fad34b51c8ab2e0f6a144e6d5e">completed_head</a></td></tr>
+<tr class="memdesc:a484ad9fad34b51c8ab2e0f6a144e6d5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">completed events <a href="#a484ad9fad34b51c8ab2e0f6a144e6d5e">More...</a><br/></td></tr>
+<tr class="separator:a484ad9fad34b51c8ab2e0f6a144e6d5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82c067060ebf5ff91bc9ec961b414fa2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#a82c067060ebf5ff91bc9ec961b414fa2">completed_tail</a></td></tr>
+<tr class="separator:a82c067060ebf5ff91bc9ec961b414fa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a613cc61628fa742f363fb3125e8550db"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#a613cc61628fa742f363fb3125e8550db">pending_events</a></td></tr>
+<tr class="memdesc:a613cc61628fa742f363fb3125e8550db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of pending events (+1 if we're not shutdown) <a href="#a613cc61628fa742f363fb3125e8550db">More...</a><br/></td></tr>
+<tr class="separator:a613cc61628fa742f363fb3125e8550db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae47cbaaca85ca3f9e7cb2317709f8e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#aae47cbaaca85ca3f9e7cb2317709f8e6">owning_refs</a></td></tr>
+<tr class="memdesc:aae47cbaaca85ca3f9e7cb2317709f8e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Once owning_refs drops to zero, we will destroy the cq. <a href="#aae47cbaaca85ca3f9e7cb2317709f8e6">More...</a><br/></td></tr>
+<tr class="separator:aae47cbaaca85ca3f9e7cb2317709f8e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea3ae4f771564833e6082e50c4ebbbdc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#aea3ae4f771564833e6082e50c4ebbbdc">pollset</a></td></tr>
+<tr class="memdesc:aea3ae4f771564833e6082e50c4ebbbdc"><td class="mdescLeft">&#160;</td><td class="mdescRight">the set of low level i/o things that concern this cq <a href="#aea3ae4f771564833e6082e50c4ebbbdc">More...</a><br/></td></tr>
+<tr class="separator:aea3ae4f771564833e6082e50c4ebbbdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d6f10502b79874124dc63169f4366d6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#a4d6f10502b79874124dc63169f4366d6">shutdown</a></td></tr>
+<tr class="memdesc:a4d6f10502b79874124dc63169f4366d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">0 initially, 1 once we've begun shutting down <a href="#a4d6f10502b79874124dc63169f4366d6">More...</a><br/></td></tr>
+<tr class="separator:a4d6f10502b79874124dc63169f4366d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81ae0a3f77b40e2a21370e641e9f73e4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#a81ae0a3f77b40e2a21370e641e9f73e4">shutdown_called</a></td></tr>
+<tr class="separator:a81ae0a3f77b40e2a21370e641e9f73e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a495f730490aa5625bb7ce2604ee8e6d7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__completion__queue.html#a495f730490aa5625bb7ce2604ee8e6d7">is_server_cq</a></td></tr>
+<tr class="separator:a495f730490aa5625bb7ce2604ee8e6d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a484ad9fad34b51c8ab2e0f6a144e6d5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> grpc_completion_queue::completed_head</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>completed events </p>
+
+</div>
+</div>
+<a class="anchor" id="a82c067060ebf5ff91bc9ec961b414fa2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>* grpc_completion_queue::completed_tail</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a495f730490aa5625bb7ce2604ee8e6d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_completion_queue::is_server_cq</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aae47cbaaca85ca3f9e7cb2317709f8e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_completion_queue::owning_refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Once owning_refs drops to zero, we will destroy the cq. </p>
+
+</div>
+</div>
+<a class="anchor" id="a613cc61628fa742f363fb3125e8550db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_completion_queue::pending_events</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Number of pending events (+1 if we're not shutdown) </p>
+
+</div>
+</div>
+<a class="anchor" id="aea3ae4f771564833e6082e50c4ebbbdc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> grpc_completion_queue::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>the set of low level i/o things that concern this cq </p>
+
+</div>
+</div>
+<a class="anchor" id="a4d6f10502b79874124dc63169f4366d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_completion_queue::shutdown</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>0 initially, 1 once we've begun shutting down </p>
+
+</div>
+</div>
+<a class="anchor" id="a81ae0a3f77b40e2a21370e641e9f73e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_completion_queue::shutdown_called</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="completion__queue_8c.html">completion_queue.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__composite__credentials.html b/doc/ref/core.internal/html/structgrpc__composite__credentials.html
new file mode 100644
index 0000000000..be769840de
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__composite__credentials.html
@@ -0,0 +1,150 @@
+<!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_composite_credentials 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_composite_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a96e8d7c765b0b1e37d025d8726fe57d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials.html#a96e8d7c765b0b1e37d025d8726fe57d2">base</a></td></tr>
+<tr class="separator:a96e8d7c765b0b1e37d025d8726fe57d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94a828068bb8844a20c6677b239ae805"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials.html#a94a828068bb8844a20c6677b239ae805">inner</a></td></tr>
+<tr class="separator:a94a828068bb8844a20c6677b239ae805"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02f10b8620b768e3402da78e83fef637"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials.html#a02f10b8620b768e3402da78e83fef637">connector_creds</a></td></tr>
+<tr class="separator:a02f10b8620b768e3402da78e83fef637"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a96e8d7c765b0b1e37d025d8726fe57d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_composite_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02f10b8620b768e3402da78e83fef637"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_composite_credentials::connector_creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a94a828068bb8844a20c6677b239ae805"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__array.html">grpc_credentials_array</a> grpc_composite_credentials::inner</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__composite__credentials__metadata__context.html b/doc/ref/core.internal/html/structgrpc__composite__credentials__metadata__context.html
new file mode 100644
index 0000000000..fec53bf2ba
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__composite__credentials__metadata__context.html
@@ -0,0 +1,204 @@
+<!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_composite_credentials_metadata_context 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_composite_credentials_metadata_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:aa01c70e7c7cd7ac2071c933c4ca4ed65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__composite__credentials.html">grpc_composite_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#aa01c70e7c7cd7ac2071c933c4ca4ed65">composite_creds</a></td></tr>
+<tr class="separator:aa01c70e7c7cd7ac2071c933c4ca4ed65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3232f00703210b60772c4dd1c727a56"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#af3232f00703210b60772c4dd1c727a56">creds_index</a></td></tr>
+<tr class="separator:af3232f00703210b60772c4dd1c727a56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5102b59e552251b072c0ac96020b43ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#a5102b59e552251b072c0ac96020b43ea">md_elems</a></td></tr>
+<tr class="separator:a5102b59e552251b072c0ac96020b43ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7041c3ef3e78168d24699294470422e4"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#a7041c3ef3e78168d24699294470422e4">service_url</a></td></tr>
+<tr class="separator:a7041c3ef3e78168d24699294470422e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa7ca5d9fca93b8a99acc2119f36b8ce6"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#aa7ca5d9fca93b8a99acc2119f36b8ce6">user_data</a></td></tr>
+<tr class="separator:aa7ca5d9fca93b8a99acc2119f36b8ce6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a826b0b290b5335867fb0299e75006083"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#a826b0b290b5335867fb0299e75006083">pollset</a></td></tr>
+<tr class="separator:a826b0b290b5335867fb0299e75006083"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14c42c56de0c02fcaca7103953411ce0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__composite__credentials__metadata__context.html#a14c42c56de0c02fcaca7103953411ce0">cb</a></td></tr>
+<tr class="separator:a14c42c56de0c02fcaca7103953411ce0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a14c42c56de0c02fcaca7103953411ce0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> grpc_composite_credentials_metadata_context::cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa01c70e7c7cd7ac2071c933c4ca4ed65"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__composite__credentials.html">grpc_composite_credentials</a>* grpc_composite_credentials_metadata_context::composite_creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af3232f00703210b60772c4dd1c727a56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_composite_credentials_metadata_context::creds_index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5102b59e552251b072c0ac96020b43ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_composite_credentials_metadata_context::md_elems</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a826b0b290b5335867fb0299e75006083"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* grpc_composite_credentials_metadata_context::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7041c3ef3e78168d24699294470422e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_composite_credentials_metadata_context::service_url</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7ca5d9fca93b8a99acc2119f36b8ce6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_composite_credentials_metadata_context::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8c.html">credentials.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__connect__in__args.html b/doc/ref/core.internal/html/structgrpc__connect__in__args.html
new file mode 100644
index 0000000000..533578ac15
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__connect__in__args.html
@@ -0,0 +1,207 @@
+<!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_connect_in_args 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_connect_in_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="connector_8h_source.html">connector.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:aa7c2d0108c593d04eab1f02abdb835ac"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html#aa7c2d0108c593d04eab1f02abdb835ac">interested_parties</a></td></tr>
+<tr class="memdesc:aa7c2d0108c593d04eab1f02abdb835ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">set of pollsets interested in this connection <a href="#aa7c2d0108c593d04eab1f02abdb835ac">More...</a><br/></td></tr>
+<tr class="separator:aa7c2d0108c593d04eab1f02abdb835ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01c5d04f3df0288acdd6e68e84ac1834"><td class="memItemLeft" align="right" valign="top">const struct sockaddr *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html#a01c5d04f3df0288acdd6e68e84ac1834">addr</a></td></tr>
+<tr class="memdesc:a01c5d04f3df0288acdd6e68e84ac1834"><td class="mdescLeft">&#160;</td><td class="mdescRight">address to connect to <a href="#a01c5d04f3df0288acdd6e68e84ac1834">More...</a><br/></td></tr>
+<tr class="separator:a01c5d04f3df0288acdd6e68e84ac1834"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a258a95ae88f73e33680be007cf68521b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html#a258a95ae88f73e33680be007cf68521b">addr_len</a></td></tr>
+<tr class="separator:a258a95ae88f73e33680be007cf68521b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aded5d906335c1ccdb58b4e97581bdc6c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html#aded5d906335c1ccdb58b4e97581bdc6c">deadline</a></td></tr>
+<tr class="memdesc:aded5d906335c1ccdb58b4e97581bdc6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">deadline for connection <a href="#aded5d906335c1ccdb58b4e97581bdc6c">More...</a><br/></td></tr>
+<tr class="separator:aded5d906335c1ccdb58b4e97581bdc6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47bff8f21e77a47f1a3584e874006eab"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html#a47bff8f21e77a47f1a3584e874006eab">channel_args</a></td></tr>
+<tr class="memdesc:a47bff8f21e77a47f1a3584e874006eab"><td class="mdescLeft">&#160;</td><td class="mdescRight">channel arguments (to be passed to transport) <a href="#a47bff8f21e77a47f1a3584e874006eab">More...</a><br/></td></tr>
+<tr class="separator:a47bff8f21e77a47f1a3584e874006eab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6055926502e3764bc0d49c10b945f47e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__in__args.html#a6055926502e3764bc0d49c10b945f47e">metadata_context</a></td></tr>
+<tr class="memdesc:a6055926502e3764bc0d49c10b945f47e"><td class="mdescLeft">&#160;</td><td class="mdescRight">metadata context <a href="#a6055926502e3764bc0d49c10b945f47e">More...</a><br/></td></tr>
+<tr class="separator:a6055926502e3764bc0d49c10b945f47e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a01c5d04f3df0288acdd6e68e84ac1834"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const struct sockaddr* grpc_connect_in_args::addr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>address to connect to </p>
+
+</div>
+</div>
+<a class="anchor" id="a258a95ae88f73e33680be007cf68521b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_connect_in_args::addr_len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a47bff8f21e77a47f1a3584e874006eab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_connect_in_args::channel_args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>channel arguments (to be passed to transport) </p>
+
+</div>
+</div>
+<a class="anchor" id="aded5d906335c1ccdb58b4e97581bdc6c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_connect_in_args::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>deadline for connection </p>
+
+</div>
+</div>
+<a class="anchor" id="aa7c2d0108c593d04eab1f02abdb835ac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>* grpc_connect_in_args::interested_parties</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>set of pollsets interested in this connection </p>
+
+</div>
+</div>
+<a class="anchor" id="a6055926502e3764bc0d49c10b945f47e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_connect_in_args::metadata_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>metadata context </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="connector_8h_source.html">connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__connect__out__args.html b/doc/ref/core.internal/html/structgrpc__connect__out__args.html
new file mode 100644
index 0000000000..affe261f59
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__connect__out__args.html
@@ -0,0 +1,156 @@
+<!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_connect_out_args 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_connect_out_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="connector_8h_source.html">connector.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:abc6070bbb1030b29072cc242faf7f5b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__out__args.html#abc6070bbb1030b29072cc242faf7f5b9">transport</a></td></tr>
+<tr class="memdesc:abc6070bbb1030b29072cc242faf7f5b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">the connected transport <a href="#abc6070bbb1030b29072cc242faf7f5b9">More...</a><br/></td></tr>
+<tr class="separator:abc6070bbb1030b29072cc242faf7f5b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a265b258502606ef7943a43591bbdc4b2"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__out__args.html#a265b258502606ef7943a43591bbdc4b2">filters</a></td></tr>
+<tr class="memdesc:a265b258502606ef7943a43591bbdc4b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">any additional filters (owned by the caller of connect) <a href="#a265b258502606ef7943a43591bbdc4b2">More...</a><br/></td></tr>
+<tr class="separator:a265b258502606ef7943a43591bbdc4b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96fdf8ea43f6e4a2ac73d2f6e21401a3"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connect__out__args.html#a96fdf8ea43f6e4a2ac73d2f6e21401a3">num_filters</a></td></tr>
+<tr class="separator:a96fdf8ea43f6e4a2ac73d2f6e21401a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a265b258502606ef7943a43591bbdc4b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>** grpc_connect_out_args::filters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>any additional filters (owned by the caller of connect) </p>
+
+</div>
+</div>
+<a class="anchor" id="a96fdf8ea43f6e4a2ac73d2f6e21401a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_connect_out_args::num_filters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc6070bbb1030b29072cc242faf7f5b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__transport.html">grpc_transport</a>* grpc_connect_out_args::transport</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>the connected transport </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="connector_8h_source.html">connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__connectivity__state__tracker.html b/doc/ref/core.internal/html/structgrpc__connectivity__state__tracker.html
new file mode 100644
index 0000000000..02a90931ed
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__connectivity__state__tracker.html
@@ -0,0 +1,159 @@
+<!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_connectivity_state_tracker 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_connectivity_state_tracker Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="connectivity__state_8h_source.html">connectivity_state.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:ab0095b36574489645353e10d707e629e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__tracker.html#ab0095b36574489645353e10d707e629e">current_state</a></td></tr>
+<tr class="memdesc:ab0095b36574489645353e10d707e629e"><td class="mdescLeft">&#160;</td><td class="mdescRight">current connectivity state <a href="#ab0095b36574489645353e10d707e629e">More...</a><br/></td></tr>
+<tr class="separator:ab0095b36574489645353e10d707e629e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0729ebf58543059330612f61c6519fdd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__tracker.html#a0729ebf58543059330612f61c6519fdd">watchers</a></td></tr>
+<tr class="memdesc:a0729ebf58543059330612f61c6519fdd"><td class="mdescLeft">&#160;</td><td class="mdescRight">all our watchers <a href="#a0729ebf58543059330612f61c6519fdd">More...</a><br/></td></tr>
+<tr class="separator:a0729ebf58543059330612f61c6519fdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7f1a07e62d4fb307459586528f73cb8"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__tracker.html#ae7f1a07e62d4fb307459586528f73cb8">name</a></td></tr>
+<tr class="memdesc:ae7f1a07e62d4fb307459586528f73cb8"><td class="mdescLeft">&#160;</td><td class="mdescRight">a name to help debugging <a href="#ae7f1a07e62d4fb307459586528f73cb8">More...</a><br/></td></tr>
+<tr class="separator:ae7f1a07e62d4fb307459586528f73cb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab0095b36574489645353e10d707e629e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_connectivity_state_tracker::current_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>current connectivity state </p>
+
+</div>
+</div>
+<a class="anchor" id="ae7f1a07e62d4fb307459586528f73cb8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_connectivity_state_tracker::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>a name to help debugging </p>
+
+</div>
+</div>
+<a class="anchor" id="a0729ebf58543059330612f61c6519fdd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a>* grpc_connectivity_state_tracker::watchers</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>all our watchers </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="connectivity__state_8h_source.html">connectivity_state.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>
diff --git a/doc/ref/core.internal/html/structgrpc__connectivity__state__watcher.html b/doc/ref/core.internal/html/structgrpc__connectivity__state__watcher.html
new file mode 100644
index 0000000000..2fc1a2ee81
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__connectivity__state__watcher.html
@@ -0,0 +1,160 @@
+<!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_connectivity_state_watcher 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_connectivity_state_watcher Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="connectivity__state_8h_source.html">connectivity_state.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:af56652db73ffb05884d92d16713dc388"><td class="memItemLeft" align="right" valign="top">struct <br class="typebreak"/>
+<a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__watcher.html#af56652db73ffb05884d92d16713dc388">next</a></td></tr>
+<tr class="memdesc:af56652db73ffb05884d92d16713dc388"><td class="mdescLeft">&#160;</td><td class="mdescRight">we keep watchers in a linked list <a href="#af56652db73ffb05884d92d16713dc388">More...</a><br/></td></tr>
+<tr class="separator:af56652db73ffb05884d92d16713dc388"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87d9e862c853d0880382af9104ee2e9f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__watcher.html#a87d9e862c853d0880382af9104ee2e9f">notify</a></td></tr>
+<tr class="memdesc:a87d9e862c853d0880382af9104ee2e9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">closure to notify on change <a href="#a87d9e862c853d0880382af9104ee2e9f">More...</a><br/></td></tr>
+<tr class="separator:a87d9e862c853d0880382af9104ee2e9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3989271095271ebcaea6616e6afeff4f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connectivity__state__watcher.html#a3989271095271ebcaea6616e6afeff4f">current</a></td></tr>
+<tr class="memdesc:a3989271095271ebcaea6616e6afeff4f"><td class="mdescLeft">&#160;</td><td class="mdescRight">the current state as believed by the watcher <a href="#a3989271095271ebcaea6616e6afeff4f">More...</a><br/></td></tr>
+<tr class="separator:a3989271095271ebcaea6616e6afeff4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3989271095271ebcaea6616e6afeff4f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>* grpc_connectivity_state_watcher::current</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>the current state as believed by the watcher </p>
+
+</div>
+</div>
+<a class="anchor" id="af56652db73ffb05884d92d16713dc388"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__connectivity__state__watcher.html">grpc_connectivity_state_watcher</a>* grpc_connectivity_state_watcher::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>we keep watchers in a linked list </p>
+
+</div>
+</div>
+<a class="anchor" id="a87d9e862c853d0880382af9104ee2e9f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_connectivity_state_watcher::notify</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>closure to notify on change </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="connectivity__state_8h_source.html">connectivity_state.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>
diff --git a/doc/ref/core.internal/html/structgrpc__connector.html b/doc/ref/core.internal/html/structgrpc__connector.html
new file mode 100644
index 0000000000..303a0290bc
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__connector.html
@@ -0,0 +1,122 @@
+<!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_connector 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_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="connector_8h_source.html">connector.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:ac4136d5397211527185fad5282ae01ec"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connector.html#ac4136d5397211527185fad5282ae01ec">vtable</a></td></tr>
+<tr class="separator:ac4136d5397211527185fad5282ae01ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac4136d5397211527185fad5282ae01ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__connector__vtable.html">grpc_connector_vtable</a>* grpc_connector::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="connector_8h_source.html">connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__connector__vtable.html b/doc/ref/core.internal/html/structgrpc__connector__vtable.html
new file mode 100644
index 0000000000..2182cb17dd
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__connector__vtable.html
@@ -0,0 +1,150 @@
+<!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_connector_vtable 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_connector_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="connector_8h_source.html">connector.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:ad68d5f41a883e3bd7934771e59f26b15"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connector__vtable.html#ad68d5f41a883e3bd7934771e59f26b15">ref</a> )(<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td></tr>
+<tr class="separator:ad68d5f41a883e3bd7934771e59f26b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b03677e3ce015e7dc092cd33475c1f9"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connector__vtable.html#a0b03677e3ce015e7dc092cd33475c1f9">unref</a> )(<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td></tr>
+<tr class="separator:a0b03677e3ce015e7dc092cd33475c1f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae51b646aa858eeeb84a7a1abbebbf078"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__connector__vtable.html#ae51b646aa858eeeb84a7a1abbebbf078">connect</a> )(<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>, const <a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *in_args, <a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *out_args, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="separator:ae51b646aa858eeeb84a7a1abbebbf078"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae51b646aa858eeeb84a7a1abbebbf078"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_connector_vtable::connect)(<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>, const <a class="el" href="structgrpc__connect__in__args.html">grpc_connect_in_args</a> *in_args, <a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> *out_args, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad68d5f41a883e3bd7934771e59f26b15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_connector_vtable::ref)(<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0b03677e3ce015e7dc092cd33475c1f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_connector_vtable::unref)(<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="connector_8h_source.html">connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__cq__completion.html b/doc/ref/core.internal/html/structgrpc__cq__completion.html
new file mode 100644
index 0000000000..ef23b23dc2
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__cq__completion.html
@@ -0,0 +1,173 @@
+<!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_cq_completion 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_cq_completion Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.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:acf21f4e0ec0adcd801bd9f34d80a7b7e"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__cq__completion.html#acf21f4e0ec0adcd801bd9f34d80a7b7e">tag</a></td></tr>
+<tr class="memdesc:acf21f4e0ec0adcd801bd9f34d80a7b7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">user supplied tag <a href="#acf21f4e0ec0adcd801bd9f34d80a7b7e">More...</a><br/></td></tr>
+<tr class="separator:acf21f4e0ec0adcd801bd9f34d80a7b7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e3c70bc2aa092495b6367ef8d41ba64"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__cq__completion.html#a2e3c70bc2aa092495b6367ef8d41ba64">done</a> )(void *<a class="el" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">done_arg</a>, struct <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *c)</td></tr>
+<tr class="memdesc:a2e3c70bc2aa092495b6367ef8d41ba64"><td class="mdescLeft">&#160;</td><td class="mdescRight">done callback - called when this queue element is no longer needed by the completion queue <a href="#a2e3c70bc2aa092495b6367ef8d41ba64">More...</a><br/></td></tr>
+<tr class="separator:a2e3c70bc2aa092495b6367ef8d41ba64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a533e98ae5b637059189ee4fb27ad484a"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">done_arg</a></td></tr>
+<tr class="separator:a533e98ae5b637059189ee4fb27ad484a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7107ba3521b7cabde35c3334547a948"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__cq__completion.html#ae7107ba3521b7cabde35c3334547a948">next</a></td></tr>
+<tr class="memdesc:ae7107ba3521b7cabde35c3334547a948"><td class="mdescLeft">&#160;</td><td class="mdescRight">next pointer; low bit is used to indicate success or not <a href="#ae7107ba3521b7cabde35c3334547a948">More...</a><br/></td></tr>
+<tr class="separator:ae7107ba3521b7cabde35c3334547a948"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a2e3c70bc2aa092495b6367ef8d41ba64"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_cq_completion::done)(void *<a class="el" href="structgrpc__cq__completion.html#a533e98ae5b637059189ee4fb27ad484a">done_arg</a>, struct <a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> *c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>done callback - called when this queue element is no longer needed by the completion queue </p>
+
+</div>
+</div>
+<a class="anchor" id="a533e98ae5b637059189ee4fb27ad484a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_cq_completion::done_arg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7107ba3521b7cabde35c3334547a948"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#ab302f9bfe3be467072bd8c79847636d4">gpr_uintptr</a> grpc_cq_completion::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>next pointer; low bit is used to indicate success or not </p>
+
+</div>
+</div>
+<a class="anchor" id="acf21f4e0ec0adcd801bd9f34d80a7b7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_cq_completion::tag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>user supplied tag </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="completion__queue_8h_source.html">completion_queue.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>
diff --git a/doc/ref/core.internal/html/structgrpc__credentials.html b/doc/ref/core.internal/html/structgrpc__credentials.html
new file mode 100644
index 0000000000..95102403cd
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__credentials.html
@@ -0,0 +1,150 @@
+<!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_credentials 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_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a4842bd6607dba5b1045e4ad4e167d20e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials.html#a4842bd6607dba5b1045e4ad4e167d20e">vtable</a></td></tr>
+<tr class="separator:a4842bd6607dba5b1045e4ad4e167d20e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40d9db6d1125238d7e1ceeeab886788b"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials.html#a40d9db6d1125238d7e1ceeeab886788b">type</a></td></tr>
+<tr class="separator:a40d9db6d1125238d7e1ceeeab886788b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a823ba4bf9cc44b1173f6b4889a3446d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials.html#a823ba4bf9cc44b1173f6b4889a3446d6">refcount</a></td></tr>
+<tr class="separator:a823ba4bf9cc44b1173f6b4889a3446d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a823ba4bf9cc44b1173f6b4889a3446d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_credentials::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40d9db6d1125238d7e1ceeeab886788b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_credentials::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4842bd6607dba5b1045e4ad4e167d20e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__credentials__vtable.html">grpc_credentials_vtable</a>* grpc_credentials::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__credentials__array.html b/doc/ref/core.internal/html/structgrpc__credentials__array.html
new file mode 100644
index 0000000000..ac6981ceea
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__credentials__array.html
@@ -0,0 +1,136 @@
+<!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_credentials_array 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_credentials_array Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a72172f932751c5d9fc7670af1a1cd231"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__array.html#a72172f932751c5d9fc7670af1a1cd231">creds_array</a></td></tr>
+<tr class="separator:a72172f932751c5d9fc7670af1a1cd231"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a4ba8ed410c26eaee6aa5a7d5b36d96"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__array.html#a1a4ba8ed410c26eaee6aa5a7d5b36d96">num_creds</a></td></tr>
+<tr class="separator:a1a4ba8ed410c26eaee6aa5a7d5b36d96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a72172f932751c5d9fc7670af1a1cd231"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>** grpc_credentials_array::creds_array</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a4ba8ed410c26eaee6aa5a7d5b36d96"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_credentials_array::num_creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__credentials__md.html b/doc/ref/core.internal/html/structgrpc__credentials__md.html
new file mode 100644
index 0000000000..f3c35658a7
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__credentials__md.html
@@ -0,0 +1,136 @@
+<!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_credentials_md 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_credentials_md Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a8484aa32f640b1b127c1903e868a4a53"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md.html#a8484aa32f640b1b127c1903e868a4a53">key</a></td></tr>
+<tr class="separator:a8484aa32f640b1b127c1903e868a4a53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae893ec4c5c65ffa395a5e12259089841"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md.html#ae893ec4c5c65ffa395a5e12259089841">value</a></td></tr>
+<tr class="separator:ae893ec4c5c65ffa395a5e12259089841"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8484aa32f640b1b127c1903e868a4a53"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_credentials_md::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae893ec4c5c65ffa395a5e12259089841"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_credentials_md::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__credentials__md__store.html b/doc/ref/core.internal/html/structgrpc__credentials__md__store.html
new file mode 100644
index 0000000000..eea40869d6
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__credentials__md__store.html
@@ -0,0 +1,164 @@
+<!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_credentials_md_store 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_credentials_md_store Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:ab5f2f62b101f1d05a11340bc45eb71c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md.html">grpc_credentials_md</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md__store.html#ab5f2f62b101f1d05a11340bc45eb71c5">entries</a></td></tr>
+<tr class="separator:ab5f2f62b101f1d05a11340bc45eb71c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfddab340d1b7d7d51087b015f14b259"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md__store.html#adfddab340d1b7d7d51087b015f14b259">num_entries</a></td></tr>
+<tr class="separator:adfddab340d1b7d7d51087b015f14b259"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b9a6a36be981b53ce96afe727e8b95e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md__store.html#a6b9a6a36be981b53ce96afe727e8b95e">allocated</a></td></tr>
+<tr class="separator:a6b9a6a36be981b53ce96afe727e8b95e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf0f64c7bbf264de9434ea9d656bf694"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__md__store.html#adf0f64c7bbf264de9434ea9d656bf694">refcount</a></td></tr>
+<tr class="separator:adf0f64c7bbf264de9434ea9d656bf694"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6b9a6a36be981b53ce96afe727e8b95e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_credentials_md_store::allocated</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5f2f62b101f1d05a11340bc45eb71c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md.html">grpc_credentials_md</a>* grpc_credentials_md_store::entries</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adfddab340d1b7d7d51087b015f14b259"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_credentials_md_store::num_entries</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf0f64c7bbf264de9434ea9d656bf694"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_credentials_md_store::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__credentials__metadata__request.html b/doc/ref/core.internal/html/structgrpc__credentials__metadata__request.html
new file mode 100644
index 0000000000..9664e4aede
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__credentials__metadata__request.html
@@ -0,0 +1,162 @@
+<!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_credentials_metadata_request 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_credentials_metadata_request Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a7cf76389aba6b2f8ae6fcb00f59bff98"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__metadata__request.html#a7cf76389aba6b2f8ae6fcb00f59bff98">creds</a></td></tr>
+<tr class="separator:a7cf76389aba6b2f8ae6fcb00f59bff98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd521fb44c2c0a7aaab92243f606c67e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__metadata__request.html#afd521fb44c2c0a7aaab92243f606c67e">cb</a></td></tr>
+<tr class="separator:afd521fb44c2c0a7aaab92243f606c67e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31c83ca54622158600b17ebcc6047af8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__metadata__request.html#a31c83ca54622158600b17ebcc6047af8">on_simulated_token_fetch_done_closure</a></td></tr>
+<tr class="separator:a31c83ca54622158600b17ebcc6047af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afba92ff6e76a2b87d1b4b6e0d8531b87"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__metadata__request.html#afba92ff6e76a2b87d1b4b6e0d8531b87">user_data</a></td></tr>
+<tr class="separator:afba92ff6e76a2b87d1b4b6e0d8531b87"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="afd521fb44c2c0a7aaab92243f606c67e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> grpc_credentials_metadata_request::cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7cf76389aba6b2f8ae6fcb00f59bff98"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>* grpc_credentials_metadata_request::creds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31c83ca54622158600b17ebcc6047af8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_credentials_metadata_request::on_simulated_token_fetch_done_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afba92ff6e76a2b87d1b4b6e0d8531b87"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_credentials_metadata_request::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8c.html">credentials.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__credentials__vtable.html b/doc/ref/core.internal/html/structgrpc__credentials__vtable.html
new file mode 100644
index 0000000000..0a13b63eda
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__credentials__vtable.html
@@ -0,0 +1,178 @@
+<!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_credentials_vtable 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_credentials_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a95766dfd1880536b6b891b18514b5720"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__vtable.html#a95766dfd1880536b6b891b18514b5720">destroy</a> )(<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c)</td></tr>
+<tr class="separator:a95766dfd1880536b6b891b18514b5720"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd487d7cf9dab42866c366a212ef4b15"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__vtable.html#acd487d7cf9dab42866c366a212ef4b15">has_request_metadata</a> )(const <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c)</td></tr>
+<tr class="separator:acd487d7cf9dab42866c366a212ef4b15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2028660c297e6e08be99e09f068921e7"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__vtable.html#a2028660c297e6e08be99e09f068921e7">has_request_metadata_only</a> )(const <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c)</td></tr>
+<tr class="separator:a2028660c297e6e08be99e09f068921e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14795750df563c75436add4e7c05603d"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__vtable.html#a14795750df563c75436add4e7c05603d">get_request_metadata</a> )(<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *service_url, <a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a14795750df563c75436add4e7c05603d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bbb5a8658e7f2295ed816f7f60e6f00"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__credentials__vtable.html#a7bbb5a8658e7f2295ed816f7f60e6f00">create_security_connector</a> )(<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c, const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc, <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> **new_args)</td></tr>
+<tr class="separator:a7bbb5a8658e7f2295ed816f7f60e6f00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7bbb5a8658e7f2295ed816f7f60e6f00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(* grpc_credentials_vtable::create_security_connector)(<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c, const char *target, const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *request_metadata_creds, <a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> **sc, <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> **new_args)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95766dfd1880536b6b891b18514b5720"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_credentials_vtable::destroy)(<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14795750df563c75436add4e7c05603d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_credentials_vtable::get_request_metadata)(<a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, const char *service_url, <a class="el" href="credentials_8h.html#a3d93eb22b0fedde1b3f7b6b9ded3aaf2">grpc_credentials_metadata_cb</a> cb, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acd487d7cf9dab42866c366a212ef4b15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* grpc_credentials_vtable::has_request_metadata)(const <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2028660c297e6e08be99e09f068921e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* grpc_credentials_vtable::has_request_metadata_only)(const <a class="el" href="structgrpc__credentials.html">grpc_credentials</a> *c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__endpoint.html b/doc/ref/core.internal/html/structgrpc__endpoint.html
new file mode 100644
index 0000000000..ba84f83eef
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__endpoint.html
@@ -0,0 +1,122 @@
+<!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_endpoint 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_endpoint Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="endpoint_8h_source.html">endpoint.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:a3510963bb9fe2afd610189fa3a1f44c7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint.html#a3510963bb9fe2afd610189fa3a1f44c7">vtable</a></td></tr>
+<tr class="separator:a3510963bb9fe2afd610189fa3a1f44c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3510963bb9fe2afd610189fa3a1f44c7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__endpoint__vtable.html">grpc_endpoint_vtable</a>* grpc_endpoint::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="endpoint_8h_source.html">endpoint.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>
diff --git a/doc/ref/core.internal/html/structgrpc__endpoint__pair.html b/doc/ref/core.internal/html/structgrpc__endpoint__pair.html
new file mode 100644
index 0000000000..ee0acaeb99
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__endpoint__pair.html
@@ -0,0 +1,136 @@
+<!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_endpoint_pair 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_endpoint_pair Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="endpoint__pair_8h_source.html">endpoint_pair.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:ac7016dfd6d23e04fe169ba3f8fd9238c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__pair.html#ac7016dfd6d23e04fe169ba3f8fd9238c">client</a></td></tr>
+<tr class="separator:ac7016dfd6d23e04fe169ba3f8fd9238c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64db1589d0b3b754b33deb4ed2bdabc2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__pair.html#a64db1589d0b3b754b33deb4ed2bdabc2">server</a></td></tr>
+<tr class="separator:a64db1589d0b3b754b33deb4ed2bdabc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac7016dfd6d23e04fe169ba3f8fd9238c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_endpoint_pair::client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a64db1589d0b3b754b33deb4ed2bdabc2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_endpoint_pair::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="endpoint__pair_8h_source.html">endpoint_pair.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>
diff --git a/doc/ref/core.internal/html/structgrpc__endpoint__vtable.html b/doc/ref/core.internal/html/structgrpc__endpoint__vtable.html
new file mode 100644
index 0000000000..b5f2009896
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__endpoint__vtable.html
@@ -0,0 +1,206 @@
+<!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_endpoint_vtable 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_endpoint_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="endpoint_8h_source.html">endpoint.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:a86466f2980bcc966d2aebdd5659570d2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#a86466f2980bcc966d2aebdd5659570d2">notify_on_read</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a86466f2980bcc966d2aebdd5659570d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fca837fe96a08bfc514eb7579e23739"><td class="memItemLeft" align="right" valign="top"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#a5fca837fe96a08bfc514eb7579e23739">write</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:a5fca837fe96a08bfc514eb7579e23739"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2d638d92a090e190a73ba01f2b29556"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#ae2d638d92a090e190a73ba01f2b29556">add_to_pollset</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:ae2d638d92a090e190a73ba01f2b29556"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac276ecfd62bad184e1bed7eaa2674b3c"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#ac276ecfd62bad184e1bed7eaa2674b3c">add_to_pollset_set</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset)</td></tr>
+<tr class="separator:ac276ecfd62bad184e1bed7eaa2674b3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1c3b42c8a439d6e741a84627815982d6"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#a1c3b42c8a439d6e741a84627815982d6">shutdown</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a1c3b42c8a439d6e741a84627815982d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1c2694fdabae292bfef69c3adfd910c"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#af1c2694fdabae292bfef69c3adfd910c">destroy</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:af1c2694fdabae292bfef69c3adfd910c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01e48582c45e2e7033e344d253316911"><td class="memItemLeft" align="right" valign="top">char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__endpoint__vtable.html#a01e48582c45e2e7033e344d253316911">get_peer</a> )(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a01e48582c45e2e7033e344d253316911"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae2d638d92a090e190a73ba01f2b29556"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_endpoint_vtable::add_to_pollset)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac276ecfd62bad184e1bed7eaa2674b3c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_endpoint_vtable::add_to_pollset_set)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af1c2694fdabae292bfef69c3adfd910c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_endpoint_vtable::destroy)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a01e48582c45e2e7033e344d253316911"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char*(* grpc_endpoint_vtable::get_peer)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86466f2980bcc966d2aebdd5659570d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_endpoint_vtable::notify_on_read)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> cb, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1c3b42c8a439d6e741a84627815982d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_endpoint_vtable::shutdown)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fca837fe96a08bfc514eb7579e23739"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="endpoint_8h.html#abfb8e299371be52c109912cda9dbe902">grpc_endpoint_write_status</a>(* grpc_endpoint_vtable::write)(<a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep, <a class="el" href="structgpr__slice.html">gpr_slice</a> *slices, size_t nslices, <a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> cb, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="endpoint_8h_source.html">endpoint.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>
diff --git a/doc/ref/core.internal/html/structgrpc__event.html b/doc/ref/core.internal/html/structgrpc__event.html
new file mode 100644
index 0000000000..172729f244
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__event.html
@@ -0,0 +1,167 @@
+<!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_event 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_event Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The result of an operation.
+ <a href="structgrpc__event.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:a8e7f571b759f55db4f6bebc2a4f56ad7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__event.html#a8e7f571b759f55db4f6bebc2a4f56ad7">type</a></td></tr>
+<tr class="memdesc:a8e7f571b759f55db4f6bebc2a4f56ad7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The type of the completion. <a href="#a8e7f571b759f55db4f6bebc2a4f56ad7">More...</a><br/></td></tr>
+<tr class="separator:a8e7f571b759f55db4f6bebc2a4f56ad7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a99d4215e5df50869af320b1cca5540db"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__event.html#a99d4215e5df50869af320b1cca5540db">success</a></td></tr>
+<tr class="memdesc:a99d4215e5df50869af320b1cca5540db"><td class="mdescLeft">&#160;</td><td class="mdescRight">non-zero if the operation was successful, 0 upon failure. <a href="#a99d4215e5df50869af320b1cca5540db">More...</a><br/></td></tr>
+<tr class="separator:a99d4215e5df50869af320b1cca5540db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a883ab15e862db582116c72cdcdc4c201"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__event.html#a883ab15e862db582116c72cdcdc4c201">tag</a></td></tr>
+<tr class="memdesc:a883ab15e862db582116c72cdcdc4c201"><td class="mdescLeft">&#160;</td><td class="mdescRight">The tag passed to grpc_call_start_batch etc to start this operation. <a href="#a883ab15e862db582116c72cdcdc4c201">More...</a><br/></td></tr>
+<tr class="separator:a883ab15e862db582116c72cdcdc4c201"><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>The result of an operation. </p>
+<p>Returned by a completion queue when the operation started with tag. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a99d4215e5df50869af320b1cca5540db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_event::success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>non-zero if the operation was successful, 0 upon failure. </p>
+<p>Only GRPC_OP_COMPLETE can succeed or fail. </p>
+
+</div>
+</div>
+<a class="anchor" id="a883ab15e862db582116c72cdcdc4c201"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_event::tag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The tag passed to grpc_call_start_batch etc to start this operation. </p>
+<p>Only GRPC_OP_COMPLETE has a tag. </p>
+
+</div>
+</div>
+<a class="anchor" id="a8e7f571b759f55db4f6bebc2a4f56ad7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#ab6454071421a36ebc25952ed448d5b87">grpc_completion_type</a> grpc_event::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The type of the completion. </p>
+
+</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>
diff --git a/doc/ref/core.internal/html/structgrpc__fake__channel__security__connector.html b/doc/ref/core.internal/html/structgrpc__fake__channel__security__connector.html
new file mode 100644
index 0000000000..96800889bc
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__fake__channel__security__connector.html
@@ -0,0 +1,134 @@
+<!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_fake_channel_security_connector 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_fake_channel_security_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a3a30ba1484411dcedb12607e1a523431"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__channel__security__connector.html#a3a30ba1484411dcedb12607e1a523431">base</a></td></tr>
+<tr class="separator:a3a30ba1484411dcedb12607e1a523431"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6c4c25382f598179b3b50d4a90a0584"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__channel__security__connector.html#af6c4c25382f598179b3b50d4a90a0584">call_host_check_is_async</a></td></tr>
+<tr class="separator:af6c4c25382f598179b3b50d4a90a0584"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3a30ba1484411dcedb12607e1a523431"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> grpc_fake_channel_security_connector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af6c4c25382f598179b3b50d4a90a0584"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_fake_channel_security_connector::call_host_check_is_async</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8c.html">security_connector.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__fake__oauth2__credentials.html b/doc/ref/core.internal/html/structgrpc__fake__oauth2__credentials.html
new file mode 100644
index 0000000000..e2d2c3b7ac
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__fake__oauth2__credentials.html
@@ -0,0 +1,150 @@
+<!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_fake_oauth2_credentials 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_fake_oauth2_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a706b02614122deadad3f0fa9713c9901"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__oauth2__credentials.html#a706b02614122deadad3f0fa9713c9901">base</a></td></tr>
+<tr class="separator:a706b02614122deadad3f0fa9713c9901"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a497212470e93de0f855f946c4e38b693"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__oauth2__credentials.html#a497212470e93de0f855f946c4e38b693">access_token_md</a></td></tr>
+<tr class="separator:a497212470e93de0f855f946c4e38b693"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a929e924c4a75244f8e36e09ac1de6806"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fake__oauth2__credentials.html#a929e924c4a75244f8e36e09ac1de6806">is_async</a></td></tr>
+<tr class="separator:a929e924c4a75244f8e36e09ac1de6806"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a497212470e93de0f855f946c4e38b693"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_fake_oauth2_credentials::access_token_md</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a706b02614122deadad3f0fa9713c9901"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_fake_oauth2_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a929e924c4a75244f8e36e09ac1de6806"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_fake_oauth2_credentials::is_async</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__fd.html b/doc/ref/core.internal/html/structgrpc__fd.html
new file mode 100644
index 0000000000..dec964aed2
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__fd.html
@@ -0,0 +1,318 @@
+<!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_fd 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_fd Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="fd__posix_8h_source.html">fd_posix.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:a876ab7207d777a4f8b436a3b5c80fd32"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a876ab7207d777a4f8b436a3b5c80fd32">fd</a></td></tr>
+<tr class="separator:a876ab7207d777a4f8b436a3b5c80fd32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4769567bc6b9a0129269bc02dcce6f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#ac4769567bc6b9a0129269bc02dcce6f1">refst</a></td></tr>
+<tr class="separator:ac4769567bc6b9a0129269bc02dcce6f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a050fd8e53f18c024f04c60f27c274d30"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a050fd8e53f18c024f04c60f27c274d30">set_state_mu</a></td></tr>
+<tr class="separator:a050fd8e53f18c024f04c60f27c274d30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9735826c4a974623dad5e2ca9c2548a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#af9735826c4a974623dad5e2ca9c2548a">shutdown</a></td></tr>
+<tr class="separator:af9735826c4a974623dad5e2ca9c2548a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30b76a034146e5d62190b133b008af6e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a30b76a034146e5d62190b133b008af6e">closed</a></td></tr>
+<tr class="separator:a30b76a034146e5d62190b133b008af6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c93a423654bb4d3466593ef73b9f06b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a7c93a423654bb4d3466593ef73b9f06b">watcher_mu</a></td></tr>
+<tr class="separator:a7c93a423654bb4d3466593ef73b9f06b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a640195e98f3a3fcec45f2db5bff6dac8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a640195e98f3a3fcec45f2db5bff6dac8">inactive_watcher_root</a></td></tr>
+<tr class="separator:a640195e98f3a3fcec45f2db5bff6dac8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ade81ff0aec08731167a2a992ce6b27"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a6ade81ff0aec08731167a2a992ce6b27">read_watcher</a></td></tr>
+<tr class="separator:a6ade81ff0aec08731167a2a992ce6b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae2395965de88538f112be69c21307d01"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#ae2395965de88538f112be69c21307d01">write_watcher</a></td></tr>
+<tr class="separator:ae2395965de88538f112be69c21307d01"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a339e2dfc459ee7dbc066dc6f606a7cf0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a339e2dfc459ee7dbc066dc6f606a7cf0">readst</a></td></tr>
+<tr class="separator:a339e2dfc459ee7dbc066dc6f606a7cf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aedae81fadd133cc54ae92837ea7a2676"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#aedae81fadd133cc54ae92837ea7a2676">writest</a></td></tr>
+<tr class="separator:aedae81fadd133cc54ae92837ea7a2676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48d85d973fb9284e51cad0695e91379d"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a48d85d973fb9284e51cad0695e91379d">freelist_next</a></td></tr>
+<tr class="separator:a48d85d973fb9284e51cad0695e91379d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85cc2f9f7c86e447f62485f0c053e61f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#a85cc2f9f7c86e447f62485f0c053e61f">on_done_closure</a></td></tr>
+<tr class="separator:a85cc2f9f7c86e447f62485f0c053e61f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0158c3714462bacbfa90c57fcf476aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#ad0158c3714462bacbfa90c57fcf476aa">shutdown_closures</a> [2]</td></tr>
+<tr class="separator:ad0158c3714462bacbfa90c57fcf476aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf6e293dd6b804a9783ef4ccf06710cc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd.html#aaf6e293dd6b804a9783ef4ccf06710cc">iomgr_object</a></td></tr>
+<tr class="separator:aaf6e293dd6b804a9783ef4ccf06710cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a30b76a034146e5d62190b133b008af6e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_fd::closed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a876ab7207d777a4f8b436a3b5c80fd32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_fd::fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a48d85d973fb9284e51cad0695e91379d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__fd.html">grpc_fd</a>* grpc_fd::freelist_next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a640195e98f3a3fcec45f2db5bff6dac8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> grpc_fd::inactive_watcher_root</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaf6e293dd6b804a9783ef4ccf06710cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> grpc_fd::iomgr_object</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85cc2f9f7c86e447f62485f0c053e61f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_fd::on_done_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ade81ff0aec08731167a2a992ce6b27"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>* grpc_fd::read_watcher</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a339e2dfc459ee7dbc066dc6f606a7cf0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> grpc_fd::readst</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4769567bc6b9a0129269bc02dcce6f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> grpc_fd::refst</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a050fd8e53f18c024f04c60f27c274d30"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_fd::set_state_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af9735826c4a974623dad5e2ca9c2548a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> grpc_fd::shutdown</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad0158c3714462bacbfa90c57fcf476aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_fd::shutdown_closures[2]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7c93a423654bb4d3466593ef73b9f06b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_fd::watcher_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae2395965de88538f112be69c21307d01"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>* grpc_fd::write_watcher</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aedae81fadd133cc54ae92837ea7a2676"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> grpc_fd::writest</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="fd__posix_8h_source.html">fd_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__fd__watcher.html b/doc/ref/core.internal/html/structgrpc__fd__watcher.html
new file mode 100644
index 0000000000..10611baad0
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__fd__watcher.html
@@ -0,0 +1,164 @@
+<!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_fd_watcher 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_fd_watcher Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="fd__posix_8h_source.html">fd_posix.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:a0c4eac683d7d83c76e36cc3ffc4e91ae"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd__watcher.html#a0c4eac683d7d83c76e36cc3ffc4e91ae">next</a></td></tr>
+<tr class="separator:a0c4eac683d7d83c76e36cc3ffc4e91ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e78f9e51eb0fdb0972c87f5427bb465"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd__watcher.html#a1e78f9e51eb0fdb0972c87f5427bb465">prev</a></td></tr>
+<tr class="separator:a1e78f9e51eb0fdb0972c87f5427bb465"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92942dd676216e46d8852baa5ad572b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd__watcher.html#a92942dd676216e46d8852baa5ad572b6">pollset</a></td></tr>
+<tr class="separator:a92942dd676216e46d8852baa5ad572b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ce341a9fea46aa4ab62de1e232691bc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__fd__watcher.html#a9ce341a9fea46aa4ab62de1e232691bc">fd</a></td></tr>
+<tr class="separator:a9ce341a9fea46aa4ab62de1e232691bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9ce341a9fea46aa4ab62de1e232691bc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__fd.html">grpc_fd</a>* grpc_fd_watcher::fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c4eac683d7d83c76e36cc3ffc4e91ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>* grpc_fd_watcher::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a92942dd676216e46d8852baa5ad572b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* grpc_fd_watcher::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1e78f9e51eb0fdb0972c87f5427bb465"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__fd__watcher.html">grpc_fd_watcher</a>* grpc_fd_watcher::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="fd__posix_8h_source.html">fd_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__httpcli__context.html b/doc/ref/core.internal/html/structgrpc__httpcli__context.html
new file mode 100644
index 0000000000..e33a4a7db1
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__httpcli__context.html
@@ -0,0 +1,122 @@
+<!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_httpcli_context 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_httpcli_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="httpcli_8h_source.html">httpcli.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:aafa3ada73c3704d7e5d2971266e499f2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__context.html#aafa3ada73c3704d7e5d2971266e499f2">pollset_set</a></td></tr>
+<tr class="separator:aafa3ada73c3704d7e5d2971266e499f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aafa3ada73c3704d7e5d2971266e499f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> grpc_httpcli_context::pollset_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="httpcli_8h_source.html">httpcli.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>
diff --git a/doc/ref/core.internal/html/structgrpc__httpcli__header.html b/doc/ref/core.internal/html/structgrpc__httpcli__header.html
new file mode 100644
index 0000000000..e746596ae6
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__httpcli__header.html
@@ -0,0 +1,136 @@
+<!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_httpcli_header 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_httpcli_header Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="httpcli_8h_source.html">httpcli.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:aa5504b4e9fba5978e4026dbeadb6619e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__header.html#aa5504b4e9fba5978e4026dbeadb6619e">key</a></td></tr>
+<tr class="separator:aa5504b4e9fba5978e4026dbeadb6619e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1d05b8dfdd2f2f433efc955116cb2aa"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__header.html#af1d05b8dfdd2f2f433efc955116cb2aa">value</a></td></tr>
+<tr class="separator:af1d05b8dfdd2f2f433efc955116cb2aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aa5504b4e9fba5978e4026dbeadb6619e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_httpcli_header::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af1d05b8dfdd2f2f433efc955116cb2aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_httpcli_header::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="httpcli_8h_source.html">httpcli.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>
diff --git a/doc/ref/core.internal/html/structgrpc__httpcli__parser.html b/doc/ref/core.internal/html/structgrpc__httpcli__parser.html
new file mode 100644
index 0000000000..99be52f05a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__httpcli__parser.html
@@ -0,0 +1,192 @@
+<!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_httpcli_parser 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_httpcli_parser Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="parser_8h_source.html">parser.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:a0072db1169f6f1e993673a91593f1305"><td class="memItemLeft" align="right" valign="top"><a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html#a0072db1169f6f1e993673a91593f1305">state</a></td></tr>
+<tr class="separator:a0072db1169f6f1e993673a91593f1305"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab46efe042fad6d5c2b22f51e06bf9d2a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html#ab46efe042fad6d5c2b22f51e06bf9d2a">r</a></td></tr>
+<tr class="separator:ab46efe042fad6d5c2b22f51e06bf9d2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4229204d0c6b48f33f9016d48b05b628"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html#a4229204d0c6b48f33f9016d48b05b628">body_capacity</a></td></tr>
+<tr class="separator:a4229204d0c6b48f33f9016d48b05b628"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af12e7be4d11735dce047a30c1915cc77"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html#af12e7be4d11735dce047a30c1915cc77">hdr_capacity</a></td></tr>
+<tr class="separator:af12e7be4d11735dce047a30c1915cc77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8524fc39d4fa476bf3133e922edf092c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html#a8524fc39d4fa476bf3133e922edf092c">cur_line</a> [<a class="el" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">GRPC_HTTPCLI_MAX_HEADER_LENGTH</a>]</td></tr>
+<tr class="separator:a8524fc39d4fa476bf3133e922edf092c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ada31fac5b5a87c7405f70f63fc201e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__parser.html#a6ada31fac5b5a87c7405f70f63fc201e">cur_line_length</a></td></tr>
+<tr class="separator:a6ada31fac5b5a87c7405f70f63fc201e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a4229204d0c6b48f33f9016d48b05b628"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_httpcli_parser::body_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8524fc39d4fa476bf3133e922edf092c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_httpcli_parser::cur_line[<a class="el" href="httpcli_8h.html#a20ed031787f50e2fbbf09a5f1ab4ccec">GRPC_HTTPCLI_MAX_HEADER_LENGTH</a>]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ada31fac5b5a87c7405f70f63fc201e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_httpcli_parser::cur_line_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af12e7be4d11735dce047a30c1915cc77"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_httpcli_parser::hdr_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab46efe042fad6d5c2b22f51e06bf9d2a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__response.html">grpc_httpcli_response</a> grpc_httpcli_parser::r</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0072db1169f6f1e993673a91593f1305"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="parser_8h.html#a664db6149875c333b0a568ef8711e257">grpc_httpcli_parser_state</a> grpc_httpcli_parser::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="parser_8h_source.html">parser.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>
diff --git a/doc/ref/core.internal/html/structgrpc__httpcli__request.html b/doc/ref/core.internal/html/structgrpc__httpcli__request.html
new file mode 100644
index 0000000000..db1b085dc3
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__httpcli__request.html
@@ -0,0 +1,178 @@
+<!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_httpcli_request 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_httpcli_request Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="httpcli_8h_source.html">httpcli.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:a907d00d1b3d1b8b0b8dddc0e7adbd48d"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__request.html#a907d00d1b3d1b8b0b8dddc0e7adbd48d">host</a></td></tr>
+<tr class="separator:a907d00d1b3d1b8b0b8dddc0e7adbd48d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e51c4eefce49db4c5406e884ce8a4aa"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__request.html#a5e51c4eefce49db4c5406e884ce8a4aa">path</a></td></tr>
+<tr class="separator:a5e51c4eefce49db4c5406e884ce8a4aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f21a167ba2c1a4afcb00023a707cde0"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__request.html#a3f21a167ba2c1a4afcb00023a707cde0">hdr_count</a></td></tr>
+<tr class="separator:a3f21a167ba2c1a4afcb00023a707cde0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00525596b5530699a64fa1baa90576c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__request.html#a00525596b5530699a64fa1baa90576c6">hdrs</a></td></tr>
+<tr class="separator:a00525596b5530699a64fa1baa90576c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2502ce6e5c0362a8a0c0d02f571ceb3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__request.html#ab2502ce6e5c0362a8a0c0d02f571ceb3">use_ssl</a></td></tr>
+<tr class="separator:ab2502ce6e5c0362a8a0c0d02f571ceb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3f21a167ba2c1a4afcb00023a707cde0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_httpcli_request::hdr_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a00525596b5530699a64fa1baa90576c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a>* grpc_httpcli_request::hdrs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a907d00d1b3d1b8b0b8dddc0e7adbd48d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_httpcli_request::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e51c4eefce49db4c5406e884ce8a4aa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_httpcli_request::path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2502ce6e5c0362a8a0c0d02f571ceb3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_httpcli_request::use_ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="httpcli_8h_source.html">httpcli.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>
diff --git a/doc/ref/core.internal/html/structgrpc__httpcli__response.html b/doc/ref/core.internal/html/structgrpc__httpcli__response.html
new file mode 100644
index 0000000000..b4aa920cf3
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__httpcli__response.html
@@ -0,0 +1,178 @@
+<!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_httpcli_response 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_httpcli_response Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="httpcli_8h_source.html">httpcli.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:ad43f89eff8a4ab84b0364eca501ad243"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__response.html#ad43f89eff8a4ab84b0364eca501ad243">status</a></td></tr>
+<tr class="separator:ad43f89eff8a4ab84b0364eca501ad243"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a190ad146f03dcf9c8db0031f3e592e"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__response.html#a5a190ad146f03dcf9c8db0031f3e592e">hdr_count</a></td></tr>
+<tr class="separator:a5a190ad146f03dcf9c8db0031f3e592e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8525db277ee594e9e806884aa3e4430d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__response.html#a8525db277ee594e9e806884aa3e4430d">hdrs</a></td></tr>
+<tr class="separator:a8525db277ee594e9e806884aa3e4430d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a26967529714ef3cba3a5ce5f6a34d9cb"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__response.html#a26967529714ef3cba3a5ce5f6a34d9cb">body_length</a></td></tr>
+<tr class="separator:a26967529714ef3cba3a5ce5f6a34d9cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f37c239a412de970f3489c71ad08b90"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__response.html#a8f37c239a412de970f3489c71ad08b90">body</a></td></tr>
+<tr class="separator:a8f37c239a412de970f3489c71ad08b90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8f37c239a412de970f3489c71ad08b90"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_httpcli_response::body</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a26967529714ef3cba3a5ce5f6a34d9cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_httpcli_response::body_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a190ad146f03dcf9c8db0031f3e592e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_httpcli_response::hdr_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8525db277ee594e9e806884aa3e4430d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__header.html">grpc_httpcli_header</a>* grpc_httpcli_response::hdrs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad43f89eff8a4ab84b0364eca501ad243"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_httpcli_response::status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="httpcli_8h_source.html">httpcli.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>
diff --git a/doc/ref/core.internal/html/structgrpc__httpcli__ssl__channel__security__connector.html b/doc/ref/core.internal/html/structgrpc__httpcli__ssl__channel__security__connector.html
new file mode 100644
index 0000000000..f23eab3c5c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__httpcli__ssl__channel__security__connector.html
@@ -0,0 +1,148 @@
+<!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_httpcli_ssl_channel_security_connector 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_httpcli_ssl_channel_security_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a4da06be1278854b4447140407d81db25"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a4da06be1278854b4447140407d81db25">base</a></td></tr>
+<tr class="separator:a4da06be1278854b4447140407d81db25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ec68b3563b321823c2386381727b9c6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a4ec68b3563b321823c2386381727b9c6">handshaker_factory</a></td></tr>
+<tr class="separator:a4ec68b3563b321823c2386381727b9c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12192010723cff00bb4e87c9704ad768"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__httpcli__ssl__channel__security__connector.html#a12192010723cff00bb4e87c9704ad768">secure_peer_name</a></td></tr>
+<tr class="separator:a12192010723cff00bb4e87c9704ad768"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a4da06be1278854b4447140407d81db25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> grpc_httpcli_ssl_channel_security_connector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4ec68b3563b321823c2386381727b9c6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>* grpc_httpcli_ssl_channel_security_connector::handshaker_factory</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12192010723cff00bb4e87c9704ad768"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_httpcli_ssl_channel_security_connector::secure_peer_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="httpcli__security__connector_8c.html">httpcli_security_connector.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__iam__credentials.html b/doc/ref/core.internal/html/structgrpc__iam__credentials.html
new file mode 100644
index 0000000000..0f93f6f3b3
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__iam__credentials.html
@@ -0,0 +1,136 @@
+<!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_iam_credentials 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_iam_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a0470518ebd35b41e23f35fb85080750d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iam__credentials.html#a0470518ebd35b41e23f35fb85080750d">base</a></td></tr>
+<tr class="separator:a0470518ebd35b41e23f35fb85080750d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4925aa708ad3e63dd99e3881d2f735b8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iam__credentials.html#a4925aa708ad3e63dd99e3881d2f735b8">iam_md</a></td></tr>
+<tr class="separator:a4925aa708ad3e63dd99e3881d2f735b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a0470518ebd35b41e23f35fb85080750d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_iam_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4925aa708ad3e63dd99e3881d2f735b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_iam_credentials::iam_md</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__iomgr__closure.html b/doc/ref/core.internal/html/structgrpc__iomgr__closure.html
new file mode 100644
index 0000000000..bf1bc2e1aa
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__iomgr__closure.html
@@ -0,0 +1,179 @@
+<!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_iomgr_closure 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_iomgr_closure Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A closure over a grpc_iomgr_cb_func.
+ <a href="structgrpc__iomgr__closure.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="iomgr_8h_source.html">iomgr.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:ad5f1e2b27a85c6df37c7cbe94b911ce1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__closure.html#ad5f1e2b27a85c6df37c7cbe94b911ce1">cb</a></td></tr>
+<tr class="memdesc:ad5f1e2b27a85c6df37c7cbe94b911ce1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bound callback. <a href="#ad5f1e2b27a85c6df37c7cbe94b911ce1">More...</a><br/></td></tr>
+<tr class="separator:ad5f1e2b27a85c6df37c7cbe94b911ce1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b1d9ecdcc694af930895665b18f2293"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__closure.html#a4b1d9ecdcc694af930895665b18f2293">cb_arg</a></td></tr>
+<tr class="memdesc:a4b1d9ecdcc694af930895665b18f2293"><td class="mdescLeft">&#160;</td><td class="mdescRight">Arguments to be passed to "cb". <a href="#a4b1d9ecdcc694af930895665b18f2293">More...</a><br/></td></tr>
+<tr class="separator:a4b1d9ecdcc694af930895665b18f2293"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5029b88d47dd4da2b01a8eb44342fcb0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__closure.html#a5029b88d47dd4da2b01a8eb44342fcb0">success</a></td></tr>
+<tr class="memdesc:a5029b88d47dd4da2b01a8eb44342fcb0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal. <a href="#a5029b88d47dd4da2b01a8eb44342fcb0">More...</a><br/></td></tr>
+<tr class="separator:a5029b88d47dd4da2b01a8eb44342fcb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c10e6b944c74f416a5ce5c1478f33ef"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__closure.html#a6c10e6b944c74f416a5ce5c1478f33ef">next</a></td></tr>
+<tr class="separator:a6c10e6b944c74f416a5ce5c1478f33ef"><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>A closure over a grpc_iomgr_cb_func. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad5f1e2b27a85c6df37c7cbe94b911ce1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="iomgr_8h.html#ad4037ad983dff2d616a6fb90158baad3">grpc_iomgr_cb_func</a> grpc_iomgr_closure::cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Bound callback. </p>
+
+</div>
+</div>
+<a class="anchor" id="a4b1d9ecdcc694af930895665b18f2293"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_iomgr_closure::cb_arg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Arguments to be passed to "cb". </p>
+
+</div>
+</div>
+<a class="anchor" id="a6c10e6b944c74f416a5ce5c1478f33ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_iomgr_closure::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5029b88d47dd4da2b01a8eb44342fcb0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_iomgr_closure::success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Internal. </p>
+<p>A boolean indication to "cb" on the state of the iomgr. For instance, closures created during a shutdown would have this field set to false. Internal. Do not touch </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="iomgr_8h_source.html">iomgr.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>
diff --git a/doc/ref/core.internal/html/structgrpc__iomgr__object.html b/doc/ref/core.internal/html/structgrpc__iomgr__object.html
new file mode 100644
index 0000000000..37895b9d77
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__iomgr__object.html
@@ -0,0 +1,150 @@
+<!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_iomgr_object 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_iomgr_object Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="iomgr__internal_8h_source.html">iomgr_internal.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:a13e16e45166eec077cacc883824d3cbf"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__object.html#a13e16e45166eec077cacc883824d3cbf">name</a></td></tr>
+<tr class="separator:a13e16e45166eec077cacc883824d3cbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab784d00749f3e4deff50218c67993e0c"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__object.html#ab784d00749f3e4deff50218c67993e0c">next</a></td></tr>
+<tr class="separator:ab784d00749f3e4deff50218c67993e0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8de5f1d3fc1a38beeed3468afd0ae85d"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__iomgr__object.html#a8de5f1d3fc1a38beeed3468afd0ae85d">prev</a></td></tr>
+<tr class="separator:a8de5f1d3fc1a38beeed3468afd0ae85d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a13e16e45166eec077cacc883824d3cbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_iomgr_object::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab784d00749f3e4deff50218c67993e0c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>* grpc_iomgr_object::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8de5f1d3fc1a38beeed3468afd0ae85d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>* grpc_iomgr_object::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="iomgr__internal_8h_source.html">iomgr_internal.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ioreq.html b/doc/ref/core.internal/html/structgrpc__ioreq.html
new file mode 100644
index 0000000000..ea0d8b4e0b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ioreq.html
@@ -0,0 +1,153 @@
+<!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_ioreq 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_ioreq Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.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:a448abf6e8036e7d9ba0c554936e6f4d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ioreq.html#a448abf6e8036e7d9ba0c554936e6f4d0">op</a></td></tr>
+<tr class="separator:a448abf6e8036e7d9ba0c554936e6f4d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97a3d5c809f88a76f20727e2afa539d1"><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__ioreq.html#a97a3d5c809f88a76f20727e2afa539d1">flags</a></td></tr>
+<tr class="memdesc:a97a3d5c809f88a76f20727e2afa539d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">A copy of the write flags from <a class="el" href="structgrpc__op.html" title="Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) ...">grpc_op</a>. <a href="#a97a3d5c809f88a76f20727e2afa539d1">More...</a><br/></td></tr>
+<tr class="separator:a97a3d5c809f88a76f20727e2afa539d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d53ade2406d59d0d67729ecab438d61"><td class="memItemLeft" align="right" valign="top"><a class="el" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ioreq.html#a1d53ade2406d59d0d67729ecab438d61">data</a></td></tr>
+<tr class="separator:a1d53ade2406d59d0d67729ecab438d61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1d53ade2406d59d0d67729ecab438d61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="uniongrpc__ioreq__data.html">grpc_ioreq_data</a> grpc_ioreq::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a97a3d5c809f88a76f20727e2afa539d1"></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_ioreq::flags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A copy of the write flags from <a class="el" href="structgrpc__op.html" title="Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) ...">grpc_op</a>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a448abf6e8036e7d9ba0c554936e6f4d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="call_8h.html#a6197b03dc8f1e7b26c62190faf505077">grpc_ioreq_op</a> grpc_ioreq::op</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8h_source.html">call.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>
diff --git a/doc/ref/core.internal/html/structgrpc__json.html b/doc/ref/core.internal/html/structgrpc__json.html
new file mode 100644
index 0000000000..c450814628
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__json.html
@@ -0,0 +1,206 @@
+<!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_json 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_json Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json_8h_source.html">json.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:adeb16bd124a30378d80005a3c89d73e2"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#adeb16bd124a30378d80005a3c89d73e2">next</a></td></tr>
+<tr class="separator:adeb16bd124a30378d80005a3c89d73e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91f0018795a9937b32e3f1517e3646ee"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#a91f0018795a9937b32e3f1517e3646ee">prev</a></td></tr>
+<tr class="separator:a91f0018795a9937b32e3f1517e3646ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa4adfbfe373e8980e898102c942cb71"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#aaa4adfbfe373e8980e898102c942cb71">child</a></td></tr>
+<tr class="separator:aaa4adfbfe373e8980e898102c942cb71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aad4e1114d877f30ca18de4748995d7ba"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#aad4e1114d877f30ca18de4748995d7ba">parent</a></td></tr>
+<tr class="separator:aad4e1114d877f30ca18de4748995d7ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02364ac7e3f997c1cbab6ae4fca4415e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#a02364ac7e3f997c1cbab6ae4fca4415e">type</a></td></tr>
+<tr class="separator:a02364ac7e3f997c1cbab6ae4fca4415e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37118fc8b75a363d1870b4555148b7b6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#a37118fc8b75a363d1870b4555148b7b6">key</a></td></tr>
+<tr class="separator:a37118fc8b75a363d1870b4555148b7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acfb3c395c22f57d7a07e7149bb16db44"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json.html#acfb3c395c22f57d7a07e7149bb16db44">value</a></td></tr>
+<tr class="separator:acfb3c395c22f57d7a07e7149bb16db44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aaa4adfbfe373e8980e898102c942cb71"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json::child</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a37118fc8b75a363d1870b4555148b7b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_json::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adeb16bd124a30378d80005a3c89d73e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aad4e1114d877f30ca18de4748995d7ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json::parent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a91f0018795a9937b32e3f1517e3646ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_json::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02364ac7e3f997c1cbab6ae4fca4415e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> grpc_json::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acfb3c395c22f57d7a07e7149bb16db44"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_json::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json_8h_source.html">json.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>
diff --git a/doc/ref/core.internal/html/structgrpc__json__reader.html b/doc/ref/core.internal/html/structgrpc__json__reader.html
new file mode 100644
index 0000000000..f2c478cf9b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__json__reader.html
@@ -0,0 +1,248 @@
+<!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_json_reader 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_json_reader Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json__reader_8h_source.html">json_reader.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:a914f3609f07d322bb7ce000dc95324fc"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a914f3609f07d322bb7ce000dc95324fc">userdata</a></td></tr>
+<tr class="separator:a914f3609f07d322bb7ce000dc95324fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac498ef0a1c3dc96126cd86f47f70afa5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#ac498ef0a1c3dc96126cd86f47f70afa5">vtable</a></td></tr>
+<tr class="separator:ac498ef0a1c3dc96126cd86f47f70afa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7b4f56a6f58059642e1eaaff14350c4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#ae7b4f56a6f58059642e1eaaff14350c4">depth</a></td></tr>
+<tr class="separator:ae7b4f56a6f58059642e1eaaff14350c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab52b1665e66ad5e4d8aceaed833831e6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#ab52b1665e66ad5e4d8aceaed833831e6">in_object</a></td></tr>
+<tr class="separator:ab52b1665e66ad5e4d8aceaed833831e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0c2f2a43dcad121aa5ae4d579178c438"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a0c2f2a43dcad121aa5ae4d579178c438">in_array</a></td></tr>
+<tr class="separator:a0c2f2a43dcad121aa5ae4d579178c438"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a485d8fd2e05cae9a2152bdbd34162107"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a485d8fd2e05cae9a2152bdbd34162107">escaped_string_was_key</a></td></tr>
+<tr class="separator:a485d8fd2e05cae9a2152bdbd34162107"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c51726663241af3323dc11320d82ad3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a8c51726663241af3323dc11320d82ad3">container_just_begun</a></td></tr>
+<tr class="separator:a8c51726663241af3323dc11320d82ad3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8643069f58019ea5ac61fd2fd1180562"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a8643069f58019ea5ac61fd2fd1180562">unicode_char</a></td></tr>
+<tr class="separator:a8643069f58019ea5ac61fd2fd1180562"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e874c0879d449071610b7643fc7ffe1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a8e874c0879d449071610b7643fc7ffe1">unicode_high_surrogate</a></td></tr>
+<tr class="separator:a8e874c0879d449071610b7643fc7ffe1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a572a9af46e885528855a86fca4535245"><td class="memItemLeft" align="right" valign="top"><a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader.html#a572a9af46e885528855a86fca4535245">state</a></td></tr>
+<tr class="separator:a572a9af46e885528855a86fca4535245"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8c51726663241af3323dc11320d82ad3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader::container_just_begun</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7b4f56a6f58059642e1eaaff14350c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader::depth</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a485d8fd2e05cae9a2152bdbd34162107"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader::escaped_string_was_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0c2f2a43dcad121aa5ae4d579178c438"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader::in_array</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab52b1665e66ad5e4d8aceaed833831e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_reader::in_object</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a572a9af46e885528855a86fca4535245"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="json__reader_8h.html#ab49e2221d9261d6dbeba7714f49998c3">grpc_json_reader_state</a> grpc_json_reader::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8643069f58019ea5ac61fd2fd1180562"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_json_reader::unicode_char</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8e874c0879d449071610b7643fc7ffe1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> grpc_json_reader::unicode_high_surrogate</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a914f3609f07d322bb7ce000dc95324fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_json_reader::userdata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac498ef0a1c3dc96126cd86f47f70afa5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json__reader__vtable.html">grpc_json_reader_vtable</a>* grpc_json_reader::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json__reader_8h_source.html">json_reader.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>
diff --git a/doc/ref/core.internal/html/structgrpc__json__reader__vtable.html b/doc/ref/core.internal/html/structgrpc__json__reader__vtable.html
new file mode 100644
index 0000000000..3a07412a2a
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__json__reader__vtable.html
@@ -0,0 +1,276 @@
+<!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_json_reader_vtable 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_json_reader_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json__reader_8h_source.html">json_reader.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:a1a897f511ba9249e5ecc7317d9406303"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a1a897f511ba9249e5ecc7317d9406303">string_clear</a> )(void *userdata)</td></tr>
+<tr class="separator:a1a897f511ba9249e5ecc7317d9406303"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5779d4adf33c3b3364d82390e4c1ad19"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a5779d4adf33c3b3364d82390e4c1ad19">string_add_char</a> )(void *userdata, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> c)</td></tr>
+<tr class="separator:a5779d4adf33c3b3364d82390e4c1ad19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d52c7e18e2b74e0cdfe8f0640f79612"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a4d52c7e18e2b74e0cdfe8f0640f79612">string_add_utf32</a> )(void *userdata, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> c)</td></tr>
+<tr class="separator:a4d52c7e18e2b74e0cdfe8f0640f79612"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5c62db09b25908b401cf00eb84861ca"><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__json__reader__vtable.html#ab5c62db09b25908b401cf00eb84861ca">read_char</a> )(void *userdata)</td></tr>
+<tr class="separator:ab5c62db09b25908b401cf00eb84861ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a242f9eb6d061c65a99961437aff699d4"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a242f9eb6d061c65a99961437aff699d4">container_begins</a> )(void *userdata, <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td></tr>
+<tr class="separator:a242f9eb6d061c65a99961437aff699d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31c9c8c5f283107290d4a20bf25315ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a31c9c8c5f283107290d4a20bf25315ec">container_ends</a> )(void *userdata)</td></tr>
+<tr class="separator:a31c9c8c5f283107290d4a20bf25315ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a697d38cfb36a9cb41ace4170296f9cd7"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a697d38cfb36a9cb41ace4170296f9cd7">set_key</a> )(void *userdata)</td></tr>
+<tr class="separator:a697d38cfb36a9cb41ace4170296f9cd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39f2535f918f767506b9665e36f97fb4"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a39f2535f918f767506b9665e36f97fb4">set_string</a> )(void *userdata)</td></tr>
+<tr class="separator:a39f2535f918f767506b9665e36f97fb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab55442ecf7aed98d3b638f171faff596"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#ab55442ecf7aed98d3b638f171faff596">set_number</a> )(void *userdata)</td></tr>
+<tr class="separator:ab55442ecf7aed98d3b638f171faff596"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f5529f47edb119c9ee8a36800cf436e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a4f5529f47edb119c9ee8a36800cf436e">set_true</a> )(void *userdata)</td></tr>
+<tr class="separator:a4f5529f47edb119c9ee8a36800cf436e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49fbb01d6b590b1c2e1fa52e6eb31ce6"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#a49fbb01d6b590b1c2e1fa52e6eb31ce6">set_false</a> )(void *userdata)</td></tr>
+<tr class="separator:a49fbb01d6b590b1c2e1fa52e6eb31ce6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab66de246c1efaad68da9683f017966ff"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__reader__vtable.html#ab66de246c1efaad68da9683f017966ff">set_null</a> )(void *userdata)</td></tr>
+<tr class="separator:ab66de246c1efaad68da9683f017966ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a242f9eb6d061c65a99961437aff699d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::container_begins)(void *userdata, <a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a> type)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31c9c8c5f283107290d4a20bf25315ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="json__common_8h.html#a3e82983bba0988c52251467566a07ce2">grpc_json_type</a>(* grpc_json_reader_vtable::container_ends)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5c62db09b25908b401cf00eb84861ca"></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_json_reader_vtable::read_char)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a49fbb01d6b590b1c2e1fa52e6eb31ce6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::set_false)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a697d38cfb36a9cb41ace4170296f9cd7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::set_key)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab66de246c1efaad68da9683f017966ff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::set_null)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab55442ecf7aed98d3b638f171faff596"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* grpc_json_reader_vtable::set_number)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a39f2535f918f767506b9665e36f97fb4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::set_string)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f5529f47edb119c9ee8a36800cf436e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::set_true)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5779d4adf33c3b3364d82390e4c1ad19"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::string_add_char)(void *userdata, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d52c7e18e2b74e0cdfe8f0640f79612"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::string_add_utf32)(void *userdata, <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a897f511ba9249e5ecc7317d9406303"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_reader_vtable::string_clear)(void *userdata)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json__reader_8h_source.html">json_reader.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>
diff --git a/doc/ref/core.internal/html/structgrpc__json__writer.html b/doc/ref/core.internal/html/structgrpc__json__writer.html
new file mode 100644
index 0000000000..16130635f8
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__json__writer.html
@@ -0,0 +1,192 @@
+<!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_json_writer 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_json_writer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json__writer_8h_source.html">json_writer.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:a660101bdaf5e230700894b1f57134d31"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html#a660101bdaf5e230700894b1f57134d31">userdata</a></td></tr>
+<tr class="separator:a660101bdaf5e230700894b1f57134d31"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1b0dd7119dfd5ef95ca6972d0918e5b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html#ad1b0dd7119dfd5ef95ca6972d0918e5b">vtable</a></td></tr>
+<tr class="separator:ad1b0dd7119dfd5ef95ca6972d0918e5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79d6783ae5cd77f186571b46f63cc5de"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html#a79d6783ae5cd77f186571b46f63cc5de">indent</a></td></tr>
+<tr class="separator:a79d6783ae5cd77f186571b46f63cc5de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85b6d4d170b0bd0df6d1084cc0d3f995"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html#a85b6d4d170b0bd0df6d1084cc0d3f995">depth</a></td></tr>
+<tr class="separator:a85b6d4d170b0bd0df6d1084cc0d3f995"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95c5e11a20879e8bd90962b043ca8381"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html#a95c5e11a20879e8bd90962b043ca8381">container_empty</a></td></tr>
+<tr class="separator:a95c5e11a20879e8bd90962b043ca8381"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5569d8c07eeee222a342551b92e0d9ed"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer.html#a5569d8c07eeee222a342551b92e0d9ed">got_key</a></td></tr>
+<tr class="separator:a5569d8c07eeee222a342551b92e0d9ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a95c5e11a20879e8bd90962b043ca8381"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_writer::container_empty</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85b6d4d170b0bd0df6d1084cc0d3f995"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_writer::depth</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5569d8c07eeee222a342551b92e0d9ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_writer::got_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a79d6783ae5cd77f186571b46f63cc5de"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_json_writer::indent</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a660101bdaf5e230700894b1f57134d31"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_json_writer::userdata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1b0dd7119dfd5ef95ca6972d0918e5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json__writer__vtable.html">grpc_json_writer_vtable</a>* grpc_json_writer::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json__writer_8h_source.html">json_writer.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>
diff --git a/doc/ref/core.internal/html/structgrpc__json__writer__vtable.html b/doc/ref/core.internal/html/structgrpc__json__writer__vtable.html
new file mode 100644
index 0000000000..42e9b13f55
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__json__writer__vtable.html
@@ -0,0 +1,150 @@
+<!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_json_writer_vtable 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_json_writer_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="json__writer_8h_source.html">json_writer.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:a92334573a7aa813d3177129cecf747e2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer__vtable.html#a92334573a7aa813d3177129cecf747e2">output_char</a> )(void *userdata, char)</td></tr>
+<tr class="separator:a92334573a7aa813d3177129cecf747e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a07ee0211c783c92e767a42c4629d184e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer__vtable.html#a07ee0211c783c92e767a42c4629d184e">output_string</a> )(void *userdata, const char *str)</td></tr>
+<tr class="separator:a07ee0211c783c92e767a42c4629d184e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee2ab161f23b771d3723693cc0c7cafd"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__json__writer__vtable.html#aee2ab161f23b771d3723693cc0c7cafd">output_string_with_len</a> )(void *userdata, const char *str, size_t len)</td></tr>
+<tr class="separator:aee2ab161f23b771d3723693cc0c7cafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a92334573a7aa813d3177129cecf747e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_writer_vtable::output_char)(void *userdata, char)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a07ee0211c783c92e767a42c4629d184e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_writer_vtable::output_string)(void *userdata, const char *str)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee2ab161f23b771d3723693cc0c7cafd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_json_writer_vtable::output_string_with_len)(void *userdata, const char *str, size_t len)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json__writer_8h_source.html">json_writer.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>
diff --git a/doc/ref/core.internal/html/structgrpc__jwt__claims.html b/doc/ref/core.internal/html/structgrpc__jwt__claims.html
new file mode 100644
index 0000000000..e67d2a50ef
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__jwt__claims.html
@@ -0,0 +1,232 @@
+<!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_jwt_claims 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_jwt_claims Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a298ff2d584fdee85bd9de0b52c72a1bd"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#a298ff2d584fdee85bd9de0b52c72a1bd">sub</a></td></tr>
+<tr class="separator:a298ff2d584fdee85bd9de0b52c72a1bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69f31f01a0d1cac4f79f0a46ed4e6593"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#a69f31f01a0d1cac4f79f0a46ed4e6593">iss</a></td></tr>
+<tr class="separator:a69f31f01a0d1cac4f79f0a46ed4e6593"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3aeb778bc0983824534ffa0c1e51f9c"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#ab3aeb778bc0983824534ffa0c1e51f9c">aud</a></td></tr>
+<tr class="separator:ab3aeb778bc0983824534ffa0c1e51f9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf5af69634298aaeeae5a0a2e6ef60f9"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#abf5af69634298aaeeae5a0a2e6ef60f9">jti</a></td></tr>
+<tr class="separator:abf5af69634298aaeeae5a0a2e6ef60f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f50dadfd0a2d3493065b5b4faf84fef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#a4f50dadfd0a2d3493065b5b4faf84fef">iat</a></td></tr>
+<tr class="separator:a4f50dadfd0a2d3493065b5b4faf84fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb8933c8e007a5864aea01e258637594"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#adb8933c8e007a5864aea01e258637594">exp</a></td></tr>
+<tr class="separator:adb8933c8e007a5864aea01e258637594"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a294f9a7e9e2cc0820c469b7b340c980a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#a294f9a7e9e2cc0820c469b7b340c980a">nbf</a></td></tr>
+<tr class="separator:a294f9a7e9e2cc0820c469b7b340c980a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add6f381accf815cd0b7385fded17fae5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#add6f381accf815cd0b7385fded17fae5">json</a></td></tr>
+<tr class="separator:add6f381accf815cd0b7385fded17fae5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62be74275bf0b7d887d70229bb9e497b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__claims.html#a62be74275bf0b7d887d70229bb9e497b">buffer</a></td></tr>
+<tr class="separator:a62be74275bf0b7d887d70229bb9e497b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab3aeb778bc0983824534ffa0c1e51f9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims::aud</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a62be74275bf0b7d887d70229bb9e497b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_jwt_claims::buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adb8933c8e007a5864aea01e258637594"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims::exp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f50dadfd0a2d3493065b5b4faf84fef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims::iat</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a69f31f01a0d1cac4f79f0a46ed4e6593"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims::iss</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add6f381accf815cd0b7385fded17fae5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* grpc_jwt_claims::json</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf5af69634298aaeeae5a0a2e6ef60f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims::jti</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a294f9a7e9e2cc0820c469b7b340c980a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_jwt_claims::nbf</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a298ff2d584fdee85bd9de0b52c72a1bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_claims::sub</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="jwt__verifier_8c.html">jwt_verifier.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__jwt__verifier.html b/doc/ref/core.internal/html/structgrpc__jwt__verifier.html
new file mode 100644
index 0000000000..5f55916371
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__jwt__verifier.html
@@ -0,0 +1,162 @@
+<!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_jwt_verifier 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_jwt_verifier Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1d15c7406be10b7fc86775320b2afac4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structemail__key__mapping.html">email_key_mapping</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier.html#a1d15c7406be10b7fc86775320b2afac4">mappings</a></td></tr>
+<tr class="separator:a1d15c7406be10b7fc86775320b2afac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c116d4a596479e9acb28be8c5adc3b5"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier.html#a5c116d4a596479e9acb28be8c5adc3b5">num_mappings</a></td></tr>
+<tr class="separator:a5c116d4a596479e9acb28be8c5adc3b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcf1fd004d97c7345bffbbfbb5983e3c"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier.html#adcf1fd004d97c7345bffbbfbb5983e3c">allocated_mappings</a></td></tr>
+<tr class="separator:adcf1fd004d97c7345bffbbfbb5983e3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0dbb6661ebad9689425e9a3e24c67a3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier.html#a0dbb6661ebad9689425e9a3e24c67a3d">http_ctx</a></td></tr>
+<tr class="separator:a0dbb6661ebad9689425e9a3e24c67a3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="adcf1fd004d97c7345bffbbfbb5983e3c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_jwt_verifier::allocated_mappings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0dbb6661ebad9689425e9a3e24c67a3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> grpc_jwt_verifier::http_ctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d15c7406be10b7fc86775320b2afac4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structemail__key__mapping.html">email_key_mapping</a>* grpc_jwt_verifier::mappings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c116d4a596479e9acb28be8c5adc3b5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_jwt_verifier::num_mappings</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="jwt__verifier_8c.html">jwt_verifier.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__jwt__verifier__email__domain__key__url__mapping.html b/doc/ref/core.internal/html/structgrpc__jwt__verifier__email__domain__key__url__mapping.html
new file mode 100644
index 0000000000..9111359f8b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__jwt__verifier__email__domain__key__url__mapping.html
@@ -0,0 +1,136 @@
+<!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_jwt_verifier_email_domain_key_url_mapping 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_jwt_verifier_email_domain_key_url_mapping Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="jwt__verifier_8h_source.html">jwt_verifier.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:a88231d204f177fb83c65c64c640ac7df"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a88231d204f177fb83c65c64c640ac7df">email_domain</a></td></tr>
+<tr class="separator:a88231d204f177fb83c65c64c640ac7df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6dea6ddab6cdfcf865c08047a0d4b3ec"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__jwt__verifier__email__domain__key__url__mapping.html#a6dea6ddab6cdfcf865c08047a0d4b3ec">key_url_prefix</a></td></tr>
+<tr class="separator:a6dea6ddab6cdfcf865c08047a0d4b3ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a88231d204f177fb83c65c64c640ac7df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_verifier_email_domain_key_url_mapping::email_domain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6dea6ddab6cdfcf865c08047a0d4b3ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_jwt_verifier_email_domain_key_url_mapping::key_url_prefix</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="jwt__verifier_8h_source.html">jwt_verifier.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>
diff --git a/doc/ref/core.internal/html/structgrpc__kick__fd__info.html b/doc/ref/core.internal/html/structgrpc__kick__fd__info.html
new file mode 100644
index 0000000000..a7048a9875
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__kick__fd__info.html
@@ -0,0 +1,150 @@
+<!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_kick_fd_info 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_kick_fd_info Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="pollset__kick__posix_8h_source.html">pollset_kick_posix.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:a1de795478812bbce339df7a84b315479"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__kick__fd__info.html#a1de795478812bbce339df7a84b315479">wakeup_fd</a></td></tr>
+<tr class="separator:a1de795478812bbce339df7a84b315479"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6612c537977b6a493b0605fd8e22f05f"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__kick__fd__info.html#a6612c537977b6a493b0605fd8e22f05f">next</a></td></tr>
+<tr class="separator:a6612c537977b6a493b0605fd8e22f05f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6a6395fcea0806c6b02846a2ec1ca44"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__kick__fd__info.html#ad6a6395fcea0806c6b02846a2ec1ca44">prev</a></td></tr>
+<tr class="separator:ad6a6395fcea0806c6b02846a2ec1ca44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6612c537977b6a493b0605fd8e22f05f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a>* grpc_kick_fd_info::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad6a6395fcea0806c6b02846a2ec1ca44"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a>* grpc_kick_fd_info::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1de795478812bbce339df7a84b315479"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> grpc_kick_fd_info::wakeup_fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="pollset__kick__posix_8h_source.html">pollset_kick_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__lb__policy.html b/doc/ref/core.internal/html/structgrpc__lb__policy.html
new file mode 100644
index 0000000000..2dc8382bef
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__lb__policy.html
@@ -0,0 +1,136 @@
+<!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_lb_policy 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_lb_policy Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="lb__policy_8h_source.html">lb_policy.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:a83d1624912fcce199cb291023abe453a"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy.html#a83d1624912fcce199cb291023abe453a">vtable</a></td></tr>
+<tr class="separator:a83d1624912fcce199cb291023abe453a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a729d56e37097d14d3a84090aa85d4485"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy.html#a729d56e37097d14d3a84090aa85d4485">refs</a></td></tr>
+<tr class="separator:a729d56e37097d14d3a84090aa85d4485"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a729d56e37097d14d3a84090aa85d4485"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_lb_policy::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83d1624912fcce199cb291023abe453a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__lb__policy__vtable.html">grpc_lb_policy_vtable</a>* grpc_lb_policy::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="lb__policy_8h_source.html">lb_policy.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>
diff --git a/doc/ref/core.internal/html/structgrpc__lb__policy__vtable.html b/doc/ref/core.internal/html/structgrpc__lb__policy__vtable.html
new file mode 100644
index 0000000000..9d74dbface
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__lb__policy__vtable.html
@@ -0,0 +1,222 @@
+<!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_lb_policy_vtable 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_lb_policy_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="lb__policy_8h_source.html">lb_policy.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:a239ed7b3beddcfa318cc402f6d9f977c"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#a239ed7b3beddcfa318cc402f6d9f977c">destroy</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:a239ed7b3beddcfa318cc402f6d9f977c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a51c5b68411493024b3ffde40681c79e6"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#a51c5b68411493024b3ffde40681c79e6">shutdown</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="separator:a51c5b68411493024b3ffde40681c79e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abccc94e7f91ee59b360ee425493d9e6f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#abccc94e7f91ee59b360ee425493d9e6f">pick</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="memdesc:abccc94e7f91ee59b360ee425493d9e6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">implement grpc_lb_policy_pick <a href="#abccc94e7f91ee59b360ee425493d9e6f">More...</a><br/></td></tr>
+<tr class="separator:abccc94e7f91ee59b360ee425493d9e6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a49613233281018e00cf8dcd060c9a301"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#a49613233281018e00cf8dcd060c9a301">exit_idle</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="memdesc:a49613233281018e00cf8dcd060c9a301"><td class="mdescLeft">&#160;</td><td class="mdescRight">try to enter a READY connectivity state <a href="#a49613233281018e00cf8dcd060c9a301">More...</a><br/></td></tr>
+<tr class="separator:a49613233281018e00cf8dcd060c9a301"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a12509ba4569fb4c87b4d325e0f89d3"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#a0a12509ba4569fb4c87b4d325e0f89d3">broadcast</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="memdesc:a0a12509ba4569fb4c87b4d325e0f89d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">broadcast a transport op to all subchannels <a href="#a0a12509ba4569fb4c87b4d325e0f89d3">More...</a><br/></td></tr>
+<tr class="separator:a0a12509ba4569fb4c87b4d325e0f89d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1251501a613435c27688a15b1f76e25"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#af1251501a613435c27688a15b1f76e25">check_connectivity</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td></tr>
+<tr class="memdesc:af1251501a613435c27688a15b1f76e25"><td class="mdescLeft">&#160;</td><td class="mdescRight">check the current connectivity of the lb_policy <a href="#af1251501a613435c27688a15b1f76e25">More...</a><br/></td></tr>
+<tr class="separator:af1251501a613435c27688a15b1f76e25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a655f1dd76748cdfa93f911861c1ec0ed"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__lb__policy__vtable.html#a655f1dd76748cdfa93f911861c1ec0ed">notify_on_state_change</a> )(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td></tr>
+<tr class="memdesc:a655f1dd76748cdfa93f911861c1ec0ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">call notify when the connectivity state of a channel changes from *state. <a href="#a655f1dd76748cdfa93f911861c1ec0ed">More...</a><br/></td></tr>
+<tr class="separator:a655f1dd76748cdfa93f911861c1ec0ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a0a12509ba4569fb4c87b4d325e0f89d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_lb_policy_vtable::broadcast)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>broadcast a transport op to all subchannels </p>
+
+</div>
+</div>
+<a class="anchor" id="af1251501a613435c27688a15b1f76e25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>(* grpc_lb_policy_vtable::check_connectivity)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>check the current connectivity of the lb_policy </p>
+
+</div>
+</div>
+<a class="anchor" id="a239ed7b3beddcfa318cc402f6d9f977c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_lb_policy_vtable::destroy)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a49613233281018e00cf8dcd060c9a301"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_lb_policy_vtable::exit_idle)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>try to enter a READY connectivity state </p>
+
+</div>
+</div>
+<a class="anchor" id="a655f1dd76748cdfa93f911861c1ec0ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_lb_policy_vtable::notify_on_state_change)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *closure)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>call notify when the connectivity state of a channel changes from *state. </p>
+<p>Updates *state with the new state of the policy </p>
+
+</div>
+</div>
+<a class="anchor" id="abccc94e7f91ee59b360ee425493d9e6f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_lb_policy_vtable::pick)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> *initial_metadata, <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>implement grpc_lb_policy_pick </p>
+
+</div>
+</div>
+<a class="anchor" id="a51c5b68411493024b3ffde40681c79e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_lb_policy_vtable::shutdown)(<a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *policy)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="lb__policy_8h_source.html">lb_policy.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>
diff --git a/doc/ref/core.internal/html/structgrpc__linked__mdelem.html b/doc/ref/core.internal/html/structgrpc__linked__mdelem.html
new file mode 100644
index 0000000000..2292d5f952
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__linked__mdelem.html
@@ -0,0 +1,150 @@
+<!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_linked_mdelem 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_linked_mdelem Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__op_8h_source.html">stream_op.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:a7d66fb9cbd88ee692cd76fda6ef6d715"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__linked__mdelem.html#a7d66fb9cbd88ee692cd76fda6ef6d715">md</a></td></tr>
+<tr class="separator:a7d66fb9cbd88ee692cd76fda6ef6d715"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aed036e1e54603e73e4cc7cb28c652cef"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__linked__mdelem.html#aed036e1e54603e73e4cc7cb28c652cef">next</a></td></tr>
+<tr class="separator:aed036e1e54603e73e4cc7cb28c652cef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad862a99b02a07077dad3e56841287dc0"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__linked__mdelem.html#ad862a99b02a07077dad3e56841287dc0">prev</a></td></tr>
+<tr class="separator:ad862a99b02a07077dad3e56841287dc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7d66fb9cbd88ee692cd76fda6ef6d715"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* grpc_linked_mdelem::md</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aed036e1e54603e73e4cc7cb28c652cef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>* grpc_linked_mdelem::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad862a99b02a07077dad3e56841287dc0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>* grpc_linked_mdelem::prev</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="stream__op_8h_source.html">stream_op.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>
diff --git a/doc/ref/core.internal/html/structgrpc__mdctx.html b/doc/ref/core.internal/html/structgrpc__mdctx.html
new file mode 100644
index 0000000000..8583441b8d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__mdctx.html
@@ -0,0 +1,246 @@
+<!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_mdctx 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_mdctx Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a7ac9fbdc8d9e07461ae46e89de5dec68"><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__mdctx.html#a7ac9fbdc8d9e07461ae46e89de5dec68">hash_seed</a></td></tr>
+<tr class="separator:a7ac9fbdc8d9e07461ae46e89de5dec68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2764b3ed2bf9e59845aa9e1f02857d25"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#a2764b3ed2bf9e59845aa9e1f02857d25">refs</a></td></tr>
+<tr class="separator:a2764b3ed2bf9e59845aa9e1f02857d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c1051440f8ce4c48c38a08f5a478c4e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#a3c1051440f8ce4c48c38a08f5a478c4e">mu</a></td></tr>
+<tr class="separator:a3c1051440f8ce4c48c38a08f5a478c4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2eeb34c05c392c75ca79c62e0a91644"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structinternal__string.html">internal_string</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#ad2eeb34c05c392c75ca79c62e0a91644">strtab</a></td></tr>
+<tr class="separator:ad2eeb34c05c392c75ca79c62e0a91644"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19a486374bb3cc0c61ad53868423bce5"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#a19a486374bb3cc0c61ad53868423bce5">strtab_count</a></td></tr>
+<tr class="separator:a19a486374bb3cc0c61ad53868423bce5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ac53c8c3069ff245cd33243094b21af"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#a1ac53c8c3069ff245cd33243094b21af">strtab_capacity</a></td></tr>
+<tr class="separator:a1ac53c8c3069ff245cd33243094b21af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adff99895d519ab72b9c66a23de57156c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structinternal__metadata.html">internal_metadata</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#adff99895d519ab72b9c66a23de57156c">mdtab</a></td></tr>
+<tr class="separator:adff99895d519ab72b9c66a23de57156c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af513520e504950d327e9a41cb1781779"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#af513520e504950d327e9a41cb1781779">mdtab_count</a></td></tr>
+<tr class="separator:af513520e504950d327e9a41cb1781779"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42820dc23bdea76b0d2a7e7db3d64131"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#a42820dc23bdea76b0d2a7e7db3d64131">mdtab_free</a></td></tr>
+<tr class="separator:a42820dc23bdea76b0d2a7e7db3d64131"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab79559486a14c29803dd0f6464afe2df"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdctx.html#ab79559486a14c29803dd0f6464afe2df">mdtab_capacity</a></td></tr>
+<tr class="separator:ab79559486a14c29803dd0f6464afe2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7ac9fbdc8d9e07461ae46e89de5dec68"></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_mdctx::hash_seed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adff99895d519ab72b9c66a23de57156c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structinternal__metadata.html">internal_metadata</a>** grpc_mdctx::mdtab</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab79559486a14c29803dd0f6464afe2df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx::mdtab_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af513520e504950d327e9a41cb1781779"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx::mdtab_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a42820dc23bdea76b0d2a7e7db3d64131"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx::mdtab_free</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3c1051440f8ce4c48c38a08f5a478c4e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_mdctx::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2764b3ed2bf9e59845aa9e1f02857d25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_mdctx::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad2eeb34c05c392c75ca79c62e0a91644"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structinternal__string.html">internal_string</a>** grpc_mdctx::strtab</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1ac53c8c3069ff245cd33243094b21af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx::strtab_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19a486374bb3cc0c61ad53868423bce5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_mdctx::strtab_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="metadata_8c.html">metadata.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__mdelem.html b/doc/ref/core.internal/html/structgrpc__mdelem.html
new file mode 100644
index 0000000000..6052ea7167
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__mdelem.html
@@ -0,0 +1,136 @@
+<!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_mdelem 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_mdelem Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="metadata_8h_source.html">metadata.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:a8260c065e7658a1d2438c656bd8aae94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdelem.html#a8260c065e7658a1d2438c656bd8aae94">key</a></td></tr>
+<tr class="separator:a8260c065e7658a1d2438c656bd8aae94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae98f0541c25f94c27c8a0e63741267e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdelem.html#ae98f0541c25f94c27c8a0e63741267e1">value</a></td></tr>
+<tr class="separator:ae98f0541c25f94c27c8a0e63741267e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8260c065e7658a1d2438c656bd8aae94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* const grpc_mdelem::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae98f0541c25f94c27c8a0e63741267e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* const grpc_mdelem::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="metadata_8h_source.html">metadata.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>
diff --git a/doc/ref/core.internal/html/structgrpc__mdelem__list.html b/doc/ref/core.internal/html/structgrpc__mdelem__list.html
new file mode 100644
index 0000000000..0a2d0582b9
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__mdelem__list.html
@@ -0,0 +1,136 @@
+<!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_mdelem_list 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_mdelem_list Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__op_8h_source.html">stream_op.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:a01bd8da8ef529fa0c521354e6ab15d7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdelem__list.html#a01bd8da8ef529fa0c521354e6ab15d7a">head</a></td></tr>
+<tr class="separator:a01bd8da8ef529fa0c521354e6ab15d7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a139994dda63b5f00686312d9d2456193"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdelem__list.html#a139994dda63b5f00686312d9d2456193">tail</a></td></tr>
+<tr class="separator:a139994dda63b5f00686312d9d2456193"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a01bd8da8ef529fa0c521354e6ab15d7a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>* grpc_mdelem_list::head</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a139994dda63b5f00686312d9d2456193"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__linked__mdelem.html">grpc_linked_mdelem</a>* grpc_mdelem_list::tail</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="stream__op_8h_source.html">stream_op.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>
diff --git a/doc/ref/core.internal/html/structgrpc__mdstr.html b/doc/ref/core.internal/html/structgrpc__mdstr.html
new file mode 100644
index 0000000000..6ebf9f858d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__mdstr.html
@@ -0,0 +1,136 @@
+<!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_mdstr 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_mdstr Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="metadata_8h_source.html">metadata.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:a748902fde1a15c453757c2e45509941e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdstr.html#a748902fde1a15c453757c2e45509941e">slice</a></td></tr>
+<tr class="separator:a748902fde1a15c453757c2e45509941e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a293d438ac394265fb036e8dba0a3bc9d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__mdstr.html#a293d438ac394265fb036e8dba0a3bc9d">hash</a></td></tr>
+<tr class="separator:a293d438ac394265fb036e8dba0a3bc9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a293d438ac394265fb036e8dba0a3bc9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> grpc_mdstr::hash</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a748902fde1a15c453757c2e45509941e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_mdstr::slice</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="metadata_8h_source.html">metadata.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>
diff --git a/doc/ref/core.internal/html/structgrpc__metadata.html b/doc/ref/core.internal/html/structgrpc__metadata.html
new file mode 100644
index 0000000000..411863c05c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__metadata.html
@@ -0,0 +1,188 @@
+<!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_metadata 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_metadata Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single metadata element.
+ <a href="structgrpc__metadata.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:abe93a3d24cd534d9387e05ad1f0b36f7"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata.html#abe93a3d24cd534d9387e05ad1f0b36f7">key</a></td></tr>
+<tr class="separator:abe93a3d24cd534d9387e05ad1f0b36f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57b63d7b7a3e4720a0cc0d20bb2ecf36"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata.html#a57b63d7b7a3e4720a0cc0d20bb2ecf36">value</a></td></tr>
+<tr class="separator:a57b63d7b7a3e4720a0cc0d20bb2ecf36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2084add9ffe64cf337576114d189af3f"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata.html#a2084add9ffe64cf337576114d189af3f">value_length</a></td></tr>
+<tr class="separator:a2084add9ffe64cf337576114d189af3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a342799d4f78fcc6dd29ee44f56a6d553"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:ab03cc1c035aa9a08f094ac1db158348a"><td class="memItemLeft" >&#160;&#160;&#160;void *&#160;&#160;&#160;<a class="el" href="structgrpc__metadata.html#ae7478a66f65862018cd89768a578ff4f">obfuscated</a> [3]</td></tr>
+<tr class="separator:ab03cc1c035aa9a08f094ac1db158348a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a342799d4f78fcc6dd29ee44f56a6d553"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata.html#a342799d4f78fcc6dd29ee44f56a6d553">internal_data</a></td></tr>
+<tr class="memdesc:a342799d4f78fcc6dd29ee44f56a6d553"><td class="mdescLeft">&#160;</td><td class="mdescRight">The following fields are reserved for grpc internal use. <a href="#a342799d4f78fcc6dd29ee44f56a6d553">More...</a><br/></td></tr>
+<tr class="separator:a342799d4f78fcc6dd29ee44f56a6d553"><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>A single metadata element. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a342799d4f78fcc6dd29ee44f56a6d553"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_metadata::internal_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The following fields are reserved for grpc internal use. </p>
+<p>There is no need to initialize them, and they will be set to garbage during calls to grpc. </p>
+
+</div>
+</div>
+<a class="anchor" id="abe93a3d24cd534d9387e05ad1f0b36f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_metadata::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7478a66f65862018cd89768a578ff4f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_metadata::obfuscated[3]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a57b63d7b7a3e4720a0cc0d20bb2ecf36"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_metadata::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2084add9ffe64cf337576114d189af3f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_metadata::value_length</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>
diff --git a/doc/ref/core.internal/html/structgrpc__metadata__array.html b/doc/ref/core.internal/html/structgrpc__metadata__array.html
new file mode 100644
index 0000000000..33d2191d10
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__metadata__array.html
@@ -0,0 +1,150 @@
+<!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_metadata_array 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_metadata_array Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<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:a314ce51b22a5934cc672f3736d44b9e4"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__array.html#a314ce51b22a5934cc672f3736d44b9e4">count</a></td></tr>
+<tr class="separator:a314ce51b22a5934cc672f3736d44b9e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b293b4f8e734b032b80741abf538a97"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__array.html#a5b293b4f8e734b032b80741abf538a97">capacity</a></td></tr>
+<tr class="separator:a5b293b4f8e734b032b80741abf538a97"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac930a0cc901913fafcd09ca9cca156fe"><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="structgrpc__metadata__array.html#ac930a0cc901913fafcd09ca9cca156fe">metadata</a></td></tr>
+<tr class="separator:ac930a0cc901913fafcd09ca9cca156fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a5b293b4f8e734b032b80741abf538a97"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_metadata_array::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a314ce51b22a5934cc672f3736d44b9e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_metadata_array::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac930a0cc901913fafcd09ca9cca156fe"></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_metadata_array::metadata</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>
diff --git a/doc/ref/core.internal/html/structgrpc__metadata__batch.html b/doc/ref/core.internal/html/structgrpc__metadata__batch.html
new file mode 100644
index 0000000000..404ae7b0f2
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__metadata__batch.html
@@ -0,0 +1,159 @@
+<!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_metadata_batch 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_metadata_batch Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__op_8h_source.html">stream_op.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:a70a05bf082db5e80a822fbd91ac5805d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__batch.html#a70a05bf082db5e80a822fbd91ac5805d">list</a></td></tr>
+<tr class="memdesc:a70a05bf082db5e80a822fbd91ac5805d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Metadata elements in this batch. <a href="#a70a05bf082db5e80a822fbd91ac5805d">More...</a><br/></td></tr>
+<tr class="separator:a70a05bf082db5e80a822fbd91ac5805d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a803e9f2eed721ec23504e872e14cbecc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__batch.html#a803e9f2eed721ec23504e872e14cbecc">garbage</a></td></tr>
+<tr class="memdesc:a803e9f2eed721ec23504e872e14cbecc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Elements that have been removed from the batch, but have not yet been unreffed - used to allow collecting garbage under a single metadata context lock. <a href="#a803e9f2eed721ec23504e872e14cbecc">More...</a><br/></td></tr>
+<tr class="separator:a803e9f2eed721ec23504e872e14cbecc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2450cce88312b53182e0c7de9516d04"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__metadata__batch.html#ac2450cce88312b53182e0c7de9516d04">deadline</a></td></tr>
+<tr class="memdesc:ac2450cce88312b53182e0c7de9516d04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used to calculate grpc-timeout at the point of sending, or gpr_inf_future if this batch does not need to send a grpc-timeout. <a href="#ac2450cce88312b53182e0c7de9516d04">More...</a><br/></td></tr>
+<tr class="separator:ac2450cce88312b53182e0c7de9516d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac2450cce88312b53182e0c7de9516d04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_metadata_batch::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Used to calculate grpc-timeout at the point of sending, or gpr_inf_future if this batch does not need to send a grpc-timeout. </p>
+
+</div>
+</div>
+<a class="anchor" id="a803e9f2eed721ec23504e872e14cbecc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a> grpc_metadata_batch::garbage</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Elements that have been removed from the batch, but have not yet been unreffed - used to allow collecting garbage under a single metadata context lock. </p>
+
+</div>
+</div>
+<a class="anchor" id="a70a05bf082db5e80a822fbd91ac5805d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem__list.html">grpc_mdelem_list</a> grpc_metadata_batch::list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Metadata elements in this batch. </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="stream__op_8h_source.html">stream_op.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>
diff --git a/doc/ref/core.internal/html/structgrpc__oauth2__token__fetcher__credentials.html b/doc/ref/core.internal/html/structgrpc__oauth2__token__fetcher__credentials.html
new file mode 100644
index 0000000000..fee02c9f48
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__oauth2__token__fetcher__credentials.html
@@ -0,0 +1,192 @@
+<!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_oauth2_token_fetcher_credentials 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_oauth2_token_fetcher_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:acf21ce59c27d145279e5a26d561ea2d5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#acf21ce59c27d145279e5a26d561ea2d5">base</a></td></tr>
+<tr class="separator:acf21ce59c27d145279e5a26d561ea2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dec60523d8f3844032e213ea8766c45"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a1dec60523d8f3844032e213ea8766c45">mu</a></td></tr>
+<tr class="separator:a1dec60523d8f3844032e213ea8766c45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf3f319f98882bf7ae8fc81bd95076be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#abf3f319f98882bf7ae8fc81bd95076be">access_token_md</a></td></tr>
+<tr class="separator:abf3f319f98882bf7ae8fc81bd95076be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a293a6ed6c4f54ef2de4de3e071ae6e13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a293a6ed6c4f54ef2de4de3e071ae6e13">token_expiration</a></td></tr>
+<tr class="separator:a293a6ed6c4f54ef2de4de3e071ae6e13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c54ee9f6021c950777c42a4e34b71c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#a6c54ee9f6021c950777c42a4e34b71c8">httpcli_context</a></td></tr>
+<tr class="separator:a6c54ee9f6021c950777c42a4e34b71c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af761ff685ab5e0c5884770d5bb52db54"><td class="memItemLeft" align="right" valign="top"><a class="el" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">grpc_fetch_oauth2_func</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html#af761ff685ab5e0c5884770d5bb52db54">fetch_func</a></td></tr>
+<tr class="separator:af761ff685ab5e0c5884770d5bb52db54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abf3f319f98882bf7ae8fc81bd95076be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_oauth2_token_fetcher_credentials::access_token_md</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf21ce59c27d145279e5a26d561ea2d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_oauth2_token_fetcher_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af761ff685ab5e0c5884770d5bb52db54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="credentials_8h.html#a6c5b440dff7801066f4afb03a60c249d">grpc_fetch_oauth2_func</a> grpc_oauth2_token_fetcher_credentials::fetch_func</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c54ee9f6021c950777c42a4e34b71c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> grpc_oauth2_token_fetcher_credentials::httpcli_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1dec60523d8f3844032e213ea8766c45"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_oauth2_token_fetcher_credentials::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a293a6ed6c4f54ef2de4de3e071ae6e13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_oauth2_token_fetcher_credentials::token_expiration</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__op.html b/doc/ref/core.internal/html/structgrpc__op.html
new file mode 100644
index 0000000000..6f2843c624
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__op.html
@@ -0,0 +1,439 @@
+<!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>
diff --git a/doc/ref/core.internal/html/structgrpc__pollset.html b/doc/ref/core.internal/html/structgrpc__pollset.html
new file mode 100644
index 0000000000..4555fd3a9c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__pollset.html
@@ -0,0 +1,292 @@
+<!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_pollset 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_pollset Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="pollset__posix_8h_source.html">pollset_posix.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:a0a3106a5e75b7079d89b8443ac8cb887"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a0a3106a5e75b7079d89b8443ac8cb887">vtable</a></td></tr>
+<tr class="separator:a0a3106a5e75b7079d89b8443ac8cb887"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0ca06526200d8e29888467458f4a924"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#ad0ca06526200d8e29888467458f4a924">mu</a></td></tr>
+<tr class="separator:ad0ca06526200d8e29888467458f4a924"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7b8c9f2621b64a15b02d6beeb234a0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#ae7b8c9f2621b64a15b02d6beeb234a0f">kick_state</a></td></tr>
+<tr class="separator:ae7b8c9f2621b64a15b02d6beeb234a0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a319191f59788a09fddad222cd8e1d7b1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a319191f59788a09fddad222cd8e1d7b1">counter</a></td></tr>
+<tr class="separator:a319191f59788a09fddad222cd8e1d7b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a835a6bc3ba9adc3076831877fc1e4ca2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a835a6bc3ba9adc3076831877fc1e4ca2">in_flight_cbs</a></td></tr>
+<tr class="separator:a835a6bc3ba9adc3076831877fc1e4ca2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a890a0c1aa2061769dcd141cf97f83c1c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a890a0c1aa2061769dcd141cf97f83c1c">shutting_down</a></td></tr>
+<tr class="separator:a890a0c1aa2061769dcd141cf97f83c1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0ba35d346bebf65837c9cc1980aab53"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#af0ba35d346bebf65837c9cc1980aab53">called_shutdown</a></td></tr>
+<tr class="separator:af0ba35d346bebf65837c9cc1980aab53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08b13b08670fb33a139ff1d27ea115b7"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a08b13b08670fb33a139ff1d27ea115b7">shutdown_done_cb</a> )(void *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:a08b13b08670fb33a139ff1d27ea115b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27a9797370fe938210d3943ab7c3863d"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a27a9797370fe938210d3943ab7c3863d">shutdown_done_arg</a></td></tr>
+<tr class="separator:a27a9797370fe938210d3943ab7c3863d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e1342a1a69d423b41d131276c782621"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a0442761f7efe2584de6eb4e1216067a8"><td class="memItemLeft" >&#160;&#160;&#160;int&#160;&#160;&#160;<a class="el" href="structgrpc__pollset.html#a9166a13045968cd9d384d13dfca85afc">fd</a></td></tr>
+<tr class="separator:a0442761f7efe2584de6eb4e1216067a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c6fe95348eb8ace8c213c65ba640c06"><td class="memItemLeft" >&#160;&#160;&#160;void *&#160;&#160;&#160;<a class="el" href="structgrpc__pollset.html#a80c508a4baf0ccb6e817801b0d981009">ptr</a></td></tr>
+<tr class="separator:a5c6fe95348eb8ace8c213c65ba640c06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e1342a1a69d423b41d131276c782621"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#a1e1342a1a69d423b41d131276c782621">data</a></td></tr>
+<tr class="separator:a1e1342a1a69d423b41d131276c782621"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa329ffda9a09596eeb29b228b66db844"><td class="memItemLeft" align="right" valign="top"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset.html#aa329ffda9a09596eeb29b228b66db844">cv</a></td></tr>
+<tr class="separator:aa329ffda9a09596eeb29b228b66db844"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af0ba35d346bebf65837c9cc1980aab53"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset::called_shutdown</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a319191f59788a09fddad222cd8e1d7b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset::counter</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa329ffda9a09596eeb29b228b66db844"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> grpc_pollset::cv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1e1342a1a69d423b41d131276c782621"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_pollset::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9166a13045968cd9d384d13dfca85afc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset::fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a835a6bc3ba9adc3076831877fc1e4ca2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset::in_flight_cbs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7b8c9f2621b64a15b02d6beeb234a0f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__kick__state.html">grpc_pollset_kick_state</a> grpc_pollset::kick_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad0ca06526200d8e29888467458f4a924"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_pollset::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a80c508a4baf0ccb6e817801b0d981009"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_pollset::ptr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a27a9797370fe938210d3943ab7c3863d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_pollset::shutdown_done_arg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08b13b08670fb33a139ff1d27ea115b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset::shutdown_done_cb)(void *<a class="el" href="structarg.html">arg</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a890a0c1aa2061769dcd141cf97f83c1c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset::shutting_down</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a3106a5e75b7079d89b8443ac8cb887"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__pollset__vtable.html">grpc_pollset_vtable</a>* grpc_pollset::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/iomgr/<a class="el" href="pollset__posix_8h_source.html">pollset_posix.h</a></li>
+<li>src/core/iomgr/<a class="el" href="pollset__windows_8h_source.html">pollset_windows.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>
diff --git a/doc/ref/core.internal/html/structgrpc__pollset__kick__state.html b/doc/ref/core.internal/html/structgrpc__pollset__kick__state.html
new file mode 100644
index 0000000000..e703ec0ccc
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__pollset__kick__state.html
@@ -0,0 +1,150 @@
+<!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_pollset_kick_state 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_pollset_kick_state Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="pollset__kick__posix_8h_source.html">pollset_kick_posix.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:ad193718d72e6ad4fcc9887f0cbba848a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__kick__state.html#ad193718d72e6ad4fcc9887f0cbba848a">mu</a></td></tr>
+<tr class="separator:ad193718d72e6ad4fcc9887f0cbba848a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91f72c6a22381c48f6994830a460c7b8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__kick__state.html#a91f72c6a22381c48f6994830a460c7b8">kicked</a></td></tr>
+<tr class="separator:a91f72c6a22381c48f6994830a460c7b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac70b7fecfa3a7afa9f9df060ed1c7772"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__kick__state.html#ac70b7fecfa3a7afa9f9df060ed1c7772">fd_list</a></td></tr>
+<tr class="separator:ac70b7fecfa3a7afa9f9df060ed1c7772"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac70b7fecfa3a7afa9f9df060ed1c7772"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structgrpc__kick__fd__info.html">grpc_kick_fd_info</a> grpc_pollset_kick_state::fd_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a91f72c6a22381c48f6994830a460c7b8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_pollset_kick_state::kicked</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad193718d72e6ad4fcc9887f0cbba848a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_pollset_kick_state::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="pollset__kick__posix_8h_source.html">pollset_kick_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__pollset__set.html b/doc/ref/core.internal/html/structgrpc__pollset__set.html
new file mode 100644
index 0000000000..e24d603a92
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__pollset__set.html
@@ -0,0 +1,221 @@
+<!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_pollset_set 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_pollset_set Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="pollset__set__posix_8h_source.html">pollset_set_posix.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:a6e7926b30cf15773b300afb079474703"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#a6e7926b30cf15773b300afb079474703">mu</a></td></tr>
+<tr class="separator:a6e7926b30cf15773b300afb079474703"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad6dbbb51fb8ed94dcd176ae4304e38c9"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#ad6dbbb51fb8ed94dcd176ae4304e38c9">pollset_count</a></td></tr>
+<tr class="separator:ad6dbbb51fb8ed94dcd176ae4304e38c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b003019253d6308d16b17dfeed86ef7"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#a4b003019253d6308d16b17dfeed86ef7">pollset_capacity</a></td></tr>
+<tr class="separator:a4b003019253d6308d16b17dfeed86ef7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bf7578ddd437f32e60a550a5bb9b5fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#a2bf7578ddd437f32e60a550a5bb9b5fb">pollsets</a></td></tr>
+<tr class="separator:a2bf7578ddd437f32e60a550a5bb9b5fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9bf34bd7e4b92ba41543e220248684a6"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#a9bf34bd7e4b92ba41543e220248684a6">fd_count</a></td></tr>
+<tr class="separator:a9bf34bd7e4b92ba41543e220248684a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef4e4899c16b05d8d636c40491ef83ec"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#aef4e4899c16b05d8d636c40491ef83ec">fd_capacity</a></td></tr>
+<tr class="separator:aef4e4899c16b05d8d636c40491ef83ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d9bebcd8ad102edde7c276a5bb36af6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__fd.html">grpc_fd</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#a8d9bebcd8ad102edde7c276a5bb36af6">fds</a></td></tr>
+<tr class="separator:a8d9bebcd8ad102edde7c276a5bb36af6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8487ef4097fd3d48514105c757e1b69c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__set.html#a8487ef4097fd3d48514105c757e1b69c">unused</a></td></tr>
+<tr class="separator:a8487ef4097fd3d48514105c757e1b69c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aef4e4899c16b05d8d636c40491ef83ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_pollset_set::fd_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9bf34bd7e4b92ba41543e220248684a6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_pollset_set::fd_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8d9bebcd8ad102edde7c276a5bb36af6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__fd.html">grpc_fd</a>** grpc_pollset_set::fds</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e7926b30cf15773b300afb079474703"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_pollset_set::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b003019253d6308d16b17dfeed86ef7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_pollset_set::pollset_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad6dbbb51fb8ed94dcd176ae4304e38c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_pollset_set::pollset_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2bf7578ddd437f32e60a550a5bb9b5fb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>** grpc_pollset_set::pollsets</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8487ef4097fd3d48514105c757e1b69c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_pollset_set::unused</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/iomgr/<a class="el" href="pollset__set__posix_8h_source.html">pollset_set_posix.h</a></li>
+<li>src/core/iomgr/<a class="el" href="pollset__set__windows_8h_source.html">pollset_set_windows.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>
diff --git a/doc/ref/core.internal/html/structgrpc__pollset__vtable.html b/doc/ref/core.internal/html/structgrpc__pollset__vtable.html
new file mode 100644
index 0000000000..a97367398e
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__pollset__vtable.html
@@ -0,0 +1,192 @@
+<!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_pollset_vtable 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_pollset_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="pollset__posix_8h_source.html">pollset_posix.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:a72b5c1fe9036b0e1cec8df3696a7aed5"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html#a72b5c1fe9036b0e1cec8df3696a7aed5">add_fd</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, int and_unlock_pollset)</td></tr>
+<tr class="separator:a72b5c1fe9036b0e1cec8df3696a7aed5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaacc347c66e715b18b3c3b6f393e9b60"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html#aaacc347c66e715b18b3c3b6f393e9b60">del_fd</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, int and_unlock_pollset)</td></tr>
+<tr class="separator:aaacc347c66e715b18b3c3b6f393e9b60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a193dc080ef27a7ba5cef64f99f89cc3f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html#a193dc080ef27a7ba5cef64f99f89cc3f">maybe_work</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now, int allow_synchronous_callback)</td></tr>
+<tr class="separator:a193dc080ef27a7ba5cef64f99f89cc3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae03e13800e000795a512fa4e308efdbc"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html#ae03e13800e000795a512fa4e308efdbc">kick</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:ae03e13800e000795a512fa4e308efdbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae8ef1cb18ceb55b32b383c62c63929e8"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html#ae8ef1cb18ceb55b32b383c62c63929e8">finish_shutdown</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:ae8ef1cb18ceb55b32b383c62c63929e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3f8fb0011ce6d296d0ee7e5c3e650815"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__pollset__vtable.html#a3f8fb0011ce6d296d0ee7e5c3e650815">destroy</a> )(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a3f8fb0011ce6d296d0ee7e5c3e650815"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a72b5c1fe9036b0e1cec8df3696a7aed5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset_vtable::add_fd)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, int and_unlock_pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaacc347c66e715b18b3c3b6f393e9b60"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset_vtable::del_fd)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, struct <a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, int and_unlock_pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3f8fb0011ce6d296d0ee7e5c3e650815"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset_vtable::destroy)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae8ef1cb18ceb55b32b383c62c63929e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset_vtable::finish_shutdown)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae03e13800e000795a512fa4e308efdbc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset_vtable::kick)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a193dc080ef27a7ba5cef64f99f89cc3f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_pollset_vtable::maybe_work)(<a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> now, int allow_synchronous_callback)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="pollset__posix_8h_source.html">pollset_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__precise__clock.html b/doc/ref/core.internal/html/structgrpc__precise__clock.html
new file mode 100644
index 0000000000..f8575d609e
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__precise__clock.html
@@ -0,0 +1,122 @@
+<!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_precise_clock 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_precise_clock Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="timers__preciseclock_8h_source.html">timers_preciseclock.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:a1200f8fec2cdf0a60e482b79b25adb75"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">clock</a></td></tr>
+<tr class="separator:a1200f8fec2cdf0a60e482b79b25adb75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1200f8fec2cdf0a60e482b79b25adb75"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_precise_clock::clock</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/profiling/<a class="el" href="timers__preciseclock_8h_source.html">timers_preciseclock.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>
diff --git a/doc/ref/core.internal/html/structgrpc__refresh__token__credentials.html b/doc/ref/core.internal/html/structgrpc__refresh__token__credentials.html
new file mode 100644
index 0000000000..ab1c0add27
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__refresh__token__credentials.html
@@ -0,0 +1,136 @@
+<!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_refresh_token_credentials 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_refresh_token_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a2be1d1da67694fe3a5c496f832908b9e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__refresh__token__credentials.html#a2be1d1da67694fe3a5c496f832908b9e">base</a></td></tr>
+<tr class="separator:a2be1d1da67694fe3a5c496f832908b9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5aafa55d9b706f325ba7801bc90f9cdb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__refresh__token__credentials.html#a5aafa55d9b706f325ba7801bc90f9cdb">refresh_token</a></td></tr>
+<tr class="separator:a5aafa55d9b706f325ba7801bc90f9cdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a2be1d1da67694fe3a5c496f832908b9e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a> grpc_refresh_token_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5aafa55d9b706f325ba7801bc90f9cdb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__refresh__token.html">grpc_auth_refresh_token</a> grpc_refresh_token_credentials::refresh_token</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__resolved__address.html b/doc/ref/core.internal/html/structgrpc__resolved__address.html
new file mode 100644
index 0000000000..9c54ef3d80
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__resolved__address.html
@@ -0,0 +1,136 @@
+<!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_resolved_address 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_resolved_address Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="resolve__address_8h_source.html">resolve_address.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:a664035b0fc073c4a49f5e7c1cc765c9d"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolved__address.html#a664035b0fc073c4a49f5e7c1cc765c9d">addr</a> [128]</td></tr>
+<tr class="separator:a664035b0fc073c4a49f5e7c1cc765c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4f8c294fc0bf15ea680a153d100cc56"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolved__address.html#ad4f8c294fc0bf15ea680a153d100cc56">len</a></td></tr>
+<tr class="separator:ad4f8c294fc0bf15ea680a153d100cc56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a664035b0fc073c4a49f5e7c1cc765c9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char grpc_resolved_address::addr[128]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4f8c294fc0bf15ea680a153d100cc56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_resolved_address::len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="resolve__address_8h_source.html">resolve_address.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>
diff --git a/doc/ref/core.internal/html/structgrpc__resolved__addresses.html b/doc/ref/core.internal/html/structgrpc__resolved__addresses.html
new file mode 100644
index 0000000000..a0d3661e43
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__resolved__addresses.html
@@ -0,0 +1,136 @@
+<!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_resolved_addresses 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_resolved_addresses Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="resolve__address_8h_source.html">resolve_address.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:a5bad86b3646502cd70807ff2000f6af8"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolved__addresses.html#a5bad86b3646502cd70807ff2000f6af8">naddrs</a></td></tr>
+<tr class="separator:a5bad86b3646502cd70807ff2000f6af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afdf4d95430fcf478a164c665d71e913c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolved__address.html">grpc_resolved_address</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolved__addresses.html#afdf4d95430fcf478a164c665d71e913c">addrs</a></td></tr>
+<tr class="separator:afdf4d95430fcf478a164c665d71e913c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="afdf4d95430fcf478a164c665d71e913c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolved__address.html">grpc_resolved_address</a>* grpc_resolved_addresses::addrs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5bad86b3646502cd70807ff2000f6af8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_resolved_addresses::naddrs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="resolve__address_8h_source.html">resolve_address.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>
diff --git a/doc/ref/core.internal/html/structgrpc__resolver.html b/doc/ref/core.internal/html/structgrpc__resolver.html
new file mode 100644
index 0000000000..d1975aec8d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__resolver.html
@@ -0,0 +1,141 @@
+<!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_resolver 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_resolver Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects
+ <a href="structgrpc__resolver.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="resolver_8h_source.html">resolver.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:a01324077acd85ac0ffb45d7967215386"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver.html#a01324077acd85ac0ffb45d7967215386">vtable</a></td></tr>
+<tr class="separator:a01324077acd85ac0ffb45d7967215386"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabfb460da52c0386f40415bf4ae0d233"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver.html#aabfb460da52c0386f40415bf4ae0d233">refs</a></td></tr>
+<tr class="separator:aabfb460da52c0386f40415bf4ae0d233"><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><a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aabfb460da52c0386f40415bf4ae0d233"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_resolver::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a01324077acd85ac0ffb45d7967215386"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__resolver__vtable.html">grpc_resolver_vtable</a>* grpc_resolver::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="resolver_8h_source.html">resolver.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>
diff --git a/doc/ref/core.internal/html/structgrpc__resolver__factory.html b/doc/ref/core.internal/html/structgrpc__resolver__factory.html
new file mode 100644
index 0000000000..8c6ef3e407
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__resolver__factory.html
@@ -0,0 +1,128 @@
+<!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_resolver_factory 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_resolver_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects
+ <a href="structgrpc__resolver__factory.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="resolver__factory_8h_source.html">resolver_factory.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:ab063e0046b8db1db5469bf4b6f7cefc3"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__factory.html#ab063e0046b8db1db5469bf4b6f7cefc3">vtable</a></td></tr>
+<tr class="separator:ab063e0046b8db1db5469bf4b6f7cefc3"><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><a class="el" href="structgrpc__resolver.html" title="grpc_resolver provides grpc_client_config objects to grpc_channel objects ">grpc_resolver</a> provides <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> objects to <a class="el" href="structgrpc__channel.html">grpc_channel</a> objects </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab063e0046b8db1db5469bf4b6f7cefc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__resolver__factory__vtable.html">grpc_resolver_factory_vtable</a>* grpc_resolver_factory::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="resolver__factory_8h_source.html">resolver_factory.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>
diff --git a/doc/ref/core.internal/html/structgrpc__resolver__factory__vtable.html b/doc/ref/core.internal/html/structgrpc__resolver__factory__vtable.html
new file mode 100644
index 0000000000..8183e82cb8
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__resolver__factory__vtable.html
@@ -0,0 +1,150 @@
+<!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_resolver_factory_vtable 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_resolver_factory_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="resolver__factory_8h_source.html">resolver_factory.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:a205881c42a64bda699ea7699e6fd3527"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__factory__vtable.html#a205881c42a64bda699ea7699e6fd3527">ref</a> )(<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td></tr>
+<tr class="separator:a205881c42a64bda699ea7699e6fd3527"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa83017deb3ec0dce406071545f0b203e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__factory__vtable.html#aa83017deb3ec0dce406071545f0b203e">unref</a> )(<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td></tr>
+<tr class="separator:aa83017deb3ec0dce406071545f0b203e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59d7eb4c9cb95b6ba33628c30b948f10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__factory__vtable.html#a59d7eb4c9cb95b6ba33628c30b948f10">create_resolver</a> )(<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="el" href="structgrpc__uri.html">grpc_uri</a> *uri, <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="el" href="structsubchannel__factory.html">subchannel_factory</a>)</td></tr>
+<tr class="separator:a59d7eb4c9cb95b6ba33628c30b948f10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a59d7eb4c9cb95b6ba33628c30b948f10"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>*(* grpc_resolver_factory_vtable::create_resolver)(<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory, <a class="el" href="structgrpc__uri.html">grpc_uri</a> *uri, <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *<a class="el" href="structsubchannel__factory.html">subchannel_factory</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a205881c42a64bda699ea7699e6fd3527"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_resolver_factory_vtable::ref)(<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa83017deb3ec0dce406071545f0b203e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_resolver_factory_vtable::unref)(<a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *factory)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="resolver__factory_8h_source.html">resolver_factory.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>
diff --git a/doc/ref/core.internal/html/structgrpc__resolver__vtable.html b/doc/ref/core.internal/html/structgrpc__resolver__vtable.html
new file mode 100644
index 0000000000..fcb682ccc9
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__resolver__vtable.html
@@ -0,0 +1,164 @@
+<!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_resolver_vtable 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_resolver_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="resolver_8h_source.html">resolver.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:a354107f009d8e0c814559a185b5ed3f7"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__vtable.html#a354107f009d8e0c814559a185b5ed3f7">destroy</a> )(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:a354107f009d8e0c814559a185b5ed3f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a118587a757136331a17d12150b27ae"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__vtable.html#a1a118587a757136331a17d12150b27ae">shutdown</a> )(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td></tr>
+<tr class="separator:a1a118587a757136331a17d12150b27ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9104e21b3064f5f66dc29d80a098e19b"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__vtable.html#a9104e21b3064f5f66dc29d80a098e19b">channel_saw_error</a> )(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, struct sockaddr *failing_address, int failing_address_len)</td></tr>
+<tr class="separator:a9104e21b3064f5f66dc29d80a098e19b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb5664454e15125b336b372239716cf0"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__resolver__vtable.html#acb5664454e15125b336b372239716cf0">next</a> )(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **target_config, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td></tr>
+<tr class="separator:acb5664454e15125b336b372239716cf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9104e21b3064f5f66dc29d80a098e19b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_resolver_vtable::channel_saw_error)(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, struct sockaddr *failing_address, int failing_address_len)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a354107f009d8e0c814559a185b5ed3f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_resolver_vtable::destroy)(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb5664454e15125b336b372239716cf0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_resolver_vtable::next)(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver, <a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **target_config, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *on_complete)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a118587a757136331a17d12150b27ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_resolver_vtable::shutdown)(<a class="el" href="structgrpc__resolver.html">grpc_resolver</a> *resolver)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="resolver_8h_source.html">resolver.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>
diff --git a/doc/ref/core.internal/html/structgrpc__secure__transport__setup.html b/doc/ref/core.internal/html/structgrpc__secure__transport__setup.html
new file mode 100644
index 0000000000..2b2bfca398
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__secure__transport__setup.html
@@ -0,0 +1,232 @@
+<!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_secure_transport_setup 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_secure_transport_setup Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a494b76f3257449ed5eb88e0a52194324"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#a494b76f3257449ed5eb88e0a52194324">connector</a></td></tr>
+<tr class="separator:a494b76f3257449ed5eb88e0a52194324"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb477ffb68f62bc22048abef085575c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#acb477ffb68f62bc22048abef085575c3">handshaker</a></td></tr>
+<tr class="separator:acb477ffb68f62bc22048abef085575c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ac21c122779d771e91d59bc1c74a723"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#a4ac21c122779d771e91d59bc1c74a723">handshake_buffer</a></td></tr>
+<tr class="separator:a4ac21c122779d771e91d59bc1c74a723"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0edef695f006557a299ea4384f3a5438"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#a0edef695f006557a299ea4384f3a5438">handshake_buffer_size</a></td></tr>
+<tr class="separator:a0edef695f006557a299ea4384f3a5438"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6718bd343a57770498f8bfcfeefbaf9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#a6718bd343a57770498f8bfcfeefbaf9a">wrapped_endpoint</a></td></tr>
+<tr class="separator:a6718bd343a57770498f8bfcfeefbaf9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7e2e65bef91a9804fe95a47c4bfb8cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#ae7e2e65bef91a9804fe95a47c4bfb8cb">secure_endpoint</a></td></tr>
+<tr class="separator:ae7e2e65bef91a9804fe95a47c4bfb8cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac057ddae29de167423a28ff357acab20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#ac057ddae29de167423a28ff357acab20">left_overs</a></td></tr>
+<tr class="separator:ac057ddae29de167423a28ff357acab20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bf28f7192cd4fe30e4daaf306545e9c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#a1bf28f7192cd4fe30e4daaf306545e9c">cb</a></td></tr>
+<tr class="separator:a1bf28f7192cd4fe30e4daaf306545e9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c39ff96c74f4adc29fc0ba7e79f849c"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__secure__transport__setup.html#a8c39ff96c74f4adc29fc0ba7e79f849c">user_data</a></td></tr>
+<tr class="separator:a8c39ff96c74f4adc29fc0ba7e79f849c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1bf28f7192cd4fe30e4daaf306545e9c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="secure__transport__setup_8h.html#a87e784b2a78827a00d144f0fcd119ed8">grpc_secure_transport_setup_done_cb</a> grpc_secure_transport_setup::cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a494b76f3257449ed5eb88e0a52194324"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_secure_transport_setup::connector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4ac21c122779d771e91d59bc1c74a723"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* grpc_secure_transport_setup::handshake_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0edef695f006557a299ea4384f3a5438"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_secure_transport_setup::handshake_buffer_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb477ffb68f62bc22048abef085575c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>* grpc_secure_transport_setup::handshaker</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac057ddae29de167423a28ff357acab20"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> grpc_secure_transport_setup::left_overs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae7e2e65bef91a9804fe95a47c4bfb8cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_secure_transport_setup::secure_endpoint</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c39ff96c74f4adc29fc0ba7e79f849c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_secure_transport_setup::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6718bd343a57770498f8bfcfeefbaf9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_secure_transport_setup::wrapped_endpoint</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="secure__transport__setup_8c.html">secure_transport_setup.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__security__connector.html b/doc/ref/core.internal/html/structgrpc__security__connector.html
new file mode 100644
index 0000000000..5d726b838b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__security__connector.html
@@ -0,0 +1,179 @@
+<!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_security_connector 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_security_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__connector_8h_source.html">security_connector.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:a72b9f6efab0a70571f579d129f2bffd1"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector.html#a72b9f6efab0a70571f579d129f2bffd1">vtable</a></td></tr>
+<tr class="separator:a72b9f6efab0a70571f579d129f2bffd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f687c76fd94573412f97c9f3f0abf19"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector.html#a6f687c76fd94573412f97c9f3f0abf19">refcount</a></td></tr>
+<tr class="separator:a6f687c76fd94573412f97c9f3f0abf19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a233f3e3ad0edc94fa25b0b3c8bb839bd"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector.html#a233f3e3ad0edc94fa25b0b3c8bb839bd">is_client_side</a></td></tr>
+<tr class="separator:a233f3e3ad0edc94fa25b0b3c8bb839bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e474c23ba9e2e50bd9f21f0b05d30ca"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector.html#a5e474c23ba9e2e50bd9f21f0b05d30ca">url_scheme</a></td></tr>
+<tr class="separator:a5e474c23ba9e2e50bd9f21f0b05d30ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a076a1d251960f6c9c3b173d1d8eb9a17"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector.html#a076a1d251960f6c9c3b173d1d8eb9a17">auth_context</a></td></tr>
+<tr class="separator:a076a1d251960f6c9c3b173d1d8eb9a17"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a076a1d251960f6c9c3b173d1d8eb9a17"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_security_connector::auth_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a233f3e3ad0edc94fa25b0b3c8bb839bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_security_connector::is_client_side</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f687c76fd94573412f97c9f3f0abf19"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_security_connector::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5e474c23ba9e2e50bd9f21f0b05d30ca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_security_connector::url_scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a72b9f6efab0a70571f579d129f2bffd1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__security__connector__vtable.html">grpc_security_connector_vtable</a>* grpc_security_connector::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8h_source.html">security_connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__security__connector__vtable.html b/doc/ref/core.internal/html/structgrpc__security__connector__vtable.html
new file mode 100644
index 0000000000..f555ab42fe
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__security__connector__vtable.html
@@ -0,0 +1,150 @@
+<!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_security_connector_vtable 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_security_connector_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__connector_8h_source.html">security_connector.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:acd16feb960e41e1920c193017a135704"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector__vtable.html#acd16feb960e41e1920c193017a135704">destroy</a> )(<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc)</td></tr>
+<tr class="separator:acd16feb960e41e1920c193017a135704"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1202bdafbea18af0fe2b0e6c11ae636"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector__vtable.html#ae1202bdafbea18af0fe2b0e6c11ae636">create_handshaker</a> )(<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td></tr>
+<tr class="separator:ae1202bdafbea18af0fe2b0e6c11ae636"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee8169e56a02a5cb55d68bcc6d0d56de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__security__connector__vtable.html#aee8169e56a02a5cb55d68bcc6d0d56de">check_peer</a> )(<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__peer.html">tsi_peer</a> peer, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td></tr>
+<tr class="separator:aee8169e56a02a5cb55d68bcc6d0d56de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aee8169e56a02a5cb55d68bcc6d0d56de"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(* grpc_security_connector_vtable::check_peer)(<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__peer.html">tsi_peer</a> peer, <a class="el" href="security__connector_8h.html#a2c65e5934491f893a10fb5062f0e08fa">grpc_security_check_cb</a> cb, void *user_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae1202bdafbea18af0fe2b0e6c11ae636"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(* grpc_security_connector_vtable::create_handshaker)(<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acd16feb960e41e1920c193017a135704"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_security_connector_vtable::destroy)(<a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *sc)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8h_source.html">security_connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__server.html b/doc/ref/core.internal/html/structgrpc__server.html
new file mode 100644
index 0000000000..a5d23ae6c5
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__server.html
@@ -0,0 +1,423 @@
+<!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_server 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_server Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a090ca3cc3f02e7b51d8c089f6c675ac2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a090ca3cc3f02e7b51d8c089f6c675ac2">channel_filter_count</a></td></tr>
+<tr class="separator:a090ca3cc3f02e7b51d8c089f6c675ac2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2da21f54a2ad688793d6c753ea74ec02"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a2da21f54a2ad688793d6c753ea74ec02">channel_filters</a></td></tr>
+<tr class="separator:a2da21f54a2ad688793d6c753ea74ec02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1ef57d52ade4e4f8eb0e26b42ea48a4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#ab1ef57d52ade4e4f8eb0e26b42ea48a4">channel_args</a></td></tr>
+<tr class="separator:ab1ef57d52ade4e4f8eb0e26b42ea48a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87495e0b247e92860d6c2a6504cf5528"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a87495e0b247e92860d6c2a6504cf5528">cqs</a></td></tr>
+<tr class="separator:a87495e0b247e92860d6c2a6504cf5528"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a747c9f6abd58918d40735615ad95e434"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a747c9f6abd58918d40735615ad95e434">pollsets</a></td></tr>
+<tr class="separator:a747c9f6abd58918d40735615ad95e434"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a49b61d38a3aee3f080087cf4b1f92d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a0a49b61d38a3aee3f080087cf4b1f92d">cq_count</a></td></tr>
+<tr class="separator:a0a49b61d38a3aee3f080087cf4b1f92d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f291ce57ed6540efe5c99e607be3a27"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a2f291ce57ed6540efe5c99e607be3a27">mu_global</a></td></tr>
+<tr class="separator:a2f291ce57ed6540efe5c99e607be3a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d89504a094de15aa4a208c0159d904b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a4d89504a094de15aa4a208c0159d904b">mu_call</a></td></tr>
+<tr class="separator:a4d89504a094de15aa4a208c0159d904b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addf8e1f57942da0e5f7235668c0968bd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structregistered__method.html">registered_method</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#addf8e1f57942da0e5f7235668c0968bd">registered_methods</a></td></tr>
+<tr class="separator:addf8e1f57942da0e5f7235668c0968bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8114e3dda6d6f5ec9257b5a5343b9821"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structrequest__matcher.html">request_matcher</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a8114e3dda6d6f5ec9257b5a5343b9821">unregistered_request_matcher</a></td></tr>
+<tr class="separator:a8114e3dda6d6f5ec9257b5a5343b9821"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70a23bf1b0e885d055f0c45382e7110a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a70a23bf1b0e885d055f0c45382e7110a">request_freelist</a></td></tr>
+<tr class="memdesc:a70a23bf1b0e885d055f0c45382e7110a"><td class="mdescLeft">&#160;</td><td class="mdescRight">free list of available requested_calls indices <a href="#a70a23bf1b0e885d055f0c45382e7110a">More...</a><br/></td></tr>
+<tr class="separator:a70a23bf1b0e885d055f0c45382e7110a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac582d8e154ce4f8a326bcf3a76f235e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structrequested__call.html">requested_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#ac582d8e154ce4f8a326bcf3a76f235e6">requested_calls</a></td></tr>
+<tr class="memdesc:ac582d8e154ce4f8a326bcf3a76f235e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">requested call backing data <a href="#ac582d8e154ce4f8a326bcf3a76f235e6">More...</a><br/></td></tr>
+<tr class="separator:ac582d8e154ce4f8a326bcf3a76f235e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaaa9b2a91b6e3edd7ebb0b194110f403"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#aaaa9b2a91b6e3edd7ebb0b194110f403">max_requested_calls</a></td></tr>
+<tr class="separator:aaaa9b2a91b6e3edd7ebb0b194110f403"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac6a14f451724678ba63c9f9a153dc33"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#aac6a14f451724678ba63c9f9a153dc33">shutdown_flag</a></td></tr>
+<tr class="separator:aac6a14f451724678ba63c9f9a153dc33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d04ab898c0d58f111975211c8d202ba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a6d04ab898c0d58f111975211c8d202ba">shutdown_published</a></td></tr>
+<tr class="separator:a6d04ab898c0d58f111975211c8d202ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd8d25139f82d26ce567e4a1a786b54b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#afd8d25139f82d26ce567e4a1a786b54b">num_shutdown_tags</a></td></tr>
+<tr class="separator:afd8d25139f82d26ce567e4a1a786b54b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab0ca72c038ccce56c33539dc5f321864"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structshutdown__tag.html">shutdown_tag</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#ab0ca72c038ccce56c33539dc5f321864">shutdown_tags</a></td></tr>
+<tr class="separator:ab0ca72c038ccce56c33539dc5f321864"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9a64dbadf2655aa804caae0fbefe47d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structchannel__data.html">channel_data</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#ab9a64dbadf2655aa804caae0fbefe47d">root_channel_data</a></td></tr>
+<tr class="separator:ab9a64dbadf2655aa804caae0fbefe47d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8034614967f908b2de453975996bdb7f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structlistener.html">listener</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#a8034614967f908b2de453975996bdb7f">listeners</a></td></tr>
+<tr class="separator:a8034614967f908b2de453975996bdb7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa36374d7075e4d6af2c2c2cb8dc26552"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#aa36374d7075e4d6af2c2c2cb8dc26552">listeners_destroyed</a></td></tr>
+<tr class="separator:aa36374d7075e4d6af2c2c2cb8dc26552"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5c3bf8e55920a90654d31c6a0836e93"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#ab5c3bf8e55920a90654d31c6a0836e93">internal_refcount</a></td></tr>
+<tr class="separator:ab5c3bf8e55920a90654d31c6a0836e93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba4f032ca63d1a654bd2a7776dfb6b6f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server.html#aba4f032ca63d1a654bd2a7776dfb6b6f">last_shutdown_message_time</a></td></tr>
+<tr class="memdesc:aba4f032ca63d1a654bd2a7776dfb6b6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">when did we print the last shutdown progress message <a href="#aba4f032ca63d1a654bd2a7776dfb6b6f">More...</a><br/></td></tr>
+<tr class="separator:aba4f032ca63d1a654bd2a7776dfb6b6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab1ef57d52ade4e4f8eb0e26b42ea48a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_server::channel_args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a090ca3cc3f02e7b51d8c089f6c675ac2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_server::channel_filter_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2da21f54a2ad688793d6c753ea74ec02"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>** grpc_server::channel_filters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a49b61d38a3aee3f080087cf4b1f92d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_server::cq_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87495e0b247e92860d6c2a6504cf5528"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>** grpc_server::cqs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5c3bf8e55920a90654d31c6a0836e93"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_server::internal_refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba4f032ca63d1a654bd2a7776dfb6b6f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_server::last_shutdown_message_time</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>when did we print the last shutdown progress message </p>
+
+</div>
+</div>
+<a class="anchor" id="a8034614967f908b2de453975996bdb7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structlistener.html">listener</a>* grpc_server::listeners</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa36374d7075e4d6af2c2c2cb8dc26552"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server::listeners_destroyed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaaa9b2a91b6e3edd7ebb0b194110f403"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server::max_requested_calls</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d89504a094de15aa4a208c0159d904b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_server::mu_call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2f291ce57ed6540efe5c99e607be3a27"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_server::mu_global</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afd8d25139f82d26ce567e4a1a786b54b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_server::num_shutdown_tags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a747c9f6abd58918d40735615ad95e434"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>** grpc_server::pollsets</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="addf8e1f57942da0e5f7235668c0968bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structregistered__method.html">registered_method</a>* grpc_server::registered_methods</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a70a23bf1b0e885d055f0c45382e7110a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* grpc_server::request_freelist</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>free list of available requested_calls indices </p>
+
+</div>
+</div>
+<a class="anchor" id="ac582d8e154ce4f8a326bcf3a76f235e6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structrequested__call.html">requested_call</a>* grpc_server::requested_calls</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>requested call backing data </p>
+
+</div>
+</div>
+<a class="anchor" id="ab9a64dbadf2655aa804caae0fbefe47d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structchannel__data.html">channel_data</a> grpc_server::root_channel_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aac6a14f451724678ba63c9f9a153dc33"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> grpc_server::shutdown_flag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d04ab898c0d58f111975211c8d202ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_server::shutdown_published</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab0ca72c038ccce56c33539dc5f321864"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structshutdown__tag.html">shutdown_tag</a>* grpc_server::shutdown_tags</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8114e3dda6d6f5ec9257b5a5343b9821"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structrequest__matcher.html">request_matcher</a> grpc_server::unregistered_request_matcher</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__server__credentials.html b/doc/ref/core.internal/html/structgrpc__server__credentials.html
new file mode 100644
index 0000000000..d11fde8713
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__server__credentials.html
@@ -0,0 +1,137 @@
+<!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_server_credentials 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_server_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:aa1514867a5ea460ca43d0afebea72b63"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__credentials.html#aa1514867a5ea460ca43d0afebea72b63">vtable</a></td></tr>
+<tr class="separator:aa1514867a5ea460ca43d0afebea72b63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a96c8274aa0811620829537eb27bfcc1c"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__credentials.html#a96c8274aa0811620829537eb27bfcc1c">type</a></td></tr>
+<tr class="separator:a96c8274aa0811620829537eb27bfcc1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a96c8274aa0811620829537eb27bfcc1c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_server_credentials::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa1514867a5ea460ca43d0afebea72b63"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__server__credentials__vtable.html">grpc_server_credentials_vtable</a>* grpc_server_credentials::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__server__credentials__vtable.html b/doc/ref/core.internal/html/structgrpc__server__credentials__vtable.html
new file mode 100644
index 0000000000..0820ffcb9b
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__server__credentials__vtable.html
@@ -0,0 +1,136 @@
+<!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_server_credentials_vtable 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_server_credentials_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a78347ce536f6c1885d49a6cd5106eade"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__credentials__vtable.html#a78347ce536f6c1885d49a6cd5106eade">destroy</a> )(<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *c)</td></tr>
+<tr class="separator:a78347ce536f6c1885d49a6cd5106eade"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af56836a7d92bb4475b92d5991eb9c30d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__credentials__vtable.html#af56836a7d92bb4475b92d5991eb9c30d">create_security_connector</a> )(<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *c, <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc)</td></tr>
+<tr class="separator:af56836a7d92bb4475b92d5991eb9c30d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af56836a7d92bb4475b92d5991eb9c30d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="security__connector_8h.html#a7a71a61785f1c3b13704bb735d2645f9">grpc_security_status</a>(* grpc_server_credentials_vtable::create_security_connector)(<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *c, <a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> **sc)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78347ce536f6c1885d49a6cd5106eade"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_server_credentials_vtable::destroy)(<a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> *c)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__server__secure__state.html b/doc/ref/core.internal/html/structgrpc__server__secure__state.html
new file mode 100644
index 0000000000..dbf8ec895d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__server__secure__state.html
@@ -0,0 +1,204 @@
+<!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_server_secure_state 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_server_secure_state Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a81df8ea928391a76a30197cce0235455"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#a81df8ea928391a76a30197cce0235455">server</a></td></tr>
+<tr class="separator:a81df8ea928391a76a30197cce0235455"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c4788f633b14cc2d49c26d9172b0b69"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#a8c4788f633b14cc2d49c26d9172b0b69">tcp</a></td></tr>
+<tr class="separator:a8c4788f633b14cc2d49c26d9172b0b69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad912fd9fa1531a5f016f83e49c768512"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#ad912fd9fa1531a5f016f83e49c768512">sc</a></td></tr>
+<tr class="separator:ad912fd9fa1531a5f016f83e49c768512"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acba74fb1730945adb6b8d60421321b26"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#acba74fb1730945adb6b8d60421321b26">handshaking_tcp_endpoints</a></td></tr>
+<tr class="separator:acba74fb1730945adb6b8d60421321b26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea11767a6c8e97a44574e8e3a368deec"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#aea11767a6c8e97a44574e8e3a368deec">is_shutdown</a></td></tr>
+<tr class="separator:aea11767a6c8e97a44574e8e3a368deec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6572a200d1489334fa4af215ccffa717"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#a6572a200d1489334fa4af215ccffa717">mu</a></td></tr>
+<tr class="separator:a6572a200d1489334fa4af215ccffa717"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae73c249bbe0e5c30a103fe4fa2ec1f13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__secure__state.html#ae73c249bbe0e5c30a103fe4fa2ec1f13">refcount</a></td></tr>
+<tr class="separator:ae73c249bbe0e5c30a103fe4fa2ec1f13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="acba74fb1730945adb6b8d60421321b26"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a>* grpc_server_secure_state::handshaking_tcp_endpoints</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea11767a6c8e97a44574e8e3a368deec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_server_secure_state::is_shutdown</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6572a200d1489334fa4af215ccffa717"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_server_secure_state::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae73c249bbe0e5c30a103fe4fa2ec1f13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_server_secure_state::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad912fd9fa1531a5f016f83e49c768512"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>* grpc_server_secure_state::sc</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a81df8ea928391a76a30197cce0235455"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* grpc_server_secure_state::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c4788f633b14cc2d49c26d9172b0b69"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a>* grpc_server_secure_state::tcp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="server__secure__chttp2_8c.html">server_secure_chttp2.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__server__security__context.html b/doc/ref/core.internal/html/structgrpc__server__security__context.html
new file mode 100644
index 0000000000..645fe55c10
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__server__security__context.html
@@ -0,0 +1,122 @@
+<!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_server_security_context 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_server_security_context Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__context_8h_source.html">security_context.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:a75d2dbb8f1f384376186fabb4df937e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__server__security__context.html#a75d2dbb8f1f384376186fabb4df937e1">auth_context</a></td></tr>
+<tr class="separator:a75d2dbb8f1f384376186fabb4df937e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a75d2dbb8f1f384376186fabb4df937e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__context.html">grpc_auth_context</a>* grpc_server_security_context::auth_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__context_8h_source.html">security_context.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>
diff --git a/doc/ref/core.internal/html/structgrpc__service__account__credentials.html b/doc/ref/core.internal/html/structgrpc__service__account__credentials.html
new file mode 100644
index 0000000000..c7143aa3fe
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__service__account__credentials.html
@@ -0,0 +1,164 @@
+<!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_service_account_credentials 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_service_account_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:acb97b3d4e8dd7783520e82d6416f25d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__credentials.html#acb97b3d4e8dd7783520e82d6416f25d0">base</a></td></tr>
+<tr class="separator:acb97b3d4e8dd7783520e82d6416f25d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bf8e279b0c67ed0f8d3a127dab0b0cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__credentials.html#a7bf8e279b0c67ed0f8d3a127dab0b0cd">key</a></td></tr>
+<tr class="separator:a7bf8e279b0c67ed0f8d3a127dab0b0cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12e5661a8313375683678cde3fbe765f"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__credentials.html#a12e5661a8313375683678cde3fbe765f">scope</a></td></tr>
+<tr class="separator:a12e5661a8313375683678cde3fbe765f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab9b416748da95fdfc5483b5bb7933ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__credentials.html#aab9b416748da95fdfc5483b5bb7933ae">token_lifetime</a></td></tr>
+<tr class="separator:aab9b416748da95fdfc5483b5bb7933ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="acb97b3d4e8dd7783520e82d6416f25d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__oauth2__token__fetcher__credentials.html">grpc_oauth2_token_fetcher_credentials</a> grpc_service_account_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7bf8e279b0c67ed0f8d3a127dab0b0cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> grpc_service_account_credentials::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12e5661a8313375683678cde3fbe765f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_service_account_credentials::scope</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab9b416748da95fdfc5483b5bb7933ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_service_account_credentials::token_lifetime</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__service__account__jwt__access__credentials.html b/doc/ref/core.internal/html/structgrpc__service__account__jwt__access__credentials.html
new file mode 100644
index 0000000000..5ffe194f98
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__service__account__jwt__access__credentials.html
@@ -0,0 +1,221 @@
+<!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_service_account_jwt_access_credentials 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_service_account_jwt_access_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a9da87dad6986e218d5246fc125db04f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a9da87dad6986e218d5246fc125db04f4">base</a></td></tr>
+<tr class="separator:a9da87dad6986e218d5246fc125db04f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a641b64d26a1c7bdc348e960ed5400b94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a641b64d26a1c7bdc348e960ed5400b94">cache_mu</a></td></tr>
+<tr class="separator:a641b64d26a1c7bdc348e960ed5400b94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c7e6a306aa24aaefa9f96982fdaafbd"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:aaa8d0a616c50f1fc39d297ca3ce3774c"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a> *&#160;&#160;&#160;<a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a1bdefcea33f490d5a40414fa10938533">jwt_md</a></td></tr>
+<tr class="separator:aaa8d0a616c50f1fc39d297ca3ce3774c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac914db379f802fa35bcb3ea1275b5696"><td class="memItemLeft" >&#160;&#160;&#160;char *&#160;&#160;&#160;<a class="el" href="structgrpc__service__account__jwt__access__credentials.html#abc57d00b1bfd2b26f3b50feebccc84fb">service_url</a></td></tr>
+<tr class="separator:ac914db379f802fa35bcb3ea1275b5696"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac21c114cee0bd1c2218b0f43bb73fa2a"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;&#160;&#160;<a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a3adac3e5a237a509291047037a5a892a">jwt_expiration</a></td></tr>
+<tr class="separator:ac21c114cee0bd1c2218b0f43bb73fa2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c7e6a306aa24aaefa9f96982fdaafbd"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a8c7e6a306aa24aaefa9f96982fdaafbd">cached</a></td></tr>
+<tr class="separator:a8c7e6a306aa24aaefa9f96982fdaafbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abedd1fe434bdb017b566f5aa096d8f32"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html#abedd1fe434bdb017b566f5aa096d8f32">key</a></td></tr>
+<tr class="separator:abedd1fe434bdb017b566f5aa096d8f32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a17f125b4f728143947f9917390316126"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__service__account__jwt__access__credentials.html#a17f125b4f728143947f9917390316126">jwt_lifetime</a></td></tr>
+<tr class="separator:a17f125b4f728143947f9917390316126"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9da87dad6986e218d5246fc125db04f4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_service_account_jwt_access_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a641b64d26a1c7bdc348e960ed5400b94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_service_account_jwt_access_credentials::cache_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c7e6a306aa24aaefa9f96982fdaafbd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_service_account_jwt_access_credentials::cached</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3adac3e5a237a509291047037a5a892a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_service_account_jwt_access_credentials::jwt_expiration</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a17f125b4f728143947f9917390316126"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_service_account_jwt_access_credentials::jwt_lifetime</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1bdefcea33f490d5a40414fa10938533"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials__md__store.html">grpc_credentials_md_store</a>* grpc_service_account_jwt_access_credentials::jwt_md</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abedd1fe434bdb017b566f5aa096d8f32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__auth__json__key.html">grpc_auth_json_key</a> grpc_service_account_jwt_access_credentials::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc57d00b1bfd2b26f3b50feebccc84fb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_service_account_jwt_access_credentials::service_url</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__channel__security__connector.html b/doc/ref/core.internal/html/structgrpc__ssl__channel__security__connector.html
new file mode 100644
index 0000000000..4705eef976
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__channel__security__connector.html
@@ -0,0 +1,176 @@
+<!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_ssl_channel_security_connector 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_ssl_channel_security_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:af7253d985a9b58d3f7a363d05fdb148c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__channel__security__connector.html#af7253d985a9b58d3f7a363d05fdb148c">base</a></td></tr>
+<tr class="separator:af7253d985a9b58d3f7a363d05fdb148c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea121da234d473666c85221663f00241"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__channel__security__connector.html#aea121da234d473666c85221663f00241">handshaker_factory</a></td></tr>
+<tr class="separator:aea121da234d473666c85221663f00241"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac86e0e283bad7b35d30cec32ed042a5b"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__channel__security__connector.html#ac86e0e283bad7b35d30cec32ed042a5b">target_name</a></td></tr>
+<tr class="separator:ac86e0e283bad7b35d30cec32ed042a5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa9e644fdf517be178f1543922ddbe9a"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__channel__security__connector.html#aaa9e644fdf517be178f1543922ddbe9a">overridden_target_name</a></td></tr>
+<tr class="separator:aaa9e644fdf517be178f1543922ddbe9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8624078f54a0cf3dfdd47f4a0ac81042"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__peer.html">tsi_peer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__channel__security__connector.html#a8624078f54a0cf3dfdd47f4a0ac81042">peer</a></td></tr>
+<tr class="separator:a8624078f54a0cf3dfdd47f4a0ac81042"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af7253d985a9b58d3f7a363d05fdb148c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> grpc_ssl_channel_security_connector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea121da234d473666c85221663f00241"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>* grpc_ssl_channel_security_connector::handshaker_factory</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaa9e644fdf517be178f1543922ddbe9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_ssl_channel_security_connector::overridden_target_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8624078f54a0cf3dfdd47f4a0ac81042"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__peer.html">tsi_peer</a> grpc_ssl_channel_security_connector::peer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac86e0e283bad7b35d30cec32ed042a5b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_ssl_channel_security_connector::target_name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8c.html">security_connector.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__config.html b/doc/ref/core.internal/html/structgrpc__ssl__config.html
new file mode 100644
index 0000000000..c4b05452f7
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__config.html
@@ -0,0 +1,192 @@
+<!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_ssl_config 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_ssl_config Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__connector_8h_source.html">security_connector.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:ab4c3e2cdc5bd272e0ef18fed777b8c9a"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html#ab4c3e2cdc5bd272e0ef18fed777b8c9a">pem_private_key</a></td></tr>
+<tr class="separator:ab4c3e2cdc5bd272e0ef18fed777b8c9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4344083d7120a2d304fe83b390aff820"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html#a4344083d7120a2d304fe83b390aff820">pem_private_key_size</a></td></tr>
+<tr class="separator:a4344083d7120a2d304fe83b390aff820"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b04c3f33486e242c3309904cd99b696"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html#a6b04c3f33486e242c3309904cd99b696">pem_cert_chain</a></td></tr>
+<tr class="separator:a6b04c3f33486e242c3309904cd99b696"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a926d124256bc0e43526d3d9d64069b03"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html#a926d124256bc0e43526d3d9d64069b03">pem_cert_chain_size</a></td></tr>
+<tr class="separator:a926d124256bc0e43526d3d9d64069b03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bcd383a60b8b391dddcb2ca592b0e41"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html#a1bcd383a60b8b391dddcb2ca592b0e41">pem_root_certs</a></td></tr>
+<tr class="separator:a1bcd383a60b8b391dddcb2ca592b0e41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54b70603e0c6d26023796000ed33e561"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__config.html#a54b70603e0c6d26023796000ed33e561">pem_root_certs_size</a></td></tr>
+<tr class="separator:a54b70603e0c6d26023796000ed33e561"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6b04c3f33486e242c3309904cd99b696"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* grpc_ssl_config::pem_cert_chain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a926d124256bc0e43526d3d9d64069b03"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_ssl_config::pem_cert_chain_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab4c3e2cdc5bd272e0ef18fed777b8c9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* grpc_ssl_config::pem_private_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4344083d7120a2d304fe83b390aff820"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_ssl_config::pem_private_key_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1bcd383a60b8b391dddcb2ca592b0e41"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* grpc_ssl_config::pem_root_certs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a54b70603e0c6d26023796000ed33e561"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_ssl_config::pem_root_certs_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8h_source.html">security_connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__credentials.html b/doc/ref/core.internal/html/structgrpc__ssl__credentials.html
new file mode 100644
index 0000000000..dcaf74eaf8
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__credentials.html
@@ -0,0 +1,136 @@
+<!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_ssl_credentials 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_ssl_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:a2745d407b41a3278d6701b10dd94c6e4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__credentials.html#a2745d407b41a3278d6701b10dd94c6e4">base</a></td></tr>
+<tr class="separator:a2745d407b41a3278d6701b10dd94c6e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a501050df420385527ac006a59e82dc06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__credentials.html#a501050df420385527ac006a59e82dc06">config</a></td></tr>
+<tr class="separator:a501050df420385527ac006a59e82dc06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a2745d407b41a3278d6701b10dd94c6e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__credentials.html">grpc_credentials</a> grpc_ssl_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a501050df420385527ac006a59e82dc06"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__ssl__config.html">grpc_ssl_config</a> grpc_ssl_credentials::config</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__pem__key__cert__pair.html b/doc/ref/core.internal/html/structgrpc__ssl__pem__key__cert__pair.html
new file mode 100644
index 0000000000..7ec4275b5f
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__pem__key__cert__pair.html
@@ -0,0 +1,136 @@
+<!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_ssl_pem_key_cert_pair 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_ssl_pem_key_cert_pair Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="grpc__security_8h_source.html">grpc_security.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:a2d4e3bdbc59d906bc9ca8b873120fd72"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html#a2d4e3bdbc59d906bc9ca8b873120fd72">private_key</a></td></tr>
+<tr class="separator:a2d4e3bdbc59d906bc9ca8b873120fd72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a483c3601705853f48dfbc8ee66d5e656"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__pem__key__cert__pair.html#a483c3601705853f48dfbc8ee66d5e656">cert_chain</a></td></tr>
+<tr class="separator:a483c3601705853f48dfbc8ee66d5e656"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a483c3601705853f48dfbc8ee66d5e656"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_ssl_pem_key_cert_pair::cert_chain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2d4e3bdbc59d906bc9ca8b873120fd72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_ssl_pem_key_cert_pair::private_key</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__security_8h_source.html">grpc_security.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__server__config.html b/doc/ref/core.internal/html/structgrpc__ssl__server__config.html
new file mode 100644
index 0000000000..a894ee6104
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__server__config.html
@@ -0,0 +1,220 @@
+<!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_ssl_server_config 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_ssl_server_config Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="security__connector_8h_source.html">security_connector.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:ace03c26aa233e1a8b96a064aac885f49"><td class="memItemLeft" align="right" valign="top">unsigned char **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#ace03c26aa233e1a8b96a064aac885f49">pem_private_keys</a></td></tr>
+<tr class="separator:ace03c26aa233e1a8b96a064aac885f49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7ff49477b3bd20af5d25fc436eaf599c"><td class="memItemLeft" align="right" valign="top">size_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#a7ff49477b3bd20af5d25fc436eaf599c">pem_private_keys_sizes</a></td></tr>
+<tr class="separator:a7ff49477b3bd20af5d25fc436eaf599c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a14d965b9fbe9438e7342be1df0fe6270"><td class="memItemLeft" align="right" valign="top">unsigned char **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#a14d965b9fbe9438e7342be1df0fe6270">pem_cert_chains</a></td></tr>
+<tr class="separator:a14d965b9fbe9438e7342be1df0fe6270"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a57b9e21a656edb763257610059fb0ab0"><td class="memItemLeft" align="right" valign="top">size_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#a57b9e21a656edb763257610059fb0ab0">pem_cert_chains_sizes</a></td></tr>
+<tr class="separator:a57b9e21a656edb763257610059fb0ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa029cf135a1f9a4cb69644762e3ec65c"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#aa029cf135a1f9a4cb69644762e3ec65c">num_key_cert_pairs</a></td></tr>
+<tr class="separator:aa029cf135a1f9a4cb69644762e3ec65c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae31aacae823523aef8549144b4b5db4d"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#ae31aacae823523aef8549144b4b5db4d">pem_root_certs</a></td></tr>
+<tr class="separator:ae31aacae823523aef8549144b4b5db4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ff730874dd4a4833f84574490c0a121"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#a1ff730874dd4a4833f84574490c0a121">pem_root_certs_size</a></td></tr>
+<tr class="separator:a1ff730874dd4a4833f84574490c0a121"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab76e4dcbf44740943a062be40d253007"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__config.html#ab76e4dcbf44740943a062be40d253007">force_client_auth</a></td></tr>
+<tr class="separator:ab76e4dcbf44740943a062be40d253007"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab76e4dcbf44740943a062be40d253007"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_ssl_server_config::force_client_auth</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa029cf135a1f9a4cb69644762e3ec65c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_ssl_server_config::num_key_cert_pairs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a14d965b9fbe9438e7342be1df0fe6270"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char** grpc_ssl_server_config::pem_cert_chains</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a57b9e21a656edb763257610059fb0ab0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t* grpc_ssl_server_config::pem_cert_chains_sizes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ace03c26aa233e1a8b96a064aac885f49"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char** grpc_ssl_server_config::pem_private_keys</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ff49477b3bd20af5d25fc436eaf599c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t* grpc_ssl_server_config::pem_private_keys_sizes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae31aacae823523aef8549144b4b5db4d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* grpc_ssl_server_config::pem_root_certs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1ff730874dd4a4833f84574490c0a121"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_ssl_server_config::pem_root_certs_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8h_source.html">security_connector.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__server__credentials.html b/doc/ref/core.internal/html/structgrpc__ssl__server__credentials.html
new file mode 100644
index 0000000000..f4dc5855a5
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__server__credentials.html
@@ -0,0 +1,136 @@
+<!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_ssl_server_credentials 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_ssl_server_credentials Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.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:af476f00d0272add3ba170388460abc71"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__credentials.html#af476f00d0272add3ba170388460abc71">base</a></td></tr>
+<tr class="separator:af476f00d0272add3ba170388460abc71"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00e6754957e007f8cc2926911c752fc3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__credentials.html#a00e6754957e007f8cc2926911c752fc3">config</a></td></tr>
+<tr class="separator:a00e6754957e007f8cc2926911c752fc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af476f00d0272add3ba170388460abc71"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server__credentials.html">grpc_server_credentials</a> grpc_ssl_server_credentials::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a00e6754957e007f8cc2926911c752fc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__ssl__server__config.html">grpc_ssl_server_config</a> grpc_ssl_server_credentials::config</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="credentials_8h_source.html">credentials.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>
diff --git a/doc/ref/core.internal/html/structgrpc__ssl__server__security__connector.html b/doc/ref/core.internal/html/structgrpc__ssl__server__security__connector.html
new file mode 100644
index 0000000000..9b87cc0522
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__ssl__server__security__connector.html
@@ -0,0 +1,134 @@
+<!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_ssl_server_security_connector 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_ssl_server_security_connector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a458d7df65c42b6df819570e79f750907"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__security__connector.html#a458d7df65c42b6df819570e79f750907">base</a></td></tr>
+<tr class="separator:a458d7df65c42b6df819570e79f750907"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa18f372b18a7dc70e96cc6cf751d58e3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__ssl__server__security__connector.html#aa18f372b18a7dc70e96cc6cf751d58e3">handshaker_factory</a></td></tr>
+<tr class="separator:aa18f372b18a7dc70e96cc6cf751d58e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a458d7df65c42b6df819570e79f750907"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__security__connector.html">grpc_security_connector</a> grpc_ssl_server_security_connector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa18f372b18a7dc70e96cc6cf751d58e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>* grpc_ssl_server_security_connector::handshaker_factory</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="security__connector_8c.html">security_connector.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__stream__op.html b/doc/ref/core.internal/html/structgrpc__stream__op.html
new file mode 100644
index 0000000000..0c44969902
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__stream__op.html
@@ -0,0 +1,179 @@
+<!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_stream_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_stream_op Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream__op_8h_source.html">stream_op.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:a26c057815c31f49b914bc28481cf9580"><td class="memItemLeft" align="right" valign="top">enum <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op.html#a26c057815c31f49b914bc28481cf9580">type</a></td></tr>
+<tr class="separator:a26c057815c31f49b914bc28481cf9580"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac153f1a1234aaf27a21c6567b0b675b9"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a4c664a50b198302feebe4ab163dd4c64"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a>&#160;&#160;&#160;<a class="el" href="structgrpc__stream__op.html#af6c691f3348941eee97e54957222562f">begin_message</a></td></tr>
+<tr class="separator:a4c664a50b198302feebe4ab163dd4c64"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a34b84b3b607bc2cad6f5a42cc6e95606"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a>&#160;&#160;&#160;<a class="el" href="structgrpc__stream__op.html#a7ca4e5aaf48c9f11d70136448e40e464">metadata</a></td></tr>
+<tr class="separator:a34b84b3b607bc2cad6f5a42cc6e95606"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2fc7b018b3ef02be5558c18749b466ad"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;&#160;&#160;<a class="el" href="structgrpc__stream__op.html#ad997783bc5e527f52ab4434ee5764aee">slice</a></td></tr>
+<tr class="separator:a2fc7b018b3ef02be5558c18749b466ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac153f1a1234aaf27a21c6567b0b675b9"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op.html#ac153f1a1234aaf27a21c6567b0b675b9">data</a></td></tr>
+<tr class="separator:ac153f1a1234aaf27a21c6567b0b675b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="af6c691f3348941eee97e54957222562f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__begin__message.html">grpc_begin_message</a> grpc_stream_op::begin_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac153f1a1234aaf27a21c6567b0b675b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } grpc_stream_op::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ca4e5aaf48c9f11d70136448e40e464"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__metadata__batch.html">grpc_metadata_batch</a> grpc_stream_op::metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad997783bc5e527f52ab4434ee5764aee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> grpc_stream_op::slice</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a26c057815c31f49b914bc28481cf9580"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="stream__op_8h.html#af16e06eb1edfe4d93509276f32ed3804">grpc_stream_op_code</a> grpc_stream_op::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="stream__op_8h_source.html">stream_op.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>
diff --git a/doc/ref/core.internal/html/structgrpc__stream__op__buffer.html b/doc/ref/core.internal/html/structgrpc__stream__op__buffer.html
new file mode 100644
index 0000000000..e4a5ba9891
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__stream__op__buffer.html
@@ -0,0 +1,169 @@
+<!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_stream_op_buffer 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_stream_op_buffer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A stream op buffer is a wrapper around stream operations that is dynamically extendable.
+ <a href="structgrpc__stream__op__buffer.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="stream__op_8h_source.html">stream_op.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:adf47a7eadfd9227f876d55a155324975"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op__buffer.html#adf47a7eadfd9227f876d55a155324975">ops</a></td></tr>
+<tr class="separator:adf47a7eadfd9227f876d55a155324975"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b6728e934dd616044c2a796d477551b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op__buffer.html#a7b6728e934dd616044c2a796d477551b">nops</a></td></tr>
+<tr class="separator:a7b6728e934dd616044c2a796d477551b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebf66bcafe3d457104a8812718b2d772"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op__buffer.html#aebf66bcafe3d457104a8812718b2d772">capacity</a></td></tr>
+<tr class="separator:aebf66bcafe3d457104a8812718b2d772"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:addb643aa73745975aae590438b039301"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__stream__op__buffer.html#addb643aa73745975aae590438b039301">inlined_ops</a> [4]</td></tr>
+<tr class="separator:addb643aa73745975aae590438b039301"><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>A stream op buffer is a wrapper around stream operations that is dynamically extendable. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aebf66bcafe3d457104a8812718b2d772"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_stream_op_buffer::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="addb643aa73745975aae590438b039301"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a> grpc_stream_op_buffer::inlined_ops[4]</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b6728e934dd616044c2a796d477551b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_stream_op_buffer::nops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf47a7eadfd9227f876d55a155324975"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op.html">grpc_stream_op</a>* grpc_stream_op_buffer::ops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="stream__op_8h_source.html">stream_op.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>
diff --git a/doc/ref/core.internal/html/structgrpc__subchannel.html b/doc/ref/core.internal/html/structgrpc__subchannel.html
new file mode 100644
index 0000000000..5409b81e9d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__subchannel.html
@@ -0,0 +1,506 @@
+<!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_subchannel 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_subchannel Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a9439dd93e3b5078fb1e2669c327ed984"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a9439dd93e3b5078fb1e2669c327ed984">connector</a></td></tr>
+<tr class="separator:a9439dd93e3b5078fb1e2669c327ed984"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9de51c82bda25cff592acbe7b2866a32"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a9de51c82bda25cff592acbe7b2866a32">filters</a></td></tr>
+<tr class="memdesc:a9de51c82bda25cff592acbe7b2866a32"><td class="mdescLeft">&#160;</td><td class="mdescRight">non-transport related channel filters <a href="#a9de51c82bda25cff592acbe7b2866a32">More...</a><br/></td></tr>
+<tr class="separator:a9de51c82bda25cff592acbe7b2866a32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d8559ba4069f1940a92d6d58d4f4009"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a0d8559ba4069f1940a92d6d58d4f4009">num_filters</a></td></tr>
+<tr class="separator:a0d8559ba4069f1940a92d6d58d4f4009"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ffccab543a55f5ea53d9075f8d88079"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a9ffccab543a55f5ea53d9075f8d88079">args</a></td></tr>
+<tr class="memdesc:a9ffccab543a55f5ea53d9075f8d88079"><td class="mdescLeft">&#160;</td><td class="mdescRight">channel arguments <a href="#a9ffccab543a55f5ea53d9075f8d88079">More...</a><br/></td></tr>
+<tr class="separator:a9ffccab543a55f5ea53d9075f8d88079"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1133699340905f7c7f8c50fc97591647"><td class="memItemLeft" align="right" valign="top">struct sockaddr *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a1133699340905f7c7f8c50fc97591647">addr</a></td></tr>
+<tr class="memdesc:a1133699340905f7c7f8c50fc97591647"><td class="mdescLeft">&#160;</td><td class="mdescRight">address to connect to <a href="#a1133699340905f7c7f8c50fc97591647">More...</a><br/></td></tr>
+<tr class="separator:a1133699340905f7c7f8c50fc97591647"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab74ce5a1e1067a508e74048ec68aea10"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#ab74ce5a1e1067a508e74048ec68aea10">addr_len</a></td></tr>
+<tr class="separator:ab74ce5a1e1067a508e74048ec68aea10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e2040552b5320c9a91a6e080760f96a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a2e2040552b5320c9a91a6e080760f96a">mdctx</a></td></tr>
+<tr class="memdesc:a2e2040552b5320c9a91a6e080760f96a"><td class="mdescLeft">&#160;</td><td class="mdescRight">metadata context <a href="#a2e2040552b5320c9a91a6e080760f96a">More...</a><br/></td></tr>
+<tr class="separator:a2e2040552b5320c9a91a6e080760f96a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7662fa59b78e15ce10c272651e82b70d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a7662fa59b78e15ce10c272651e82b70d">master</a></td></tr>
+<tr class="memdesc:a7662fa59b78e15ce10c272651e82b70d"><td class="mdescLeft">&#160;</td><td class="mdescRight">master channel - the <a class="el" href="structgrpc__channel.html">grpc_channel</a> instance that ultimately owns this <a class="el" href="structchannel__data.html">channel_data</a> via its channel stack. <a href="#a7662fa59b78e15ce10c272651e82b70d">More...</a><br/></td></tr>
+<tr class="separator:a7662fa59b78e15ce10c272651e82b70d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb64d3a8c4d1f0c3b75cda0f97d80c5c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#aeb64d3a8c4d1f0c3b75cda0f97d80c5c">disconnected</a></td></tr>
+<tr class="memdesc:aeb64d3a8c4d1f0c3b75cda0f97d80c5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">have we seen a disconnection? <a href="#aeb64d3a8c4d1f0c3b75cda0f97d80c5c">More...</a><br/></td></tr>
+<tr class="separator:aeb64d3a8c4d1f0c3b75cda0f97d80c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71c47f21609f3dab29311d422360665f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a71c47f21609f3dab29311d422360665f">connecting_result</a></td></tr>
+<tr class="memdesc:a71c47f21609f3dab29311d422360665f"><td class="mdescLeft">&#160;</td><td class="mdescRight">set during connection <a href="#a71c47f21609f3dab29311d422360665f">More...</a><br/></td></tr>
+<tr class="separator:a71c47f21609f3dab29311d422360665f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69b581893484f0f728b780c5a9152bf4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a69b581893484f0f728b780c5a9152bf4">connected</a></td></tr>
+<tr class="memdesc:a69b581893484f0f728b780c5a9152bf4"><td class="mdescLeft">&#160;</td><td class="mdescRight">callback for connection finishing <a href="#a69b581893484f0f728b780c5a9152bf4">More...</a><br/></td></tr>
+<tr class="separator:a69b581893484f0f728b780c5a9152bf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d4cf69a350aa223319ed1d916ae55d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a5d4cf69a350aa223319ed1d916ae55d0">pollset_set</a></td></tr>
+<tr class="memdesc:a5d4cf69a350aa223319ed1d916ae55d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">pollset_set tracking who's interested in a connection being setup - owned by the master channel (in particular the client_channel filter there-in) <a href="#a5d4cf69a350aa223319ed1d916ae55d0">More...</a><br/></td></tr>
+<tr class="separator:a5d4cf69a350aa223319ed1d916ae55d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a020e44ce2c4d73d26c63a4ec9f2f3e14"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a020e44ce2c4d73d26c63a4ec9f2f3e14">mu</a></td></tr>
+<tr class="memdesc:a020e44ce2c4d73d26c63a4ec9f2f3e14"><td class="mdescLeft">&#160;</td><td class="mdescRight">mutex protecting remaining elements <a href="#a020e44ce2c4d73d26c63a4ec9f2f3e14">More...</a><br/></td></tr>
+<tr class="separator:a020e44ce2c4d73d26c63a4ec9f2f3e14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9095183eaf77899e3b932d3445cfa45b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structconnection.html">connection</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a9095183eaf77899e3b932d3445cfa45b">active</a></td></tr>
+<tr class="memdesc:a9095183eaf77899e3b932d3445cfa45b"><td class="mdescLeft">&#160;</td><td class="mdescRight">active connection <a href="#a9095183eaf77899e3b932d3445cfa45b">More...</a><br/></td></tr>
+<tr class="separator:a9095183eaf77899e3b932d3445cfa45b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6569eb7df7abc7fd022ff8c1a6ce2ae1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a6569eb7df7abc7fd022ff8c1a6ce2ae1">active_version</a></td></tr>
+<tr class="memdesc:a6569eb7df7abc7fd022ff8c1a6ce2ae1"><td class="mdescLeft">&#160;</td><td class="mdescRight">version number for the active connection <a href="#a6569eb7df7abc7fd022ff8c1a6ce2ae1">More...</a><br/></td></tr>
+<tr class="separator:a6569eb7df7abc7fd022ff8c1a6ce2ae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab4a1c366594861d4aa0da8b4ec9a3475"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#ab4a1c366594861d4aa0da8b4ec9a3475">refs</a></td></tr>
+<tr class="memdesc:ab4a1c366594861d4aa0da8b4ec9a3475"><td class="mdescLeft">&#160;</td><td class="mdescRight">refcount <a href="#ab4a1c366594861d4aa0da8b4ec9a3475">More...</a><br/></td></tr>
+<tr class="separator:ab4a1c366594861d4aa0da8b4ec9a3475"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a084840ded6075b823c3572c504694635"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a084840ded6075b823c3572c504694635">connecting</a></td></tr>
+<tr class="memdesc:a084840ded6075b823c3572c504694635"><td class="mdescLeft">&#160;</td><td class="mdescRight">are we connecting <a href="#a084840ded6075b823c3572c504694635">More...</a><br/></td></tr>
+<tr class="separator:a084840ded6075b823c3572c504694635"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86222e4f70c6a36a9345ce2388f94e22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a86222e4f70c6a36a9345ce2388f94e22">waiting</a></td></tr>
+<tr class="memdesc:a86222e4f70c6a36a9345ce2388f94e22"><td class="mdescLeft">&#160;</td><td class="mdescRight">things waiting for a connection <a href="#a86222e4f70c6a36a9345ce2388f94e22">More...</a><br/></td></tr>
+<tr class="separator:a86222e4f70c6a36a9345ce2388f94e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9e337eebe13100918b0c1178233d64d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#af9e337eebe13100918b0c1178233d64d">state_tracker</a></td></tr>
+<tr class="memdesc:af9e337eebe13100918b0c1178233d64d"><td class="mdescLeft">&#160;</td><td class="mdescRight">connectivity state tracking <a href="#af9e337eebe13100918b0c1178233d64d">More...</a><br/></td></tr>
+<tr class="separator:af9e337eebe13100918b0c1178233d64d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ee4fc265d48aad4c76411a80001ac5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a6ee4fc265d48aad4c76411a80001ac5c">next_attempt</a></td></tr>
+<tr class="memdesc:a6ee4fc265d48aad4c76411a80001ac5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">next connect attempt time <a href="#a6ee4fc265d48aad4c76411a80001ac5c">More...</a><br/></td></tr>
+<tr class="separator:a6ee4fc265d48aad4c76411a80001ac5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a337c8cb56f9a249ca181ddc1f5999af5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a337c8cb56f9a249ca181ddc1f5999af5">backoff_delta</a></td></tr>
+<tr class="memdesc:a337c8cb56f9a249ca181ddc1f5999af5"><td class="mdescLeft">&#160;</td><td class="mdescRight">amount to backoff each failure <a href="#a337c8cb56f9a249ca181ddc1f5999af5">More...</a><br/></td></tr>
+<tr class="separator:a337c8cb56f9a249ca181ddc1f5999af5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04c16f8c09717fcda07708f4d2924e30"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#a04c16f8c09717fcda07708f4d2924e30">have_alarm</a></td></tr>
+<tr class="memdesc:a04c16f8c09717fcda07708f4d2924e30"><td class="mdescLeft">&#160;</td><td class="mdescRight">do we have an active alarm? <a href="#a04c16f8c09717fcda07708f4d2924e30">More...</a><br/></td></tr>
+<tr class="separator:a04c16f8c09717fcda07708f4d2924e30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af42dd9bca8055a7afb3415f857ca28fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html#af42dd9bca8055a7afb3415f857ca28fa">alarm</a></td></tr>
+<tr class="memdesc:af42dd9bca8055a7afb3415f857ca28fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">our alarm <a href="#af42dd9bca8055a7afb3415f857ca28fa">More...</a><br/></td></tr>
+<tr class="separator:af42dd9bca8055a7afb3415f857ca28fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf1f3f4c177860b9b000fea1c67e4af6"><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__subchannel.html#aaf1f3f4c177860b9b000fea1c67e4af6">random</a></td></tr>
+<tr class="memdesc:aaf1f3f4c177860b9b000fea1c67e4af6"><td class="mdescLeft">&#160;</td><td class="mdescRight">current random value <a href="#aaf1f3f4c177860b9b000fea1c67e4af6">More...</a><br/></td></tr>
+<tr class="separator:aaf1f3f4c177860b9b000fea1c67e4af6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9095183eaf77899e3b932d3445cfa45b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structconnection.html">connection</a>* grpc_subchannel::active</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>active connection </p>
+
+</div>
+</div>
+<a class="anchor" id="a6569eb7df7abc7fd022ff8c1a6ce2ae1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_subchannel::active_version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>version number for the active connection </p>
+
+</div>
+</div>
+<a class="anchor" id="a1133699340905f7c7f8c50fc97591647"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct sockaddr* grpc_subchannel::addr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>address to connect to </p>
+
+</div>
+</div>
+<a class="anchor" id="ab74ce5a1e1067a508e74048ec68aea10"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_subchannel::addr_len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af42dd9bca8055a7afb3415f857ca28fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> grpc_subchannel::alarm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>our alarm </p>
+
+</div>
+</div>
+<a class="anchor" id="a9ffccab543a55f5ea53d9075f8d88079"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_subchannel::args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>channel arguments </p>
+
+</div>
+</div>
+<a class="anchor" id="a337c8cb56f9a249ca181ddc1f5999af5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_subchannel::backoff_delta</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>amount to backoff each failure </p>
+
+</div>
+</div>
+<a class="anchor" id="a69b581893484f0f728b780c5a9152bf4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_subchannel::connected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>callback for connection finishing </p>
+
+</div>
+</div>
+<a class="anchor" id="a084840ded6075b823c3572c504694635"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_subchannel::connecting</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>are we connecting </p>
+
+</div>
+</div>
+<a class="anchor" id="a71c47f21609f3dab29311d422360665f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connect__out__args.html">grpc_connect_out_args</a> grpc_subchannel::connecting_result</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>set during connection </p>
+
+</div>
+</div>
+<a class="anchor" id="a9439dd93e3b5078fb1e2669c327ed984"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connector.html">grpc_connector</a>* grpc_subchannel::connector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb64d3a8c4d1f0c3b75cda0f97d80c5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_subchannel::disconnected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have we seen a disconnection? </p>
+
+</div>
+</div>
+<a class="anchor" id="a9de51c82bda25cff592acbe7b2866a32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>** grpc_subchannel::filters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>non-transport related channel filters </p>
+
+</div>
+</div>
+<a class="anchor" id="a04c16f8c09717fcda07708f4d2924e30"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_subchannel::have_alarm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>do we have an active alarm? </p>
+
+</div>
+</div>
+<a class="anchor" id="a7662fa59b78e15ce10c272651e82b70d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_subchannel::master</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>master channel - the <a class="el" href="structgrpc__channel.html">grpc_channel</a> instance that ultimately owns this <a class="el" href="structchannel__data.html">channel_data</a> via its channel stack. </p>
+<p>We occasionally use this to bump the refcount on the master channel to keep ourselves alive through an asynchronous operation. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2e2040552b5320c9a91a6e080760f96a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_subchannel::mdctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>metadata context </p>
+
+</div>
+</div>
+<a class="anchor" id="a020e44ce2c4d73d26c63a4ec9f2f3e14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_subchannel::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mutex protecting remaining elements </p>
+
+</div>
+</div>
+<a class="anchor" id="a6ee4fc265d48aad4c76411a80001ac5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> grpc_subchannel::next_attempt</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>next connect attempt time </p>
+
+</div>
+</div>
+<a class="anchor" id="a0d8559ba4069f1940a92d6d58d4f4009"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_subchannel::num_filters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5d4cf69a350aa223319ed1d916ae55d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>* grpc_subchannel::pollset_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pollset_set tracking who's interested in a connection being setup - owned by the master channel (in particular the client_channel filter there-in) </p>
+
+</div>
+</div>
+<a class="anchor" id="aaf1f3f4c177860b9b000fea1c67e4af6"></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_subchannel::random</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>current random value </p>
+
+</div>
+</div>
+<a class="anchor" id="ab4a1c366594861d4aa0da8b4ec9a3475"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_subchannel::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>refcount </p>
+
+</div>
+</div>
+<a class="anchor" id="af9e337eebe13100918b0c1178233d64d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> grpc_subchannel::state_tracker</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>connectivity state tracking </p>
+
+</div>
+</div>
+<a class="anchor" id="a86222e4f70c6a36a9345ce2388f94e22"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a>* grpc_subchannel::waiting</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>things waiting for a connection </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel_8c.html">subchannel.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__subchannel__args.html b/doc/ref/core.internal/html/structgrpc__subchannel__args.html
new file mode 100644
index 0000000000..0e40995598
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__subchannel__args.html
@@ -0,0 +1,224 @@
+<!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_subchannel_args 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_subchannel_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="subchannel_8h_source.html">subchannel.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:abdab22dc8a8437e6f4dda191b14130ab"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab">filters</a></td></tr>
+<tr class="memdesc:abdab22dc8a8437e6f4dda191b14130ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel filters for this channel - wrapped factories will likely want to mutate this. <a href="#abdab22dc8a8437e6f4dda191b14130ab">More...</a><br/></td></tr>
+<tr class="separator:abdab22dc8a8437e6f4dda191b14130ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a86f02c0c24e32a063be3532e7dd128"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128">filter_count</a></td></tr>
+<tr class="memdesc:a2a86f02c0c24e32a063be3532e7dd128"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of filters in the above array. <a href="#a2a86f02c0c24e32a063be3532e7dd128">More...</a><br/></td></tr>
+<tr class="separator:a2a86f02c0c24e32a063be3532e7dd128"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef192a6424f47e0830b60102215ad081"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081">args</a></td></tr>
+<tr class="memdesc:aef192a6424f47e0830b60102215ad081"><td class="mdescLeft">&#160;</td><td class="mdescRight">Channel arguments to be supplied to the newly created channel. <a href="#aef192a6424f47e0830b60102215ad081">More...</a><br/></td></tr>
+<tr class="separator:aef192a6424f47e0830b60102215ad081"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70a5fadf5d3d346932fd6140c6bc7fcb"><td class="memItemLeft" align="right" valign="top">struct sockaddr *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb">addr</a></td></tr>
+<tr class="memdesc:a70a5fadf5d3d346932fd6140c6bc7fcb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Address to connect to. <a href="#a70a5fadf5d3d346932fd6140c6bc7fcb">More...</a><br/></td></tr>
+<tr class="separator:a70a5fadf5d3d346932fd6140c6bc7fcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a971dc93e9701406ff4b38e62a6b93026"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026">addr_len</a></td></tr>
+<tr class="separator:a971dc93e9701406ff4b38e62a6b93026"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b12c4bb3d78ac8e92cfa31d23ac5477"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477">mdctx</a></td></tr>
+<tr class="memdesc:a7b12c4bb3d78ac8e92cfa31d23ac5477"><td class="mdescLeft">&#160;</td><td class="mdescRight">metadata context to use <a href="#a7b12c4bb3d78ac8e92cfa31d23ac5477">More...</a><br/></td></tr>
+<tr class="separator:a7b12c4bb3d78ac8e92cfa31d23ac5477"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a638843df1c8557f4218b05eabb9b3275"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275">master</a></td></tr>
+<tr class="memdesc:a638843df1c8557f4218b05eabb9b3275"><td class="mdescLeft">&#160;</td><td class="mdescRight">master channel <a href="#a638843df1c8557f4218b05eabb9b3275">More...</a><br/></td></tr>
+<tr class="separator:a638843df1c8557f4218b05eabb9b3275"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a70a5fadf5d3d346932fd6140c6bc7fcb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct sockaddr* grpc_subchannel_args::addr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Address to connect to. </p>
+
+</div>
+</div>
+<a class="anchor" id="a971dc93e9701406ff4b38e62a6b93026"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_subchannel_args::addr_len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef192a6424f47e0830b60102215ad081"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* grpc_subchannel_args::args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Channel arguments to be supplied to the newly created channel. </p>
+
+</div>
+</div>
+<a class="anchor" id="a2a86f02c0c24e32a063be3532e7dd128"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_subchannel_args::filter_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The number of filters in the above array. </p>
+
+</div>
+</div>
+<a class="anchor" id="abdab22dc8a8437e6f4dda191b14130ab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__channel__filter.html">grpc_channel_filter</a>** grpc_subchannel_args::filters</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Channel filters for this channel - wrapped factories will likely want to mutate this. </p>
+
+</div>
+</div>
+<a class="anchor" id="a638843df1c8557f4218b05eabb9b3275"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* grpc_subchannel_args::master</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>master channel </p>
+
+</div>
+</div>
+<a class="anchor" id="a7b12c4bb3d78ac8e92cfa31d23ac5477"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_subchannel_args::mdctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>metadata context to use </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel_8h_source.html">subchannel.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>
diff --git a/doc/ref/core.internal/html/structgrpc__subchannel__call.html b/doc/ref/core.internal/html/structgrpc__subchannel__call.html
new file mode 100644
index 0000000000..a9500abe79
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__subchannel__call.html
@@ -0,0 +1,134 @@
+<!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_subchannel_call 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_subchannel_call Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1eb7f2be785456f81008f984d80f8ac6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structconnection.html">connection</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__call.html#a1eb7f2be785456f81008f984d80f8ac6">connection</a></td></tr>
+<tr class="separator:a1eb7f2be785456f81008f984d80f8ac6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a74891e108fd0a94a2915e828c2a172c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__call.html#a74891e108fd0a94a2915e828c2a172c5">refs</a></td></tr>
+<tr class="separator:a74891e108fd0a94a2915e828c2a172c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1eb7f2be785456f81008f984d80f8ac6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structconnection.html">connection</a>* grpc_subchannel_call::connection</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a74891e108fd0a94a2915e828c2a172c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_subchannel_call::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel_8c.html">subchannel.c</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>
diff --git a/doc/ref/core.internal/html/structgrpc__subchannel__factory.html b/doc/ref/core.internal/html/structgrpc__subchannel__factory.html
new file mode 100644
index 0000000000..2c7a36bb51
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__subchannel__factory.html
@@ -0,0 +1,129 @@
+<!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_subchannel_factory 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_subchannel_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Constructor for new configured channels.
+ <a href="structgrpc__subchannel__factory.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="subchannel__factory_8h_source.html">subchannel_factory.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:a41a36a12bfcc66b72cba6bda47f00b51"><td class="memItemLeft" align="right" valign="top">const <br class="typebreak"/>
+<a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51">vtable</a></td></tr>
+<tr class="separator:a41a36a12bfcc66b72cba6bda47f00b51"><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>Constructor for new configured channels. </p>
+<p>Creating decorators around this type is encouraged to adapt behavior. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a41a36a12bfcc66b72cba6bda47f00b51"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a>* grpc_subchannel_factory::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel__factory_8h_source.html">subchannel_factory.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>
diff --git a/doc/ref/core.internal/html/structgrpc__subchannel__factory__vtable.html b/doc/ref/core.internal/html/structgrpc__subchannel__factory__vtable.html
new file mode 100644
index 0000000000..09bdfb0a47
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__subchannel__factory__vtable.html
@@ -0,0 +1,150 @@
+<!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_subchannel_factory_vtable 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_subchannel_factory_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="subchannel__factory_8h_source.html">subchannel_factory.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:a89c654ab7f05b8108977771ec6e7e3ed"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed">ref</a> )(<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td></tr>
+<tr class="separator:a89c654ab7f05b8108977771ec6e7e3ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5550b5e9f61e0ee34c9c0e782bab734a"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a">unref</a> )(<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td></tr>
+<tr class="separator:a5550b5e9f61e0ee34c9c0e782bab734a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a25972ec53ef7aa219669847b7cbb515d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__factory__vtable.html#a25972ec53ef7aa219669847b7cbb515d">create_subchannel</a> )(<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory, <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args)</td></tr>
+<tr class="separator:a25972ec53ef7aa219669847b7cbb515d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a25972ec53ef7aa219669847b7cbb515d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>*(* grpc_subchannel_factory_vtable::create_subchannel)(<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory, <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a89c654ab7f05b8108977771ec6e7e3ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_subchannel_factory_vtable::ref)(<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5550b5e9f61e0ee34c9c0e782bab734a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_subchannel_factory_vtable::unref)(<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel__factory_8h_source.html">subchannel_factory.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>
diff --git a/doc/ref/core.internal/html/structgrpc__time__averaged__stats.html b/doc/ref/core.internal/html/structgrpc__time__averaged__stats.html
new file mode 100644
index 0000000000..561d3f886d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__time__averaged__stats.html
@@ -0,0 +1,206 @@
+<!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_time_averaged_stats 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_time_averaged_stats Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="time__averaged__stats_8h_source.html">time_averaged_stats.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:aa1aedfcd876bdec50aab3e1da6bec224"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224">init_avg</a></td></tr>
+<tr class="separator:aa1aedfcd876bdec50aab3e1da6bec224"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a24abd6f81483e9b6cecfa39eefffd70d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d">regress_weight</a></td></tr>
+<tr class="separator:a24abd6f81483e9b6cecfa39eefffd70d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adbadac315658d04556d28685266f1602"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602">persistence_factor</a></td></tr>
+<tr class="separator:adbadac315658d04556d28685266f1602"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87b5877b79ff41a32b12065ce4e0273b"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b">batch_total_value</a></td></tr>
+<tr class="separator:a87b5877b79ff41a32b12065ce4e0273b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a630c3447f5023f4ab790a311ec93f6fb"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb">batch_num_samples</a></td></tr>
+<tr class="separator:a630c3447f5023f4ab790a311ec93f6fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85043e8ac6f293e2e74c8e93cf8660f1"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1">aggregate_total_weight</a></td></tr>
+<tr class="separator:a85043e8ac6f293e2e74c8e93cf8660f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ba895378c9c903375bbe3d153aae2ab"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab">aggregate_weighted_avg</a></td></tr>
+<tr class="separator:a0ba895378c9c903375bbe3d153aae2ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a85043e8ac6f293e2e74c8e93cf8660f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::aggregate_total_weight</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ba895378c9c903375bbe3d153aae2ab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::aggregate_weighted_avg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a630c3447f5023f4ab790a311ec93f6fb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::batch_num_samples</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87b5877b79ff41a32b12065ce4e0273b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::batch_total_value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa1aedfcd876bdec50aab3e1da6bec224"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::init_avg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adbadac315658d04556d28685266f1602"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::persistence_factor</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a24abd6f81483e9b6cecfa39eefffd70d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats::regress_weight</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="time__averaged__stats_8h_source.html">time_averaged_stats.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>
diff --git a/doc/ref/core.internal/html/structgrpc__transport.html b/doc/ref/core.internal/html/structgrpc__transport.html
new file mode 100644
index 0000000000..5004ba1c46
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__transport.html
@@ -0,0 +1,122 @@
+<!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_transport 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_transport Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__impl_8h_source.html">transport_impl.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:a8cb3afbd2614b5ffcda4adc56c8cb007"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007">vtable</a></td></tr>
+<tr class="separator:a8cb3afbd2614b5ffcda4adc56c8cb007"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8cb3afbd2614b5ffcda4adc56c8cb007"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a>* grpc_transport::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="transport__impl_8h_source.html">transport_impl.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>
diff --git a/doc/ref/core.internal/html/structgrpc__transport__op.html b/doc/ref/core.internal/html/structgrpc__transport__op.html
new file mode 100644
index 0000000000..9f10beac66
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__transport__op.html
@@ -0,0 +1,308 @@
+<!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_transport_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_transport_op Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Transport op: a set of operations to perform on a transport as a whole.
+ <a href="structgrpc__transport__op.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="transport_8h_source.html">transport.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:a7a602604dff1707699650659639d3b8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a">on_consumed</a></td></tr>
+<tr class="memdesc:a7a602604dff1707699650659639d3b8a"><td class="mdescLeft">&#160;</td><td class="mdescRight">called when processing of this op is done <a href="#a7a602604dff1707699650659639d3b8a">More...</a><br/></td></tr>
+<tr class="separator:a7a602604dff1707699650659639d3b8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb87801e77b1728a01f374dcf78bb953"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953">on_connectivity_state_change</a></td></tr>
+<tr class="memdesc:adb87801e77b1728a01f374dcf78bb953"><td class="mdescLeft">&#160;</td><td class="mdescRight">connectivity monitoring <a href="#adb87801e77b1728a01f374dcf78bb953">More...</a><br/></td></tr>
+<tr class="separator:adb87801e77b1728a01f374dcf78bb953"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae68e6030500899af6788152a0a567c9d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d">connectivity_state</a></td></tr>
+<tr class="separator:ae68e6030500899af6788152a0a567c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a280ecb11f206deb671cb0d9e8a20434b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b">disconnect</a></td></tr>
+<tr class="memdesc:a280ecb11f206deb671cb0d9e8a20434b"><td class="mdescLeft">&#160;</td><td class="mdescRight">should the transport be disconnected <a href="#a280ecb11f206deb671cb0d9e8a20434b">More...</a><br/></td></tr>
+<tr class="separator:a280ecb11f206deb671cb0d9e8a20434b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aceb73c54b2b677eec23a2bb1507c4704"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704">send_goaway</a></td></tr>
+<tr class="memdesc:aceb73c54b2b677eec23a2bb1507c4704"><td class="mdescLeft">&#160;</td><td class="mdescRight">should we send a goaway? after a goaway is sent, once there are no more active calls on the transport, the transport should disconnect <a href="#aceb73c54b2b677eec23a2bb1507c4704">More...</a><br/></td></tr>
+<tr class="separator:aceb73c54b2b677eec23a2bb1507c4704"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2bc4c019576243679b671f5cebd6000f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f">goaway_status</a></td></tr>
+<tr class="memdesc:a2bc4c019576243679b671f5cebd6000f"><td class="mdescLeft">&#160;</td><td class="mdescRight">what should the goaway contain? <a href="#a2bc4c019576243679b671f5cebd6000f">More...</a><br/></td></tr>
+<tr class="separator:a2bc4c019576243679b671f5cebd6000f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4862d8029894b6640d2261694e21293"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293">goaway_message</a></td></tr>
+<tr class="separator:ad4862d8029894b6640d2261694e21293"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabc2f197291cd94543ea984eaf8a61f8"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8">set_accept_stream</a> )(void *user_data, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, const void *server_data)</td></tr>
+<tr class="memdesc:aabc2f197291cd94543ea984eaf8a61f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the callback for accepting new streams; this is a permanent callback, unlike the other one-shot closures <a href="#aabc2f197291cd94543ea984eaf8a61f8">More...</a><br/></td></tr>
+<tr class="separator:aabc2f197291cd94543ea984eaf8a61f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4591bfe47e9155982ad2d25a7750e17f"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f">set_accept_stream_user_data</a></td></tr>
+<tr class="separator:a4591bfe47e9155982ad2d25a7750e17f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaed4d0f2349649d83e662cd69fbe9b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2">bind_pollset</a></td></tr>
+<tr class="memdesc:aeaed4d0f2349649d83e662cd69fbe9b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">add this transport to a pollset <a href="#aeaed4d0f2349649d83e662cd69fbe9b2">More...</a><br/></td></tr>
+<tr class="separator:aeaed4d0f2349649d83e662cd69fbe9b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ab2143e7e598667e29f3366722c07a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3">bind_pollset_set</a></td></tr>
+<tr class="memdesc:a4ab2143e7e598667e29f3366722c07a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">add this transport to a pollset_set <a href="#a4ab2143e7e598667e29f3366722c07a3">More...</a><br/></td></tr>
+<tr class="separator:a4ab2143e7e598667e29f3366722c07a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abebcf932a4fa8d14006230dee06e0286"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286">send_ping</a></td></tr>
+<tr class="memdesc:abebcf932a4fa8d14006230dee06e0286"><td class="mdescLeft">&#160;</td><td class="mdescRight">send a ping, call this back if not NULL <a href="#abebcf932a4fa8d14006230dee06e0286">More...</a><br/></td></tr>
+<tr class="separator:abebcf932a4fa8d14006230dee06e0286"><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>Transport op: a set of operations to perform on a transport as a whole. </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aeaed4d0f2349649d83e662cd69fbe9b2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* grpc_transport_op::bind_pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>add this transport to a pollset </p>
+
+</div>
+</div>
+<a class="anchor" id="a4ab2143e7e598667e29f3366722c07a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a>* grpc_transport_op::bind_pollset_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>add this transport to a pollset_set </p>
+
+</div>
+</div>
+<a class="anchor" id="ae68e6030500899af6788152a0a567c9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>* grpc_transport_op::connectivity_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a280ecb11f206deb671cb0d9e8a20434b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_transport_op::disconnect</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>should the transport be disconnected </p>
+
+</div>
+</div>
+<a class="anchor" id="ad4862d8029894b6640d2261694e21293"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a>* grpc_transport_op::goaway_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2bc4c019576243679b671f5cebd6000f"></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_transport_op::goaway_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>what should the goaway contain? </p>
+
+</div>
+</div>
+<a class="anchor" id="adb87801e77b1728a01f374dcf78bb953"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_transport_op::on_connectivity_state_change</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>connectivity monitoring </p>
+
+</div>
+</div>
+<a class="anchor" id="a7a602604dff1707699650659639d3b8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_transport_op::on_consumed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>called when processing of this op is done </p>
+
+</div>
+</div>
+<a class="anchor" id="aceb73c54b2b677eec23a2bb1507c4704"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_transport_op::send_goaway</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>should we send a goaway? after a goaway is sent, once there are no more active calls on the transport, the transport should disconnect </p>
+
+</div>
+</div>
+<a class="anchor" id="abebcf932a4fa8d14006230dee06e0286"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_transport_op::send_ping</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>send a ping, call this back if not NULL </p>
+
+</div>
+</div>
+<a class="anchor" id="aabc2f197291cd94543ea984eaf8a61f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_transport_op::set_accept_stream)(void *user_data, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, const void *server_data)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>set the callback for accepting new streams; this is a permanent callback, unlike the other one-shot closures </p>
+
+</div>
+</div>
+<a class="anchor" id="a4591bfe47e9155982ad2d25a7750e17f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_transport_op::set_accept_stream_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="transport_8h_source.html">transport.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>
diff --git a/doc/ref/core.internal/html/structgrpc__transport__stream__op.html b/doc/ref/core.internal/html/structgrpc__transport__stream__op.html
new file mode 100644
index 0000000000..434a740f37
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__transport__stream__op.html
@@ -0,0 +1,266 @@
+<!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_transport_stream_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_transport_stream_op Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport_8h_source.html">transport.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:a7cd4239411c42b2db4271bde0cbc5d93"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93">on_consumed</a></td></tr>
+<tr class="separator:a7cd4239411c42b2db4271bde0cbc5d93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa94e5103c8d9845533016b1dac0c1691"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691">send_ops</a></td></tr>
+<tr class="separator:aa94e5103c8d9845533016b1dac0c1691"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43d850c3001e92b407b78866d615696f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f">is_last_send</a></td></tr>
+<tr class="separator:a43d850c3001e92b407b78866d615696f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c70f894512830f2c77280139a12da07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07">on_done_send</a></td></tr>
+<tr class="separator:a7c70f894512830f2c77280139a12da07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd84b0fc93fa58092d4803c4c46e5991"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991">recv_ops</a></td></tr>
+<tr class="separator:abd84b0fc93fa58092d4803c4c46e5991"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4505fafa286964d362de807efddf0fc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc">recv_state</a></td></tr>
+<tr class="separator:ae4505fafa286964d362de807efddf0fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5128bc8ec8613950cbb3037d56f8375b"><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__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b">max_recv_bytes</a></td></tr>
+<tr class="memdesc:a5128bc8ec8613950cbb3037d56f8375b"><td class="mdescLeft">&#160;</td><td class="mdescRight">The number of bytes this peer is currently prepared to receive. <a href="#a5128bc8ec8613950cbb3037d56f8375b">More...</a><br/></td></tr>
+<tr class="separator:a5128bc8ec8613950cbb3037d56f8375b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc8ad987231498734088ce324651a479"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479">on_done_recv</a></td></tr>
+<tr class="separator:abc8ad987231498734088ce324651a479"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d6fc4a4607cb5e19255328c69dbbbc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4">bind_pollset</a></td></tr>
+<tr class="separator:a8d6fc4a4607cb5e19255328c69dbbbc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb409a2d4224410aec876a3a7e5443bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf">cancel_with_status</a></td></tr>
+<tr class="separator:aeb409a2d4224410aec876a3a7e5443bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d81e12c698cc0a088a0b48eb2250cae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__context__element.html">grpc_call_context_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae">context</a></td></tr>
+<tr class="separator:a0d81e12c698cc0a088a0b48eb2250cae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8d6fc4a4607cb5e19255328c69dbbbc4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* grpc_transport_stream_op::bind_pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb409a2d4224410aec876a3a7e5443bf"></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_transport_stream_op::cancel_with_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d81e12c698cc0a088a0b48eb2250cae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__context__element.html">grpc_call_context_element</a>* grpc_transport_stream_op::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43d850c3001e92b407b78866d615696f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_transport_stream_op::is_last_send</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5128bc8ec8613950cbb3037d56f8375b"></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_transport_stream_op::max_recv_bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>The number of bytes this peer is currently prepared to receive. </p>
+<p>These bytes will be eventually used to replenish per-stream flow control windows. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7cd4239411c42b2db4271bde0cbc5d93"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_transport_stream_op::on_consumed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc8ad987231498734088ce324651a479"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_transport_stream_op::on_done_recv</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7c70f894512830f2c77280139a12da07"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* grpc_transport_stream_op::on_done_send</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abd84b0fc93fa58092d4803c4c46e5991"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>* grpc_transport_stream_op::recv_ops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae4505fafa286964d362de807efddf0fc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>* grpc_transport_stream_op::recv_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa94e5103c8d9845533016b1dac0c1691"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a>* grpc_transport_stream_op::send_ops</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="transport_8h_source.html">transport.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>
diff --git a/doc/ref/core.internal/html/structgrpc__transport__vtable.html b/doc/ref/core.internal/html/structgrpc__transport__vtable.html
new file mode 100644
index 0000000000..be4377b44c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__transport__vtable.html
@@ -0,0 +1,206 @@
+<!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_transport_vtable 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_transport_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__impl_8h_source.html">transport_impl.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:a1c229a26492c888075645a15f4f8182f"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f">sizeof_stream</a></td></tr>
+<tr class="separator:a1c229a26492c888075645a15f4f8182f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32caae908e80e87783bf55b80c81e13f"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f">init_stream</a> )(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, const void *server_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op)</td></tr>
+<tr class="separator:a32caae908e80e87783bf55b80c81e13f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8da19f0fe97ddb546e1deafe65b6e4ab"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab">perform_stream_op</a> )(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:a8da19f0fe97ddb546e1deafe65b6e4ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acbb2ddc453b481e3b682f9dc5f612ac4"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4">perform_op</a> )(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:acbb2ddc453b481e3b682f9dc5f612ac4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef80dd063f930216ef6b34d7847bf34b"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b">destroy_stream</a> )(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream)</td></tr>
+<tr class="separator:aef80dd063f930216ef6b34d7847bf34b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d99f3901ef6e1cada6154b92ff5f3cf"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf">destroy</a> )(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self)</td></tr>
+<tr class="separator:a0d99f3901ef6e1cada6154b92ff5f3cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a763d8c95adc9c74dae02a58557e001ed"><td class="memItemLeft" align="right" valign="top">char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html#a763d8c95adc9c74dae02a58557e001ed">get_peer</a> )(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self)</td></tr>
+<tr class="separator:a763d8c95adc9c74dae02a58557e001ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a0d99f3901ef6e1cada6154b92ff5f3cf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_transport_vtable::destroy)(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aef80dd063f930216ef6b34d7847bf34b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_transport_vtable::destroy_stream)(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a763d8c95adc9c74dae02a58557e001ed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char*(* grpc_transport_vtable::get_peer)(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a32caae908e80e87783bf55b80c81e13f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* grpc_transport_vtable::init_stream)(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, const void *server_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acbb2ddc453b481e3b682f9dc5f612ac4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_transport_vtable::perform_op)(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8da19f0fe97ddb546e1deafe65b6e4ab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_transport_vtable::perform_stream_op)(<a class="el" href="structgrpc__transport.html">grpc_transport</a> *self, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1c229a26492c888075645a15f4f8182f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_transport_vtable::sizeof_stream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="transport__impl_8h_source.html">transport_impl.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>
diff --git a/doc/ref/core.internal/html/structgrpc__uri.html b/doc/ref/core.internal/html/structgrpc__uri.html
new file mode 100644
index 0000000000..7448d6363d
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__uri.html
@@ -0,0 +1,150 @@
+<!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_uri 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_uri Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="uri__parser_8h_source.html">uri_parser.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:a6163de89ece765552254810174fdfc32"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__uri.html#a6163de89ece765552254810174fdfc32">scheme</a></td></tr>
+<tr class="separator:a6163de89ece765552254810174fdfc32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a45c46df3b35b7f1ce728ea22c9d5dde7"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7">authority</a></td></tr>
+<tr class="separator:a45c46df3b35b7f1ce728ea22c9d5dde7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9930f3989c76fd5b36dc63943190e40f"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f">path</a></td></tr>
+<tr class="separator:a9930f3989c76fd5b36dc63943190e40f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a45c46df3b35b7f1ce728ea22c9d5dde7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_uri::authority</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9930f3989c76fd5b36dc63943190e40f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_uri::path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6163de89ece765552254810174fdfc32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_uri::scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="uri__parser_8h_source.html">uri_parser.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>
diff --git a/doc/ref/core.internal/html/structgrpc__wakeup__fd__info.html b/doc/ref/core.internal/html/structgrpc__wakeup__fd__info.html
new file mode 100644
index 0000000000..7cc9508425
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__wakeup__fd__info.html
@@ -0,0 +1,136 @@
+<!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_wakeup_fd_info 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_wakeup_fd_info Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="wakeup__fd__posix_8h_source.html">wakeup_fd_posix.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:ab7484c58e72718ae50ab1bb094fecf86"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86">read_fd</a></td></tr>
+<tr class="separator:ab7484c58e72718ae50ab1bb094fecf86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7e8536d8e32a9c4e98294dfa2b98f28f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f">write_fd</a></td></tr>
+<tr class="separator:a7e8536d8e32a9c4e98294dfa2b98f28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ab7484c58e72718ae50ab1bb094fecf86"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_wakeup_fd_info::read_fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7e8536d8e32a9c4e98294dfa2b98f28f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_wakeup_fd_info::write_fd</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="wakeup__fd__posix_8h_source.html">wakeup_fd_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__wakeup__fd__vtable.html b/doc/ref/core.internal/html/structgrpc__wakeup__fd__vtable.html
new file mode 100644
index 0000000000..0581fc37fa
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__wakeup__fd__vtable.html
@@ -0,0 +1,178 @@
+<!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_wakeup_fd_vtable 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_wakeup_fd_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="wakeup__fd__posix_8h_source.html">wakeup_fd_posix.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:aebd377bd042b46aa79be6fdeeb9e139e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e">create</a> )(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:aebd377bd042b46aa79be6fdeeb9e139e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d03e580e5ac38e408454678f0db7b5e"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e">consume</a> )(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:a6d03e580e5ac38e408454678f0db7b5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a454fa9945c56e646245eb00b1f387a5f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f">wakeup</a> )(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:a454fa9945c56e646245eb00b1f387a5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4c3b97bfad7575b7a98e07c6b10fbd2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2">destroy</a> )(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:ac4c3b97bfad7575b7a98e07c6b10fbd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae86eb136235fd51cbf4d459880ea6d04"><td class="memItemLeft" align="right" valign="top">int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04">check_availability</a> )(void)</td></tr>
+<tr class="separator:ae86eb136235fd51cbf4d459880ea6d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae86eb136235fd51cbf4d459880ea6d04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int(* grpc_wakeup_fd_vtable::check_availability)(void)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d03e580e5ac38e408454678f0db7b5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_wakeup_fd_vtable::consume)(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aebd377bd042b46aa79be6fdeeb9e139e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_wakeup_fd_vtable::create)(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4c3b97bfad7575b7a98e07c6b10fbd2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_wakeup_fd_vtable::destroy)(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a454fa9945c56e646245eb00b1f387a5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_wakeup_fd_vtable::wakeup)(<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="wakeup__fd__posix_8h_source.html">wakeup_fd_posix.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>
diff --git a/doc/ref/core.internal/html/structgrpc__winsocket.html b/doc/ref/core.internal/html/structgrpc__winsocket.html
new file mode 100644
index 0000000000..9893ee6f4c
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__winsocket.html
@@ -0,0 +1,220 @@
+<!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_winsocket 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_winsocket Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="socket__windows_8h_source.html">socket_windows.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:a8d07ea451fe145f30415952e4a78d03d"><td class="memItemLeft" align="right" valign="top">SOCKET&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#a8d07ea451fe145f30415952e4a78d03d">socket</a></td></tr>
+<tr class="separator:a8d07ea451fe145f30415952e4a78d03d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c0eeccc3a3cbfbb28d172a7c42a0bd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#a8c0eeccc3a3cbfbb28d172a7c42a0bd6">write_info</a></td></tr>
+<tr class="separator:a8c0eeccc3a3cbfbb28d172a7c42a0bd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae268de02b0b0ca7a09944a50567620cb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#ae268de02b0b0ca7a09944a50567620cb">read_info</a></td></tr>
+<tr class="separator:ae268de02b0b0ca7a09944a50567620cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abebd771d41b71cfbb457ee0e80c7b551"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#abebd771d41b71cfbb457ee0e80c7b551">state_mu</a></td></tr>
+<tr class="separator:abebd771d41b71cfbb457ee0e80c7b551"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac79017879c86aece4c98a043c5093d47"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#ac79017879c86aece4c98a043c5093d47">added_to_iocp</a></td></tr>
+<tr class="separator:ac79017879c86aece4c98a043c5093d47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a653e7521937ebda6f6bc230ebae46f08"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#a653e7521937ebda6f6bc230ebae46f08">orphan</a></td></tr>
+<tr class="separator:a653e7521937ebda6f6bc230ebae46f08"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea4900f69135c3b5b3a820b0c37a6a7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#aea4900f69135c3b5b3a820b0c37a6a7a">shutdown_closure</a></td></tr>
+<tr class="separator:aea4900f69135c3b5b3a820b0c37a6a7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a226dc7020d126be244c2c4d36907eae6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket.html#a226dc7020d126be244c2c4d36907eae6">iomgr_object</a></td></tr>
+<tr class="separator:a226dc7020d126be244c2c4d36907eae6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac79017879c86aece4c98a043c5093d47"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_winsocket::added_to_iocp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a226dc7020d126be244c2c4d36907eae6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> grpc_winsocket::iomgr_object</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a653e7521937ebda6f6bc230ebae46f08"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_winsocket::orphan</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae268de02b0b0ca7a09944a50567620cb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a> grpc_winsocket::read_info</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea4900f69135c3b5b3a820b0c37a6a7a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_winsocket::shutdown_closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8d07ea451fe145f30415952e4a78d03d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SOCKET grpc_winsocket::socket</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abebd771d41b71cfbb457ee0e80c7b551"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_winsocket::state_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c0eeccc3a3cbfbb28d172a7c42a0bd6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__winsocket__callback__info.html">grpc_winsocket_callback_info</a> grpc_winsocket::write_info</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="socket__windows_8h_source.html">socket_windows.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>
diff --git a/doc/ref/core.internal/html/structgrpc__winsocket__callback__info.html b/doc/ref/core.internal/html/structgrpc__winsocket__callback__info.html
new file mode 100644
index 0000000000..37d596964f
--- /dev/null
+++ b/doc/ref/core.internal/html/structgrpc__winsocket__callback__info.html
@@ -0,0 +1,206 @@
+<!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_winsocket_callback_info 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_winsocket_callback_info Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="socket__windows_8h_source.html">socket_windows.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:a779ba38c4d952003a53cf6f415992e09"><td class="memItemLeft" align="right" valign="top">OVERLAPPED&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#a779ba38c4d952003a53cf6f415992e09">overlapped</a></td></tr>
+<tr class="separator:a779ba38c4d952003a53cf6f415992e09"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aded44060a4f90bf48f452b4ac9e0f9f1"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#aded44060a4f90bf48f452b4ac9e0f9f1">cb</a> )(void *<a class="el" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">opaque</a>, int success)</td></tr>
+<tr class="separator:aded44060a4f90bf48f452b4ac9e0f9f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a003b435519424aae5a48755358b32154"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">opaque</a></td></tr>
+<tr class="separator:a003b435519424aae5a48755358b32154"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6288faf84cbd0d6706d6cc7cd04e294"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#af6288faf84cbd0d6706d6cc7cd04e294">has_pending_iocp</a></td></tr>
+<tr class="separator:af6288faf84cbd0d6706d6cc7cd04e294"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae7d4cdac6983f1de38a239a3bb11021e"><td class="memItemLeft" align="right" valign="top">DWORD&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#ae7d4cdac6983f1de38a239a3bb11021e">bytes_transfered</a></td></tr>
+<tr class="separator:ae7d4cdac6983f1de38a239a3bb11021e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adef17089b66a9180b92bcc9da0d4ae29"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#adef17089b66a9180b92bcc9da0d4ae29">wsa_error</a></td></tr>
+<tr class="separator:adef17089b66a9180b92bcc9da0d4ae29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af611ff1de50e57d79e8ea33a220136bc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__winsocket__callback__info.html#af611ff1de50e57d79e8ea33a220136bc">outstanding</a></td></tr>
+<tr class="separator:af611ff1de50e57d79e8ea33a220136bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae7d4cdac6983f1de38a239a3bb11021e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">DWORD grpc_winsocket_callback_info::bytes_transfered</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aded44060a4f90bf48f452b4ac9e0f9f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_winsocket_callback_info::cb)(void *<a class="el" href="structgrpc__winsocket__callback__info.html#a003b435519424aae5a48755358b32154">opaque</a>, int success)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af6288faf84cbd0d6706d6cc7cd04e294"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_winsocket_callback_info::has_pending_iocp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a003b435519424aae5a48755358b32154"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_winsocket_callback_info::opaque</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af611ff1de50e57d79e8ea33a220136bc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_winsocket_callback_info::outstanding</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a779ba38c4d952003a53cf6f415992e09"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">OVERLAPPED grpc_winsocket_callback_info::overlapped</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adef17089b66a9180b92bcc9da0d4ae29"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_winsocket_callback_info::wsa_error</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="socket__windows_8h_source.html">socket_windows.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>
diff --git a/doc/ref/core.internal/html/structhuff__out.html b/doc/ref/core.internal/html/structhuff__out.html
new file mode 100644
index 0000000000..3db848fde3
--- /dev/null
+++ b/doc/ref/core.internal/html/structhuff__out.html
@@ -0,0 +1,148 @@
+<!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: huff_out 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">huff_out Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a29fa27e52be848917a68702c97e75d3b"><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="structhuff__out.html#a29fa27e52be848917a68702c97e75d3b">temp</a></td></tr>
+<tr class="separator:a29fa27e52be848917a68702c97e75d3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47f24dd352a07a9a7124319d8222090e"><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="structhuff__out.html#a47f24dd352a07a9a7124319d8222090e">temp_length</a></td></tr>
+<tr class="separator:a47f24dd352a07a9a7124319d8222090e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d501bd162d6a335c51b2250e3f1bfef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structhuff__out.html#a2d501bd162d6a335c51b2250e3f1bfef">out</a></td></tr>
+<tr class="separator:a2d501bd162d6a335c51b2250e3f1bfef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a2d501bd162d6a335c51b2250e3f1bfef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* huff_out::out</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29fa27e52be848917a68702c97e75d3b"></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> huff_out::temp</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a47f24dd352a07a9a7124319d8222090e"></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> huff_out::temp_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/chttp2/<a class="el" href="bin__encoder_8c.html">bin_encoder.c</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>
diff --git a/doc/ref/core.internal/html/structinternal__metadata.html b/doc/ref/core.internal/html/structinternal__metadata.html
new file mode 100644
index 0000000000..12fb76c37c
--- /dev/null
+++ b/doc/ref/core.internal/html/structinternal__metadata.html
@@ -0,0 +1,218 @@
+<!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: internal_metadata 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">internal_metadata Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1ef3f9e31e4380c0ec8fce01714c0fa3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structinternal__string.html">internal_string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#a1ef3f9e31e4380c0ec8fce01714c0fa3">key</a></td></tr>
+<tr class="separator:a1ef3f9e31e4380c0ec8fce01714c0fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abef02b106cd8bcee80c9d5ee375fe537"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structinternal__string.html">internal_string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#abef02b106cd8bcee80c9d5ee375fe537">value</a></td></tr>
+<tr class="separator:abef02b106cd8bcee80c9d5ee375fe537"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af658b2849de44285d529f4aa4da956f4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#af658b2849de44285d529f4aa4da956f4">refcnt</a></td></tr>
+<tr class="separator:af658b2849de44285d529f4aa4da956f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04fa79f6da10ebdc3c337277b0997657"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#a04fa79f6da10ebdc3c337277b0997657">mu_user_data</a></td></tr>
+<tr class="separator:a04fa79f6da10ebdc3c337277b0997657"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69097159104a083a1a27fbbeb5fdd6ef"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef">user_data</a></td></tr>
+<tr class="separator:a69097159104a083a1a27fbbeb5fdd6ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5377f467bb28c9b4774d896b44d8c6a2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#a5377f467bb28c9b4774d896b44d8c6a2">destroy_user_data</a> )(void *<a class="el" href="structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef">user_data</a>)</td></tr>
+<tr class="separator:a5377f467bb28c9b4774d896b44d8c6a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19b31328660cdb5c8a8bf821094871c5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#a19b31328660cdb5c8a8bf821094871c5">context</a></td></tr>
+<tr class="separator:a19b31328660cdb5c8a8bf821094871c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aadcd0104b419227943fcd4a53920777e"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structinternal__metadata.html">internal_metadata</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__metadata.html#aadcd0104b419227943fcd4a53920777e">bucket_next</a></td></tr>
+<tr class="separator:aadcd0104b419227943fcd4a53920777e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aadcd0104b419227943fcd4a53920777e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structinternal__metadata.html">internal_metadata</a>* internal_metadata::bucket_next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19b31328660cdb5c8a8bf821094871c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* internal_metadata::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5377f467bb28c9b4774d896b44d8c6a2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* internal_metadata::destroy_user_data)(void *<a class="el" href="structinternal__metadata.html#a69097159104a083a1a27fbbeb5fdd6ef">user_data</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1ef3f9e31e4380c0ec8fce01714c0fa3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structinternal__string.html">internal_string</a>* internal_metadata::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a04fa79f6da10ebdc3c337277b0997657"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> internal_metadata::mu_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af658b2849de44285d529f4aa4da956f4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> internal_metadata::refcnt</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a69097159104a083a1a27fbbeb5fdd6ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* internal_metadata::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abef02b106cd8bcee80c9d5ee375fe537"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structinternal__string.html">internal_string</a>* internal_metadata::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="metadata_8c.html">metadata.c</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>
diff --git a/doc/ref/core.internal/html/structinternal__request.html b/doc/ref/core.internal/html/structinternal__request.html
new file mode 100644
index 0000000000..d5d417ca74
--- /dev/null
+++ b/doc/ref/core.internal/html/structinternal__request.html
@@ -0,0 +1,302 @@
+<!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: internal_request 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">internal_request Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a17b242a8f7682f8438f357c5c7f05f67"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a17b242a8f7682f8438f357c5c7f05f67">request_text</a></td></tr>
+<tr class="separator:a17b242a8f7682f8438f357c5c7f05f67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2de0ab3497414fd48d1a180c4473cfab"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a2de0ab3497414fd48d1a180c4473cfab">parser</a></td></tr>
+<tr class="separator:a2de0ab3497414fd48d1a180c4473cfab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ab2a9ca4e299dc1f8fa41de2e3384b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a0ab2a9ca4e299dc1f8fa41de2e3384b0">addresses</a></td></tr>
+<tr class="separator:a0ab2a9ca4e299dc1f8fa41de2e3384b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76357b043a6e64d3254650151c2795bb"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a76357b043a6e64d3254650151c2795bb">next_address</a></td></tr>
+<tr class="separator:a76357b043a6e64d3254650151c2795bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6443badea586cce9b4e3112832760c7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#af6443badea586cce9b4e3112832760c7">ep</a></td></tr>
+<tr class="separator:af6443badea586cce9b4e3112832760c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab545c1a0948fde5ebcf3a38e4bb2e976"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#ab545c1a0948fde5ebcf3a38e4bb2e976">host</a></td></tr>
+<tr class="separator:ab545c1a0948fde5ebcf3a38e4bb2e976"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b0a573ccd8ac3d01b0b3668e39a2e61"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a3b0a573ccd8ac3d01b0b3668e39a2e61">deadline</a></td></tr>
+<tr class="separator:a3b0a573ccd8ac3d01b0b3668e39a2e61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff291a650e0020e9a09beb9cc64298f9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#aff291a650e0020e9a09beb9cc64298f9">have_read_byte</a></td></tr>
+<tr class="separator:aff291a650e0020e9a09beb9cc64298f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d17604038fc0b611296561b66cb46c5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a0d17604038fc0b611296561b66cb46c5">use_ssl</a></td></tr>
+<tr class="separator:a0d17604038fc0b611296561b66cb46c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4679ca2c4587920feca983ac852ef2b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a4679ca2c4587920feca983ac852ef2b6">on_response</a></td></tr>
+<tr class="separator:a4679ca2c4587920feca983ac852ef2b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa47b4bb5697930b25831fbc2fc9ae16e"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#aa47b4bb5697930b25831fbc2fc9ae16e">user_data</a></td></tr>
+<tr class="separator:aa47b4bb5697930b25831fbc2fc9ae16e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a0fbaaabcd158b4fb0ff6c8b2d4879f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a0a0fbaaabcd158b4fb0ff6c8b2d4879f">context</a></td></tr>
+<tr class="separator:a0a0fbaaabcd158b4fb0ff6c8b2d4879f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba6c008fc3a067827acf1dea8d88dec7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#aba6c008fc3a067827acf1dea8d88dec7">pollset</a></td></tr>
+<tr class="separator:aba6c008fc3a067827acf1dea8d88dec7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16edaecfecf5937255d86d07ab3be4d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__request.html#a16edaecfecf5937255d86d07ab3be4d0">iomgr_obj</a></td></tr>
+<tr class="separator:a16edaecfecf5937255d86d07ab3be4d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a0ab2a9ca4e299dc1f8fa41de2e3384b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolved__addresses.html">grpc_resolved_addresses</a>* internal_request::addresses</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a0fbaaabcd158b4fb0ff6c8b2d4879f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__context.html">grpc_httpcli_context</a>* internal_request::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3b0a573ccd8ac3d01b0b3668e39a2e61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> internal_request::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af6443badea586cce9b4e3112832760c7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* internal_request::ep</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aff291a650e0020e9a09beb9cc64298f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int internal_request::have_read_byte</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab545c1a0948fde5ebcf3a38e4bb2e976"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* internal_request::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16edaecfecf5937255d86d07ab3be4d0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__object.html">grpc_iomgr_object</a> internal_request::iomgr_obj</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76357b043a6e64d3254650151c2795bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t internal_request::next_address</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4679ca2c4587920feca983ac852ef2b6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="httpcli_8h.html#a00129a2e0bb8e9d9a6632e88f7a8c887">grpc_httpcli_response_cb</a> internal_request::on_response</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2de0ab3497414fd48d1a180c4473cfab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__httpcli__parser.html">grpc_httpcli_parser</a> internal_request::parser</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba6c008fc3a067827acf1dea8d88dec7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* internal_request::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a17b242a8f7682f8438f357c5c7f05f67"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> internal_request::request_text</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d17604038fc0b611296561b66cb46c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int internal_request::use_ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa47b4bb5697930b25831fbc2fc9ae16e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* internal_request::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/httpcli/<a class="el" href="httpcli_8c.html">httpcli.c</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>
diff --git a/doc/ref/core.internal/html/structinternal__string.html b/doc/ref/core.internal/html/structinternal__string.html
new file mode 100644
index 0000000000..a339d58329
--- /dev/null
+++ b/doc/ref/core.internal/html/structinternal__string.html
@@ -0,0 +1,218 @@
+<!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: internal_string 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">internal_string Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:aafd8da96270b4377198d99bc51f2ac9b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html#aafd8da96270b4377198d99bc51f2ac9b">slice</a></td></tr>
+<tr class="separator:aafd8da96270b4377198d99bc51f2ac9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc9b5ed558b39ad7c3265964778b3b98"><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="structinternal__string.html#abc9b5ed558b39ad7c3265964778b3b98">hash</a></td></tr>
+<tr class="separator:abc9b5ed558b39ad7c3265964778b3b98"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a870bec6b963c65fedd1290747c207650"><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="structinternal__string.html#a870bec6b963c65fedd1290747c207650">refs</a></td></tr>
+<tr class="separator:a870bec6b963c65fedd1290747c207650"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad30156b9bc8f7fc9c60b09e3dcaef00a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html#ad30156b9bc8f7fc9c60b09e3dcaef00a">has_base64_and_huffman_encoded</a></td></tr>
+<tr class="separator:ad30156b9bc8f7fc9c60b09e3dcaef00a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e0174af2b64a5b66e09080c92a0aec2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html#a9e0174af2b64a5b66e09080c92a0aec2">refcount</a></td></tr>
+<tr class="separator:a9e0174af2b64a5b66e09080c92a0aec2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfafee0983fc1c6c1e38c8e539d41999"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html#abfafee0983fc1c6c1e38c8e539d41999">base64_and_huffman</a></td></tr>
+<tr class="separator:abfafee0983fc1c6c1e38c8e539d41999"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1bfe57ac1191b1278d4a61d34edbf1d7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html#a1bfe57ac1191b1278d4a61d34edbf1d7">context</a></td></tr>
+<tr class="separator:a1bfe57ac1191b1278d4a61d34edbf1d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a821c2b13cb1eea1ed3e36e867b62f3ba"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structinternal__string.html">internal_string</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structinternal__string.html#a821c2b13cb1eea1ed3e36e867b62f3ba">bucket_next</a></td></tr>
+<tr class="separator:a821c2b13cb1eea1ed3e36e867b62f3ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abfafee0983fc1c6c1e38c8e539d41999"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> internal_string::base64_and_huffman</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a821c2b13cb1eea1ed3e36e867b62f3ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structinternal__string.html">internal_string</a>* internal_string::bucket_next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1bfe57ac1191b1278d4a61d34edbf1d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* internal_string::context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad30156b9bc8f7fc9c60b09e3dcaef00a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> internal_string::has_base64_and_huffman_encoded</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc9b5ed558b39ad7c3265964778b3b98"></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> internal_string::hash</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9e0174af2b64a5b66e09080c92a0aec2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> internal_string::refcount</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a870bec6b963c65fedd1290747c207650"></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> internal_string::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aafd8da96270b4377198d99bc51f2ac9b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> internal_string::slice</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/transport/<a class="el" href="metadata_8c.html">metadata.c</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>
diff --git a/doc/ref/core.internal/html/structjose__header.html b/doc/ref/core.internal/html/structjose__header.html
new file mode 100644
index 0000000000..c2919ac100
--- /dev/null
+++ b/doc/ref/core.internal/html/structjose__header.html
@@ -0,0 +1,162 @@
+<!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: jose_header 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">jose_header Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1f2a1e1efa6f64762c67f7c688790c0d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjose__header.html#a1f2a1e1efa6f64762c67f7c688790c0d">alg</a></td></tr>
+<tr class="separator:a1f2a1e1efa6f64762c67f7c688790c0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae38087aaf6d4e0670bb5deda4375f719"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjose__header.html#ae38087aaf6d4e0670bb5deda4375f719">kid</a></td></tr>
+<tr class="separator:ae38087aaf6d4e0670bb5deda4375f719"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62661b991df1e33a832d0bf7449ab2d4"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjose__header.html#a62661b991df1e33a832d0bf7449ab2d4">typ</a></td></tr>
+<tr class="separator:a62661b991df1e33a832d0bf7449ab2d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af14380ad49201179d4ad6e3fa7a0e58b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjose__header.html#af14380ad49201179d4ad6e3fa7a0e58b">buffer</a></td></tr>
+<tr class="separator:af14380ad49201179d4ad6e3fa7a0e58b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1f2a1e1efa6f64762c67f7c688790c0d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* jose_header::alg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af14380ad49201179d4ad6e3fa7a0e58b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> jose_header::buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae38087aaf6d4e0670bb5deda4375f719"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* jose_header::kid</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a62661b991df1e33a832d0bf7449ab2d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* jose_header::typ</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="jwt__verifier_8c.html">jwt_verifier.c</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>
diff --git a/doc/ref/core.internal/html/structjson__reader__userdata.html b/doc/ref/core.internal/html/structjson__reader__userdata.html
new file mode 100644
index 0000000000..6c2f192cb7
--- /dev/null
+++ b/doc/ref/core.internal/html/structjson__reader__userdata.html
@@ -0,0 +1,218 @@
+<!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: json_reader_userdata 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">json_reader_userdata Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ac4f75823aab9f46c2541424046742c13"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#ac4f75823aab9f46c2541424046742c13">top</a></td></tr>
+<tr class="separator:ac4f75823aab9f46c2541424046742c13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46c3b03cc1ca3fbeeb76f726ce844bf2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#a46c3b03cc1ca3fbeeb76f726ce844bf2">current_container</a></td></tr>
+<tr class="separator:a46c3b03cc1ca3fbeeb76f726ce844bf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1069140339bf83ea323ac0ac696cc8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__json.html">grpc_json</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#ab1069140339bf83ea323ac0ac696cc8c">current_value</a></td></tr>
+<tr class="separator:ab1069140339bf83ea323ac0ac696cc8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abccbf0e7d9695f00948288df13ba4c7e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#abccbf0e7d9695f00948288df13ba4c7e">input</a></td></tr>
+<tr class="separator:abccbf0e7d9695f00948288df13ba4c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7750253670b78b205a06c2e371ac418"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#ac7750253670b78b205a06c2e371ac418">key</a></td></tr>
+<tr class="separator:ac7750253670b78b205a06c2e371ac418"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aab7c5997934c699371c79b5a613a877e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#aab7c5997934c699371c79b5a613a877e">string</a></td></tr>
+<tr class="separator:aab7c5997934c699371c79b5a613a877e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6afccb66b4dac7cb2db6ef4c8d0e073b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#a6afccb66b4dac7cb2db6ef4c8d0e073b">string_ptr</a></td></tr>
+<tr class="separator:a6afccb66b4dac7cb2db6ef4c8d0e073b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3535b10b322fe1063463bbddadcbad61"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__reader__userdata.html#a3535b10b322fe1063463bbddadcbad61">remaining_input</a></td></tr>
+<tr class="separator:a3535b10b322fe1063463bbddadcbad61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a46c3b03cc1ca3fbeeb76f726ce844bf2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* json_reader_userdata::current_container</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab1069140339bf83ea323ac0ac696cc8c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* json_reader_userdata::current_value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abccbf0e7d9695f00948288df13ba4c7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* json_reader_userdata::input</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac7750253670b78b205a06c2e371ac418"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* json_reader_userdata::key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3535b10b322fe1063463bbddadcbad61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t json_reader_userdata::remaining_input</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aab7c5997934c699371c79b5a613a877e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* json_reader_userdata::string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6afccb66b4dac7cb2db6ef4c8d0e073b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* json_reader_userdata::string_ptr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4f75823aab9f46c2541424046742c13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__json.html">grpc_json</a>* json_reader_userdata::top</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json__string_8c.html">json_string.c</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>
diff --git a/doc/ref/core.internal/html/structjson__writer__userdata.html b/doc/ref/core.internal/html/structjson__writer__userdata.html
new file mode 100644
index 0000000000..5acdc36318
--- /dev/null
+++ b/doc/ref/core.internal/html/structjson__writer__userdata.html
@@ -0,0 +1,162 @@
+<!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: json_writer_userdata 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">json_writer_userdata Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1f55aaf048a0ff4414110e154133867d"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__writer__userdata.html#a1f55aaf048a0ff4414110e154133867d">output</a></td></tr>
+<tr class="separator:a1f55aaf048a0ff4414110e154133867d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bb26b7e7b6783d61265705d79c87e03"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__writer__userdata.html#a7bb26b7e7b6783d61265705d79c87e03">free_space</a></td></tr>
+<tr class="separator:a7bb26b7e7b6783d61265705d79c87e03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a321162f4c1f6c7cb60676fa6a1eb3c18"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__writer__userdata.html#a321162f4c1f6c7cb60676fa6a1eb3c18">string_len</a></td></tr>
+<tr class="separator:a321162f4c1f6c7cb60676fa6a1eb3c18"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6be58e44bfcd53828551b919df38489d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structjson__writer__userdata.html#a6be58e44bfcd53828551b919df38489d">allocated</a></td></tr>
+<tr class="separator:a6be58e44bfcd53828551b919df38489d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a6be58e44bfcd53828551b919df38489d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t json_writer_userdata::allocated</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7bb26b7e7b6783d61265705d79c87e03"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t json_writer_userdata::free_space</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f55aaf048a0ff4414110e154133867d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* json_writer_userdata::output</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a321162f4c1f6c7cb60676fa6a1eb3c18"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t json_writer_userdata::string_len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/json/<a class="el" href="json__string_8c.html">json_string.c</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>
diff --git a/doc/ref/core.internal/html/structlb__policy__connectivity__watcher.html b/doc/ref/core.internal/html/structlb__policy__connectivity__watcher.html
new file mode 100644
index 0000000000..df0f9c8c2b
--- /dev/null
+++ b/doc/ref/core.internal/html/structlb__policy__connectivity__watcher.html
@@ -0,0 +1,168 @@
+<!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: lb_policy_connectivity_watcher 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">lb_policy_connectivity_watcher Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>We create one watcher for each new lb_policy that is returned from a resolver, to watch for state changes from the lb_policy.
+ <a href="structlb__policy__connectivity__watcher.html#details">More...</a></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:a8c4c66e260e9c93b8ce9b4a129e581e5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structchannel__data.html">channel_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlb__policy__connectivity__watcher.html#a8c4c66e260e9c93b8ce9b4a129e581e5">chand</a></td></tr>
+<tr class="separator:a8c4c66e260e9c93b8ce9b4a129e581e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9bd1ed9605d5f575ea8e2ce51ed597c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlb__policy__connectivity__watcher.html#ab9bd1ed9605d5f575ea8e2ce51ed597c">on_changed</a></td></tr>
+<tr class="separator:ab9bd1ed9605d5f575ea8e2ce51ed597c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac37e7a5f39e7f99381837601b8d0d7d5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlb__policy__connectivity__watcher.html#ac37e7a5f39e7f99381837601b8d0d7d5">state</a></td></tr>
+<tr class="separator:ac37e7a5f39e7f99381837601b8d0d7d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e56bc230933c8ee0f5dbacf58e1805c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlb__policy__connectivity__watcher.html#a2e56bc230933c8ee0f5dbacf58e1805c">lb_policy</a></td></tr>
+<tr class="separator:a2e56bc230933c8ee0f5dbacf58e1805c"><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>We create one watcher for each new lb_policy that is returned from a resolver, to watch for state changes from the lb_policy. </p>
+<p>When a state change is seen, we update the channel, and create a new watcher </p>
+</div><h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8c4c66e260e9c93b8ce9b4a129e581e5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structchannel__data.html">channel_data</a>* lb_policy_connectivity_watcher::chand</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e56bc230933c8ee0f5dbacf58e1805c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>* lb_policy_connectivity_watcher::lb_policy</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9bd1ed9605d5f575ea8e2ce51ed597c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> lb_policy_connectivity_watcher::on_changed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac37e7a5f39e7f99381837601b8d0d7d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> lb_policy_connectivity_watcher::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="client__channel_8c.html">client_channel.c</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>
diff --git a/doc/ref/core.internal/html/structlistener.html b/doc/ref/core.internal/html/structlistener.html
new file mode 100644
index 0000000000..95e259cca8
--- /dev/null
+++ b/doc/ref/core.internal/html/structlistener.html
@@ -0,0 +1,162 @@
+<!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: listener 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">listener Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a979a29a26af9ef7a83a22f0cdd7fe1a4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlistener.html#a979a29a26af9ef7a83a22f0cdd7fe1a4">arg</a></td></tr>
+<tr class="separator:a979a29a26af9ef7a83a22f0cdd7fe1a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5fb6be7cbe102bcb09c1d26db4a26fb2"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlistener.html#a5fb6be7cbe102bcb09c1d26db4a26fb2">start</a> )(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t pollset_count)</td></tr>
+<tr class="separator:a5fb6be7cbe102bcb09c1d26db4a26fb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add425fdd17452e62c09d047e24a3034f"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlistener.html#add425fdd17452e62c09d047e24a3034f">destroy</a> )(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>)</td></tr>
+<tr class="separator:add425fdd17452e62c09d047e24a3034f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd926873c32f6f18eff932b871c7a9d7"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structlistener.html">listener</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlistener.html#afd926873c32f6f18eff932b871c7a9d7">next</a></td></tr>
+<tr class="separator:afd926873c32f6f18eff932b871c7a9d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a979a29a26af9ef7a83a22f0cdd7fe1a4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* listener::arg</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add425fdd17452e62c09d047e24a3034f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* listener::destroy)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afd926873c32f6f18eff932b871c7a9d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structlistener.html">listener</a>* listener::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5fb6be7cbe102bcb09c1d26db4a26fb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* listener::start)(<a class="el" href="structgrpc__server.html">grpc_server</a> *server, void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t pollset_count)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structlockfree__node__contents.html b/doc/ref/core.internal/html/structlockfree__node__contents.html
new file mode 100644
index 0000000000..454dba3939
--- /dev/null
+++ b/doc/ref/core.internal/html/structlockfree__node__contents.html
@@ -0,0 +1,120 @@
+<!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: lockfree_node_contents 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">lockfree_node_contents Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a928cde9bc69482abb79427725c16b8f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structlockfree__node__contents.html#a928cde9bc69482abb79427725c16b8f7">index</a></td></tr>
+<tr class="separator:a928cde9bc69482abb79427725c16b8f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a928cde9bc69482abb79427725c16b8f7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> lockfree_node_contents::index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="stack__lockfree_8c.html">stack_lockfree.c</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>
diff --git a/doc/ref/core.internal/html/structmalloc__refcount.html b/doc/ref/core.internal/html/structmalloc__refcount.html
new file mode 100644
index 0000000000..1d18788f63
--- /dev/null
+++ b/doc/ref/core.internal/html/structmalloc__refcount.html
@@ -0,0 +1,134 @@
+<!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: malloc_refcount 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">malloc_refcount Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a9443dc5946fa32f480286c87d5dc3686"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmalloc__refcount.html#a9443dc5946fa32f480286c87d5dc3686">base</a></td></tr>
+<tr class="separator:a9443dc5946fa32f480286c87d5dc3686"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcdbbc75e835cbf6fc50025880f5e569"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmalloc__refcount.html#adcdbbc75e835cbf6fc50025880f5e569">refs</a></td></tr>
+<tr class="separator:adcdbbc75e835cbf6fc50025880f5e569"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9443dc5946fa32f480286c87d5dc3686"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> malloc_refcount::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adcdbbc75e835cbf6fc50025880f5e569"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> malloc_refcount::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="slice_8c.html">slice.c</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>
diff --git a/doc/ref/core.internal/html/structmerge__args__factory.html b/doc/ref/core.internal/html/structmerge__args__factory.html
new file mode 100644
index 0000000000..0d60cc9321
--- /dev/null
+++ b/doc/ref/core.internal/html/structmerge__args__factory.html
@@ -0,0 +1,162 @@
+<!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: merge_args_factory 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">merge_args_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a10d01f7c94efbd37682c4c2af19a21e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmerge__args__factory.html#a10d01f7c94efbd37682c4c2af19a21e8">base</a></td></tr>
+<tr class="separator:a10d01f7c94efbd37682c4c2af19a21e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae69ffa567a7a04cf4c0f9f8eba0b852"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmerge__args__factory.html#aae69ffa567a7a04cf4c0f9f8eba0b852">refs</a></td></tr>
+<tr class="separator:aae69ffa567a7a04cf4c0f9f8eba0b852"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecaa1e5ad4e5838355a2f1515943e378"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmerge__args__factory.html#aecaa1e5ad4e5838355a2f1515943e378">wrapped</a></td></tr>
+<tr class="separator:aecaa1e5ad4e5838355a2f1515943e378"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a973c42ea64bda49e62c9648f1d9eb919"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmerge__args__factory.html#a973c42ea64bda49e62c9648f1d9eb919">merge_args</a></td></tr>
+<tr class="separator:a973c42ea64bda49e62c9648f1d9eb919"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a10d01f7c94efbd37682c4c2af19a21e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> merge_args_factory::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a973c42ea64bda49e62c9648f1d9eb919"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a>* merge_args_factory::merge_args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aae69ffa567a7a04cf4c0f9f8eba0b852"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> merge_args_factory::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aecaa1e5ad4e5838355a2f1515943e378"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* merge_args_factory::wrapped</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/subchannel_factory_decorators/<a class="el" href="merge__channel__args_8c.html">merge_channel_args.c</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>
diff --git a/doc/ref/core.internal/html/structnew__slice__refcount.html b/doc/ref/core.internal/html/structnew__slice__refcount.html
new file mode 100644
index 0000000000..0d35e8644b
--- /dev/null
+++ b/doc/ref/core.internal/html/structnew__slice__refcount.html
@@ -0,0 +1,162 @@
+<!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: new_slice_refcount 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">new_slice_refcount Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ac72a90414d0021e8902d5cd9e5010f1b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__slice__refcount.html#ac72a90414d0021e8902d5cd9e5010f1b">rc</a></td></tr>
+<tr class="separator:ac72a90414d0021e8902d5cd9e5010f1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2baa2f77ff0fd04fe3aa6b80c573e8fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__slice__refcount.html#a2baa2f77ff0fd04fe3aa6b80c573e8fe">refs</a></td></tr>
+<tr class="separator:a2baa2f77ff0fd04fe3aa6b80c573e8fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe796cd680fb136eff9fa49f96bbd3e8"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__slice__refcount.html#abe796cd680fb136eff9fa49f96bbd3e8">user_destroy</a> )(void *)</td></tr>
+<tr class="separator:abe796cd680fb136eff9fa49f96bbd3e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0476a0932ddf32f1cdd04cdd585fda68"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__slice__refcount.html#a0476a0932ddf32f1cdd04cdd585fda68">user_data</a></td></tr>
+<tr class="separator:a0476a0932ddf32f1cdd04cdd585fda68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac72a90414d0021e8902d5cd9e5010f1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> new_slice_refcount::rc</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2baa2f77ff0fd04fe3aa6b80c573e8fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> new_slice_refcount::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0476a0932ddf32f1cdd04cdd585fda68"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* new_slice_refcount::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abe796cd680fb136eff9fa49f96bbd3e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* new_slice_refcount::user_destroy)(void *)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="slice_8c.html">slice.c</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>
diff --git a/doc/ref/core.internal/html/structnew__with__len__slice__refcount.html b/doc/ref/core.internal/html/structnew__with__len__slice__refcount.html
new file mode 100644
index 0000000000..e676341e81
--- /dev/null
+++ b/doc/ref/core.internal/html/structnew__with__len__slice__refcount.html
@@ -0,0 +1,176 @@
+<!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: new_with_len_slice_refcount 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">new_with_len_slice_refcount Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a059da4cf3d67bbf0f8407872ee4c583b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__with__len__slice__refcount.html#a059da4cf3d67bbf0f8407872ee4c583b">rc</a></td></tr>
+<tr class="separator:a059da4cf3d67bbf0f8407872ee4c583b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae68449b1a65da5e9561a4762f5601fa3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__with__len__slice__refcount.html#ae68449b1a65da5e9561a4762f5601fa3">refs</a></td></tr>
+<tr class="separator:ae68449b1a65da5e9561a4762f5601fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47821f141ea3ddf0c13dd7d5bed35dda"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__with__len__slice__refcount.html#a47821f141ea3ddf0c13dd7d5bed35dda">user_data</a></td></tr>
+<tr class="separator:a47821f141ea3ddf0c13dd7d5bed35dda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9f2fc163ee3e185eda913129ffb4546"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__with__len__slice__refcount.html#ab9f2fc163ee3e185eda913129ffb4546">user_length</a></td></tr>
+<tr class="separator:ab9f2fc163ee3e185eda913129ffb4546"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8dc1c24ebd5fee4f034679b05177755"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structnew__with__len__slice__refcount.html#ac8dc1c24ebd5fee4f034679b05177755">user_destroy</a> )(void *, size_t)</td></tr>
+<tr class="separator:ac8dc1c24ebd5fee4f034679b05177755"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a059da4cf3d67bbf0f8407872ee4c583b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__refcount.html">gpr_slice_refcount</a> new_with_len_slice_refcount::rc</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae68449b1a65da5e9561a4762f5601fa3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> new_with_len_slice_refcount::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a47821f141ea3ddf0c13dd7d5bed35dda"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* new_with_len_slice_refcount::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac8dc1c24ebd5fee4f034679b05177755"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* new_with_len_slice_refcount::user_destroy)(void *, size_t)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9f2fc163ee3e185eda913129ffb4546"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t new_with_len_slice_refcount::user_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="slice_8c.html">slice.c</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>
diff --git a/doc/ref/core.internal/html/structpending__pick.html b/doc/ref/core.internal/html/structpending__pick.html
new file mode 100644
index 0000000000..5afddd0782
--- /dev/null
+++ b/doc/ref/core.internal/html/structpending__pick.html
@@ -0,0 +1,162 @@
+<!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: pending_pick 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">pending_pick Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:abecbb432724c24c523d0cfda19f7b1c1"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structpending__pick.html">pending_pick</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpending__pick.html#abecbb432724c24c523d0cfda19f7b1c1">next</a></td></tr>
+<tr class="separator:abecbb432724c24c523d0cfda19f7b1c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afcad270e19b4e1e0a709426ca42e01fe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpending__pick.html#afcad270e19b4e1e0a709426ca42e01fe">pollset</a></td></tr>
+<tr class="separator:afcad270e19b4e1e0a709426ca42e01fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa395cbb07c193eaa41d0463f46067fec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpending__pick.html#aa395cbb07c193eaa41d0463f46067fec">target</a></td></tr>
+<tr class="separator:aa395cbb07c193eaa41d0463f46067fec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a754316904bce1aec5d5afcc61b2b5abe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpending__pick.html#a754316904bce1aec5d5afcc61b2b5abe">on_complete</a></td></tr>
+<tr class="separator:a754316904bce1aec5d5afcc61b2b5abe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="abecbb432724c24c523d0cfda19f7b1c1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structpending__pick.html">pending_pick</a>* pending_pick::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a754316904bce1aec5d5afcc61b2b5abe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* pending_pick::on_complete</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afcad270e19b4e1e0a709426ca42e01fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* pending_pick::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa395cbb07c193eaa41d0463f46067fec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>** pending_pick::target</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/lb_policies/<a class="el" href="pick__first_8c.html">pick_first.c</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>
diff --git a/doc/ref/core.internal/html/structpick__first__lb__policy.html b/doc/ref/core.internal/html/structpick__first__lb__policy.html
new file mode 100644
index 0000000000..d838ab49db
--- /dev/null
+++ b/doc/ref/core.internal/html/structpick__first__lb__policy.html
@@ -0,0 +1,304 @@
+<!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: pick_first_lb_policy 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">pick_first_lb_policy Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a3e8f7088400929001aa4b589a3f79f79"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a3e8f7088400929001aa4b589a3f79f79">base</a></td></tr>
+<tr class="memdesc:a3e8f7088400929001aa4b589a3f79f79"><td class="mdescLeft">&#160;</td><td class="mdescRight">base policy: must be first <a href="#a3e8f7088400929001aa4b589a3f79f79">More...</a><br/></td></tr>
+<tr class="separator:a3e8f7088400929001aa4b589a3f79f79"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a359affbda6360c97745389a1c036afbf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a359affbda6360c97745389a1c036afbf">subchannels</a></td></tr>
+<tr class="memdesc:a359affbda6360c97745389a1c036afbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">all our subchannels <a href="#a359affbda6360c97745389a1c036afbf">More...</a><br/></td></tr>
+<tr class="separator:a359affbda6360c97745389a1c036afbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39415d22c1bb4ace43e7abc6331f08e1"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a39415d22c1bb4ace43e7abc6331f08e1">num_subchannels</a></td></tr>
+<tr class="separator:a39415d22c1bb4ace43e7abc6331f08e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54f466dc5e968d2b3a8f8fe6511d2c56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a54f466dc5e968d2b3a8f8fe6511d2c56">connectivity_changed</a></td></tr>
+<tr class="separator:a54f466dc5e968d2b3a8f8fe6511d2c56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5bc2719af90ffde998983bdeeacfd764"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a5bc2719af90ffde998983bdeeacfd764">mu</a></td></tr>
+<tr class="memdesc:a5bc2719af90ffde998983bdeeacfd764"><td class="mdescLeft">&#160;</td><td class="mdescRight">mutex protecting remaining members <a href="#a5bc2719af90ffde998983bdeeacfd764">More...</a><br/></td></tr>
+<tr class="separator:a5bc2719af90ffde998983bdeeacfd764"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4fd8d1ef626d9c42f631317921634ef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#ad4fd8d1ef626d9c42f631317921634ef">selected</a></td></tr>
+<tr class="memdesc:ad4fd8d1ef626d9c42f631317921634ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">the selected channel TODO(ctiller): this should be atomically set so we don't need to take a mutex in the common case <a href="#ad4fd8d1ef626d9c42f631317921634ef">More...</a><br/></td></tr>
+<tr class="separator:ad4fd8d1ef626d9c42f631317921634ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8eff3397ca43852b04a3be5b5e03a6ce"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a8eff3397ca43852b04a3be5b5e03a6ce">started_picking</a></td></tr>
+<tr class="memdesc:a8eff3397ca43852b04a3be5b5e03a6ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">have we started picking? <a href="#a8eff3397ca43852b04a3be5b5e03a6ce">More...</a><br/></td></tr>
+<tr class="separator:a8eff3397ca43852b04a3be5b5e03a6ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2818821a8daa60e92637357811aea7d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a2818821a8daa60e92637357811aea7d4">shutdown</a></td></tr>
+<tr class="memdesc:a2818821a8daa60e92637357811aea7d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">are we shut down? <a href="#a2818821a8daa60e92637357811aea7d4">More...</a><br/></td></tr>
+<tr class="separator:a2818821a8daa60e92637357811aea7d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a71958e25ab870a0f4436c07fed4585da"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a71958e25ab870a0f4436c07fed4585da">checking_subchannel</a></td></tr>
+<tr class="memdesc:a71958e25ab870a0f4436c07fed4585da"><td class="mdescLeft">&#160;</td><td class="mdescRight">which subchannel are we watching? <a href="#a71958e25ab870a0f4436c07fed4585da">More...</a><br/></td></tr>
+<tr class="separator:a71958e25ab870a0f4436c07fed4585da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a27c07323206631d5b7b021bfc2fb13d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a27c07323206631d5b7b021bfc2fb13d8">checking_connectivity</a></td></tr>
+<tr class="memdesc:a27c07323206631d5b7b021bfc2fb13d8"><td class="mdescLeft">&#160;</td><td class="mdescRight">what is the connectivity of that channel? <a href="#a27c07323206631d5b7b021bfc2fb13d8">More...</a><br/></td></tr>
+<tr class="separator:a27c07323206631d5b7b021bfc2fb13d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a017af289ea4d9b9b392eadec3356ff56"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structpending__pick.html">pending_pick</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a017af289ea4d9b9b392eadec3356ff56">pending_picks</a></td></tr>
+<tr class="memdesc:a017af289ea4d9b9b392eadec3356ff56"><td class="mdescLeft">&#160;</td><td class="mdescRight">list of picks that are waiting on connectivity <a href="#a017af289ea4d9b9b392eadec3356ff56">More...</a><br/></td></tr>
+<tr class="separator:a017af289ea4d9b9b392eadec3356ff56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b686da7cdddd0893e3d36c213bd274a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structpick__first__lb__policy.html#a4b686da7cdddd0893e3d36c213bd274a">state_tracker</a></td></tr>
+<tr class="memdesc:a4b686da7cdddd0893e3d36c213bd274a"><td class="mdescLeft">&#160;</td><td class="mdescRight">our connectivity state tracker <a href="#a4b686da7cdddd0893e3d36c213bd274a">More...</a><br/></td></tr>
+<tr class="separator:a4b686da7cdddd0893e3d36c213bd274a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a3e8f7088400929001aa4b589a3f79f79"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> pick_first_lb_policy::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>base policy: must be first </p>
+
+</div>
+</div>
+<a class="anchor" id="a27c07323206631d5b7b021bfc2fb13d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> pick_first_lb_policy::checking_connectivity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>what is the connectivity of that channel? </p>
+
+</div>
+</div>
+<a class="anchor" id="a71958e25ab870a0f4436c07fed4585da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t pick_first_lb_policy::checking_subchannel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>which subchannel are we watching? </p>
+
+</div>
+</div>
+<a class="anchor" id="a54f466dc5e968d2b3a8f8fe6511d2c56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> pick_first_lb_policy::connectivity_changed</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5bc2719af90ffde998983bdeeacfd764"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> pick_first_lb_policy::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mutex protecting remaining members </p>
+
+</div>
+</div>
+<a class="anchor" id="a39415d22c1bb4ace43e7abc6331f08e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t pick_first_lb_policy::num_subchannels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a017af289ea4d9b9b392eadec3356ff56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structpending__pick.html">pending_pick</a>* pick_first_lb_policy::pending_picks</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>list of picks that are waiting on connectivity </p>
+
+</div>
+</div>
+<a class="anchor" id="ad4fd8d1ef626d9c42f631317921634ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* pick_first_lb_policy::selected</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>the selected channel TODO(ctiller): this should be atomically set so we don't need to take a mutex in the common case </p>
+
+</div>
+</div>
+<a class="anchor" id="a2818821a8daa60e92637357811aea7d4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int pick_first_lb_policy::shutdown</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>are we shut down? </p>
+
+</div>
+</div>
+<a class="anchor" id="a8eff3397ca43852b04a3be5b5e03a6ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int pick_first_lb_policy::started_picking</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have we started picking? </p>
+
+</div>
+</div>
+<a class="anchor" id="a4b686da7cdddd0893e3d36c213bd274a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> pick_first_lb_policy::state_tracker</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>our connectivity state tracker </p>
+
+</div>
+</div>
+<a class="anchor" id="a359affbda6360c97745389a1c036afbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>** pick_first_lb_policy::subchannels</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>all our subchannels </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/lb_policies/<a class="el" href="pick__first_8c.html">pick_first.c</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>
diff --git a/doc/ref/core.internal/html/structreceived__status.html b/doc/ref/core.internal/html/structreceived__status.html
new file mode 100644
index 0000000000..cf4853e9e9
--- /dev/null
+++ b/doc/ref/core.internal/html/structreceived__status.html
@@ -0,0 +1,148 @@
+<!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: received_status 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">received_status Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a39555cb7bcc2ccf18854bd73136c9c03"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreceived__status.html#a39555cb7bcc2ccf18854bd73136c9c03">is_set</a></td></tr>
+<tr class="separator:a39555cb7bcc2ccf18854bd73136c9c03"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5adb1c689f796d0055094addbc8b31c2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreceived__status.html#a5adb1c689f796d0055094addbc8b31c2">code</a></td></tr>
+<tr class="separator:a5adb1c689f796d0055094addbc8b31c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6b73f215e5290bb6660c25e34c07ca72"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreceived__status.html#a6b73f215e5290bb6660c25e34c07ca72">details</a></td></tr>
+<tr class="separator:a6b73f215e5290bb6660c25e34c07ca72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a5adb1c689f796d0055094addbc8b31c2"></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> received_status::code</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b73f215e5290bb6660c25e34c07ca72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* received_status::details</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a39555cb7bcc2ccf18854bd73136c9c03"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> received_status::is_set</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8c.html">call.c</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>
diff --git a/doc/ref/core.internal/html/structregistered__call.html b/doc/ref/core.internal/html/structregistered__call.html
new file mode 100644
index 0000000000..b5c421dfb4
--- /dev/null
+++ b/doc/ref/core.internal/html/structregistered__call.html
@@ -0,0 +1,148 @@
+<!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: registered_call 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">registered_call Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a9abf9cadc3985fe0eacd827dcb857ea5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__call.html#a9abf9cadc3985fe0eacd827dcb857ea5">path</a></td></tr>
+<tr class="separator:a9abf9cadc3985fe0eacd827dcb857ea5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa41fdf7362b58db7148acb228df62408"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__call.html#aa41fdf7362b58db7148acb228df62408">authority</a></td></tr>
+<tr class="separator:aa41fdf7362b58db7148acb228df62408"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81f1e87dddb1f37ff09a9aaa56ca62cd"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structregistered__call.html">registered_call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__call.html#a81f1e87dddb1f37ff09a9aaa56ca62cd">next</a></td></tr>
+<tr class="separator:a81f1e87dddb1f37ff09a9aaa56ca62cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aa41fdf7362b58db7148acb228df62408"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* registered_call::authority</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a81f1e87dddb1f37ff09a9aaa56ca62cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structregistered__call.html">registered_call</a>* registered_call::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9abf9cadc3985fe0eacd827dcb857ea5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdelem.html">grpc_mdelem</a>* registered_call::path</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="channel_8c.html">channel.c</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>
diff --git a/doc/ref/core.internal/html/structregistered__method.html b/doc/ref/core.internal/html/structregistered__method.html
new file mode 100644
index 0000000000..021c470f86
--- /dev/null
+++ b/doc/ref/core.internal/html/structregistered__method.html
@@ -0,0 +1,162 @@
+<!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: registered_method 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">registered_method Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a84540106ff6f3763d9ada701667cf77d"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__method.html#a84540106ff6f3763d9ada701667cf77d">method</a></td></tr>
+<tr class="separator:a84540106ff6f3763d9ada701667cf77d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac8947363747871cca9a921739b686545"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__method.html#ac8947363747871cca9a921739b686545">host</a></td></tr>
+<tr class="separator:ac8947363747871cca9a921739b686545"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4a01615a9970b99e38cacf58ed49da0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structrequest__matcher.html">request_matcher</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__method.html#af4a01615a9970b99e38cacf58ed49da0">request_matcher</a></td></tr>
+<tr class="separator:af4a01615a9970b99e38cacf58ed49da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a662f0ff612e8211e1ac2ff2bc7350776"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structregistered__method.html">registered_method</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__method.html#a662f0ff612e8211e1ac2ff2bc7350776">next</a></td></tr>
+<tr class="separator:a662f0ff612e8211e1ac2ff2bc7350776"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac8947363747871cca9a921739b686545"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* registered_method::host</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a84540106ff6f3763d9ada701667cf77d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* registered_method::method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a662f0ff612e8211e1ac2ff2bc7350776"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structregistered__method.html">registered_method</a>* registered_method::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af4a01615a9970b99e38cacf58ed49da0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structrequest__matcher.html">request_matcher</a> registered_method::request_matcher</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structregistered__resolver.html b/doc/ref/core.internal/html/structregistered__resolver.html
new file mode 100644
index 0000000000..1a941f4225
--- /dev/null
+++ b/doc/ref/core.internal/html/structregistered__resolver.html
@@ -0,0 +1,134 @@
+<!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: registered_resolver 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">registered_resolver Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a8b53ba24e4ee032d66224f3588bceaba"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__resolver.html#a8b53ba24e4ee032d66224f3588bceaba">scheme</a></td></tr>
+<tr class="separator:a8b53ba24e4ee032d66224f3588bceaba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19447c6e94f1739efdfdf0928f62a1bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structregistered__resolver.html#a19447c6e94f1739efdfdf0928f62a1bb">factory</a></td></tr>
+<tr class="separator:a19447c6e94f1739efdfdf0928f62a1bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a19447c6e94f1739efdfdf0928f62a1bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver__factory.html">grpc_resolver_factory</a>* registered_resolver::factory</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8b53ba24e4ee032d66224f3588bceaba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* registered_resolver::scheme</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="resolver__registry_8c.html">resolver_registry.c</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>
diff --git a/doc/ref/core.internal/html/structreqinfo__master.html b/doc/ref/core.internal/html/structreqinfo__master.html
new file mode 100644
index 0000000000..c997555e19
--- /dev/null
+++ b/doc/ref/core.internal/html/structreqinfo__master.html
@@ -0,0 +1,176 @@
+<!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: reqinfo_master 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">reqinfo_master Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a638b15223a3d12acea6adf081d2a43a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreqinfo__master.html#a638b15223a3d12acea6adf081d2a43a9">success</a></td></tr>
+<tr class="separator:a638b15223a3d12acea6adf081d2a43a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1092f7b58950276ec6b35da0f7e1fd5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreqinfo__master.html#af1092f7b58950276ec6b35da0f7e1fd5">need_mask</a></td></tr>
+<tr class="separator:af1092f7b58950276ec6b35da0f7e1fd5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a42a5da5664f298a2ff5c94760f69ffb3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreqinfo__master.html#a42a5da5664f298a2ff5c94760f69ffb3">complete_mask</a></td></tr>
+<tr class="separator:a42a5da5664f298a2ff5c94760f69ffb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77f3e6ff12d266f5e2d0b49ed590a344"><td class="memItemLeft" align="right" valign="top"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreqinfo__master.html#a77f3e6ff12d266f5e2d0b49ed590a344">on_complete</a></td></tr>
+<tr class="separator:a77f3e6ff12d266f5e2d0b49ed590a344"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeaa50a715a0fc681a87daae3e3b72c9d"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structreqinfo__master.html#aeaa50a715a0fc681a87daae3e3b72c9d">user_data</a></td></tr>
+<tr class="separator:aeaa50a715a0fc681a87daae3e3b72c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a42a5da5664f298a2ff5c94760f69ffb3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> reqinfo_master::complete_mask</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af1092f7b58950276ec6b35da0f7e1fd5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#abb7bceac4325643af77af51c7b6af371">gpr_uint16</a> reqinfo_master::need_mask</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a77f3e6ff12d266f5e2d0b49ed590a344"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="call_8h.html#ac4899ae8f97f4bc7e61ae178d853373b">grpc_ioreq_completion_func</a> reqinfo_master::on_complete</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a638b15223a3d12acea6adf081d2a43a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> reqinfo_master::success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeaa50a715a0fc681a87daae3e3b72c9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* reqinfo_master::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8c.html">call.c</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>
diff --git a/doc/ref/core.internal/html/structrequest__killer.html b/doc/ref/core.internal/html/structrequest__killer.html
new file mode 100644
index 0000000000..c8a384ecb6
--- /dev/null
+++ b/doc/ref/core.internal/html/structrequest__killer.html
@@ -0,0 +1,148 @@
+<!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: request_killer 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">request_killer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ae9c50f145796c60343bdc4100a79c231"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structrequested__call.html">requested_call</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__killer.html#ae9c50f145796c60343bdc4100a79c231">requests</a></td></tr>
+<tr class="separator:ae9c50f145796c60343bdc4100a79c231"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3dd02f0f46905f3d7a7b88193ca0af6"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__killer.html#ae3dd02f0f46905f3d7a7b88193ca0af6">count</a></td></tr>
+<tr class="separator:ae3dd02f0f46905f3d7a7b88193ca0af6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aef7c9b567894a3f6af2ebaed400fff42"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__killer.html#aef7c9b567894a3f6af2ebaed400fff42">capacity</a></td></tr>
+<tr class="separator:aef7c9b567894a3f6af2ebaed400fff42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aef7c9b567894a3f6af2ebaed400fff42"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t request_killer::capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae3dd02f0f46905f3d7a7b88193ca0af6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t request_killer::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae9c50f145796c60343bdc4100a79c231"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structrequested__call.html">requested_call</a>** request_killer::requests</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structrequest__matcher.html b/doc/ref/core.internal/html/structrequest__matcher.html
new file mode 100644
index 0000000000..6b43cf5a89
--- /dev/null
+++ b/doc/ref/core.internal/html/structrequest__matcher.html
@@ -0,0 +1,148 @@
+<!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: request_matcher 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">request_matcher Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:aa302d9766527338ff4b416b59bbe1db2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcall__data.html">call_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__matcher.html#aa302d9766527338ff4b416b59bbe1db2">pending_head</a></td></tr>
+<tr class="separator:aa302d9766527338ff4b416b59bbe1db2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87b7e22827aea02c49a435f8aff3cdfe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcall__data.html">call_data</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__matcher.html#a87b7e22827aea02c49a435f8aff3cdfe">pending_tail</a></td></tr>
+<tr class="separator:a87b7e22827aea02c49a435f8aff3cdfe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f69adf001614b2fda3756100b3ba60d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequest__matcher.html#a5f69adf001614b2fda3756100b3ba60d">requests</a></td></tr>
+<tr class="separator:a5f69adf001614b2fda3756100b3ba60d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aa302d9766527338ff4b416b59bbe1db2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcall__data.html">call_data</a>* request_matcher::pending_head</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87b7e22827aea02c49a435f8aff3cdfe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structcall__data.html">call_data</a>* request_matcher::pending_tail</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5f69adf001614b2fda3756100b3ba60d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__stack__lockfree.html">gpr_stack_lockfree</a>* request_matcher::requests</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structrequested__call.html b/doc/ref/core.internal/html/structrequested__call.html
new file mode 100644
index 0000000000..5e5a1658a4
--- /dev/null
+++ b/doc/ref/core.internal/html/structrequested__call.html
@@ -0,0 +1,321 @@
+<!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: requested_call 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">requested_call Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a45da072fe9d7a970fe7880d9d2671e4c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a">requested_call_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#a45da072fe9d7a970fe7880d9d2671e4c">type</a></td></tr>
+<tr class="separator:a45da072fe9d7a970fe7880d9d2671e4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcebc67ebdd3f7230b72cbb324049ff4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#abcebc67ebdd3f7230b72cbb324049ff4">tag</a></td></tr>
+<tr class="separator:abcebc67ebdd3f7230b72cbb324049ff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3fbf352005312d002348e26038d8fb0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__server.html">grpc_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#ad3fbf352005312d002348e26038d8fb0">server</a></td></tr>
+<tr class="separator:ad3fbf352005312d002348e26038d8fb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7294f3532a1f72151e0ef3634f518431"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#a7294f3532a1f72151e0ef3634f518431">cq_bound_to_call</a></td></tr>
+<tr class="separator:a7294f3532a1f72151e0ef3634f518431"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b4918a8f8c79ab768156dc658e21b83"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#a3b4918a8f8c79ab768156dc658e21b83">cq_for_notification</a></td></tr>
+<tr class="separator:a3b4918a8f8c79ab768156dc658e21b83"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0995465df7da49fbbb591d8b03dd1de2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call.html">grpc_call</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#a0995465df7da49fbbb591d8b03dd1de2">call</a></td></tr>
+<tr class="separator:a0995465df7da49fbbb591d8b03dd1de2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ab625b5e4dc9670ef586c4d245858f5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#a4ab625b5e4dc9670ef586c4d245858f5">completion</a></td></tr>
+<tr class="separator:a4ab625b5e4dc9670ef586c4d245858f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1814382d48854b3ce31b0aef9c4b4c7e"><td class="memItemLeft" >union {</td></tr>
+<tr class="memitem:a4ba59920e1a2008e021e0666bdd4e0fa"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:af301780b3f3d5cd3e66bc3da4ee45e28"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__call__details.html">grpc_call_details</a> *&#160;&#160;&#160;<a class="el" href="structrequested__call.html#a65cfbe1bb43697b7cc762ca44fa94c1b">details</a></td></tr>
+<tr class="separator:af301780b3f3d5cd3e66bc3da4ee45e28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4874ce1144797a2c14a028f2a9f666c"><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="structrequested__call.html#a813caeee0e35952179d319607847c7b7">initial_metadata</a></td></tr>
+<tr class="separator:aa4874ce1144797a2c14a028f2a9f666c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4ba59920e1a2008e021e0666bdd4e0fa"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structrequested__call.html#a664afa5ffde3750f0ff04f69813fbcd2">batch</a></td></tr>
+<tr class="separator:a4ba59920e1a2008e021e0666bdd4e0fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0898c1e43eae21655f6cc12105595a32"><td class="memItemLeft" >&#160;&#160;&#160;struct {</td></tr>
+<tr class="memitem:a8d235c9e0bc151fcfdaf9f25ed8e8be4"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structregistered__method.html">registered_method</a> *&#160;&#160;&#160;<a class="el" href="structrequested__call.html#ae210a8bd23019d2008f1eb9ab1320eae">registered_method</a></td></tr>
+<tr class="separator:a8d235c9e0bc151fcfdaf9f25ed8e8be4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1cdde70635ee3ad49972b1ac0a4a84b"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;&#160;&#160;<a class="el" href="structrequested__call.html#a7b0834c5a24427fbe79fb77ffd103cc8">deadline</a></td></tr>
+<tr class="separator:aa1cdde70635ee3ad49972b1ac0a4a84b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d5a7dce88ee3fd0f952fdee645c7486"><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="structrequested__call.html#a813caeee0e35952179d319607847c7b7">initial_metadata</a></td></tr>
+<tr class="separator:a0d5a7dce88ee3fd0f952fdee645c7486"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaca85567559abf1c21874c487fa73f86"><td class="memItemLeft" >&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **&#160;&#160;&#160;<a class="el" href="structrequested__call.html#a5c928486fa8b32b8ff89a672de5b4e2c">optional_payload</a></td></tr>
+<tr class="separator:aaca85567559abf1c21874c487fa73f86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0898c1e43eae21655f6cc12105595a32"><td class="memItemLeft" valign="top">&#160;&#160;&#160;}&#160;&#160;&#160;<a class="el" href="structrequested__call.html#a7ee06556aae0a6e22ca157a961c484ce">registered</a></td></tr>
+<tr class="separator:a0898c1e43eae21655f6cc12105595a32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1814382d48854b3ce31b0aef9c4b4c7e"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structrequested__call.html#a1814382d48854b3ce31b0aef9c4b4c7e">data</a></td></tr>
+<tr class="separator:a1814382d48854b3ce31b0aef9c4b4c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a664afa5ffde3750f0ff04f69813fbcd2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } requested_call::batch</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0995465df7da49fbbb591d8b03dd1de2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call.html">grpc_call</a>** requested_call::call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4ab625b5e4dc9670ef586c4d245858f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> requested_call::completion</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7294f3532a1f72151e0ef3634f518431"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* requested_call::cq_bound_to_call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3b4918a8f8c79ab768156dc658e21b83"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* requested_call::cq_for_notification</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1814382d48854b3ce31b0aef9c4b4c7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">union { ... } requested_call::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b0834c5a24427fbe79fb77ffd103cc8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>* requested_call::deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a65cfbe1bb43697b7cc762ca44fa94c1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__details.html">grpc_call_details</a>* requested_call::details</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a813caeee0e35952179d319607847c7b7"></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>* requested_call::initial_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c928486fa8b32b8ff89a672de5b4e2c"></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>** requested_call::optional_payload</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ee06556aae0a6e22ca157a961c484ce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } requested_call::registered</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae210a8bd23019d2008f1eb9ab1320eae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structregistered__method.html">registered_method</a>* requested_call::registered_method</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad3fbf352005312d002348e26038d8fb0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__server.html">grpc_server</a>* requested_call::server</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abcebc67ebdd3f7230b72cbb324049ff4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* requested_call::tag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a45da072fe9d7a970fe7880d9d2671e4c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="server_8c.html#aca2d7591ebc428dc14cf07f72e88c38a">requested_call_type</a> requested_call::type</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structsecure__endpoint.html b/doc/ref/core.internal/html/structsecure__endpoint.html
new file mode 100644
index 0000000000..405544716c
--- /dev/null
+++ b/doc/ref/core.internal/html/structsecure__endpoint.html
@@ -0,0 +1,302 @@
+<!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: secure_endpoint 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">secure_endpoint Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ac85eec4e82c343cb9fd03c8dea0a08bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#ac85eec4e82c343cb9fd03c8dea0a08bb">base</a></td></tr>
+<tr class="separator:ac85eec4e82c343cb9fd03c8dea0a08bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee294803f06c5d38dac97d2933d52e94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#aee294803f06c5d38dac97d2933d52e94">wrapped_ep</a></td></tr>
+<tr class="separator:aee294803f06c5d38dac97d2933d52e94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43b8ec6db9164ca64be2b1629822d5ec"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a43b8ec6db9164ca64be2b1629822d5ec">protector</a></td></tr>
+<tr class="separator:a43b8ec6db9164ca64be2b1629822d5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4fa8c5008b701606701d1d93c989961e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a4fa8c5008b701606701d1d93c989961e">protector_mu</a></td></tr>
+<tr class="separator:a4fa8c5008b701606701d1d93c989961e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1abae10ca6f256c0ebc655e68f1d5a47"><td class="memItemLeft" align="right" valign="top"><a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a1abae10ca6f256c0ebc655e68f1d5a47">read_cb</a></td></tr>
+<tr class="separator:a1abae10ca6f256c0ebc655e68f1d5a47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae9adc2f043f1b89821897f926bd95ff5"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#ae9adc2f043f1b89821897f926bd95ff5">read_user_data</a></td></tr>
+<tr class="separator:ae9adc2f043f1b89821897f926bd95ff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0d57c837c3b9281454f2629845162de0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a0d57c837c3b9281454f2629845162de0">write_cb</a></td></tr>
+<tr class="separator:a0d57c837c3b9281454f2629845162de0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae444fbf4226a8118b5cac6f71d043124"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#ae444fbf4226a8118b5cac6f71d043124">write_user_data</a></td></tr>
+<tr class="separator:ae444fbf4226a8118b5cac6f71d043124"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a46eca04c2167e2d459c0a7aab630bf8a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a46eca04c2167e2d459c0a7aab630bf8a">leftover_bytes</a></td></tr>
+<tr class="separator:a46eca04c2167e2d459c0a7aab630bf8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb9f223fa1653bb697b63e21226c2915"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#acb9f223fa1653bb697b63e21226c2915">read_staging_buffer</a></td></tr>
+<tr class="separator:acb9f223fa1653bb697b63e21226c2915"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc32a14befcf93c3a16dcb9e8fa66ef4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#abc32a14befcf93c3a16dcb9e8fa66ef4">input_buffer</a></td></tr>
+<tr class="separator:abc32a14befcf93c3a16dcb9e8fa66ef4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9349d713abd0f17c41579a9c149629c2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a9349d713abd0f17c41579a9c149629c2">write_staging_buffer</a></td></tr>
+<tr class="separator:a9349d713abd0f17c41579a9c149629c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a901c720fdbd311bbaea1e91b441a0d61"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a901c720fdbd311bbaea1e91b441a0d61">output_buffer</a></td></tr>
+<tr class="separator:a901c720fdbd311bbaea1e91b441a0d61"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02863c0d02a5776bee65747c5553f517"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsecure__endpoint.html#a02863c0d02a5776bee65747c5553f517">ref</a></td></tr>
+<tr class="separator:a02863c0d02a5776bee65747c5553f517"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac85eec4e82c343cb9fd03c8dea0a08bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> secure_endpoint::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc32a14befcf93c3a16dcb9e8fa66ef4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> secure_endpoint::input_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a46eca04c2167e2d459c0a7aab630bf8a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> secure_endpoint::leftover_bytes</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a901c720fdbd311bbaea1e91b441a0d61"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice__buffer.html">gpr_slice_buffer</a> secure_endpoint::output_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43b8ec6db9164ca64be2b1629822d5ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>* secure_endpoint::protector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4fa8c5008b701606701d1d93c989961e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> secure_endpoint::protector_mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1abae10ca6f256c0ebc655e68f1d5a47"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="endpoint_8h.html#adb689cc1f448569b81f46c8810b5a24c">grpc_endpoint_read_cb</a> secure_endpoint::read_cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb9f223fa1653bb697b63e21226c2915"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> secure_endpoint::read_staging_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae9adc2f043f1b89821897f926bd95ff5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* secure_endpoint::read_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02863c0d02a5776bee65747c5553f517"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> secure_endpoint::ref</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee294803f06c5d38dac97d2933d52e94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* secure_endpoint::wrapped_ep</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0d57c837c3b9281454f2629845162de0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="endpoint_8h.html#af2ca6ea84b9d91d443ba9a8a53e55f2a">grpc_endpoint_write_cb</a> secure_endpoint::write_cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9349d713abd0f17c41579a9c149629c2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> secure_endpoint::write_staging_buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae444fbf4226a8118b5cac6f71d043124"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* secure_endpoint::write_user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="secure__endpoint_8c.html">secure_endpoint.c</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>
diff --git a/doc/ref/core.internal/html/structshard__type.html b/doc/ref/core.internal/html/structshard__type.html
new file mode 100644
index 0000000000..217efd40fa
--- /dev/null
+++ b/doc/ref/core.internal/html/structshard__type.html
@@ -0,0 +1,204 @@
+<!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: shard_type 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">shard_type Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ae0271c419d83a06ab69fe48ce3e3196b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html#ae0271c419d83a06ab69fe48ce3e3196b">mu</a></td></tr>
+<tr class="separator:ae0271c419d83a06ab69fe48ce3e3196b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a700e0afbcbed737607bac82970c61601"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html#a700e0afbcbed737607bac82970c61601">stats</a></td></tr>
+<tr class="separator:a700e0afbcbed737607bac82970c61601"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a561cd2753aeec34ba62c823ca9471168"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html#a561cd2753aeec34ba62c823ca9471168">queue_deadline_cap</a></td></tr>
+<tr class="separator:a561cd2753aeec34ba62c823ca9471168"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16cac3c86f6ac95b49f7a8b703dc4f07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html#a16cac3c86f6ac95b49f7a8b703dc4f07">min_deadline</a></td></tr>
+<tr class="separator:a16cac3c86f6ac95b49f7a8b703dc4f07"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2024ca8c92ce9d378aa5aa551126a9c1"><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="structshard__type.html#a2024ca8c92ce9d378aa5aa551126a9c1">shard_queue_index</a></td></tr>
+<tr class="separator:a2024ca8c92ce9d378aa5aa551126a9c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae212a2061cff7c73ff1c208174272070"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html#ae212a2061cff7c73ff1c208174272070">heap</a></td></tr>
+<tr class="separator:ae212a2061cff7c73ff1c208174272070"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e5f5db6f2eb96346ad17f43f731b31f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshard__type.html#a9e5f5db6f2eb96346ad17f43f731b31f">list</a></td></tr>
+<tr class="separator:a9e5f5db6f2eb96346ad17f43f731b31f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ae212a2061cff7c73ff1c208174272070"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm__heap.html">grpc_alarm_heap</a> shard_type::heap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9e5f5db6f2eb96346ad17f43f731b31f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> shard_type::list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16cac3c86f6ac95b49f7a8b703dc4f07"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> shard_type::min_deadline</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae0271c419d83a06ab69fe48ce3e3196b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> shard_type::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a561cd2753aeec34ba62c823ca9471168"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> shard_type::queue_deadline_cap</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2024ca8c92ce9d378aa5aa551126a9c1"></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> shard_type::shard_queue_index</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a700e0afbcbed737607bac82970c61601"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> shard_type::stats</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/iomgr/<a class="el" href="alarm_8c.html">alarm.c</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>
diff --git a/doc/ref/core.internal/html/structshutdown__cleanup__args.html b/doc/ref/core.internal/html/structshutdown__cleanup__args.html
new file mode 100644
index 0000000000..9744b4e200
--- /dev/null
+++ b/doc/ref/core.internal/html/structshutdown__cleanup__args.html
@@ -0,0 +1,134 @@
+<!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: shutdown_cleanup_args 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">shutdown_cleanup_args Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a42d1e24f7cc5d51db75df17263950c9a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__cleanup__args.html#a42d1e24f7cc5d51db75df17263950c9a">closure</a></td></tr>
+<tr class="separator:a42d1e24f7cc5d51db75df17263950c9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac171669ceb843c70885925c549867e5c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__cleanup__args.html#ac171669ceb843c70885925c549867e5c">slice</a></td></tr>
+<tr class="separator:ac171669ceb843c70885925c549867e5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a42d1e24f7cc5d51db75df17263950c9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> shutdown_cleanup_args::closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac171669ceb843c70885925c549867e5c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> shutdown_cleanup_args::slice</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structshutdown__tag.html b/doc/ref/core.internal/html/structshutdown__tag.html
new file mode 100644
index 0000000000..2d86728024
--- /dev/null
+++ b/doc/ref/core.internal/html/structshutdown__tag.html
@@ -0,0 +1,148 @@
+<!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: shutdown_tag 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">shutdown_tag Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a632bfe333648e7440bf13caa5eaa48c0"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__tag.html#a632bfe333648e7440bf13caa5eaa48c0">tag</a></td></tr>
+<tr class="separator:a632bfe333648e7440bf13caa5eaa48c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afca3fb84e8cde4f0b5f3e18905f555e9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__tag.html#afca3fb84e8cde4f0b5f3e18905f555e9">cq</a></td></tr>
+<tr class="separator:afca3fb84e8cde4f0b5f3e18905f555e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a659b6448a029795dd262462d5f679609"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structshutdown__tag.html#a659b6448a029795dd262462d5f679609">completion</a></td></tr>
+<tr class="separator:a659b6448a029795dd262462d5f679609"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a659b6448a029795dd262462d5f679609"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> shutdown_tag::completion</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afca3fb84e8cde4f0b5f3e18905f555e9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* shutdown_tag::cq</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a632bfe333648e7440bf13caa5eaa48c0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* shutdown_tag::tag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="server_8c.html">server.c</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>
diff --git a/doc/ref/core.internal/html/structsockaddr__resolver.html b/doc/ref/core.internal/html/structsockaddr__resolver.html
new file mode 100644
index 0000000000..4842c7687e
--- /dev/null
+++ b/doc/ref/core.internal/html/structsockaddr__resolver.html
@@ -0,0 +1,273 @@
+<!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: sockaddr_resolver 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">sockaddr_resolver Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a92a0b91dca1a2ecdb5eea739a8038c82"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#a92a0b91dca1a2ecdb5eea739a8038c82">base</a></td></tr>
+<tr class="memdesc:a92a0b91dca1a2ecdb5eea739a8038c82"><td class="mdescLeft">&#160;</td><td class="mdescRight">base class: must be first <a href="#a92a0b91dca1a2ecdb5eea739a8038c82">More...</a><br/></td></tr>
+<tr class="separator:a92a0b91dca1a2ecdb5eea739a8038c82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6ff58914bcf9afa2399f39fdd27ad5f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#ae6ff58914bcf9afa2399f39fdd27ad5f">refs</a></td></tr>
+<tr class="memdesc:ae6ff58914bcf9afa2399f39fdd27ad5f"><td class="mdescLeft">&#160;</td><td class="mdescRight">refcount <a href="#ae6ff58914bcf9afa2399f39fdd27ad5f">More...</a><br/></td></tr>
+<tr class="separator:ae6ff58914bcf9afa2399f39fdd27ad5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae68e3b93926c4d132ca5c05a752b1e59"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#ae68e3b93926c4d132ca5c05a752b1e59">subchannel_factory</a></td></tr>
+<tr class="memdesc:ae68e3b93926c4d132ca5c05a752b1e59"><td class="mdescLeft">&#160;</td><td class="mdescRight">subchannel factory <a href="#ae68e3b93926c4d132ca5c05a752b1e59">More...</a><br/></td></tr>
+<tr class="separator:ae68e3b93926c4d132ca5c05a752b1e59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3d3d40590716456f336738170ad3f3e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a> *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#a3d3d40590716456f336738170ad3f3e8">lb_policy_factory</a> )(<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels, size_t num_subchannels)</td></tr>
+<tr class="memdesc:a3d3d40590716456f336738170ad3f3e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">load balancing policy factory <a href="#a3d3d40590716456f336738170ad3f3e8">More...</a><br/></td></tr>
+<tr class="separator:a3d3d40590716456f336738170ad3f3e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35fd9ba04c766da4556c76e6f32a6356"><td class="memItemLeft" align="right" valign="top">struct sockaddr_storage&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#a35fd9ba04c766da4556c76e6f32a6356">addr</a></td></tr>
+<tr class="memdesc:a35fd9ba04c766da4556c76e6f32a6356"><td class="mdescLeft">&#160;</td><td class="mdescRight">the address that we've 'resolved' <a href="#a35fd9ba04c766da4556c76e6f32a6356">More...</a><br/></td></tr>
+<tr class="separator:a35fd9ba04c766da4556c76e6f32a6356"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acad714ee68d2e23a4157f49f7fc35e91"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#acad714ee68d2e23a4157f49f7fc35e91">addr_len</a></td></tr>
+<tr class="separator:acad714ee68d2e23a4157f49f7fc35e91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ac37ca23a45425c9af702236f53c81d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#a9ac37ca23a45425c9af702236f53c81d">mu</a></td></tr>
+<tr class="memdesc:a9ac37ca23a45425c9af702236f53c81d"><td class="mdescLeft">&#160;</td><td class="mdescRight">mutex guarding the rest of the state <a href="#a9ac37ca23a45425c9af702236f53c81d">More...</a><br/></td></tr>
+<tr class="separator:a9ac37ca23a45425c9af702236f53c81d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38967133a685f7d20effceaaeec54e5e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#a38967133a685f7d20effceaaeec54e5e">published</a></td></tr>
+<tr class="memdesc:a38967133a685f7d20effceaaeec54e5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">have we published? <a href="#a38967133a685f7d20effceaaeec54e5e">More...</a><br/></td></tr>
+<tr class="separator:a38967133a685f7d20effceaaeec54e5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acd7a423835a4be78a041f895bba3b421"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#acd7a423835a4be78a041f895bba3b421">next_completion</a></td></tr>
+<tr class="memdesc:acd7a423835a4be78a041f895bba3b421"><td class="mdescLeft">&#160;</td><td class="mdescRight">pending next completion, or NULL <a href="#acd7a423835a4be78a041f895bba3b421">More...</a><br/></td></tr>
+<tr class="separator:acd7a423835a4be78a041f895bba3b421"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9d11ab81955963bff8db90903241efa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsockaddr__resolver.html#ad9d11ab81955963bff8db90903241efa">target_config</a></td></tr>
+<tr class="memdesc:ad9d11ab81955963bff8db90903241efa"><td class="mdescLeft">&#160;</td><td class="mdescRight">target config address for next completion <a href="#ad9d11ab81955963bff8db90903241efa">More...</a><br/></td></tr>
+<tr class="separator:ad9d11ab81955963bff8db90903241efa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a35fd9ba04c766da4556c76e6f32a6356"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct sockaddr_storage sockaddr_resolver::addr</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>the address that we've 'resolved' </p>
+
+</div>
+</div>
+<a class="anchor" id="acad714ee68d2e23a4157f49f7fc35e91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int sockaddr_resolver::addr_len</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a92a0b91dca1a2ecdb5eea739a8038c82"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__resolver.html">grpc_resolver</a> sockaddr_resolver::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>base class: must be first </p>
+
+</div>
+</div>
+<a class="anchor" id="a3d3d40590716456f336738170ad3f3e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__lb__policy.html">grpc_lb_policy</a>*(* sockaddr_resolver::lb_policy_factory)(<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> **subchannels, size_t num_subchannels)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>load balancing policy factory </p>
+
+</div>
+</div>
+<a class="anchor" id="a9ac37ca23a45425c9af702236f53c81d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> sockaddr_resolver::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>mutex guarding the rest of the state </p>
+
+</div>
+</div>
+<a class="anchor" id="acd7a423835a4be78a041f895bba3b421"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* sockaddr_resolver::next_completion</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>pending next completion, or NULL </p>
+
+</div>
+</div>
+<a class="anchor" id="a38967133a685f7d20effceaaeec54e5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int sockaddr_resolver::published</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>have we published? </p>
+
+</div>
+</div>
+<a class="anchor" id="ae6ff58914bcf9afa2399f39fdd27ad5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> sockaddr_resolver::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>refcount </p>
+
+</div>
+</div>
+<a class="anchor" id="ae68e3b93926c4d132ca5c05a752b1e59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>* sockaddr_resolver::subchannel_factory</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>subchannel factory </p>
+
+</div>
+</div>
+<a class="anchor" id="ad9d11ab81955963bff8db90903241efa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__client__config.html">grpc_client_config</a>** sockaddr_resolver::target_config</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>target config address for next completion </p>
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/resolvers/<a class="el" href="sockaddr__resolver_8c.html">sockaddr_resolver.c</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>
diff --git a/doc/ref/core.internal/html/structstate__watcher.html b/doc/ref/core.internal/html/structstate__watcher.html
new file mode 100644
index 0000000000..24fba1ae38
--- /dev/null
+++ b/doc/ref/core.internal/html/structstate__watcher.html
@@ -0,0 +1,303 @@
+<!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: state_watcher 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">state_watcher Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ab806a249c408b4412fc03ed0a5ede4c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#ab806a249c408b4412fc03ed0a5ede4c9">closure</a></td></tr>
+<tr class="separator:ab806a249c408b4412fc03ed0a5ede4c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb6d0b4ffa782421e6f0898f8b13d4e8"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#adb6d0b4ffa782421e6f0898f8b13d4e8">version</a></td></tr>
+<tr class="separator:adb6d0b4ffa782421e6f0898f8b13d4e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1de71efe9c462d4692acedd9da69db3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#ab1de71efe9c462d4692acedd9da69db3">subchannel</a></td></tr>
+<tr class="separator:ab1de71efe9c462d4692acedd9da69db3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2777b6c363f7d4262252bc4aaf515d43"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a2777b6c363f7d4262252bc4aaf515d43">connectivity_state</a></td></tr>
+<tr class="separator:a2777b6c363f7d4262252bc4aaf515d43"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a39ac8f332dc6a1b6a9bf0815b6912327"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a39ac8f332dc6a1b6a9bf0815b6912327">mu</a></td></tr>
+<tr class="separator:a39ac8f332dc6a1b6a9bf0815b6912327"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02cd41caaad234931890c2f4740bf345"><td class="memItemLeft" align="right" valign="top"><a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c">callback_phase</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a02cd41caaad234931890c2f4740bf345">phase</a></td></tr>
+<tr class="separator:a02cd41caaad234931890c2f4740bf345"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e2c034f2582615aa9c6949879289cc2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a0e2c034f2582615aa9c6949879289cc2">success</a></td></tr>
+<tr class="separator:a0e2c034f2582615aa9c6949879289cc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3bd085c4cbd7f167fa42b7191f502d39"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a3bd085c4cbd7f167fa42b7191f502d39">on_complete</a></td></tr>
+<tr class="separator:a3bd085c4cbd7f167fa42b7191f502d39"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a550220a27c14e026329a260cd581ece2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a550220a27c14e026329a260cd581ece2">alarm</a></td></tr>
+<tr class="separator:a550220a27c14e026329a260cd581ece2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a1c09d1740e9cc49f81e4ac4f8bf4bd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a3a1c09d1740e9cc49f81e4ac4f8bf4bd">state</a></td></tr>
+<tr class="separator:a3a1c09d1740e9cc49f81e4ac4f8bf4bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae85d1a92c4f1e6a4eff3bcb356ff8204"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#ae85d1a92c4f1e6a4eff3bcb356ff8204">cq</a></td></tr>
+<tr class="separator:ae85d1a92c4f1e6a4eff3bcb356ff8204"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d65436328c649d7f029b98e54d50588"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a1d65436328c649d7f029b98e54d50588">completion_storage</a></td></tr>
+<tr class="separator:a1d65436328c649d7f029b98e54d50588"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0b0df5ad70d6a91a268452e03a885404"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a0b0df5ad70d6a91a268452e03a885404">channel</a></td></tr>
+<tr class="separator:a0b0df5ad70d6a91a268452e03a885404"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67d44afd79ad20ec97e2e43f538f6d77"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html#a67d44afd79ad20ec97e2e43f538f6d77">tag</a></td></tr>
+<tr class="separator:a67d44afd79ad20ec97e2e43f538f6d77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a550220a27c14e026329a260cd581ece2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__alarm.html">grpc_alarm</a> state_watcher::alarm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0b0df5ad70d6a91a268452e03a885404"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a>* state_watcher::channel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab806a249c408b4412fc03ed0a5ede4c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> state_watcher::closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d65436328c649d7f029b98e54d50588"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__cq__completion.html">grpc_cq_completion</a> state_watcher::completion_storage</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2777b6c363f7d4262252bc4aaf515d43"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state_watcher::connectivity_state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae85d1a92c4f1e6a4eff3bcb356ff8204"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__completion__queue.html">grpc_completion_queue</a>* state_watcher::cq</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a39ac8f332dc6a1b6a9bf0815b6912327"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> state_watcher::mu</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3bd085c4cbd7f167fa42b7191f502d39"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> state_watcher::on_complete</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02cd41caaad234931890c2f4740bf345"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="channel__connectivity_8c.html#a71937a2ee2a4befe88e84d4966f8845c">callback_phase</a> state_watcher::phase</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3a1c09d1740e9cc49f81e4ac4f8bf4bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> state_watcher::state</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab1de71efe9c462d4692acedd9da69db3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* state_watcher::subchannel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0e2c034f2582615aa9c6949879289cc2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int state_watcher::success</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a67d44afd79ad20ec97e2e43f538f6d77"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* state_watcher::tag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adb6d0b4ffa782421e6f0898f8b13d4e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t state_watcher::version</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel_8c.html">subchannel.c</a></li>
+<li>src/core/surface/<a class="el" href="channel__connectivity_8c.html">channel_connectivity.c</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>
diff --git a/doc/ref/core.internal/html/structsubchannel__factory.html b/doc/ref/core.internal/html/structsubchannel__factory.html
new file mode 100644
index 0000000000..8ba9ff328e
--- /dev/null
+++ b/doc/ref/core.internal/html/structsubchannel__factory.html
@@ -0,0 +1,191 @@
+<!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: subchannel_factory 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">subchannel_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a58fdbc6cebefc2d0f5a75081bee7b676"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html#a58fdbc6cebefc2d0f5a75081bee7b676">base</a></td></tr>
+<tr class="separator:a58fdbc6cebefc2d0f5a75081bee7b676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a32ce0e8c21b78563576c8a620251a3f5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html#a32ce0e8c21b78563576c8a620251a3f5">refs</a></td></tr>
+<tr class="separator:a32ce0e8c21b78563576c8a620251a3f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a920af9d40dedd8ba5eb2f64648eb5008"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html#a920af9d40dedd8ba5eb2f64648eb5008">mdctx</a></td></tr>
+<tr class="separator:a920af9d40dedd8ba5eb2f64648eb5008"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0538fbb1dc64ec4ab487326b64792bde"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html#a0538fbb1dc64ec4ab487326b64792bde">merge_args</a></td></tr>
+<tr class="separator:a0538fbb1dc64ec4ab487326b64792bde"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b700fff25d9d9c6739dfbed18ce5e2b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html#a9b700fff25d9d9c6739dfbed18ce5e2b">security_connector</a></td></tr>
+<tr class="separator:a9b700fff25d9d9c6739dfbed18ce5e2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7945d086262563fdde51b250893e428"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__channel.html">grpc_channel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structsubchannel__factory.html#ab7945d086262563fdde51b250893e428">master</a></td></tr>
+<tr class="separator:ab7945d086262563fdde51b250893e428"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a58fdbc6cebefc2d0f5a75081bee7b676"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> subchannel_factory::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab7945d086262563fdde51b250893e428"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel.html">grpc_channel</a> * subchannel_factory::master</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a920af9d40dedd8ba5eb2f64648eb5008"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> * subchannel_factory::mdctx</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0538fbb1dc64ec4ab487326b64792bde"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__args.html">grpc_channel_args</a> * subchannel_factory::merge_args</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a32ce0e8c21b78563576c8a620251a3f5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> subchannel_factory::refs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b700fff25d9d9c6739dfbed18ce5e2b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__channel__security__connector.html">grpc_channel_security_connector</a>* subchannel_factory::security_connector</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following files:<ul>
+<li>src/core/surface/<a class="el" href="secure__channel__create_8c.html">secure_channel_create.c</a></li>
+<li>src/core/surface/<a class="el" href="channel__create_8c.html">channel_create.c</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>
diff --git a/doc/ref/core.internal/html/structtcp__endpoint__list.html b/doc/ref/core.internal/html/structtcp__endpoint__list.html
new file mode 100644
index 0000000000..11cd0e4e7c
--- /dev/null
+++ b/doc/ref/core.internal/html/structtcp__endpoint__list.html
@@ -0,0 +1,134 @@
+<!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: tcp_endpoint_list 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">tcp_endpoint_list Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1de9aaa649c6d84c81c676171676b862"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtcp__endpoint__list.html#a1de9aaa649c6d84c81c676171676b862">tcp_endpoint</a></td></tr>
+<tr class="separator:a1de9aaa649c6d84c81c676171676b862"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaeb000e9fe236631fc1355b657a9e1fe"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtcp__endpoint__list.html#aaeb000e9fe236631fc1355b657a9e1fe">next</a></td></tr>
+<tr class="separator:aaeb000e9fe236631fc1355b657a9e1fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aaeb000e9fe236631fc1355b657a9e1fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structtcp__endpoint__list.html">tcp_endpoint_list</a>* tcp_endpoint_list::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1de9aaa649c6d84c81c676171676b862"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* tcp_endpoint_list::tcp_endpoint</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="server__secure__chttp2_8c.html">server_secure_chttp2.c</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>
diff --git a/doc/ref/core.internal/html/structtracer.html b/doc/ref/core.internal/html/structtracer.html
new file mode 100644
index 0000000000..dc8659d9fb
--- /dev/null
+++ b/doc/ref/core.internal/html/structtracer.html
@@ -0,0 +1,148 @@
+<!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: tracer 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">tracer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a08a3bb14c306ce7394df6a5bb56e6eb3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtracer.html#a08a3bb14c306ce7394df6a5bb56e6eb3">name</a></td></tr>
+<tr class="separator:a08a3bb14c306ce7394df6a5bb56e6eb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7cb129f30976377f84c881d419094573"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtracer.html#a7cb129f30976377f84c881d419094573">flag</a></td></tr>
+<tr class="separator:a7cb129f30976377f84c881d419094573"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec6b92c7c58fec94b57b7a2385c3c3c1"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structtracer.html">tracer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtracer.html#aec6b92c7c58fec94b57b7a2385c3c3c1">next</a></td></tr>
+<tr class="separator:aec6b92c7c58fec94b57b7a2385c3c3c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7cb129f30976377f84c881d419094573"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int* tracer::flag</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08a3bb14c306ce7394df6a5bb56e6eb3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* tracer::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aec6b92c7c58fec94b57b7a2385c3c3c1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structtracer.html">tracer</a>* tracer::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/debug/<a class="el" href="trace_8c.html">trace.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__fake__frame.html b/doc/ref/core.internal/html/structtsi__fake__frame.html
new file mode 100644
index 0000000000..465e24e655
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__fake__frame.html
@@ -0,0 +1,176 @@
+<!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: tsi_fake_frame 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">tsi_fake_frame Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a4c55725c3501776bccf3dc63dc3c0301"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame.html#a4c55725c3501776bccf3dc63dc3c0301">data</a></td></tr>
+<tr class="separator:a4c55725c3501776bccf3dc63dc3c0301"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59d8fa5e8e076fca91b8c1fa1572d9cf"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame.html#a59d8fa5e8e076fca91b8c1fa1572d9cf">size</a></td></tr>
+<tr class="separator:a59d8fa5e8e076fca91b8c1fa1572d9cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac48b3f97ad8df8b87cf38b75d843591b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame.html#ac48b3f97ad8df8b87cf38b75d843591b">allocated_size</a></td></tr>
+<tr class="separator:ac48b3f97ad8df8b87cf38b75d843591b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab1fe06dcec5ebffc85112c9a726ed3f6"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame.html#ab1fe06dcec5ebffc85112c9a726ed3f6">offset</a></td></tr>
+<tr class="separator:ab1fe06dcec5ebffc85112c9a726ed3f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c19114ec65853283cf5234b8bef611b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame.html#a5c19114ec65853283cf5234b8bef611b">needs_draining</a></td></tr>
+<tr class="separator:a5c19114ec65853283cf5234b8bef611b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac48b3f97ad8df8b87cf38b75d843591b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_fake_frame::allocated_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4c55725c3501776bccf3dc63dc3c0301"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* tsi_fake_frame::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c19114ec65853283cf5234b8bef611b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_fake_frame::needs_draining</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab1fe06dcec5ebffc85112c9a726ed3f6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_fake_frame::offset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a59d8fa5e8e076fca91b8c1fa1572d9cf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_fake_frame::size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="fake__transport__security_8c.html">fake_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__fake__frame__protector.html b/doc/ref/core.internal/html/structtsi__fake__frame__protector.html
new file mode 100644
index 0000000000..d3306a75c4
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__fake__frame__protector.html
@@ -0,0 +1,162 @@
+<!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: tsi_fake_frame_protector 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">tsi_fake_frame_protector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a1f23e2443125ab322674638a71832620"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame__protector.html#a1f23e2443125ab322674638a71832620">base</a></td></tr>
+<tr class="separator:a1f23e2443125ab322674638a71832620"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a279c6e7620230ba5c790f7063846dbce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame__protector.html#a279c6e7620230ba5c790f7063846dbce">protect_frame</a></td></tr>
+<tr class="separator:a279c6e7620230ba5c790f7063846dbce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3e7c2d5e9b3f81c75772f328243db00"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame__protector.html#ac3e7c2d5e9b3f81c75772f328243db00">unprotect_frame</a></td></tr>
+<tr class="separator:ac3e7c2d5e9b3f81c75772f328243db00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a03f274c6362a35ad486d91fdac777816"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__frame__protector.html#a03f274c6362a35ad486d91fdac777816">max_frame_size</a></td></tr>
+<tr class="separator:a03f274c6362a35ad486d91fdac777816"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1f23e2443125ab322674638a71832620"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> tsi_fake_frame_protector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a03f274c6362a35ad486d91fdac777816"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_fake_frame_protector::max_frame_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a279c6e7620230ba5c790f7063846dbce"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a> tsi_fake_frame_protector::protect_frame</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac3e7c2d5e9b3f81c75772f328243db00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a> tsi_fake_frame_protector::unprotect_frame</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="fake__transport__security_8c.html">fake_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__fake__handshaker.html b/doc/ref/core.internal/html/structtsi__fake__handshaker.html
new file mode 100644
index 0000000000..36aff4f6b8
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__fake__handshaker.html
@@ -0,0 +1,204 @@
+<!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: tsi_fake_handshaker 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">tsi_fake_handshaker Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ac20760acd01b20d55b2f92b6a8a139da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#ac20760acd01b20d55b2f92b6a8a139da">base</a></td></tr>
+<tr class="separator:ac20760acd01b20d55b2f92b6a8a139da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab3817b146f5d0d09232581e33bfd50f0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#ab3817b146f5d0d09232581e33bfd50f0">is_client</a></td></tr>
+<tr class="separator:ab3817b146f5d0d09232581e33bfd50f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab343e56591aa9bae847d1af36534ecbe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52">tsi_fake_handshake_message</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#ab343e56591aa9bae847d1af36534ecbe">next_message_to_send</a></td></tr>
+<tr class="separator:ab343e56591aa9bae847d1af36534ecbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b5522b09970836d1867fc4c08411c91"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#a5b5522b09970836d1867fc4c08411c91">needs_incoming_message</a></td></tr>
+<tr class="separator:a5b5522b09970836d1867fc4c08411c91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a88e5531bc9e28f480211209fe0d68e14"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#a88e5531bc9e28f480211209fe0d68e14">incoming</a></td></tr>
+<tr class="separator:a88e5531bc9e28f480211209fe0d68e14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa25567cc12e88a59cbf9ba3b51d90223"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#aa25567cc12e88a59cbf9ba3b51d90223">outgoing</a></td></tr>
+<tr class="separator:aa25567cc12e88a59cbf9ba3b51d90223"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7dc6f4f013c03d3aa669c3a2fb9a761c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__fake__handshaker.html#a7dc6f4f013c03d3aa669c3a2fb9a761c">result</a></td></tr>
+<tr class="separator:a7dc6f4f013c03d3aa669c3a2fb9a761c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac20760acd01b20d55b2f92b6a8a139da"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> tsi_fake_handshaker::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a88e5531bc9e28f480211209fe0d68e14"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a> tsi_fake_handshaker::incoming</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab3817b146f5d0d09232581e33bfd50f0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_fake_handshaker::is_client</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b5522b09970836d1867fc4c08411c91"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_fake_handshaker::needs_incoming_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab343e56591aa9bae847d1af36534ecbe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="fake__transport__security_8c.html#a0a27e83e048843db20bec3fbf4513d52">tsi_fake_handshake_message</a> tsi_fake_handshaker::next_message_to_send</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa25567cc12e88a59cbf9ba3b51d90223"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__fake__frame.html">tsi_fake_frame</a> tsi_fake_handshaker::outgoing</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7dc6f4f013c03d3aa669c3a2fb9a761c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_fake_handshaker::result</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="fake__transport__security_8c.html">fake_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__frame__protector.html b/doc/ref/core.internal/html/structtsi__frame__protector.html
new file mode 100644
index 0000000000..967390cbf4
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__frame__protector.html
@@ -0,0 +1,122 @@
+<!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: tsi_frame_protector 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">tsi_frame_protector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__security_8h_source.html">transport_security.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:a71905393d848e4b2462f1ec9f6665619"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619">vtable</a></td></tr>
+<tr class="separator:a71905393d848e4b2462f1ec9f6665619"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a71905393d848e4b2462f1ec9f6665619"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a>* tsi_frame_protector::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="transport__security_8h_source.html">transport_security.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>
diff --git a/doc/ref/core.internal/html/structtsi__frame__protector__vtable.html b/doc/ref/core.internal/html/structtsi__frame__protector__vtable.html
new file mode 100644
index 0000000000..3bf7e81a14
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__frame__protector__vtable.html
@@ -0,0 +1,164 @@
+<!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: tsi_frame_protector_vtable 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">tsi_frame_protector_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__security_8h_source.html">transport_security.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:aa9c6a8a8c0154365f7a62924e1ad458f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector__vtable.html#aa9c6a8a8c0154365f7a62924e1ad458f">protect</a> )(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size)</td></tr>
+<tr class="separator:aa9c6a8a8c0154365f7a62924e1ad458f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4dc40054ebcebc5d9bc87a63adce0614"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector__vtable.html#a4dc40054ebcebc5d9bc87a63adce0614">protect_flush</a> )(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size)</td></tr>
+<tr class="separator:a4dc40054ebcebc5d9bc87a63adce0614"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa4c1c5ad2e0299585050a3d11247e91e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector__vtable.html#aa4c1c5ad2e0299585050a3d11247e91e">unprotect</a> )(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size)</td></tr>
+<tr class="separator:aa4c1c5ad2e0299585050a3d11247e91e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac47686a0367046026dc8b97050ec2cdf"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector__vtable.html#ac47686a0367046026dc8b97050ec2cdf">destroy</a> )(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self)</td></tr>
+<tr class="separator:ac47686a0367046026dc8b97050ec2cdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ac47686a0367046026dc8b97050ec2cdf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* tsi_frame_protector_vtable::destroy)(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa9c6a8a8c0154365f7a62924e1ad458f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_frame_protector_vtable::protect)(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4dc40054ebcebc5d9bc87a63adce0614"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_frame_protector_vtable::protect_flush)(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa4c1c5ad2e0299585050a3d11247e91e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_frame_protector_vtable::unprotect)(<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="transport__security_8h_source.html">transport_security.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>
diff --git a/doc/ref/core.internal/html/structtsi__handshaker.html b/doc/ref/core.internal/html/structtsi__handshaker.html
new file mode 100644
index 0000000000..7333790e22
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__handshaker.html
@@ -0,0 +1,136 @@
+<!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: tsi_handshaker 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">tsi_handshaker Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__security_8h_source.html">transport_security.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:aad13ac357eb603138ec628ff05df2958"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958">vtable</a></td></tr>
+<tr class="separator:aad13ac357eb603138ec628ff05df2958"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a375eb09298453585bc64bd6f99fe14ec"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec">frame_protector_created</a></td></tr>
+<tr class="separator:a375eb09298453585bc64bd6f99fe14ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a375eb09298453585bc64bd6f99fe14ec"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_handshaker::frame_protector_created</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aad13ac357eb603138ec628ff05df2958"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a>* tsi_handshaker::vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="transport__security_8h_source.html">transport_security.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>
diff --git a/doc/ref/core.internal/html/structtsi__handshaker__vtable.html b/doc/ref/core.internal/html/structtsi__handshaker__vtable.html
new file mode 100644
index 0000000000..deb9a2ffda
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__handshaker__vtable.html
@@ -0,0 +1,192 @@
+<!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: tsi_handshaker_vtable 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">tsi_handshaker_vtable Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__security_8h_source.html">transport_security.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:a78c12cd8f2a53cc2bd32367a725f48ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html#a78c12cd8f2a53cc2bd32367a725f48ff">get_bytes_to_send_to_peer</a> )(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, unsigned char *bytes, size_t *bytes_size)</td></tr>
+<tr class="separator:a78c12cd8f2a53cc2bd32367a725f48ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aefed0ec53fa68de5417c720357c50a38"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html#aefed0ec53fa68de5417c720357c50a38">process_bytes_from_peer</a> )(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, const unsigned char *bytes, size_t *bytes_size)</td></tr>
+<tr class="separator:aefed0ec53fa68de5417c720357c50a38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af65c4700c22e71ecb09a94ae951d2bf3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html#af65c4700c22e71ecb09a94ae951d2bf3">get_result</a> )(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td></tr>
+<tr class="separator:af65c4700c22e71ecb09a94ae951d2bf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab34c8028cf54bc2b0ee1e5ab95578541"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html#ab34c8028cf54bc2b0ee1e5ab95578541">extract_peer</a> )(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:ab34c8028cf54bc2b0ee1e5ab95578541"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a071e3b76f8ddec1c89f9131c923f3648"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html#a071e3b76f8ddec1c89f9131c923f3648">create_frame_protector</a> )(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, size_t *max_protected_frame_size, <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> **protector)</td></tr>
+<tr class="separator:a071e3b76f8ddec1c89f9131c923f3648"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6ddd06eccb4d0576a3daba0ee98f45d8"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html#a6ddd06eccb4d0576a3daba0ee98f45d8">destroy</a> )(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td></tr>
+<tr class="separator:a6ddd06eccb4d0576a3daba0ee98f45d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a071e3b76f8ddec1c89f9131c923f3648"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_handshaker_vtable::create_frame_protector)(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, size_t *max_protected_frame_size, <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> **protector)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6ddd06eccb4d0576a3daba0ee98f45d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* tsi_handshaker_vtable::destroy)(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab34c8028cf54bc2b0ee1e5ab95578541"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_handshaker_vtable::extract_peer)(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78c12cd8f2a53cc2bd32367a725f48ff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_handshaker_vtable::get_bytes_to_send_to_peer)(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, unsigned char *bytes, size_t *bytes_size)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af65c4700c22e71ecb09a94ae951d2bf3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_handshaker_vtable::get_result)(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aefed0ec53fa68de5417c720357c50a38"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_handshaker_vtable::process_bytes_from_peer)(<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, const unsigned char *bytes, size_t *bytes_size)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="transport__security_8h_source.html">transport_security.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>
diff --git a/doc/ref/core.internal/html/structtsi__peer.html b/doc/ref/core.internal/html/structtsi__peer.html
new file mode 100644
index 0000000000..1d01cd42f7
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__peer.html
@@ -0,0 +1,136 @@
+<!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: tsi_peer 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">tsi_peer Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__security__interface_8h_source.html">transport_security_interface.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:a5656afb1f55b72e3174a2ed10b46f54a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a">properties</a></td></tr>
+<tr class="separator:a5656afb1f55b72e3174a2ed10b46f54a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a573f728d9b7804d06296cfdde3ac81c8"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8">property_count</a></td></tr>
+<tr class="separator:a573f728d9b7804d06296cfdde3ac81c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a5656afb1f55b72e3174a2ed10b46f54a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>* tsi_peer::properties</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a573f728d9b7804d06296cfdde3ac81c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_peer::property_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="transport__security__interface_8h_source.html">transport_security_interface.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>
diff --git a/doc/ref/core.internal/html/structtsi__peer__property.html b/doc/ref/core.internal/html/structtsi__peer__property.html
new file mode 100644
index 0000000000..9c87f1292c
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__peer__property.html
@@ -0,0 +1,165 @@
+<!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: tsi_peer_property 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">tsi_peer_property Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="transport__security__interface_8h_source.html">transport_security_interface.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:a6e2341fa26194a045824caa9f9b0cd67"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67">name</a></td></tr>
+<tr class="separator:a6e2341fa26194a045824caa9f9b0cd67"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63f8f764dec5c40ffc3d7de0f83509d6"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:aea869c8e436e9e4010fbcebc254c48e4"><td class="memItemLeft" >&#160;&#160;&#160;char *&#160;&#160;&#160;<a class="el" href="structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55">data</a></td></tr>
+<tr class="separator:aea869c8e436e9e4010fbcebc254c48e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa097ac9eda01e84f1b8cd87fabb9344b"><td class="memItemLeft" >&#160;&#160;&#160;size_t&#160;&#160;&#160;<a class="el" href="structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7">length</a></td></tr>
+<tr class="separator:aa097ac9eda01e84f1b8cd87fabb9344b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63f8f764dec5c40ffc3d7de0f83509d6"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6">value</a></td></tr>
+<tr class="separator:a63f8f764dec5c40ffc3d7de0f83509d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="acb47876765d6b5202dad2215b493fa55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* tsi_peer_property::data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b6a9186739228ff43c134f9fe6af9e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_peer_property::length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6e2341fa26194a045824caa9f9b0cd67"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* tsi_peer_property::name</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63f8f764dec5c40ffc3d7de0f83509d6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } tsi_peer_property::value</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="transport__security__interface_8h_source.html">transport_security_interface.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>
diff --git a/doc/ref/core.internal/html/structtsi__ssl__client__handshaker__factory.html b/doc/ref/core.internal/html/structtsi__ssl__client__handshaker__factory.html
new file mode 100644
index 0000000000..68376e1dba
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__ssl__client__handshaker__factory.html
@@ -0,0 +1,162 @@
+<!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: tsi_ssl_client_handshaker_factory 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">tsi_ssl_client_handshaker_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a66026b4b56a25d198d4aafa959da8413"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__client__handshaker__factory.html#a66026b4b56a25d198d4aafa959da8413">base</a></td></tr>
+<tr class="separator:a66026b4b56a25d198d4aafa959da8413"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a455d6ff556cd36c93ab91a0ef013ed9a"><td class="memItemLeft" align="right" valign="top">SSL_CTX *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__client__handshaker__factory.html#a455d6ff556cd36c93ab91a0ef013ed9a">ssl_context</a></td></tr>
+<tr class="separator:a455d6ff556cd36c93ab91a0ef013ed9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92aea4cb778959043703fcc3623c68a9"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__client__handshaker__factory.html#a92aea4cb778959043703fcc3623c68a9">alpn_protocol_list</a></td></tr>
+<tr class="separator:a92aea4cb778959043703fcc3623c68a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63415a7f73f99c3ccee2addc915c9482"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__client__handshaker__factory.html#a63415a7f73f99c3ccee2addc915c9482">alpn_protocol_list_length</a></td></tr>
+<tr class="separator:a63415a7f73f99c3ccee2addc915c9482"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a92aea4cb778959043703fcc3623c68a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* tsi_ssl_client_handshaker_factory::alpn_protocol_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63415a7f73f99c3ccee2addc915c9482"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_ssl_client_handshaker_factory::alpn_protocol_list_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a66026b4b56a25d198d4aafa959da8413"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> tsi_ssl_client_handshaker_factory::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a455d6ff556cd36c93ab91a0ef013ed9a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SSL_CTX* tsi_ssl_client_handshaker_factory::ssl_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="ssl__transport__security_8c.html">ssl_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__ssl__frame__protector.html b/doc/ref/core.internal/html/structtsi__ssl__frame__protector.html
new file mode 100644
index 0000000000..e39838fa06
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__ssl__frame__protector.html
@@ -0,0 +1,204 @@
+<!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: tsi_ssl_frame_protector 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">tsi_ssl_frame_protector Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a7d015792be7227bfd44a6a17dc08aa72"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#a7d015792be7227bfd44a6a17dc08aa72">base</a></td></tr>
+<tr class="separator:a7d015792be7227bfd44a6a17dc08aa72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a64129d003fe330c56c39496361bd9e5f"><td class="memItemLeft" align="right" valign="top">SSL *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#a64129d003fe330c56c39496361bd9e5f">ssl</a></td></tr>
+<tr class="separator:a64129d003fe330c56c39496361bd9e5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1162fd08a5da7a1c5f142251beb9934"><td class="memItemLeft" align="right" valign="top">BIO *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#ac1162fd08a5da7a1c5f142251beb9934">into_ssl</a></td></tr>
+<tr class="separator:ac1162fd08a5da7a1c5f142251beb9934"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d6ce8a49205271885618a79964a6b73"><td class="memItemLeft" align="right" valign="top">BIO *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#a5d6ce8a49205271885618a79964a6b73">from_ssl</a></td></tr>
+<tr class="separator:a5d6ce8a49205271885618a79964a6b73"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3df125b5b712526ea26ba5dbaa8a71ee"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#a3df125b5b712526ea26ba5dbaa8a71ee">buffer</a></td></tr>
+<tr class="separator:a3df125b5b712526ea26ba5dbaa8a71ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a3705245461fa77c84d7cb3806b1840"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#a1a3705245461fa77c84d7cb3806b1840">buffer_size</a></td></tr>
+<tr class="separator:a1a3705245461fa77c84d7cb3806b1840"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8d6f4e3e06cec85370146dae562a572f"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__frame__protector.html#a8d6f4e3e06cec85370146dae562a572f">buffer_offset</a></td></tr>
+<tr class="separator:a8d6f4e3e06cec85370146dae562a572f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a7d015792be7227bfd44a6a17dc08aa72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> tsi_ssl_frame_protector::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3df125b5b712526ea26ba5dbaa8a71ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* tsi_ssl_frame_protector::buffer</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8d6f4e3e06cec85370146dae562a572f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_ssl_frame_protector::buffer_offset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a3705245461fa77c84d7cb3806b1840"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_ssl_frame_protector::buffer_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5d6ce8a49205271885618a79964a6b73"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BIO* tsi_ssl_frame_protector::from_ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac1162fd08a5da7a1c5f142251beb9934"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BIO* tsi_ssl_frame_protector::into_ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a64129d003fe330c56c39496361bd9e5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SSL* tsi_ssl_frame_protector::ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="ssl__transport__security_8c.html">ssl_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__ssl__handshaker.html b/doc/ref/core.internal/html/structtsi__ssl__handshaker.html
new file mode 100644
index 0000000000..cc8c19f75f
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__ssl__handshaker.html
@@ -0,0 +1,176 @@
+<!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: tsi_ssl_handshaker 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">tsi_ssl_handshaker Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a21ae1da6ec22caf8229b148e11aad657"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker.html#a21ae1da6ec22caf8229b148e11aad657">base</a></td></tr>
+<tr class="separator:a21ae1da6ec22caf8229b148e11aad657"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dbdafd7f92dad04fe09c4648e5ee952"><td class="memItemLeft" align="right" valign="top">SSL *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker.html#a1dbdafd7f92dad04fe09c4648e5ee952">ssl</a></td></tr>
+<tr class="separator:a1dbdafd7f92dad04fe09c4648e5ee952"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d79399d2bf72081032843d9800dcaa6"><td class="memItemLeft" align="right" valign="top">BIO *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker.html#a6d79399d2bf72081032843d9800dcaa6">into_ssl</a></td></tr>
+<tr class="separator:a6d79399d2bf72081032843d9800dcaa6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92fd97e3dc2041f61cf9e99b51f5a8e8"><td class="memItemLeft" align="right" valign="top">BIO *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker.html#a92fd97e3dc2041f61cf9e99b51f5a8e8">from_ssl</a></td></tr>
+<tr class="separator:a92fd97e3dc2041f61cf9e99b51f5a8e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12ec1007039ee18e12dee8b2fd2670b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker.html#a12ec1007039ee18e12dee8b2fd2670b7">result</a></td></tr>
+<tr class="separator:a12ec1007039ee18e12dee8b2fd2670b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a21ae1da6ec22caf8229b148e11aad657"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> tsi_ssl_handshaker::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a92fd97e3dc2041f61cf9e99b51f5a8e8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BIO* tsi_ssl_handshaker::from_ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d79399d2bf72081032843d9800dcaa6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">BIO* tsi_ssl_handshaker::into_ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12ec1007039ee18e12dee8b2fd2670b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_ssl_handshaker::result</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1dbdafd7f92dad04fe09c4648e5ee952"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SSL* tsi_ssl_handshaker::ssl</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="ssl__transport__security_8c.html">ssl_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__ssl__handshaker__factory.html b/doc/ref/core.internal/html/structtsi__ssl__handshaker__factory.html
new file mode 100644
index 0000000000..c79dfa13a6
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__ssl__handshaker__factory.html
@@ -0,0 +1,134 @@
+<!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: tsi_ssl_handshaker_factory 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">tsi_ssl_handshaker_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a44a633a0520c8561b5c63f97742daaef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker__factory.html#a44a633a0520c8561b5c63f97742daaef">create_handshaker</a> )(<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self, const char *server_name_indication, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td></tr>
+<tr class="separator:a44a633a0520c8561b5c63f97742daaef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b5e1722accee31650b291839612bb6a"><td class="memItemLeft" align="right" valign="top">void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a">destroy</a> )(<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self)</td></tr>
+<tr class="separator:a2b5e1722accee31650b291839612bb6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a44a633a0520c8561b5c63f97742daaef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>(* tsi_ssl_handshaker_factory::create_handshaker)(<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self, const char *server_name_indication, <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> **handshaker)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2b5e1722accee31650b291839612bb6a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* tsi_ssl_handshaker_factory::destroy)(<a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> *self)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="ssl__transport__security_8c.html">ssl_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structtsi__ssl__server__handshaker__factory.html b/doc/ref/core.internal/html/structtsi__ssl__server__handshaker__factory.html
new file mode 100644
index 0000000000..334306c4b5
--- /dev/null
+++ b/doc/ref/core.internal/html/structtsi__ssl__server__handshaker__factory.html
@@ -0,0 +1,190 @@
+<!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: tsi_ssl_server_handshaker_factory 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">tsi_ssl_server_handshaker_factory Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a68655e93122b5b856ecb840526ff86d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html#a68655e93122b5b856ecb840526ff86d9">base</a></td></tr>
+<tr class="separator:a68655e93122b5b856ecb840526ff86d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a31163c22828f9e7467a4cf8ec6e79244"><td class="memItemLeft" align="right" valign="top">SSL_CTX **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html#a31163c22828f9e7467a4cf8ec6e79244">ssl_contexts</a></td></tr>
+<tr class="separator:a31163c22828f9e7467a4cf8ec6e79244"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9877f06340c6acaa2db8deb38ac03209"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html#a9877f06340c6acaa2db8deb38ac03209">ssl_context_x509_subject_names</a></td></tr>
+<tr class="separator:a9877f06340c6acaa2db8deb38ac03209"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6aa4d962f3466b7cb16abd04b0266c2c"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html#a6aa4d962f3466b7cb16abd04b0266c2c">ssl_context_count</a></td></tr>
+<tr class="separator:a6aa4d962f3466b7cb16abd04b0266c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02579737ef9a57855da159c54c05955f"><td class="memItemLeft" align="right" valign="top">unsigned char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html#a02579737ef9a57855da159c54c05955f">alpn_protocol_list</a></td></tr>
+<tr class="separator:a02579737ef9a57855da159c54c05955f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1dd579a38c0ab5d7f1304b26a838954b"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__ssl__server__handshaker__factory.html#a1dd579a38c0ab5d7f1304b26a838954b">alpn_protocol_list_length</a></td></tr>
+<tr class="separator:a1dd579a38c0ab5d7f1304b26a838954b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a02579737ef9a57855da159c54c05955f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">unsigned char* tsi_ssl_server_handshaker_factory::alpn_protocol_list</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1dd579a38c0ab5d7f1304b26a838954b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_ssl_server_handshaker_factory::alpn_protocol_list_length</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a68655e93122b5b856ecb840526ff86d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__ssl__handshaker__factory.html">tsi_ssl_handshaker_factory</a> tsi_ssl_server_handshaker_factory::base</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6aa4d962f3466b7cb16abd04b0266c2c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t tsi_ssl_server_handshaker_factory::ssl_context_count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9877f06340c6acaa2db8deb38ac03209"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__peer.html">tsi_peer</a>* tsi_ssl_server_handshaker_factory::ssl_context_x509_subject_names</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a31163c22828f9e7467a4cf8ec6e79244"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">SSL_CTX** tsi_ssl_server_handshaker_factory::ssl_contexts</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/tsi/<a class="el" href="ssl__transport__security_8c.html">ssl_transport_security.c</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>
diff --git a/doc/ref/core.internal/html/structverifier__cb__ctx.html b/doc/ref/core.internal/html/structverifier__cb__ctx.html
new file mode 100644
index 0000000000..7df7062a83
--- /dev/null
+++ b/doc/ref/core.internal/html/structverifier__cb__ctx.html
@@ -0,0 +1,232 @@
+<!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: verifier_cb_ctx 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">verifier_cb_ctx Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ac60d07b1cc9322f01f2f76f462188737"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#ac60d07b1cc9322f01f2f76f462188737">verifier</a></td></tr>
+<tr class="separator:ac60d07b1cc9322f01f2f76f462188737"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66c16d6c5a98e27b0bdc901f4f2f010a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#a66c16d6c5a98e27b0bdc901f4f2f010a">pollset</a></td></tr>
+<tr class="separator:a66c16d6c5a98e27b0bdc901f4f2f010a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a300805c3f085e1a830e26030a0c823ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structjose__header.html">jose_header</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#a300805c3f085e1a830e26030a0c823ad">header</a></td></tr>
+<tr class="separator:a300805c3f085e1a830e26030a0c823ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a47babe5494185ee4fd95e92a8309fa26"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#a47babe5494185ee4fd95e92a8309fa26">claims</a></td></tr>
+<tr class="separator:a47babe5494185ee4fd95e92a8309fa26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afdbd6e54ed44e9938991b0ed1915ed2d"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#afdbd6e54ed44e9938991b0ed1915ed2d">audience</a></td></tr>
+<tr class="separator:afdbd6e54ed44e9938991b0ed1915ed2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78cd1bf7eb4ac6484ceeaf778ad6e2df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#a78cd1bf7eb4ac6484ceeaf778ad6e2df">signature</a></td></tr>
+<tr class="separator:a78cd1bf7eb4ac6484ceeaf778ad6e2df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65de5acf17b58f8a142466750e1b558b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#a65de5acf17b58f8a142466750e1b558b">signed_data</a></td></tr>
+<tr class="separator:a65de5acf17b58f8a142466750e1b558b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ceed8c4de3dcf252fdaf7347c0b93a8"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#a9ceed8c4de3dcf252fdaf7347c0b93a8">user_data</a></td></tr>
+<tr class="separator:a9ceed8c4de3dcf252fdaf7347c0b93a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acb4e5c28f3b0d9270a28dc0c730123fa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structverifier__cb__ctx.html#acb4e5c28f3b0d9270a28dc0c730123fa">user_cb</a></td></tr>
+<tr class="separator:acb4e5c28f3b0d9270a28dc0c730123fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="afdbd6e54ed44e9938991b0ed1915ed2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* verifier_cb_ctx::audience</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a47babe5494185ee4fd95e92a8309fa26"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__claims.html">grpc_jwt_claims</a>* verifier_cb_ctx::claims</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a300805c3f085e1a830e26030a0c823ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structjose__header.html">jose_header</a>* verifier_cb_ctx::header</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a66c16d6c5a98e27b0bdc901f4f2f010a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* verifier_cb_ctx::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78cd1bf7eb4ac6484ceeaf778ad6e2df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> verifier_cb_ctx::signature</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a65de5acf17b58f8a142466750e1b558b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__slice.html">gpr_slice</a> verifier_cb_ctx::signed_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acb4e5c28f3b0d9270a28dc0c730123fa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="jwt__verifier_8h.html#ac893f9591e5e8eafd1a900d4bb3092f2">grpc_jwt_verification_done_cb</a> verifier_cb_ctx::user_cb</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ceed8c4de3dcf252fdaf7347c0b93a8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* verifier_cb_ctx::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac60d07b1cc9322f01f2f76f462188737"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__jwt__verifier.html">grpc_jwt_verifier</a>* verifier_cb_ctx::verifier</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/security/<a class="el" href="jwt__verifier_8c.html">jwt_verifier.c</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>
diff --git a/doc/ref/core.internal/html/structwaiting__call.html b/doc/ref/core.internal/html/structwaiting__call.html
new file mode 100644
index 0000000000..2205ae7ac7
--- /dev/null
+++ b/doc/ref/core.internal/html/structwaiting__call.html
@@ -0,0 +1,134 @@
+<!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: waiting_call 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">waiting_call Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:ad8d9537c7523e3c09e5fcd4cf0bb1124"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__call.html#ad8d9537c7523e3c09e5fcd4cf0bb1124">closure</a></td></tr>
+<tr class="separator:ad8d9537c7523e3c09e5fcd4cf0bb1124"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af0c24ed1b79604b43d7a669331adcbc4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__call.html#af0c24ed1b79604b43d7a669331adcbc4">elem</a></td></tr>
+<tr class="separator:af0c24ed1b79604b43d7a669331adcbc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad8d9537c7523e3c09e5fcd4cf0bb1124"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> waiting_call::closure</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af0c24ed1b79604b43d7a669331adcbc4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a>* waiting_call::elem</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/channel/<a class="el" href="client__channel_8c.html">client_channel.c</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>
diff --git a/doc/ref/core.internal/html/structwaiting__for__connect.html b/doc/ref/core.internal/html/structwaiting__for__connect.html
new file mode 100644
index 0000000000..57f9501cd8
--- /dev/null
+++ b/doc/ref/core.internal/html/structwaiting__for__connect.html
@@ -0,0 +1,190 @@
+<!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: waiting_for_connect 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">waiting_for_connect Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a62c2a3b3fa576054930f40d722716438"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html#a62c2a3b3fa576054930f40d722716438">next</a></td></tr>
+<tr class="separator:a62c2a3b3fa576054930f40d722716438"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e497a44e87d2780b2f7dbd2dd006526"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html#a8e497a44e87d2780b2f7dbd2dd006526">notify</a></td></tr>
+<tr class="separator:a8e497a44e87d2780b2f7dbd2dd006526"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a18622a8e1fc008c3c9e97d0ae72a4369"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html#a18622a8e1fc008c3c9e97d0ae72a4369">pollset</a></td></tr>
+<tr class="separator:a18622a8e1fc008c3c9e97d0ae72a4369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afa5ba6604f746da394b505f116e764f6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html#afa5ba6604f746da394b505f116e764f6">target</a></td></tr>
+<tr class="separator:afa5ba6604f746da394b505f116e764f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6992a59790cdc05659227b1ea7b8650d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html#a6992a59790cdc05659227b1ea7b8650d">subchannel</a></td></tr>
+<tr class="separator:a6992a59790cdc05659227b1ea7b8650d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8289e332e8b65421a161e607bb637f51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html#a8289e332e8b65421a161e607bb637f51">continuation</a></td></tr>
+<tr class="separator:a8289e332e8b65421a161e607bb637f51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8289e332e8b65421a161e607bb637f51"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> waiting_for_connect::continuation</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a62c2a3b3fa576054930f40d722716438"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a>* waiting_for_connect::next</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8e497a44e87d2780b2f7dbd2dd006526"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>* waiting_for_connect::notify</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a18622a8e1fc008c3c9e97d0ae72a4369"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a>* waiting_for_connect::pollset</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6992a59790cdc05659227b1ea7b8650d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* waiting_for_connect::subchannel</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afa5ba6604f746da394b505f116e764f6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a>** waiting_for_connect::target</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>src/core/client_config/<a class="el" href="subchannel_8c.html">subchannel.c</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>
diff --git a/doc/ref/core.internal/html/subchannel_8c.html b/doc/ref/core.internal/html/subchannel_8c.html
new file mode 100644
index 0000000000..67e1432e13
--- /dev/null
+++ b/doc/ref/core.internal/html/subchannel_8c.html
@@ -0,0 +1,789 @@
+<!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: src/core/client_config/subchannel.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">subchannel.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="subchannel_8h_source.html">src/core/client_config/subchannel.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="channel__args_8h_source.html">src/core/channel/channel_args.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="client__channel_8h_source.html">src/core/channel/client_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connected__channel_8h_source.html">src/core/channel/connected_channel.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="alarm_8h_source.html">src/core/iomgr/alarm.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connectivity__state_8h_source.html">src/core/transport/connectivity_state.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_8h_source.html">src/core/surface/channel.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structconnection.html">connection</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstate__watcher.html">state_watcher</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a4a297a5d3477460e802c804a945cfb4e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a4a297a5d3477460e802c804a945cfb4e">GRPC_SUBCHANNEL_MIN_CONNECT_TIMEOUT_SECONDS</a>&#160;&#160;&#160;20</td></tr>
+<tr class="separator:a4a297a5d3477460e802c804a945cfb4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2916ffabb6e97931795c0cb17d5b1a0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ab2916ffabb6e97931795c0cb17d5b1a0">GRPC_SUBCHANNEL_INITIAL_CONNECT_BACKOFF_SECONDS</a>&#160;&#160;&#160;1</td></tr>
+<tr class="separator:ab2916ffabb6e97931795c0cb17d5b1a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1761b478eb46b24379e6d5a9edd30af"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ad1761b478eb46b24379e6d5a9edd30af">GRPC_SUBCHANNEL_RECONNECT_BACKOFF_MULTIPLIER</a>&#160;&#160;&#160;1.6</td></tr>
+<tr class="separator:ad1761b478eb46b24379e6d5a9edd30af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad021f6795743d8163fff68703ffb663b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ad021f6795743d8163fff68703ffb663b">GRPC_SUBCHANNEL_RECONNECT_MAX_BACKOFF_SECONDS</a>&#160;&#160;&#160;120</td></tr>
+<tr class="separator:ad021f6795743d8163fff68703ffb663b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9775a74d61f54cd0537630b9b7118802"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a9775a74d61f54cd0537630b9b7118802">GRPC_SUBCHANNEL_RECONNECT_JITTER</a>&#160;&#160;&#160;0.2</td></tr>
+<tr class="separator:a9775a74d61f54cd0537630b9b7118802"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f8f2e93f13638c3344bed1c0a810a90"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a6f8f2e93f13638c3344bed1c0a810a90">SUBCHANNEL_CALL_TO_CALL_STACK</a>(call)&#160;&#160;&#160;((<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *)((call) + 1))</td></tr>
+<tr class="separator:a6f8f2e93f13638c3344bed1c0a810a90"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a004980d48eea483363d061723e95834e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a004980d48eea483363d061723e95834e">CHANNEL_STACK_FROM_CONNECTION</a>(con)&#160;&#160;&#160;((<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *)((con) + 1))</td></tr>
+<tr class="separator:a004980d48eea483363d061723e95834e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1c3bb13282f81c8384752ae3e2d74ad"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ad1c3bb13282f81c8384752ae3e2d74ad">SUBCHANNEL_REF_LOCKED</a>(p, r)&#160;&#160;&#160;subchannel_ref_locked((p))</td></tr>
+<tr class="separator:ad1c3bb13282f81c8384752ae3e2d74ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac827935703a637a3a74cb54936a49f25"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ac827935703a637a3a74cb54936a49f25">SUBCHANNEL_UNREF_LOCKED</a>(p, r)&#160;&#160;&#160;subchannel_unref_locked((p))</td></tr>
+<tr class="separator:ac827935703a637a3a74cb54936a49f25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a6df9d57aa14df8c30325f7b403a6ba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a5a6df9d57aa14df8c30325f7b403a6ba">CONNECTION_REF_LOCKED</a>(p, r)&#160;&#160;&#160;connection_ref_locked((p))</td></tr>
+<tr class="separator:a5a6df9d57aa14df8c30325f7b403a6ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7511e39882d77270a0e73a6ea6bdbf22"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a7511e39882d77270a0e73a6ea6bdbf22">CONNECTION_UNREF_LOCKED</a>(p, r)&#160;&#160;&#160;connection_unref_locked((p))</td></tr>
+<tr class="separator:a7511e39882d77270a0e73a6ea6bdbf22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b6e7b7a1e9f2434b354c7bae2760ab0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a8b6e7b7a1e9f2434b354c7bae2760ab0">REF_PASS_ARGS</a></td></tr>
+<tr class="separator:a8b6e7b7a1e9f2434b354c7bae2760ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12a25b2a728caf10ef93487e8a41896c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a12a25b2a728caf10ef93487e8a41896c">REF_LOG</a>(name, p)</td></tr>
+<tr class="separator:a12a25b2a728caf10ef93487e8a41896c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a113001b9e3c0ff95ddc62508d3abddaa"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a113001b9e3c0ff95ddc62508d3abddaa">UNREF_LOG</a>(name, p)</td></tr>
+<tr class="separator:a113001b9e3c0ff95ddc62508d3abddaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5c5a0a02a82c51b4df27922770a17516"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a5c5a0a02a82c51b4df27922770a17516">waiting_for_connect</a></td></tr>
+<tr class="separator:a5c5a0a02a82c51b4df27922770a17516"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a5c7cfbbc599fe46465b5f0c9952af323"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323">grpc_subchannel_ref</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c <a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>)</td></tr>
+<tr class="separator:a5c7cfbbc599fe46465b5f0c9952af323"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0afd3a137c42f46e285b7c7d0b7b657f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f">grpc_subchannel_unref</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c <a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>)</td></tr>
+<tr class="separator:a0afd3a137c42f46e285b7c7d0b7b657f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad64aa215ea81487204c6598b4f1572ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ad64aa215ea81487204c6598b4f1572ae">grpc_subchannel_add_interested_party</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:ad64aa215ea81487204c6598b4f1572ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a72bfe59d8ad11465896034281729279b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a72bfe59d8ad11465896034281729279b">grpc_subchannel_del_interested_party</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:a72bfe59d8ad11465896034281729279b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5220a721bb5ad91bffbddd12045efff8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a5220a721bb5ad91bffbddd12045efff8">grpc_subchannel_create</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>, <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args)</td></tr>
+<tr class="memdesc:a5220a721bb5ad91bffbddd12045efff8"><td class="mdescLeft">&#160;</td><td class="mdescRight">create a subchannel given a connector <a href="#a5220a721bb5ad91bffbddd12045efff8">More...</a><br/></td></tr>
+<tr class="separator:a5220a721bb5ad91bffbddd12045efff8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b5c676351c4f7f33b903549edab3b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#aa6b5c676351c4f7f33b903549edab3b7">grpc_subchannel_create_call</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="memdesc:aa6b5c676351c4f7f33b903549edab3b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">construct a call (possibly asynchronously) <a href="#aa6b5c676351c4f7f33b903549edab3b7">More...</a><br/></td></tr>
+<tr class="separator:aa6b5c676351c4f7f33b903549edab3b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a92711f9b7c8df9415249685a9c91f2c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a92711f9b7c8df9415249685a9c91f2c9">grpc_subchannel_check_connectivity</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c)</td></tr>
+<tr class="memdesc:a92711f9b7c8df9415249685a9c91f2c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">poll the current connectivity state of a channel <a href="#a92711f9b7c8df9415249685a9c91f2c9">More...</a><br/></td></tr>
+<tr class="separator:a92711f9b7c8df9415249685a9c91f2c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2e59a5c3a44ba0827b27ccba866389b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#ac2e59a5c3a44ba0827b27ccba866389b">grpc_subchannel_notify_on_state_change</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="memdesc:ac2e59a5c3a44ba0827b27ccba866389b"><td class="mdescLeft">&#160;</td><td class="mdescRight">call notify when the connectivity state of a channel changes from *state. <a href="#ac2e59a5c3a44ba0827b27ccba866389b">More...</a><br/></td></tr>
+<tr class="separator:ac2e59a5c3a44ba0827b27ccba866389b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9b95251da4779ae913c33f380a1c33c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a9b95251da4779ae913c33f380a1c33c4">grpc_subchannel_process_transport_op</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="memdesc:a9b95251da4779ae913c33f380a1c33c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">process a transport level op <a href="#a9b95251da4779ae913c33f380a1c33c4">More...</a><br/></td></tr>
+<tr class="separator:a9b95251da4779ae913c33f380a1c33c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb8369d0ae5d3be4e25e9c300ef50067"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067">grpc_subchannel_call_ref</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *c <a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>)</td></tr>
+<tr class="separator:abb8369d0ae5d3be4e25e9c300ef50067"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a179d2915801ed037ca90a4de0f7ce060"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060">grpc_subchannel_call_unref</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *c <a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>)</td></tr>
+<tr class="separator:a179d2915801ed037ca90a4de0f7ce060"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a552e894b75a9a67f00e4ae312a94cc00"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a552e894b75a9a67f00e4ae312a94cc00">grpc_subchannel_call_get_peer</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *call)</td></tr>
+<tr class="memdesc:a552e894b75a9a67f00e4ae312a94cc00"><td class="mdescLeft">&#160;</td><td class="mdescRight">continue querying for peer <a href="#a552e894b75a9a67f00e4ae312a94cc00">More...</a><br/></td></tr>
+<tr class="separator:a552e894b75a9a67f00e4ae312a94cc00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0128c4e7cd5939061ea02780e5fa33ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8c.html#a0128c4e7cd5939061ea02780e5fa33ae">grpc_subchannel_call_process_op</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *call, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="memdesc:a0128c4e7cd5939061ea02780e5fa33ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">continue processing a transport op <a href="#a0128c4e7cd5939061ea02780e5fa33ae">More...</a><br/></td></tr>
+<tr class="separator:a0128c4e7cd5939061ea02780e5fa33ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a004980d48eea483363d061723e95834e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CHANNEL_STACK_FROM_CONNECTION</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">con</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__channel__stack.html">grpc_channel_stack</a> *)((con) + 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a6df9d57aa14df8c30325f7b403a6ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CONNECTION_REF_LOCKED</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;connection_ref_locked((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7511e39882d77270a0e73a6ea6bdbf22"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define CONNECTION_UNREF_LOCKED</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;connection_unref_locked((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2916ffabb6e97931795c0cb17d5b1a0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_INITIAL_CONNECT_BACKOFF_SECONDS&#160;&#160;&#160;1</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4a297a5d3477460e802c804a945cfb4e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_MIN_CONNECT_TIMEOUT_SECONDS&#160;&#160;&#160;20</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1761b478eb46b24379e6d5a9edd30af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_RECONNECT_BACKOFF_MULTIPLIER&#160;&#160;&#160;1.6</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9775a74d61f54cd0537630b9b7118802"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_RECONNECT_JITTER&#160;&#160;&#160;0.2</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad021f6795743d8163fff68703ffb663b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_RECONNECT_MAX_BACKOFF_SECONDS&#160;&#160;&#160;120</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12a25b2a728caf10ef93487e8a41896c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define REF_LOG</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">name, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a8b6e7b7a1e9f2434b354c7bae2760ab0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define REF_PASS_ARGS</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f8f2e93f13638c3344bed1c0a810a90"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define SUBCHANNEL_CALL_TO_CALL_STACK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">call</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="structgrpc__call__stack.html">grpc_call_stack</a> *)((call) + 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1c3bb13282f81c8384752ae3e2d74ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define SUBCHANNEL_REF_LOCKED</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;subchannel_ref_locked((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac827935703a637a3a74cb54936a49f25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define SUBCHANNEL_UNREF_LOCKED</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;subchannel_unref_locked((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a113001b9e3c0ff95ddc62508d3abddaa"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define UNREF_LOG</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">name, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5c5a0a02a82c51b4df27922770a17516"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a> <a class="el" href="structwaiting__for__connect.html">waiting_for_connect</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ad64aa215ea81487204c6598b4f1572ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_add_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a552e894b75a9a67f00e4ae312a94cc00"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_subchannel_call_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>continue querying for peer </p>
+
+</div>
+</div>
+<a class="anchor" id="a0128c4e7cd5939061ea02780e5fa33ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_call_process_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>continue processing a transport op </p>
+
+</div>
+</div>
+<a class="anchor" id="abb8369d0ae5d3be4e25e9c300ef50067"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_call_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *c&#160;</td>
+ <td class="paramname"><em>GRPC_SUBCHANNEL_REF_EXTRA_ARGS</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a179d2915801ed037ca90a4de0f7ce060"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_call_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *c&#160;</td>
+ <td class="paramname"><em>GRPC_SUBCHANNEL_REF_EXTRA_ARGS</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a92711f9b7c8df9415249685a9c91f2c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_subchannel_check_connectivity </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>poll the current connectivity state of a channel </p>
+
+</div>
+</div>
+<a class="anchor" id="a5220a721bb5ad91bffbddd12045efff8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* grpc_subchannel_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>create a subchannel given a connector </p>
+
+</div>
+</div>
+<a class="anchor" id="aa6b5c676351c4f7f33b903549edab3b7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_create_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> **&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>construct a call (possibly asynchronously) </p>
+
+</div>
+</div>
+<a class="anchor" id="a72bfe59d8ad11465896034281729279b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_del_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac2e59a5c3a44ba0827b27ccba866389b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_notify_on_state_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>call notify when the connectivity state of a channel changes from *state. </p>
+<p>Updates *state with the new state of the channel </p>
+
+</div>
+</div>
+<a class="anchor" id="a9b95251da4779ae913c33f380a1c33c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_process_transport_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>process a transport level op </p>
+
+</div>
+</div>
+<a class="anchor" id="a5c7cfbbc599fe46465b5f0c9952af323"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c&#160;</td>
+ <td class="paramname"><em>GRPC_SUBCHANNEL_REF_EXTRA_ARGS</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0afd3a137c42f46e285b7c7d0b7b657f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *c&#160;</td>
+ <td class="paramname"><em>GRPC_SUBCHANNEL_REF_EXTRA_ARGS</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/subchannel_8h.html b/doc/ref/core.internal/html/subchannel_8h.html
new file mode 100644
index 0000000000..2ca9553605
--- /dev/null
+++ b/doc/ref/core.internal/html/subchannel_8h.html
@@ -0,0 +1,642 @@
+<!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: src/core/client_config/subchannel.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">subchannel.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="connector_8h_source.html">src/core/client_config/connector.h</a>&quot;</code><br/>
+</div>
+<p><a href="subchannel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a7a3f5a07d6d6ca7864d0b571a2675d15"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a7a3f5a07d6d6ca7864d0b571a2675d15">GRPC_SUBCHANNEL_REF</a>(p, r)&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323">grpc_subchannel_ref</a>((p))</td></tr>
+<tr class="separator:a7a3f5a07d6d6ca7864d0b571a2675d15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accf1481a1fe9acf1537f665705a60d4c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#accf1481a1fe9acf1537f665705a60d4c">GRPC_SUBCHANNEL_UNREF</a>(p, r)&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f">grpc_subchannel_unref</a>((p))</td></tr>
+<tr class="separator:accf1481a1fe9acf1537f665705a60d4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0f8df565952fc5504c9658b426c64a7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#aa0f8df565952fc5504c9658b426c64a7">GRPC_SUBCHANNEL_CALL_REF</a>(p, r)&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067">grpc_subchannel_call_ref</a>((p))</td></tr>
+<tr class="separator:aa0f8df565952fc5504c9658b426c64a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d26bb43a6c7a1d40d130c7dd08b4ca8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a5d26bb43a6c7a1d40d130c7dd08b4ca8">GRPC_SUBCHANNEL_CALL_UNREF</a>(p, r)&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060">grpc_subchannel_call_unref</a>((p))</td></tr>
+<tr class="separator:a5d26bb43a6c7a1d40d130c7dd08b4ca8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabb025f64b5de653dc110d17add28e74"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a></td></tr>
+<tr class="separator:aabb025f64b5de653dc110d17add28e74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a6d36bd247fd79f7c8a2788d04f622a06"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a6d36bd247fd79f7c8a2788d04f622a06">grpc_subchannel</a></td></tr>
+<tr class="memdesc:a6d36bd247fd79f7c8a2788d04f622a06"><td class="mdescLeft">&#160;</td><td class="mdescRight">A (sub-)channel that knows how to connect to exactly one target address. <a href="#a6d36bd247fd79f7c8a2788d04f622a06">More...</a><br/></td></tr>
+<tr class="separator:a6d36bd247fd79f7c8a2788d04f622a06"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a007a93252a4a76631336ab840c18ee7d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a007a93252a4a76631336ab840c18ee7d">grpc_subchannel_call</a></td></tr>
+<tr class="separator:a007a93252a4a76631336ab840c18ee7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ef8f51fcaea0bb29010f164b4429a55"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a1ef8f51fcaea0bb29010f164b4429a55">grpc_subchannel_args</a></td></tr>
+<tr class="separator:a1ef8f51fcaea0bb29010f164b4429a55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a3d6c37ca330ab08c065c1210b67f94e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4">grpc_subchannel_ref</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel)</td></tr>
+<tr class="separator:a3d6c37ca330ab08c065c1210b67f94e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af61898f3a0ac79fa0c64d6dcbe32ff59"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59">grpc_subchannel_unref</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel)</td></tr>
+<tr class="separator:af61898f3a0ac79fa0c64d6dcbe32ff59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d1fd9b9b9d0759dec2c43b4d2697a93"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93">grpc_subchannel_call_ref</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *call)</td></tr>
+<tr class="separator:a1d1fd9b9b9d0759dec2c43b4d2697a93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7eaea7934724bc8d7023eb3efe58fb53"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53">grpc_subchannel_call_unref</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *call)</td></tr>
+<tr class="separator:a7eaea7934724bc8d7023eb3efe58fb53"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a54000749034854e53ac2b09ff563ea2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d">grpc_subchannel_create_call</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset, <a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> **target, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="memdesc:a54000749034854e53ac2b09ff563ea2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">construct a call (possibly asynchronously) <a href="#a54000749034854e53ac2b09ff563ea2d">More...</a><br/></td></tr>
+<tr class="separator:a54000749034854e53ac2b09ff563ea2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad24914ea93274b1494a42420e853e4e1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1">grpc_subchannel_process_transport_op</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="memdesc:ad24914ea93274b1494a42420e853e4e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">process a transport level op <a href="#ad24914ea93274b1494a42420e853e4e1">More...</a><br/></td></tr>
+<tr class="separator:ad24914ea93274b1494a42420e853e4e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a2f6ba6b1204e3bf20af7fc5b68f709"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709">grpc_subchannel_check_connectivity</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel)</td></tr>
+<tr class="memdesc:a4a2f6ba6b1204e3bf20af7fc5b68f709"><td class="mdescLeft">&#160;</td><td class="mdescRight">poll the current connectivity state of a channel <a href="#a4a2f6ba6b1204e3bf20af7fc5b68f709">More...</a><br/></td></tr>
+<tr class="separator:a4a2f6ba6b1204e3bf20af7fc5b68f709"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb2ba4bcf7187525c26d3cc25a3a3776"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776">grpc_subchannel_notify_on_state_change</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel, <a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify)</td></tr>
+<tr class="memdesc:abb2ba4bcf7187525c26d3cc25a3a3776"><td class="mdescLeft">&#160;</td><td class="mdescRight">call notify when the connectivity state of a channel changes from *state. <a href="#abb2ba4bcf7187525c26d3cc25a3a3776">More...</a><br/></td></tr>
+<tr class="separator:abb2ba4bcf7187525c26d3cc25a3a3776"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aca094f578fdc81ffc9ec8ea80b9c5579"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579">grpc_subchannel_add_interested_party</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:aca094f578fdc81ffc9ec8ea80b9c5579"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8ea5c658e34de467db80c269231e676"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#aa8ea5c658e34de467db80c269231e676">grpc_subchannel_del_interested_party</a> (<a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *pollset)</td></tr>
+<tr class="separator:aa8ea5c658e34de467db80c269231e676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a30ba75352b07c1e77a4253585c03f1ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad">grpc_subchannel_call_process_op</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *subchannel_call, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="memdesc:a30ba75352b07c1e77a4253585c03f1ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">continue processing a transport op <a href="#a30ba75352b07c1e77a4253585c03f1ad">More...</a><br/></td></tr>
+<tr class="separator:a30ba75352b07c1e77a4253585c03f1ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac07bb9b75d7587847d5792ed6ad7e616"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616">grpc_subchannel_call_get_peer</a> (<a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *subchannel_call)</td></tr>
+<tr class="memdesc:ac07bb9b75d7587847d5792ed6ad7e616"><td class="mdescLeft">&#160;</td><td class="mdescRight">continue querying for peer <a href="#ac07bb9b75d7587847d5792ed6ad7e616">More...</a><br/></td></tr>
+<tr class="separator:ac07bb9b75d7587847d5792ed6ad7e616"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5220a721bb5ad91bffbddd12045efff8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8">grpc_subchannel_create</a> (<a class="el" href="structgrpc__connector.html">grpc_connector</a> *<a class="el" href="structconnector.html">connector</a>, <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args)</td></tr>
+<tr class="memdesc:a5220a721bb5ad91bffbddd12045efff8"><td class="mdescLeft">&#160;</td><td class="mdescRight">create a subchannel given a connector <a href="#a5220a721bb5ad91bffbddd12045efff8">More...</a><br/></td></tr>
+<tr class="separator:a5220a721bb5ad91bffbddd12045efff8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aa0f8df565952fc5504c9658b426c64a7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_CALL_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#abb8369d0ae5d3be4e25e9c300ef50067">grpc_subchannel_call_ref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5d26bb43a6c7a1d40d130c7dd08b4ca8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_CALL_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#a179d2915801ed037ca90a4de0f7ce060">grpc_subchannel_call_unref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7a3f5a07d6d6ca7864d0b571a2675d15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_REF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#a5c7cfbbc599fe46465b5f0c9952af323">grpc_subchannel_ref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aabb025f64b5de653dc110d17add28e74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_REF_EXTRA_ARGS</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accf1481a1fe9acf1537f665705a60d4c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SUBCHANNEL_UNREF</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">p, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">r&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;<a class="el" href="subchannel_8c.html#a0afd3a137c42f46e285b7c7d0b7b657f">grpc_subchannel_unref</a>((p))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a6d36bd247fd79f7c8a2788d04f622a06"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>A (sub-)channel that knows how to connect to exactly one target address. </p>
+<p>Provides a target for load balancing. </p>
+
+</div>
+</div>
+<a class="anchor" id="a1ef8f51fcaea0bb29010f164b4429a55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a007a93252a4a76631336ab840c18ee7d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> <a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aca094f578fdc81ffc9ec8ea80b9c5579"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_add_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac07bb9b75d7587847d5792ed6ad7e616"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_subchannel_call_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td>
+ <td class="paramname"><em>subchannel_call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>continue querying for peer </p>
+
+</div>
+</div>
+<a class="anchor" id="a30ba75352b07c1e77a4253585c03f1ad"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_call_process_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td>
+ <td class="paramname"><em>subchannel_call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>continue processing a transport op </p>
+
+</div>
+</div>
+<a class="anchor" id="a1d1fd9b9b9d0759dec2c43b4d2697a93"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_call_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7eaea7934724bc8d7023eb3efe58fb53"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_call_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4a2f6ba6b1204e3bf20af7fc5b68f709"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> grpc_subchannel_check_connectivity </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>poll the current connectivity state of a channel </p>
+
+</div>
+</div>
+<a class="anchor" id="a5220a721bb5ad91bffbddd12045efff8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* grpc_subchannel_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__connector.html">grpc_connector</a> *&#160;</td>
+ <td class="paramname"><em>connector</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>create a subchannel given a connector </p>
+
+</div>
+</div>
+<a class="anchor" id="a54000749034854e53ac2b09ff563ea2d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_create_call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>subchannel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> **&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>construct a call (possibly asynchronously) </p>
+
+</div>
+</div>
+<a class="anchor" id="aa8ea5c658e34de467db80c269231e676"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_del_interested_party </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> *&#160;</td>
+ <td class="paramname"><em>pollset</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb2ba4bcf7187525c26d3cc25a3a3776"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_notify_on_state_change </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *&#160;</td>
+ <td class="paramname"><em>state</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>notify</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>call notify when the connectivity state of a channel changes from *state. </p>
+<p>Updates *state with the new state of the channel </p>
+
+</div>
+</div>
+<a class="anchor" id="ad24914ea93274b1494a42420e853e4e1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_process_transport_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>subchannel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>process a transport level op </p>
+
+</div>
+</div>
+<a class="anchor" id="a3d6c37ca330ab08c065c1210b67f94e4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af61898f3a0ac79fa0c64d6dcbe32ff59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/subchannel_8h_source.html b/doc/ref/core.internal/html/subchannel_8h_source.html
new file mode 100644
index 0000000000..1367ac1b2b
--- /dev/null
+++ b/doc/ref/core.internal/html/subchannel_8h_source.html
@@ -0,0 +1,246 @@
+<!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: src/core/client_config/subchannel.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">subchannel.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="subchannel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="connector_8h.html">src/core/client_config/connector.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="subchannel_8h.html#a6d36bd247fd79f7c8a2788d04f622a06"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="subchannel_8h.html#a007a93252a4a76631336ab840c18ee7d"> 43</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> <a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="subchannel_8h.html#a1ef8f51fcaea0bb29010f164b4429a55"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> <a class="code" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#ifdef GRPC_SUBCHANNEL_REFCOUNT_DEBUG</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_REF(p, r) \</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"> grpc_subchannel_ref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_UNREF(p, r) \</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"> grpc_subchannel_unref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_CALL_REF(p, r) \</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"> grpc_subchannel_call_ref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_CALL_UNREF(p, r) \</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"> grpc_subchannel_call_unref((p), __FILE__, __LINE__, (r))</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_REF_EXTRA_ARGS \</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> , const char *file, int line, const char *reason</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="subchannel_8h.html#a7a3f5a07d6d6ca7864d0b571a2675d15"> 58</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_REF(p, r) grpc_subchannel_ref((p))</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="subchannel_8h.html#accf1481a1fe9acf1537f665705a60d4c"> 59</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_UNREF(p, r) grpc_subchannel_unref((p))</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="subchannel_8h.html#aa0f8df565952fc5504c9658b426c64a7"> 60</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_CALL_REF(p, r) grpc_subchannel_call_ref((p))</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="subchannel_8h.html#a5d26bb43a6c7a1d40d130c7dd08b4ca8"> 61</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_CALL_UNREF(p, r) grpc_subchannel_call_unref((p))</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74"> 62</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUBCHANNEL_REF_EXTRA_ARGS</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4">grpc_subchannel_ref</a>(</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel <a class="code" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59">grpc_subchannel_unref</a>(</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel <a class="code" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93">grpc_subchannel_call_ref</a>(</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *call <a class="code" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53">grpc_subchannel_call_unref</a>(</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *call <a class="code" href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a>);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d">grpc_subchannel_create_call</a>(<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> **target,</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1">grpc_subchannel_process_transport_op</a>(<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *subchannel,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709">grpc_subchannel_check_connectivity</a>(</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776">grpc_subchannel_notify_on_state_change</a>(<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *state,</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *notify);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579">grpc_subchannel_add_interested_party</a>(<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel,</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#aa8ea5c658e34de467db80c269231e676">grpc_subchannel_del_interested_party</a>(<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *channel,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *pollset);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad">grpc_subchannel_call_process_op</a>(<a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *subchannel_call,</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616">grpc_subchannel_call_get_peer</a>(<a class="code" href="structgrpc__subchannel__call.html">grpc_subchannel_call</a> *subchannel_call);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html"> 106</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> {</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab"> 109</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__filter.html">grpc_channel_filter</a> **<a class="code" href="structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab">filters</a>;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128"> 111</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128">filter_count</a>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081"> 113</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *<a class="code" href="structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081">args</a>;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb"> 115</a></span>&#160; <span class="keyword">struct </span>sockaddr *<a class="code" href="structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb">addr</a>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026"> 116</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026">addr_len</a>;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477"> 118</a></span>&#160; <a class="code" href="structgrpc__mdctx.html">grpc_mdctx</a> *<a class="code" href="structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477">mdctx</a>;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275"> 120</a></span>&#160; <a class="code" href="structgrpc__channel.html">grpc_channel</a> *<a class="code" href="structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275">master</a>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;};</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *<a class="code" href="subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8">grpc_subchannel_create</a>(<a class="code" href="structgrpc__connector.html">grpc_connector</a> *<a class="code" href="structconnector.html">connector</a>,</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args);</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__channel__filter_html"><div class="ttname"><a href="structgrpc__channel__filter.html">grpc_channel_filter</a></div><div class="ttdef"><b>Definition:</b> channel_stack.h:64</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> grpc.h:139</div></div>
+<div class="ttc" id="subchannel_8h_html_ad24914ea93274b1494a42420e853e4e1"><div class="ttname"><a href="subchannel_8h.html#ad24914ea93274b1494a42420e853e4e1">grpc_subchannel_process_transport_op</a></div><div class="ttdeci">void grpc_subchannel_process_transport_op(grpc_subchannel *subchannel, grpc_transport_op *op)</div><div class="ttdoc">process a transport level op </div><div class="ttdef"><b>Definition:</b> subchannel.c:406</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_aef192a6424f47e0830b60102215ad081"><div class="ttname"><a href="structgrpc__subchannel__args.html#aef192a6424f47e0830b60102215ad081">grpc_subchannel_args::args</a></div><div class="ttdeci">const grpc_channel_args * args</div><div class="ttdoc">Channel arguments to be supplied to the newly created channel. </div><div class="ttdef"><b>Definition:</b> subchannel.h:113</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_a638843df1c8557f4218b05eabb9b3275"><div class="ttname"><a href="structgrpc__subchannel__args.html#a638843df1c8557f4218b05eabb9b3275">grpc_subchannel_args::master</a></div><div class="ttdeci">grpc_channel * master</div><div class="ttdoc">master channel </div><div class="ttdef"><b>Definition:</b> subchannel.h:120</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_a2a86f02c0c24e32a063be3532e7dd128"><div class="ttname"><a href="structgrpc__subchannel__args.html#a2a86f02c0c24e32a063be3532e7dd128">grpc_subchannel_args::filter_count</a></div><div class="ttdeci">size_t filter_count</div><div class="ttdoc">The number of filters in the above array. </div><div class="ttdef"><b>Definition:</b> subchannel.h:111</div></div>
+<div class="ttc" id="subchannel_8h_html_af61898f3a0ac79fa0c64d6dcbe32ff59"><div class="ttname"><a href="subchannel_8h.html#af61898f3a0ac79fa0c64d6dcbe32ff59">grpc_subchannel_unref</a></div><div class="ttdeci">void grpc_subchannel_unref(grpc_subchannel *channel)</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_abdab22dc8a8437e6f4dda191b14130ab"><div class="ttname"><a href="structgrpc__subchannel__args.html#abdab22dc8a8437e6f4dda191b14130ab">grpc_subchannel_args::filters</a></div><div class="ttdeci">const grpc_channel_filter ** filters</div><div class="ttdoc">Channel filters for this channel - wrapped factories will likely want to mutate this. </div><div class="ttdef"><b>Definition:</b> subchannel.h:109</div></div>
+<div class="ttc" id="structgrpc__channel_html"><div class="ttname"><a href="structgrpc__channel.html">grpc_channel</a></div><div class="ttdef"><b>Definition:</b> channel.c:61</div></div>
+<div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc.h:113</div></div>
+<div class="ttc" id="subchannel_8h_html_aabb025f64b5de653dc110d17add28e74"><div class="ttname"><a href="subchannel_8h.html#aabb025f64b5de653dc110d17add28e74">GRPC_SUBCHANNEL_REF_EXTRA_ARGS</a></div><div class="ttdeci">#define GRPC_SUBCHANNEL_REF_EXTRA_ARGS</div><div class="ttdef"><b>Definition:</b> subchannel.h:62</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html"><div class="ttname"><a href="structgrpc__subchannel__args.html">grpc_subchannel_args</a></div><div class="ttdef"><b>Definition:</b> subchannel.h:106</div></div>
+<div class="ttc" id="subchannel_8h_html_aa8ea5c658e34de467db80c269231e676"><div class="ttname"><a href="subchannel_8h.html#aa8ea5c658e34de467db80c269231e676">grpc_subchannel_del_interested_party</a></div><div class="ttdeci">void grpc_subchannel_del_interested_party(grpc_subchannel *channel, grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> subchannel.c:270</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html"><div class="ttname"><a href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a></div><div class="ttdef"><b>Definition:</b> transport.h:66</div></div>
+<div class="ttc" id="subchannel_8h_html_aca094f578fdc81ffc9ec8ea80b9c5579"><div class="ttname"><a href="subchannel_8h.html#aca094f578fdc81ffc9ec8ea80b9c5579">grpc_subchannel_add_interested_party</a></div><div class="ttdeci">void grpc_subchannel_add_interested_party(grpc_subchannel *channel, grpc_pollset *pollset)</div><div class="ttdef"><b>Definition:</b> subchannel.c:265</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="structconnector_html"><div class="ttname"><a href="structconnector.html">connector</a></div><div class="ttdef"><b>Definition:</b> secure_channel_create.c:54</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="structgrpc__subchannel_html"><div class="ttname"><a href="structgrpc__subchannel.html">grpc_subchannel</a></div><div class="ttdef"><b>Definition:</b> subchannel.c:77</div></div>
+<div class="ttc" id="subchannel_8h_html_abb2ba4bcf7187525c26d3cc25a3a3776"><div class="ttname"><a href="subchannel_8h.html#abb2ba4bcf7187525c26d3cc25a3a3776">grpc_subchannel_notify_on_state_change</a></div><div class="ttdeci">void grpc_subchannel_notify_on_state_change(grpc_subchannel *channel, grpc_connectivity_state *state, grpc_iomgr_closure *notify)</div><div class="ttdoc">call notify when the connectivity state of a channel changes from *state. </div><div class="ttdef"><b>Definition:</b> subchannel.c:386</div></div>
+<div class="ttc" id="subchannel_8h_html_a4a2f6ba6b1204e3bf20af7fc5b68f709"><div class="ttname"><a href="subchannel_8h.html#a4a2f6ba6b1204e3bf20af7fc5b68f709">grpc_subchannel_check_connectivity</a></div><div class="ttdeci">grpc_connectivity_state grpc_subchannel_check_connectivity(grpc_subchannel *channel)</div><div class="ttdoc">poll the current connectivity state of a channel </div><div class="ttdef"><b>Definition:</b> subchannel.c:378</div></div>
+<div class="ttc" id="structgrpc__mdctx_html"><div class="ttname"><a href="structgrpc__mdctx.html">grpc_mdctx</a></div><div class="ttdef"><b>Definition:</b> metadata.c:98</div></div>
+<div class="ttc" id="structgrpc__connector_html"><div class="ttname"><a href="structgrpc__connector.html">grpc_connector</a></div><div class="ttdef"><b>Definition:</b> connector.h:44</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_a971dc93e9701406ff4b38e62a6b93026"><div class="ttname"><a href="structgrpc__subchannel__args.html#a971dc93e9701406ff4b38e62a6b93026">grpc_subchannel_args::addr_len</a></div><div class="ttdeci">size_t addr_len</div><div class="ttdef"><b>Definition:</b> subchannel.h:116</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="subchannel_8h_html_a1d1fd9b9b9d0759dec2c43b4d2697a93"><div class="ttname"><a href="subchannel_8h.html#a1d1fd9b9b9d0759dec2c43b4d2697a93">grpc_subchannel_call_ref</a></div><div class="ttdeci">void grpc_subchannel_call_ref(grpc_subchannel_call *call)</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_a70a5fadf5d3d346932fd6140c6bc7fcb"><div class="ttname"><a href="structgrpc__subchannel__args.html#a70a5fadf5d3d346932fd6140c6bc7fcb">grpc_subchannel_args::addr</a></div><div class="ttdeci">struct sockaddr * addr</div><div class="ttdoc">Address to connect to. </div><div class="ttdef"><b>Definition:</b> subchannel.h:115</div></div>
+<div class="ttc" id="subchannel_8h_html_ac07bb9b75d7587847d5792ed6ad7e616"><div class="ttname"><a href="subchannel_8h.html#ac07bb9b75d7587847d5792ed6ad7e616">grpc_subchannel_call_get_peer</a></div><div class="ttdeci">char * grpc_subchannel_call_get_peer(grpc_subchannel_call *subchannel_call)</div><div class="ttdoc">continue querying for peer </div><div class="ttdef"><b>Definition:</b> subchannel.c:712</div></div>
+<div class="ttc" id="subchannel_8h_html_a3d6c37ca330ab08c065c1210b67f94e4"><div class="ttname"><a href="subchannel_8h.html#a3d6c37ca330ab08c065c1210b67f94e4">grpc_subchannel_ref</a></div><div class="ttdeci">void grpc_subchannel_ref(grpc_subchannel *channel)</div></div>
+<div class="ttc" id="subchannel_8h_html_a5220a721bb5ad91bffbddd12045efff8"><div class="ttname"><a href="subchannel_8h.html#a5220a721bb5ad91bffbddd12045efff8">grpc_subchannel_create</a></div><div class="ttdeci">grpc_subchannel * grpc_subchannel_create(grpc_connector *connector, grpc_subchannel_args *args)</div><div class="ttdoc">create a subchannel given a connector </div><div class="ttdef"><b>Definition:</b> subchannel.c:279</div></div>
+<div class="ttc" id="structgrpc__subchannel__args_html_a7b12c4bb3d78ac8e92cfa31d23ac5477"><div class="ttname"><a href="structgrpc__subchannel__args.html#a7b12c4bb3d78ac8e92cfa31d23ac5477">grpc_subchannel_args::mdctx</a></div><div class="ttdeci">grpc_mdctx * mdctx</div><div class="ttdoc">metadata context to use </div><div class="ttdef"><b>Definition:</b> subchannel.h:118</div></div>
+<div class="ttc" id="subchannel_8h_html_a7eaea7934724bc8d7023eb3efe58fb53"><div class="ttname"><a href="subchannel_8h.html#a7eaea7934724bc8d7023eb3efe58fb53">grpc_subchannel_call_unref</a></div><div class="ttdeci">void grpc_subchannel_call_unref(grpc_subchannel_call *call)</div></div>
+<div class="ttc" id="subchannel_8h_html_a54000749034854e53ac2b09ff563ea2d"><div class="ttname"><a href="subchannel_8h.html#a54000749034854e53ac2b09ff563ea2d">grpc_subchannel_create_call</a></div><div class="ttdeci">void grpc_subchannel_create_call(grpc_subchannel *subchannel, grpc_pollset *pollset, grpc_subchannel_call **target, grpc_iomgr_closure *notify)</div><div class="ttdoc">construct a call (possibly asynchronously) </div><div class="ttdef"><b>Definition:</b> subchannel.c:339</div></div>
+<div class="ttc" id="connector_8h_html"><div class="ttname"><a href="connector_8h.html">connector.h</a></div></div>
+<div class="ttc" id="subchannel_8h_html_a30ba75352b07c1e77a4253585c03f1ad"><div class="ttname"><a href="subchannel_8h.html#a30ba75352b07c1e77a4253585c03f1ad">grpc_subchannel_call_process_op</a></div><div class="ttdeci">void grpc_subchannel_call_process_op(grpc_subchannel_call *subchannel_call, grpc_transport_stream_op *op)</div><div class="ttdoc">continue processing a transport op </div><div class="ttdef"><b>Definition:</b> subchannel.c:718</div></div>
+<div class="ttc" id="structgrpc__transport__op_html"><div class="ttname"><a href="structgrpc__transport__op.html">grpc_transport_op</a></div><div class="ttdoc">Transport op: a set of operations to perform on a transport as a whole. </div><div class="ttdef"><b>Definition:</b> transport.h:90</div></div>
+<div class="ttc" id="structgrpc__subchannel__call_html"><div class="ttname"><a href="structgrpc__subchannel__call.html">grpc_subchannel_call</a></div><div class="ttdef"><b>Definition:</b> subchannel.c:138</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/subchannel__factory_8c.html b/doc/ref/core.internal/html/subchannel__factory_8c.html
new file mode 100644
index 0000000000..aae8e8af3e
--- /dev/null
+++ b/doc/ref/core.internal/html/subchannel__factory_8c.html
@@ -0,0 +1,174 @@
+<!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: src/core/client_config/subchannel_factory.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">subchannel_factory.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="subchannel__factory_8h_source.html">src/core/client_config/subchannel_factory.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6486ef54aa6fe37d4fe5b7c53aed9a84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8c.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">grpc_subchannel_factory_ref</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td></tr>
+<tr class="separator:a6486ef54aa6fe37d4fe5b7c53aed9a84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac502341f23676007c8ccd5338f942e82"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8c.html#ac502341f23676007c8ccd5338f942e82">grpc_subchannel_factory_unref</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td></tr>
+<tr class="separator:ac502341f23676007c8ccd5338f942e82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50ecfa3c06af1f867684d3c238cedf20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8c.html#a50ecfa3c06af1f867684d3c238cedf20">grpc_subchannel_factory_create_subchannel</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory, <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args)</td></tr>
+<tr class="memdesc:a50ecfa3c06af1f867684d3c238cedf20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>. <a href="#a50ecfa3c06af1f867684d3c238cedf20">More...</a><br/></td></tr>
+<tr class="separator:a50ecfa3c06af1f867684d3c238cedf20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a50ecfa3c06af1f867684d3c238cedf20"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* grpc_subchannel_factory_create_subchannel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a new <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6486ef54aa6fe37d4fe5b7c53aed9a84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_factory_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac502341f23676007c8ccd5338f942e82"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_factory_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/subchannel__factory_8h.html b/doc/ref/core.internal/html/subchannel__factory_8h.html
new file mode 100644
index 0000000000..774eaad845
--- /dev/null
+++ b/doc/ref/core.internal/html/subchannel__factory_8h.html
@@ -0,0 +1,221 @@
+<!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: src/core/client_config/subchannel_factory.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">subchannel_factory.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="subchannel_8h_source.html">src/core/client_config/subchannel.h</a>&quot;</code><br/>
+</div>
+<p><a href="subchannel__factory_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor for new configured channels. <a href="structgrpc__subchannel__factory.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a0881f059aa8f26e71eb479eed9d06785"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8h.html#a0881f059aa8f26e71eb479eed9d06785">grpc_subchannel_factory</a></td></tr>
+<tr class="separator:a0881f059aa8f26e71eb479eed9d06785"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a032cc20ff8747dbc985aa2b85b8f7abf"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8h.html#a032cc20ff8747dbc985aa2b85b8f7abf">grpc_subchannel_factory_vtable</a></td></tr>
+<tr class="separator:a032cc20ff8747dbc985aa2b85b8f7abf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6486ef54aa6fe37d4fe5b7c53aed9a84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">grpc_subchannel_factory_ref</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td></tr>
+<tr class="separator:a6486ef54aa6fe37d4fe5b7c53aed9a84"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac502341f23676007c8ccd5338f942e82"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82">grpc_subchannel_factory_unref</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory)</td></tr>
+<tr class="separator:ac502341f23676007c8ccd5338f942e82"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a50ecfa3c06af1f867684d3c238cedf20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20">grpc_subchannel_factory_create_subchannel</a> (<a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory, <a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args)</td></tr>
+<tr class="memdesc:a50ecfa3c06af1f867684d3c238cedf20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a new <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>. <a href="#a50ecfa3c06af1f867684d3c238cedf20">More...</a><br/></td></tr>
+<tr class="separator:a50ecfa3c06af1f867684d3c238cedf20"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a0881f059aa8f26e71eb479eed9d06785"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> <a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a032cc20ff8747dbc985aa2b85b8f7abf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a> <a class="el" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a50ecfa3c06af1f867684d3c238cedf20"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>* grpc_subchannel_factory_create_subchannel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Create a new <a class="el" href="structgrpc__subchannel.html">grpc_subchannel</a>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a6486ef54aa6fe37d4fe5b7c53aed9a84"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_factory_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac502341f23676007c8ccd5338f942e82"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_subchannel_factory_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *&#160;</td>
+ <td class="paramname"><em>factory</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/subchannel__factory_8h_source.html b/doc/ref/core.internal/html/subchannel__factory_8h_source.html
new file mode 100644
index 0000000000..5f77bab5e6
--- /dev/null
+++ b/doc/ref/core.internal/html/subchannel__factory_8h_source.html
@@ -0,0 +1,171 @@
+<!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: src/core/client_config/subchannel_factory.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">subchannel_factory.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="subchannel__factory_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel__stack_8h.html">src/core/channel/channel_stack.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="subchannel_8h.html">src/core/client_config/subchannel.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="subchannel__factory_8h.html#a0881f059aa8f26e71eb479eed9d06785"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="subchannel__factory_8h.html#a032cc20ff8747dbc985aa2b85b8f7abf"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a> <a class="code" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__factory.html"> 45</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51"> 46</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a> *<a class="code" href="structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51">vtable</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;};</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__factory__vtable.html"> 49</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed"> 50</a></span>&#160; void (*<a class="code" href="structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed">ref</a>)(<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a"> 51</a></span>&#160; void (*<a class="code" href="structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a">unref</a>)(<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="structgrpc__subchannel__factory__vtable.html#a25972ec53ef7aa219669847b7cbb515d"> 52</a></span>&#160; <a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *(*create_subchannel)(<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;};</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">grpc_subchannel_factory_ref</a>(<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82">grpc_subchannel_factory_unref</a>(<a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<a class="code" href="structgrpc__subchannel.html">grpc_subchannel</a> *<a class="code" href="subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20">grpc_subchannel_factory_create_subchannel</a>(</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a> *factory, <a class="code" href="structgrpc__subchannel__args.html">grpc_subchannel_args</a> *args);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_FACTORY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgrpc__subchannel__args_html"><div class="ttname"><a href="structgrpc__subchannel__args.html">grpc_subchannel_args</a></div><div class="ttdef"><b>Definition:</b> subchannel.h:106</div></div>
+<div class="ttc" id="channel__stack_8h_html"><div class="ttname"><a href="channel__stack_8h.html">channel_stack.h</a></div></div>
+<div class="ttc" id="subchannel__factory_8h_html_a50ecfa3c06af1f867684d3c238cedf20"><div class="ttname"><a href="subchannel__factory_8h.html#a50ecfa3c06af1f867684d3c238cedf20">grpc_subchannel_factory_create_subchannel</a></div><div class="ttdeci">grpc_subchannel * grpc_subchannel_factory_create_subchannel(grpc_subchannel_factory *factory, grpc_subchannel_args *args)</div><div class="ttdoc">Create a new grpc_subchannel. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.c:43</div></div>
+<div class="ttc" id="structgrpc__subchannel_html"><div class="ttname"><a href="structgrpc__subchannel.html">grpc_subchannel</a></div><div class="ttdef"><b>Definition:</b> subchannel.c:77</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html_a41a36a12bfcc66b72cba6bda47f00b51"><div class="ttname"><a href="structgrpc__subchannel__factory.html#a41a36a12bfcc66b72cba6bda47f00b51">grpc_subchannel_factory::vtable</a></div><div class="ttdeci">const grpc_subchannel_factory_vtable * vtable</div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:46</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory__vtable_html_a89c654ab7f05b8108977771ec6e7e3ed"><div class="ttname"><a href="structgrpc__subchannel__factory__vtable.html#a89c654ab7f05b8108977771ec6e7e3ed">grpc_subchannel_factory_vtable::ref</a></div><div class="ttdeci">void(* ref)(grpc_subchannel_factory *factory)</div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:50</div></div>
+<div class="ttc" id="subchannel__factory_8h_html_a6486ef54aa6fe37d4fe5b7c53aed9a84"><div class="ttname"><a href="subchannel__factory_8h.html#a6486ef54aa6fe37d4fe5b7c53aed9a84">grpc_subchannel_factory_ref</a></div><div class="ttdeci">void grpc_subchannel_factory_ref(grpc_subchannel_factory *factory)</div><div class="ttdef"><b>Definition:</b> subchannel_factory.c:36</div></div>
+<div class="ttc" id="subchannel_8h_html"><div class="ttname"><a href="subchannel_8h.html">subchannel.h</a></div></div>
+<div class="ttc" id="structgrpc__subchannel__factory__vtable_html"><div class="ttname"><a href="structgrpc__subchannel__factory__vtable.html">grpc_subchannel_factory_vtable</a></div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:49</div></div>
+<div class="ttc" id="subchannel__factory_8h_html_ac502341f23676007c8ccd5338f942e82"><div class="ttname"><a href="subchannel__factory_8h.html#ac502341f23676007c8ccd5338f942e82">grpc_subchannel_factory_unref</a></div><div class="ttdeci">void grpc_subchannel_factory_unref(grpc_subchannel_factory *factory)</div><div class="ttdef"><b>Definition:</b> subchannel_factory.c:39</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory__vtable_html_a5550b5e9f61e0ee34c9c0e782bab734a"><div class="ttname"><a href="structgrpc__subchannel__factory__vtable.html#a5550b5e9f61e0ee34c9c0e782bab734a">grpc_subchannel_factory_vtable::unref</a></div><div class="ttdeci">void(* unref)(grpc_subchannel_factory *factory)</div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:51</div></div>
+<div class="ttc" id="structgrpc__subchannel__factory_html"><div class="ttname"><a href="structgrpc__subchannel__factory.html">grpc_subchannel_factory</a></div><div class="ttdoc">Constructor for new configured channels. </div><div class="ttdef"><b>Definition:</b> subchannel_factory.h:45</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/subprocess_8h.html b/doc/ref/core.internal/html/subprocess_8h.html
new file mode 100644
index 0000000000..aca04fc61a
--- /dev/null
+++ b/doc/ref/core.internal/html/subprocess_8h.html
@@ -0,0 +1,226 @@
+<!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: include/grpc/support/subprocess.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">subprocess.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="subprocess_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a1c3492c3aef738e6eef6b8cb1b435095"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a></td></tr>
+<tr class="separator:a1c3492c3aef738e6eef6b8cb1b435095"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a6d393aed4f99f9ba49286715c5da8fd3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3">gpr_subprocess_binary_extension</a> ()</td></tr>
+<tr class="separator:a6d393aed4f99f9ba49286715c5da8fd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a761755433d8809a68024b03176341242"><td class="memItemLeft" align="right" valign="top"><a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html#a761755433d8809a68024b03176341242">gpr_subprocess_create</a> (int argc, const char **argv)</td></tr>
+<tr class="separator:a761755433d8809a68024b03176341242"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a880657b78894ae66b9c5d7416ee7839b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b">gpr_subprocess_destroy</a> (<a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *p)</td></tr>
+<tr class="separator:a880657b78894ae66b9c5d7416ee7839b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5c4e7eccc737f473dd73a1fb502f0d5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5">gpr_subprocess_join</a> (<a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *p)</td></tr>
+<tr class="separator:ac5c4e7eccc737f473dd73a1fb502f0d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee2ddbe0e8a58271a6a9a3cf451dd67d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d">gpr_subprocess_interrupt</a> (<a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *p)</td></tr>
+<tr class="separator:aee2ddbe0e8a58271a6a9a3cf451dd67d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a1c3492c3aef738e6eef6b8cb1b435095"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> <a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a6d393aed4f99f9ba49286715c5da8fd3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* gpr_subprocess_binary_extension </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a761755433d8809a68024b03176341242"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a>* gpr_subprocess_create </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>argc</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char **&#160;</td>
+ <td class="paramname"><em>argv</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a880657b78894ae66b9c5d7416ee7839b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_subprocess_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee2ddbe0e8a58271a6a9a3cf451dd67d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_subprocess_interrupt </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5c4e7eccc737f473dd73a1fb502f0d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_subprocess_join </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *&#160;</td>
+ <td class="paramname"><em>p</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/subprocess_8h_source.html b/doc/ref/core.internal/html/subprocess_8h_source.html
new file mode 100644
index 0000000000..9d01479f5b
--- /dev/null
+++ b/doc/ref/core.internal/html/subprocess_8h_source.html
@@ -0,0 +1,162 @@
+<!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: include/grpc/support/subprocess.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">subprocess.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="subprocess_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SUBPROCESS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SUBPROCESS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif </span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> <a class="code" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment">/* .exe on windows, empty on unices */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3">gpr_subprocess_binary_extension</a>();</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *<a class="code" href="subprocess_8h.html#a761755433d8809a68024b03176341242">gpr_subprocess_create</a>(<span class="keywordtype">int</span> argc, <span class="keyword">const</span> <span class="keywordtype">char</span> **argv);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* if subprocess has not been joined, kill it */</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b">gpr_subprocess_destroy</a>(<a class="code" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *p);</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* returns exit status; can be called at most once */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">int</span> <a class="code" href="subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5">gpr_subprocess_join</a>(<a class="code" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *p);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keywordtype">void</span> <a class="code" href="subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d">gpr_subprocess_interrupt</a>(<a class="code" href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a> *p);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span>} <span class="comment">// extern &quot;C&quot;</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="subprocess_8h_html_ac5c4e7eccc737f473dd73a1fb502f0d5"><div class="ttname"><a href="subprocess_8h.html#ac5c4e7eccc737f473dd73a1fb502f0d5">gpr_subprocess_join</a></div><div class="ttdeci">int gpr_subprocess_join(gpr_subprocess *p)</div></div>
+<div class="ttc" id="subprocess_8h_html_aee2ddbe0e8a58271a6a9a3cf451dd67d"><div class="ttname"><a href="subprocess_8h.html#aee2ddbe0e8a58271a6a9a3cf451dd67d">gpr_subprocess_interrupt</a></div><div class="ttdeci">void gpr_subprocess_interrupt(gpr_subprocess *p)</div></div>
+<div class="ttc" id="subprocess_8h_html_a761755433d8809a68024b03176341242"><div class="ttname"><a href="subprocess_8h.html#a761755433d8809a68024b03176341242">gpr_subprocess_create</a></div><div class="ttdeci">gpr_subprocess * gpr_subprocess_create(int argc, const char **argv)</div></div>
+<div class="ttc" id="subprocess_8h_html_a6d393aed4f99f9ba49286715c5da8fd3"><div class="ttname"><a href="subprocess_8h.html#a6d393aed4f99f9ba49286715c5da8fd3">gpr_subprocess_binary_extension</a></div><div class="ttdeci">const char * gpr_subprocess_binary_extension()</div></div>
+<div class="ttc" id="subprocess_8h_html_a880657b78894ae66b9c5d7416ee7839b"><div class="ttname"><a href="subprocess_8h.html#a880657b78894ae66b9c5d7416ee7839b">gpr_subprocess_destroy</a></div><div class="ttdeci">void gpr_subprocess_destroy(gpr_subprocess *p)</div></div>
+<div class="ttc" id="subprocess_8h_html_a1c3492c3aef738e6eef6b8cb1b435095"><div class="ttname"><a href="subprocess_8h.html#a1c3492c3aef738e6eef6b8cb1b435095">gpr_subprocess</a></div><div class="ttdeci">struct gpr_subprocess gpr_subprocess</div><div class="ttdef"><b>Definition:</b> subprocess.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/subprocess__posix_8c.html b/doc/ref/core.internal/html/subprocess__posix_8c.html
new file mode 100644
index 0000000000..940350afa1
--- /dev/null
+++ b/doc/ref/core.internal/html/subprocess__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/subprocess_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">subprocess_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/surface__trace_8c.html b/doc/ref/core.internal/html/surface__trace_8c.html
new file mode 100644
index 0000000000..8d8db36838
--- /dev/null
+++ b/doc/ref/core.internal/html/surface__trace_8c.html
@@ -0,0 +1,121 @@
+<!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: src/core/surface/surface_trace.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">surface_trace.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="surface__trace_8h_source.html">src/core/surface/surface_trace.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:aa4f3485a1e8307d80c59a22e5b20f7a5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="surface__trace_8c.html#aa4f3485a1e8307d80c59a22e5b20f7a5">grpc_surface_trace</a> = 0</td></tr>
+<tr class="separator:aa4f3485a1e8307d80c59a22e5b20f7a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="aa4f3485a1e8307d80c59a22e5b20f7a5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_surface_trace = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/surface__trace_8h.html b/doc/ref/core.internal/html/surface__trace_8h.html
new file mode 100644
index 0000000000..224b7baff0
--- /dev/null
+++ b/doc/ref/core.internal/html/surface__trace_8h.html
@@ -0,0 +1,167 @@
+<!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: src/core/surface/surface_trace.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">surface_trace.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div>
+<p><a href="surface__trace_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab6bd5be00afe2369bd1b63e13ab6197d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="surface__trace_8h.html#ab6bd5be00afe2369bd1b63e13ab6197d">GRPC_SURFACE_TRACE_RETURNED_EVENT</a>(cq, event)</td></tr>
+<tr class="separator:ab6bd5be00afe2369bd1b63e13ab6197d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:aa4f3485a1e8307d80c59a22e5b20f7a5"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">grpc_surface_trace</a></td></tr>
+<tr class="separator:aa4f3485a1e8307d80c59a22e5b20f7a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ab6bd5be00afe2369bd1b63e13ab6197d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_SURFACE_TRACE_RETURNED_EVENT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">cq, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">event&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">if</span> (<a class="code" href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">grpc_surface_trace</a>) { \</div>
+<div class="line"> char *_ev = <a class="code" href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">grpc_event_string</a>(event); <a class="code" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">\</a></div>
+<div class="line"><a class="code" href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1"> gpr_log</a>(<a class="code" href="log_8h.html#af0d0d75690f79edc9294498c88f96703">GPR_INFO</a>, <span class="stringliteral">&quot;RETURN_EVENT[%p]: %s&quot;</span>, cq, _ev); <a class="code" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">\</a></div>
+<div class="line"><a class="code" href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8"> gpr_free</a>(_ev); \</div>
+<div class="line"> }</div>
+<div class="ttc" id="log_8h_html_af0d0d75690f79edc9294498c88f96703"><div class="ttname"><a href="log_8h.html#af0d0d75690f79edc9294498c88f96703">GPR_INFO</a></div><div class="ttdeci">#define GPR_INFO</div><div class="ttdef"><b>Definition:</b> log.h:67</div></div>
+<div class="ttc" id="alloc_8h_html_ae0d621b472031a64c77bd2e9fea495e8"><div class="ttname"><a href="alloc_8h.html#ae0d621b472031a64c77bd2e9fea495e8">gpr_free</a></div><div class="ttdeci">void gpr_free(void *ptr)</div><div class="ttdef"><b>Definition:</b> alloc.c:47</div></div>
+<div class="ttc" id="log_8h_html_acf6f383ed91d9f4e2e6bd79c57539fd1"><div class="ttname"><a href="log_8h.html#acf6f383ed91d9f4e2e6bd79c57539fd1">gpr_log</a></div><div class="ttdeci">void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...)</div></div>
+<div class="ttc" id="event__string_8h_html_a8dc67a225f744d4d0ee592faf2bd4313"><div class="ttname"><a href="event__string_8h.html#a8dc67a225f744d4d0ee592faf2bd4313">grpc_event_string</a></div><div class="ttdeci">char * grpc_event_string(grpc_event *ev)</div><div class="ttdef"><b>Definition:</b> event_string.c:56</div></div>
+<div class="ttc" id="surface__trace_8h_html_aa4f3485a1e8307d80c59a22e5b20f7a5"><div class="ttname"><a href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">grpc_surface_trace</a></div><div class="ttdeci">int grpc_surface_trace</div><div class="ttdef"><b>Definition:</b> surface_trace.c:36</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="aa4f3485a1e8307d80c59a22e5b20f7a5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_surface_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/surface__trace_8h_source.html b/doc/ref/core.internal/html/surface__trace_8h_source.html
new file mode 100644
index 0000000000..ed2b0d3784
--- /dev/null
+++ b/doc/ref/core.internal/html/surface__trace_8h_source.html
@@ -0,0 +1,151 @@
+<!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: src/core/surface/surface_trace.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">surface_trace.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="surface__trace_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SURFACE_SURFACE_TRACE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SURFACE_SURFACE_TRACE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="trace_8h.html">src/core/debug/trace.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="log_8h.html">grpc/support/log.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">grpc_surface_trace</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="surface__trace_8h.html#ab6bd5be00afe2369bd1b63e13ab6197d"> 42</a></span>&#160;<span class="preprocessor">#define GRPC_SURFACE_TRACE_RETURNED_EVENT(cq, event) \</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"> if (grpc_surface_trace) { \</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"> char *_ev = grpc_event_string(event); \</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"> gpr_log(GPR_INFO, &quot;RETURN_EVENT[%p]: %s&quot;, cq, _ev); \</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"> gpr_free(_ev); \</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SURFACE_SURFACE_TRACE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="trace_8h_html"><div class="ttname"><a href="trace_8h.html">trace.h</a></div></div>
+<div class="ttc" id="log_8h_html"><div class="ttname"><a href="log_8h.html">log.h</a></div></div>
+<div class="ttc" id="surface__trace_8h_html_aa4f3485a1e8307d80c59a22e5b20f7a5"><div class="ttname"><a href="surface__trace_8h.html#aa4f3485a1e8307d80c59a22e5b20f7a5">grpc_surface_trace</a></div><div class="ttdeci">int grpc_surface_trace</div><div class="ttdef"><b>Definition:</b> surface_trace.c:36</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sync_8c.html b/doc/ref/core.internal/html/sync_8c.html
new file mode 100644
index 0000000000..ae34d0bbbe
--- /dev/null
+++ b/doc/ref/core.internal/html/sync_8c.html
@@ -0,0 +1,431 @@
+<!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: src/core/support/sync.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">sync.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><b>sync_array_s</b></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a0ed680fdb405e7195d9f14032851eebb"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="sync_8c.html#a0ed680fdb405e7195d9f14032851eebba036372fdae4f52140a8f27482b729753">event_sync_partitions</a> = 31
+ }</td></tr>
+<tr class="separator:a0ed680fdb405e7195d9f14032851eebb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a93f37cd27964fda51acd4cd8e6737922"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a93f37cd27964fda51acd4cd8e6737922">gpr_event_init</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev)</td></tr>
+<tr class="separator:a93f37cd27964fda51acd4cd8e6737922"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b1d014640e00512f6789dacc4ff88bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a1b1d014640e00512f6789dacc4ff88bd">gpr_event_set</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a1b1d014640e00512f6789dacc4ff88bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0a2305d9e6575cc5a3d92bc3f12c161"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#ac0a2305d9e6575cc5a3d92bc3f12c161">gpr_event_get</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev)</td></tr>
+<tr class="separator:ac0a2305d9e6575cc5a3d92bc3f12c161"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01d442a76ff77f64d9f898b22ea33db7"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a01d442a76ff77f64d9f898b22ea33db7">gpr_event_wait</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline)</td></tr>
+<tr class="separator:a01d442a76ff77f64d9f898b22ea33db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae048c7e762b723821e35a07fd0d85e22"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#ae048c7e762b723821e35a07fd0d85e22">gpr_event_cancellable_wait</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline, <a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:ae048c7e762b723821e35a07fd0d85e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a235584f36572b5410b042ee63cb0740b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a235584f36572b5410b042ee63cb0740b">gpr_ref_init</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r, int n)</td></tr>
+<tr class="separator:a235584f36572b5410b042ee63cb0740b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0e52c6bfc7a04ba8a269f3227104571"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#ac0e52c6bfc7a04ba8a269f3227104571">gpr_ref</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r)</td></tr>
+<tr class="separator:ac0e52c6bfc7a04ba8a269f3227104571"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a516e26b66b1aa53fba8f5f52b249cb25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a516e26b66b1aa53fba8f5f52b249cb25">gpr_refn</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r, int n)</td></tr>
+<tr class="separator:a516e26b66b1aa53fba8f5f52b249cb25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b570c831b14070c37e708dde91b795"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a76b570c831b14070c37e708dde91b795">gpr_unref</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r)</td></tr>
+<tr class="separator:a76b570c831b14070c37e708dde91b795"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b8e5de6e1baa4fd66c014417dc0a30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a76b8e5de6e1baa4fd66c014417dc0a30">gpr_stats_init</a> (<a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c, <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> n)</td></tr>
+<tr class="separator:a76b8e5de6e1baa4fd66c014417dc0a30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e51ec3b46c7c03602e2279a802daa1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#a8e51ec3b46c7c03602e2279a802daa1c">gpr_stats_inc</a> (<a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c, <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> inc)</td></tr>
+<tr class="separator:a8e51ec3b46c7c03602e2279a802daa1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb2c58da7d0b785887266b3b1890764d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8c.html#abb2c58da7d0b785887266b3b1890764d">gpr_stats_read</a> (const <a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c)</td></tr>
+<tr class="separator:abb2c58da7d0b785887266b3b1890764d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a0ed680fdb405e7195d9f14032851eebb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a0ed680fdb405e7195d9f14032851eebba036372fdae4f52140a8f27482b729753"></a>event_sync_partitions</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ae048c7e762b723821e35a07fd0d85e22"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_event_cancellable_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0a2305d9e6575cc5a3d92bc3f12c161"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_event_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a93f37cd27964fda51acd4cd8e6737922"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_event_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1b1d014640e00512f6789dacc4ff88bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_event_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a01d442a76ff77f64d9f898b22ea33db7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_event_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0e52c6bfc7a04ba8a269f3227104571"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a235584f36572b5410b042ee63cb0740b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_ref_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a516e26b66b1aa53fba8f5f52b249cb25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_refn </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8e51ec3b46c7c03602e2279a802daa1c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_stats_inc </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td>
+ <td class="paramname"><em>inc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76b8e5de6e1baa4fd66c014417dc0a30"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_stats_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb2c58da7d0b785887266b3b1890764d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> gpr_stats_read </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76b570c831b14070c37e708dde91b795"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sync_8h.html b/doc/ref/core.internal/html/sync_8h.html
new file mode 100644
index 0000000000..1575b648c9
--- /dev/null
+++ b/doc/ref/core.internal/html/sync_8h.html
@@ -0,0 +1,740 @@
+<!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: include/grpc/support/sync.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">sync.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync__generic_8h_source.html">grpc/support/sync_generic.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="cancellable__platform_8h_source.html">grpc/support/cancellable_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="sync_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a16694f755266c254390b041a0f069094"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a16694f755266c254390b041a0f069094">gpr_mu_init</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *mu)</td></tr>
+<tr class="separator:a16694f755266c254390b041a0f069094"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52ae2524c7dade8cecb9f01ff4792c9e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e">gpr_mu_destroy</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *mu)</td></tr>
+<tr class="separator:a52ae2524c7dade8cecb9f01ff4792c9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a44b385455d169e6c84659adb222c1d42"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">gpr_mu_lock</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *mu)</td></tr>
+<tr class="separator:a44b385455d169e6c84659adb222c1d42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91370fd0eb76bc1323c80815ad6e9cff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">gpr_mu_unlock</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *mu)</td></tr>
+<tr class="separator:a91370fd0eb76bc1323c80815ad6e9cff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a65a42bb7ca9072b0e7b581d715a8e777"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777">gpr_mu_trylock</a> (<a class="el" href="structgpr__mu.html">gpr_mu</a> *mu)</td></tr>
+<tr class="separator:a65a42bb7ca9072b0e7b581d715a8e777"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad24aac3d86113f0fcffc6c4595da9cb2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">gpr_cv_init</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv)</td></tr>
+<tr class="separator:ad24aac3d86113f0fcffc6c4595da9cb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a652900a910676d5cae9ccba052adb6b0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">gpr_cv_destroy</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv)</td></tr>
+<tr class="separator:a652900a910676d5cae9ccba052adb6b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5d8d01509b75addc44e5a43783a826e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">gpr_cv_wait</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv, <a class="el" href="structgpr__mu.html">gpr_mu</a> *mu, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline)</td></tr>
+<tr class="separator:ad5d8d01509b75addc44e5a43783a826e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5f1df649a9885ff2354dd4ce611017d9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9">gpr_cv_cancellable_wait</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv, <a class="el" href="structgpr__mu.html">gpr_mu</a> *mu, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline, <a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:a5f1df649a9885ff2354dd4ce611017d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba119d0b92b0bd50e6efa9e2abe07a5f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f">gpr_cv_signal</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv)</td></tr>
+<tr class="separator:aba119d0b92b0bd50e6efa9e2abe07a5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5a4b4a5844668d188db89dda6ad205b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">gpr_cv_broadcast</a> (<a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv)</td></tr>
+<tr class="separator:ad5a4b4a5844668d188db89dda6ad205b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec0b0e9b9f084550cdec300da1f31add"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#aec0b0e9b9f084550cdec300da1f31add">gpr_cancellable_init</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:aec0b0e9b9f084550cdec300da1f31add"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa82b7172b992bd33bd6fd4b4dc89e338"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338">gpr_cancellable_destroy</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:aa82b7172b992bd33bd6fd4b4dc89e338"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1e53047443e5eb1f9895be0c90bc790b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b">gpr_cancellable_is_cancelled</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:a1e53047443e5eb1f9895be0c90bc790b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a895fb73161d2dd1fa19be10d5395001c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a895fb73161d2dd1fa19be10d5395001c">gpr_cancellable_cancel</a> (<a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:a895fb73161d2dd1fa19be10d5395001c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5c88872723a129b09200b1892d2323f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">gpr_once_init</a> (<a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a> *once, void(*init_routine)(void))</td></tr>
+<tr class="separator:ad5c88872723a129b09200b1892d2323f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a93f37cd27964fda51acd4cd8e6737922"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a93f37cd27964fda51acd4cd8e6737922">gpr_event_init</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev)</td></tr>
+<tr class="separator:a93f37cd27964fda51acd4cd8e6737922"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b1d014640e00512f6789dacc4ff88bd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd">gpr_event_set</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev, void *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a1b1d014640e00512f6789dacc4ff88bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0a2305d9e6575cc5a3d92bc3f12c161"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161">gpr_event_get</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev)</td></tr>
+<tr class="separator:ac0a2305d9e6575cc5a3d92bc3f12c161"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01d442a76ff77f64d9f898b22ea33db7"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7">gpr_event_wait</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline)</td></tr>
+<tr class="separator:a01d442a76ff77f64d9f898b22ea33db7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae048c7e762b723821e35a07fd0d85e22"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ae048c7e762b723821e35a07fd0d85e22">gpr_event_cancellable_wait</a> (<a class="el" href="structgpr__event.html">gpr_event</a> *ev, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline, <a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *c)</td></tr>
+<tr class="separator:ae048c7e762b723821e35a07fd0d85e22"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a235584f36572b5410b042ee63cb0740b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a235584f36572b5410b042ee63cb0740b">gpr_ref_init</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r, int n)</td></tr>
+<tr class="separator:a235584f36572b5410b042ee63cb0740b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac0e52c6bfc7a04ba8a269f3227104571"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571">gpr_ref</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r)</td></tr>
+<tr class="separator:ac0e52c6bfc7a04ba8a269f3227104571"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a516e26b66b1aa53fba8f5f52b249cb25"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25">gpr_refn</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r, int n)</td></tr>
+<tr class="separator:a516e26b66b1aa53fba8f5f52b249cb25"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b570c831b14070c37e708dde91b795"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a76b570c831b14070c37e708dde91b795">gpr_unref</a> (<a class="el" href="structgpr__refcount.html">gpr_refcount</a> *r)</td></tr>
+<tr class="separator:a76b570c831b14070c37e708dde91b795"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b8e5de6e1baa4fd66c014417dc0a30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30">gpr_stats_init</a> (<a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c, <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> n)</td></tr>
+<tr class="separator:a76b8e5de6e1baa4fd66c014417dc0a30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e51ec3b46c7c03602e2279a802daa1c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c">gpr_stats_inc</a> (<a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c, <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> inc)</td></tr>
+<tr class="separator:a8e51ec3b46c7c03602e2279a802daa1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb2c58da7d0b785887266b3b1890764d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html#abb2c58da7d0b785887266b3b1890764d">gpr_stats_read</a> (const <a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c)</td></tr>
+<tr class="separator:abb2c58da7d0b785887266b3b1890764d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a895fb73161d2dd1fa19be10d5395001c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cancellable_cancel </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa82b7172b992bd33bd6fd4b4dc89e338"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cancellable_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aec0b0e9b9f084550cdec300da1f31add"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cancellable_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1e53047443e5eb1f9895be0c90bc790b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_cancellable_is_cancelled </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad5a4b4a5844668d188db89dda6ad205b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cv_broadcast </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5f1df649a9885ff2354dd4ce611017d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_cv_cancellable_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a652900a910676d5cae9ccba052adb6b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cv_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad24aac3d86113f0fcffc6c4595da9cb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cv_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba119d0b92b0bd50e6efa9e2abe07a5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_cv_signal </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad5d8d01509b75addc44e5a43783a826e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_cv_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *&#160;</td>
+ <td class="paramname"><em>cv</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae048c7e762b723821e35a07fd0d85e22"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_event_cancellable_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__cancellable.html">gpr_cancellable</a> *&#160;</td>
+ <td class="paramname"><em>c</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0a2305d9e6575cc5a3d92bc3f12c161"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_event_get </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a93f37cd27964fda51acd4cd8e6737922"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_event_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1b1d014640e00512f6789dacc4ff88bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_event_set </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a01d442a76ff77f64d9f898b22ea33db7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* gpr_event_wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__event.html">gpr_event</a> *&#160;</td>
+ <td class="paramname"><em>ev</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>abs_deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a52ae2524c7dade8cecb9f01ff4792c9e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_mu_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16694f755266c254390b041a0f069094"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_mu_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a44b385455d169e6c84659adb222c1d42"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_mu_lock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a65a42bb7ca9072b0e7b581d715a8e777"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_mu_trylock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a91370fd0eb76bc1323c80815ad6e9cff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_mu_unlock </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__mu.html">gpr_mu</a> *&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad5c88872723a129b09200b1892d2323f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_once_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a> *&#160;</td>
+ <td class="paramname"><em>once</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void)&#160;</td>
+ <td class="paramname"><em>init_routine</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac0e52c6bfc7a04ba8a269f3227104571"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_ref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a235584f36572b5410b042ee63cb0740b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_ref_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a516e26b66b1aa53fba8f5f52b249cb25"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_refn </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8e51ec3b46c7c03602e2279a802daa1c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_stats_inc </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td>
+ <td class="paramname"><em>inc</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76b8e5de6e1baa4fd66c014417dc0a30"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_stats_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td>
+ <td class="paramname"><em>n</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abb2c58da7d0b785887266b3b1890764d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> gpr_stats_read </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a> *&#160;</td>
+ <td class="paramname"><em>c</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76b570c831b14070c37e708dde91b795"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_unref </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> *&#160;</td>
+ <td class="paramname"><em>r</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sync_8h_source.html b/doc/ref/core.internal/html/sync_8h_source.html
new file mode 100644
index 0000000000..1c76b5acd3
--- /dev/null
+++ b/doc/ref/core.internal/html/sync_8h_source.html
@@ -0,0 +1,492 @@
+<!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: include/grpc/support/sync.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SYNC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SYNC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span><span class="comment">/* Synchronization primitives for GPR.</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> The type gpr_mu provides a non-reentrant mutex (lock).</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> The type gpr_cv provides a condition variable.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> The type gpr_once provides for one-time initialization.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> The type gpr_event provides one-time-setting, reading, and</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> waiting of a void*, with memory barriers.</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> The type gpr_refcount provides an object reference counter,</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> with memory barriers suitable to control</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> object lifetimes.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> The type gpr_stats_counter provides an atomic statistics counter. It</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> provides no memory barriers.</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">/* Platform-specific type declarations of gpr_mu and gpr_cv. */</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync__generic_8h.html">grpc/support/sync_generic.h</a>&gt;</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#if defined(GPR_POSIX_SYNC)</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="sync__posix_8h.html">grpc/support/sync_posix.h</a>&gt;</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#elif defined(GPR_WIN32)</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="sync__win32_8h.html">grpc/support/sync_win32.h</a>&gt;</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#elif !defined(GPR_CUSTOM_SYNC)</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error Unable to determine platform for sync</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span> <span class="comment">/* for gpr_timespec */</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="cancellable__platform_8h.html">grpc/support/cancellable_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">/* --- Mutex interface ---</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> At most one thread may hold an exclusive lock on a mutex at any given time.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> Actions taken by a thread that holds a mutex exclusively happen after</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> actions taken by all previous holders of the mutex. Variables of type</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> gpr_mu are uninitialized when first declared. */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* Initialize *mu. Requires: *mu uninitialized. */</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a16694f755266c254390b041a0f069094">gpr_mu_init</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *mu);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">/* Cause *mu no longer to be initialized, freeing any memory in use. Requires:</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> *mu initialized; no other concurrent operation on *mu. */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e">gpr_mu_destroy</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *mu);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment">/* Wait until no thread has a lock on *mu, cause the calling thread to own an</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> exclusive lock on *mu, then return. May block indefinitely or crash if the</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> calling thread has a lock on *mu. Requires: *mu initialized. */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">gpr_mu_lock</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *mu);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment">/* Release an exclusive lock on *mu held by the calling thread. Requires: *mu</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> initialized; the calling thread holds an exclusive lock on *mu. */</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">gpr_mu_unlock</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *mu);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment">/* Without blocking, attempt to acquire an exclusive lock on *mu for the</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> calling thread, then return non-zero iff success. Fail, if any thread holds</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> the lock; succeeds with high probability if no thread holds the lock.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> Requires: *mu initialized. */</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777">gpr_mu_trylock</a>(<a class="code" href="structgpr__mu.html">gpr_mu</a> *mu);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/* --- Condition variable interface ---</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> A while-loop should be used with gpr_cv_wait() when waiting for conditions</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> to become true. See the example below. Variables of type gpr_cv are</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> uninitialized when first declared. */</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment">/* Initialize *cv. Requires: *cv uninitialized. */</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">gpr_cv_init</a>(<a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment">/* Cause *cv no longer to be initialized, freeing any memory in use. Requires:</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> *cv initialized; no other concurrent operation on *cv.*/</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">gpr_cv_destroy</a>(<a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv);</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment">/* Atomically release *mu and wait on *cv. When the calling thread is woken</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> from *cv or the deadline abs_deadline is exceeded, execute gpr_mu_lock(mu)</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> and return whether the deadline was exceeded. Use</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> abs_deadline==gpr_inf_future for no deadline. May return even when not</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> woken explicitly. Requires: *mu and *cv initialized; the calling thread</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> holds an exclusive lock on *mu. */</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">gpr_cv_wait</a>(<a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv, <a class="code" href="structgpr__mu.html">gpr_mu</a> *mu, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline);</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">/* Behave like gpr_cv_wait(cv, mu, abs_deadline), except behave as though</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> the deadline has expired if *c is cancelled. */</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9">gpr_cv_cancellable_wait</a>(<a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv, <a class="code" href="structgpr__mu.html">gpr_mu</a> *mu, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline,</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="structgpr__cancellable.html">gpr_cancellable</a> *c);</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">/* If any threads are waiting on *cv, wake at least one.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> Clients may treat this as an optimization of gpr_cv_broadcast()</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> for use in the case where waking more than one waiter is not useful.</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> Requires: *cv initialized. */</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f">gpr_cv_signal</a>(<a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment">/* Wake all threads waiting on *cv. Requires: *cv initialized. */</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">gpr_cv_broadcast</a>(<a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> *cv);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment">/* --- Cancellation ---</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> A gpr_cancellable can be used with gpr_cv_cancellable_wait()</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> or gpr_event_cancellable_wait() cancel pending waits. */</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment">/* Initialize *c. */</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#aec0b0e9b9f084550cdec300da1f31add">gpr_cancellable_init</a>(<a class="code" href="structgpr__cancellable.html">gpr_cancellable</a> *c);</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment">/* Cause *c no longer to be initialized, freeing any memory in use. Requires:</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> *c initialized; no other concurrent operation on *c. */</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338">gpr_cancellable_destroy</a>(<a class="code" href="structgpr__cancellable.html">gpr_cancellable</a> *c);</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment">/* Return non-zero iff *c has been cancelled. Requires *c initialized.</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> This call is faster than acquiring a mutex on most platforms. */</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b">gpr_cancellable_is_cancelled</a>(<a class="code" href="structgpr__cancellable.html">gpr_cancellable</a> *c);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment">/* Cancel *c. If *c was not previously cancelled, cause</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> gpr_cancellable_init() to return non-zero, and outstanding and future</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> calls to gpr_cv_cancellable_wait() and gpr_event_cancellable_wait() to</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> return immediately indicating a timeout has occurred; otherwise do nothing.</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> Requires *c initialized.*/</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a895fb73161d2dd1fa19be10d5395001c">gpr_cancellable_cancel</a>(<a class="code" href="structgpr__cancellable.html">gpr_cancellable</a> *c);</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment">/* --- One-time initialization ---</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> gpr_once must be declared with static storage class, and initialized with</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> GPR_ONCE_INIT. e.g.,</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> static gpr_once once_var = GPR_ONCE_INIT; */</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment">/* Ensure that (*init_routine)() has been called exactly once (for the</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> specified gpr_once instance) and then return.</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment"> If multiple threads call gpr_once() on the same gpr_once instance, one of</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment"> them will call (*init_routine)(), and the others will block until that call</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> finishes.*/</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">gpr_once_init</a>(<a class="code" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a> *once, <span class="keywordtype">void</span> (*init_routine)(<span class="keywordtype">void</span>));</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment">/* --- One-time event notification ---</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> These operations act on a gpr_event, which should be initialized with</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> gpr_ev_init(), or with GPR_EVENT_INIT if static, e.g.,</span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> static gpr_event event_var = GPR_EVENT_INIT;</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> It requires no destruction. */</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment">/* Initialize *ev. */</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a93f37cd27964fda51acd4cd8e6737922">gpr_event_init</a>(<a class="code" href="structgpr__event.html">gpr_event</a> *ev);</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment">/* Set *ev so that gpr_event_get() and gpr_event_wait() will return value.</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment"> Requires: *ev initialized; value != NULL; no prior or concurrent calls to</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> gpr_event_set(ev, ...) since initialization. */</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd">gpr_event_set</a>(<a class="code" href="structgpr__event.html">gpr_event</a> *ev, <span class="keywordtype">void</span> *<a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment">/* Return the value set by gpr_event_set(ev, ...), or NULL if no such call has</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment"> completed. If the result is non-NULL, all operations that occurred prior to</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment"> the gpr_event_set(ev, ...) set will be visible after this call returns.</span></div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> Requires: *ev initialized. This operation is faster than acquiring a mutex</span></div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> on most platforms. */</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161">gpr_event_get</a>(<a class="code" href="structgpr__event.html">gpr_event</a> *ev);</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment">/* Wait until *ev is set by gpr_event_set(ev, ...), or abs_deadline is</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> exceeded, then return gpr_event_get(ev). Requires: *ev initialized. Use</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> abs_deadline==gpr_inf_future for no deadline. When the event has been</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> signalled before the call, this operation is faster than acquiring a mutex</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> on most platforms. */</span></div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7">gpr_event_wait</a>(<a class="code" href="structgpr__event.html">gpr_event</a> *ev, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline);</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment">/* Behave like gpr_event_wait(ev, abs_deadline), except behave as though</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"> the deadline has expired if *c is cancelled. */</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="keywordtype">void</span> *<a class="code" href="sync_8h.html#ae048c7e762b723821e35a07fd0d85e22">gpr_event_cancellable_wait</a>(<a class="code" href="structgpr__event.html">gpr_event</a> *ev, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline,</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="structgpr__cancellable.html">gpr_cancellable</a> *c);</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment">/* --- Reference counting ---</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> These calls act on the type gpr_refcount. It requires no destruction. */</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment">/* Initialize *r to value n. */</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a235584f36572b5410b042ee63cb0740b">gpr_ref_init</a>(<a class="code" href="structgpr__refcount.html">gpr_refcount</a> *r, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment">/* Increment the reference count *r. Requires *r initialized. */</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571">gpr_ref</a>(<a class="code" href="structgpr__refcount.html">gpr_refcount</a> *r);</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment">/* Increment the reference count *r by n. Requires *r initialized, n &gt; 0. */</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25">gpr_refn</a>(<a class="code" href="structgpr__refcount.html">gpr_refcount</a> *r, <span class="keywordtype">int</span> n);</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment">/* Decrement the reference count *r and return non-zero iff it has reached</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="comment"> zero. . Requires *r initialized. */</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="keywordtype">int</span> <a class="code" href="sync_8h.html#a76b570c831b14070c37e708dde91b795">gpr_unref</a>(<a class="code" href="structgpr__refcount.html">gpr_refcount</a> *r);</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment">/* --- Stats counters ---</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment"> These calls act on the integral type gpr_stats_counter. It requires no</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"> destruction. Static instances may be initialized with</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment"> gpr_stats_counter c = GPR_STATS_INIT;</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment"> Beware: These operations do not imply memory barriers. Do not use them to</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment"> synchronize other events. */</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment">/* Initialize *c to the value n. */</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30">gpr_stats_init</a>(<a class="code" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c, <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> n);</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment">/* *c += inc. Requires: *c initialized. */</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="keywordtype">void</span> <a class="code" href="sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c">gpr_stats_inc</a>(<a class="code" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c, <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> inc);</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="comment">/* Return *c. Requires: *c initialized. */</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="sync_8h.html#abb2c58da7d0b785887266b3b1890764d">gpr_stats_read</a>(<span class="keyword">const</span> <a class="code" href="structgpr__stats__counter.html">gpr_stats_counter</a> *c);</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="comment">/* ==================Example use of interface===================</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"> A producer-consumer queue of up to N integers,</span></div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> illustrating the use of the calls in this interface. */</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="preprocessor">#if 0</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="preprocessor">#define N 4</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="keyword">typedef</span> <span class="keyword">struct </span>queue {</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> non_empty; <span class="comment">/* Signalled when length becomes non-zero. */</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a> non_full; <span class="comment">/* Signalled when length becomes non-N. */</span></div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <a class="code" href="structgpr__mu.html">gpr_mu</a> mu; <span class="comment">/* Protects all fields below.</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"> (That is, except during initialization or</span></div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"> destruction, the fields below should be accessed</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> only by a thread that holds mu.) */</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordtype">int</span> head; <span class="comment">/* Index of head of queue 0..N-1. */</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordtype">int</span> length; <span class="comment">/* Number of valid elements in queue 0..N. */</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordtype">int</span> elem[N]; <span class="comment">/* elem[head .. head+length-1] are queue elements. */</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; } queue;</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="comment">/* Initialize *q. */</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordtype">void</span> queue_init(queue *q) {</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <a class="code" href="sync_8h.html#a16694f755266c254390b041a0f069094">gpr_mu_init</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">gpr_cv_init</a>(&amp;q-&gt;non_empty);</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">gpr_cv_init</a>(&amp;q-&gt;non_full);</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; q-&gt;head = 0;</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; q-&gt;length = 0;</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="comment">/* Free storage associated with *q. */</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordtype">void</span> queue_destroy(queue *q) {</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e">gpr_mu_destroy</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">gpr_cv_destroy</a>(&amp;q-&gt;non_empty);</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <a class="code" href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">gpr_cv_destroy</a>(&amp;q-&gt;non_full);</div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; }</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="comment">/* Wait until there is room in *q, then append x to *q. */</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <span class="keywordtype">void</span> queue_append(queue *q, <span class="keywordtype">int</span> x) {</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <a class="code" href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">gpr_mu_lock</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <span class="comment">/* To wait for a predicate without a deadline, loop on the negation of the</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="comment"> predicate, and use gpr_cv_wait(..., gpr_inf_future) inside the loop</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="comment"> to release the lock, wait, and reacquire on each iteration. Code that</span></div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="comment"> makes the condition true should use gpr_cv_broadcast() on the</span></div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="comment"> corresponding condition variable. The predicate must be on state</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="comment"> protected by the lock. */</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <span class="keywordflow">while</span> (q-&gt;length == N) {</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <a class="code" href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">gpr_cv_wait</a>(&amp;q-&gt;non_full, &amp;q-&gt;mu, <a class="code" href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">gpr_inf_future</a>);</div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; }</div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keywordflow">if</span> (q-&gt;length == 0) { <span class="comment">/* Wake threads blocked in queue_remove(). */</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="comment">/* It&#39;s normal to use gpr_cv_broadcast() or gpr_signal() while</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="comment"> holding the lock. */</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">gpr_cv_broadcast</a>(&amp;q-&gt;non_empty);</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; }</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; q-&gt;elem[(q-&gt;head + q-&gt;length) % N] = x;</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; q-&gt;length++;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <a class="code" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">gpr_mu_unlock</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; }</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="comment">/* If it can be done without blocking, append x to *q and return non-zero.</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="comment"> Otherwise return 0. */</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordtype">int</span> queue_try_append(queue *q, <span class="keywordtype">int</span> x) {</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; <span class="keywordtype">int</span> result = 0;</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777">gpr_mu_trylock</a>(&amp;q-&gt;mu)) {</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">if</span> (q-&gt;length != N) {</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <span class="keywordflow">if</span> (q-&gt;length == 0) { <span class="comment">/* Wake threads blocked in queue_remove(). */</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">gpr_cv_broadcast</a>(&amp;q-&gt;non_empty);</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; }</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; q-&gt;elem[(q-&gt;head + q-&gt;length) % N] = x;</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; q-&gt;length++;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; result = 1;</div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; }</div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; <a class="code" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">gpr_mu_unlock</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">return</span> result;</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; }</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="comment">/* Wait until the *q is non-empty or deadline abs_deadline passes. If the</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="comment"> queue is non-empty, remove its head entry, place it in *head, and return</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment"> non-zero. Otherwise return 0. */</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordtype">int</span> queue_remove(queue *q, <span class="keywordtype">int</span> *head, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> abs_deadline) {</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordtype">int</span> result = 0;</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <a class="code" href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">gpr_mu_lock</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="comment">/* To wait for a predicate with a deadline, loop on the negation of the</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"> predicate or until gpr_cv_wait() returns true. Code that makes</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> the condition true should use gpr_cv_broadcast() on the corresponding</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="comment"> condition variable. The predicate must be on state protected by the</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="comment"> lock. */</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">while</span> (q-&gt;length == 0 &amp;&amp;</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; !<a class="code" href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">gpr_cv_wait</a>(&amp;q-&gt;non_empty, &amp;q-&gt;mu, abs_deadline)) {</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; }</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">if</span> (q-&gt;length != 0) { <span class="comment">/* Queue is non-empty. */</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; result = 1;</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (q-&gt;length == N) { <span class="comment">/* Wake threads blocked in queue_append(). */</span></div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; <a class="code" href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">gpr_cv_broadcast</a>(&amp;q-&gt;non_full);</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; }</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; *head = q-&gt;elem[q-&gt;head];</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; q-&gt;head = (q-&gt;head + 1) % N;</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; q-&gt;length--;</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; } <span class="comment">/* else deadline exceeded */</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">gpr_mu_unlock</a>(&amp;q-&gt;mu);</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">return</span> result;</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* 0 */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_SYNC_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="sync__posix_8h_html"><div class="ttname"><a href="sync__posix_8h.html">sync_posix.h</a></div></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="sync_8h_html_a44b385455d169e6c84659adb222c1d42"><div class="ttname"><a href="sync_8h.html#a44b385455d169e6c84659adb222c1d42">gpr_mu_lock</a></div><div class="ttdeci">void gpr_mu_lock(gpr_mu *mu)</div></div>
+<div class="ttc" id="sync_8h_html_ac0e52c6bfc7a04ba8a269f3227104571"><div class="ttname"><a href="sync_8h.html#ac0e52c6bfc7a04ba8a269f3227104571">gpr_ref</a></div><div class="ttdeci">void gpr_ref(gpr_refcount *r)</div><div class="ttdef"><b>Definition:</b> sync.c:114</div></div>
+<div class="ttc" id="sync_8h_html_a8e51ec3b46c7c03602e2279a802daa1c"><div class="ttname"><a href="sync_8h.html#a8e51ec3b46c7c03602e2279a802daa1c">gpr_stats_inc</a></div><div class="ttdeci">void gpr_stats_inc(gpr_stats_counter *c, gpr_intptr inc)</div><div class="ttdef"><b>Definition:</b> sync.c:130</div></div>
+<div class="ttc" id="sync_8h_html_ac0a2305d9e6575cc5a3d92bc3f12c161"><div class="ttname"><a href="sync_8h.html#ac0a2305d9e6575cc5a3d92bc3f12c161">gpr_event_get</a></div><div class="ttdeci">void * gpr_event_get(gpr_event *ev)</div><div class="ttdef"><b>Definition:</b> sync.c:80</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="sync_8h_html_a1e53047443e5eb1f9895be0c90bc790b"><div class="ttname"><a href="sync_8h.html#a1e53047443e5eb1f9895be0c90bc790b">gpr_cancellable_is_cancelled</a></div><div class="ttdeci">int gpr_cancellable_is_cancelled(gpr_cancellable *c)</div><div class="ttdef"><b>Definition:</b> cancellable.c:51</div></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="sync_8h_html_a516e26b66b1aa53fba8f5f52b249cb25"><div class="ttname"><a href="sync_8h.html#a516e26b66b1aa53fba8f5f52b249cb25">gpr_refn</a></div><div class="ttdeci">void gpr_refn(gpr_refcount *r, int n)</div><div class="ttdef"><b>Definition:</b> sync.c:116</div></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="sync_8h_html_ad5c88872723a129b09200b1892d2323f"><div class="ttname"><a href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">gpr_once_init</a></div><div class="ttdeci">void gpr_once_init(gpr_once *once, void(*init_routine)(void))</div></div>
+<div class="ttc" id="sync__generic_8h_html"><div class="ttname"><a href="sync__generic_8h.html">sync_generic.h</a></div></div>
+<div class="ttc" id="sync_8h_html_abb2c58da7d0b785887266b3b1890764d"><div class="ttname"><a href="sync_8h.html#abb2c58da7d0b785887266b3b1890764d">gpr_stats_read</a></div><div class="ttdeci">gpr_intptr gpr_stats_read(const gpr_stats_counter *c)</div><div class="ttdef"><b>Definition:</b> sync.c:134</div></div>
+<div class="ttc" id="sync_8h_html_a652900a910676d5cae9ccba052adb6b0"><div class="ttname"><a href="sync_8h.html#a652900a910676d5cae9ccba052adb6b0">gpr_cv_destroy</a></div><div class="ttdeci">void gpr_cv_destroy(gpr_cv *cv)</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="sync_8h_html_a5f1df649a9885ff2354dd4ce611017d9"><div class="ttname"><a href="sync_8h.html#a5f1df649a9885ff2354dd4ce611017d9">gpr_cv_cancellable_wait</a></div><div class="ttdeci">int gpr_cv_cancellable_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline, gpr_cancellable *c)</div><div class="ttdef"><b>Definition:</b> cancellable.c:133</div></div>
+<div class="ttc" id="sync__win32_8h_html"><div class="ttname"><a href="sync__win32_8h.html">sync_win32.h</a></div></div>
+<div class="ttc" id="sync_8h_html_a65a42bb7ca9072b0e7b581d715a8e777"><div class="ttname"><a href="sync_8h.html#a65a42bb7ca9072b0e7b581d715a8e777">gpr_mu_trylock</a></div><div class="ttdeci">int gpr_mu_trylock(gpr_mu *mu)</div></div>
+<div class="ttc" id="sync_8h_html_ad5d8d01509b75addc44e5a43783a826e"><div class="ttname"><a href="sync_8h.html#ad5d8d01509b75addc44e5a43783a826e">gpr_cv_wait</a></div><div class="ttdeci">int gpr_cv_wait(gpr_cv *cv, gpr_mu *mu, gpr_timespec abs_deadline)</div></div>
+<div class="ttc" id="sync_8h_html_a01d442a76ff77f64d9f898b22ea33db7"><div class="ttname"><a href="sync_8h.html#a01d442a76ff77f64d9f898b22ea33db7">gpr_event_wait</a></div><div class="ttdeci">void * gpr_event_wait(gpr_event *ev, gpr_timespec abs_deadline)</div><div class="ttdef"><b>Definition:</b> sync.c:84</div></div>
+<div class="ttc" id="time_8h_html_a9324a2b33d5d7686fb14714c59ff026d"><div class="ttname"><a href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">gpr_inf_future</a></div><div class="ttdeci">gpr_timespec gpr_inf_future(gpr_clock_type type)</div><div class="ttdef"><b>Definition:</b> time.c:83</div></div>
+<div class="ttc" id="sync_8h_html_a1b1d014640e00512f6789dacc4ff88bd"><div class="ttname"><a href="sync_8h.html#a1b1d014640e00512f6789dacc4ff88bd">gpr_event_set</a></div><div class="ttdeci">void gpr_event_set(gpr_event *ev, void *value)</div><div class="ttdef"><b>Definition:</b> sync.c:70</div></div>
+<div class="ttc" id="sync__posix_8h_html_a28731dc17a4158343f58f453a4d5e37f"><div class="ttname"><a href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a></div><div class="ttdeci">pthread_once_t gpr_once</div><div class="ttdef"><b>Definition:</b> sync_posix.h:43</div></div>
+<div class="ttc" id="structgpr__stats__counter_html"><div class="ttname"><a href="structgpr__stats__counter.html">gpr_stats_counter</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:54</div></div>
+<div class="ttc" id="sync__posix_8h_html_a1ad613e07180c0459cda9f3f6d881885"><div class="ttname"><a href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></div><div class="ttdeci">pthread_cond_t gpr_cv</div><div class="ttdef"><b>Definition:</b> sync_posix.h:42</div></div>
+<div class="ttc" id="sync_8h_html_a16694f755266c254390b041a0f069094"><div class="ttname"><a href="sync_8h.html#a16694f755266c254390b041a0f069094">gpr_mu_init</a></div><div class="ttdeci">void gpr_mu_init(gpr_mu *mu)</div></div>
+<div class="ttc" id="structgpr__cancellable_html"><div class="ttname"><a href="structgpr__cancellable.html">gpr_cancellable</a></div><div class="ttdef"><b>Definition:</b> cancellable_platform.h:50</div></div>
+<div class="ttc" id="sync_8h_html_a76b570c831b14070c37e708dde91b795"><div class="ttname"><a href="sync_8h.html#a76b570c831b14070c37e708dde91b795">gpr_unref</a></div><div class="ttdeci">int gpr_unref(gpr_refcount *r)</div><div class="ttdef"><b>Definition:</b> sync.c:120</div></div>
+<div class="ttc" id="structgpr__mu_html"><div class="ttname"><a href="structgpr__mu.html">gpr_mu</a></div><div class="ttdef"><b>Definition:</b> sync_win32.h:39</div></div>
+<div class="ttc" id="sync_8h_html_aa82b7172b992bd33bd6fd4b4dc89e338"><div class="ttname"><a href="sync_8h.html#aa82b7172b992bd33bd6fd4b4dc89e338">gpr_cancellable_destroy</a></div><div class="ttdeci">void gpr_cancellable_destroy(gpr_cancellable *c)</div><div class="ttdef"><b>Definition:</b> cancellable.c:49</div></div>
+<div class="ttc" id="sync_8h_html_a91370fd0eb76bc1323c80815ad6e9cff"><div class="ttname"><a href="sync_8h.html#a91370fd0eb76bc1323c80815ad6e9cff">gpr_mu_unlock</a></div><div class="ttdeci">void gpr_mu_unlock(gpr_mu *mu)</div></div>
+<div class="ttc" id="sync_8h_html_aba119d0b92b0bd50e6efa9e2abe07a5f"><div class="ttname"><a href="sync_8h.html#aba119d0b92b0bd50e6efa9e2abe07a5f">gpr_cv_signal</a></div><div class="ttdeci">void gpr_cv_signal(gpr_cv *cv)</div></div>
+<div class="ttc" id="sync_8h_html_aec0b0e9b9f084550cdec300da1f31add"><div class="ttname"><a href="sync_8h.html#aec0b0e9b9f084550cdec300da1f31add">gpr_cancellable_init</a></div><div class="ttdeci">void gpr_cancellable_init(gpr_cancellable *c)</div><div class="ttdef"><b>Definition:</b> cancellable.c:40</div></div>
+<div class="ttc" id="sync_8h_html_a895fb73161d2dd1fa19be10d5395001c"><div class="ttname"><a href="sync_8h.html#a895fb73161d2dd1fa19be10d5395001c">gpr_cancellable_cancel</a></div><div class="ttdeci">void gpr_cancellable_cancel(gpr_cancellable *c)</div><div class="ttdef"><b>Definition:</b> cancellable.c:81</div></div>
+<div class="ttc" id="cancellable__platform_8h_html"><div class="ttname"><a href="cancellable__platform_8h.html">cancellable_platform.h</a></div></div>
+<div class="ttc" id="sync_8h_html_ad24aac3d86113f0fcffc6c4595da9cb2"><div class="ttname"><a href="sync_8h.html#ad24aac3d86113f0fcffc6c4595da9cb2">gpr_cv_init</a></div><div class="ttdeci">void gpr_cv_init(gpr_cv *cv)</div></div>
+<div class="ttc" id="sync_8h_html_a76b8e5de6e1baa4fd66c014417dc0a30"><div class="ttname"><a href="sync_8h.html#a76b8e5de6e1baa4fd66c014417dc0a30">gpr_stats_init</a></div><div class="ttdeci">void gpr_stats_init(gpr_stats_counter *c, gpr_intptr n)</div><div class="ttdef"><b>Definition:</b> sync.c:126</div></div>
+<div class="ttc" id="sync_8h_html_ae048c7e762b723821e35a07fd0d85e22"><div class="ttname"><a href="sync_8h.html#ae048c7e762b723821e35a07fd0d85e22">gpr_event_cancellable_wait</a></div><div class="ttdeci">void * gpr_event_cancellable_wait(gpr_event *ev, gpr_timespec abs_deadline, gpr_cancellable *c)</div><div class="ttdef"><b>Definition:</b> sync.c:97</div></div>
+<div class="ttc" id="sync_8h_html_a93f37cd27964fda51acd4cd8e6737922"><div class="ttname"><a href="sync_8h.html#a93f37cd27964fda51acd4cd8e6737922">gpr_event_init</a></div><div class="ttdeci">void gpr_event_init(gpr_event *ev)</div><div class="ttdef"><b>Definition:</b> sync.c:65</div></div>
+<div class="ttc" id="sync_8h_html_a52ae2524c7dade8cecb9f01ff4792c9e"><div class="ttname"><a href="sync_8h.html#a52ae2524c7dade8cecb9f01ff4792c9e">gpr_mu_destroy</a></div><div class="ttdeci">void gpr_mu_destroy(gpr_mu *mu)</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="structgpr__event_html"><div class="ttname"><a href="structgpr__event.html">gpr_event</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:41</div></div>
+<div class="ttc" id="sync_8h_html_ad5a4b4a5844668d188db89dda6ad205b"><div class="ttname"><a href="sync_8h.html#ad5a4b4a5844668d188db89dda6ad205b">gpr_cv_broadcast</a></div><div class="ttdeci">void gpr_cv_broadcast(gpr_cv *cv)</div></div>
+<div class="ttc" id="sync_8h_html_a235584f36572b5410b042ee63cb0740b"><div class="ttname"><a href="sync_8h.html#a235584f36572b5410b042ee63cb0740b">gpr_ref_init</a></div><div class="ttdeci">void gpr_ref_init(gpr_refcount *r, int n)</div><div class="ttdef"><b>Definition:</b> sync.c:112</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sync__generic_8h.html b/doc/ref/core.internal/html/sync__generic_8h.html
new file mode 100644
index 0000000000..3095f80885
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__generic_8h.html
@@ -0,0 +1,147 @@
+<!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: include/grpc/support/sync_generic.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">sync_generic.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="atm_8h_source.html">grpc/support/atm.h</a>&gt;</code><br/>
+</div>
+<p><a href="sync__generic_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__event.html">gpr_event</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__refcount.html">gpr_refcount</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__stats__counter.html">gpr_stats_counter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a6f38fe7692eaa6663c1f79ff5847c050"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__generic_8h.html#a6f38fe7692eaa6663c1f79ff5847c050">GPR_EVENT_INIT</a>&#160;&#160;&#160;{ 0 }</td></tr>
+<tr class="separator:a6f38fe7692eaa6663c1f79ff5847c050"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada230498c8e2aca51e9349709e70e1ef"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__generic_8h.html#ada230498c8e2aca51e9349709e70e1ef">GPR_STATS_INIT</a>&#160;&#160;&#160;{ 0 }</td></tr>
+<tr class="separator:ada230498c8e2aca51e9349709e70e1ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a6f38fe7692eaa6663c1f79ff5847c050"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_EVENT_INIT&#160;&#160;&#160;{ 0 }</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ada230498c8e2aca51e9349709e70e1ef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_STATS_INIT&#160;&#160;&#160;{ 0 }</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sync__generic_8h_source.html b/doc/ref/core.internal/html/sync__generic_8h_source.html
new file mode 100644
index 0000000000..f4c6cfb83e
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__generic_8h_source.html
@@ -0,0 +1,168 @@
+<!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: include/grpc/support/sync_generic.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_generic.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync__generic_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SYNC_GENERIC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SYNC_GENERIC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span><span class="comment">/* Generic type defintions for gpr_sync. */</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="atm_8h.html">grpc/support/atm.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* gpr_event */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgpr__event.html"> 41</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9"> 42</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9">state</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;} <a class="code" href="structgpr__event.html">gpr_event</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="sync__generic_8h.html#a6f38fe7692eaa6663c1f79ff5847c050"> 45</a></span>&#160;<span class="preprocessor">#define GPR_EVENT_INIT \</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"> { 0 }</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* gpr_refcount */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structgpr__refcount.html"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470"> 50</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470">count</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <a class="code" href="structgpr__refcount.html">gpr_refcount</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* gpr_stats_counter */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgpr__stats__counter.html"> 54</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a"> 55</a></span>&#160; <a class="code" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> <a class="code" href="structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a">value</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;} <a class="code" href="structgpr__stats__counter.html">gpr_stats_counter</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="sync__generic_8h.html#ada230498c8e2aca51e9349709e70e1ef"> 58</a></span>&#160;<span class="preprocessor">#define GPR_STATS_INIT \</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"> { 0 }</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_SYNC_GENERIC_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgpr__refcount_html"><div class="ttname"><a href="structgpr__refcount.html">gpr_refcount</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:49</div></div>
+<div class="ttc" id="atm_8h_html"><div class="ttname"><a href="atm_8h.html">atm.h</a></div></div>
+<div class="ttc" id="structgpr__refcount_html_ae1e2d58344b59ff6c0db0dc4f2953470"><div class="ttname"><a href="structgpr__refcount.html#ae1e2d58344b59ff6c0db0dc4f2953470">gpr_refcount::count</a></div><div class="ttdeci">gpr_atm count</div><div class="ttdef"><b>Definition:</b> sync_generic.h:50</div></div>
+<div class="ttc" id="structgpr__event_html_a9eb43867719fcdf48f33df11cd138be9"><div class="ttname"><a href="structgpr__event.html#a9eb43867719fcdf48f33df11cd138be9">gpr_event::state</a></div><div class="ttdeci">gpr_atm state</div><div class="ttdef"><b>Definition:</b> sync_generic.h:42</div></div>
+<div class="ttc" id="structgpr__stats__counter_html"><div class="ttname"><a href="structgpr__stats__counter.html">gpr_stats_counter</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:54</div></div>
+<div class="ttc" id="structgpr__stats__counter_html_ab9338ff7b5fd9f0c0830a8a788aab04a"><div class="ttname"><a href="structgpr__stats__counter.html#ab9338ff7b5fd9f0c0830a8a788aab04a">gpr_stats_counter::value</a></div><div class="ttdeci">gpr_atm value</div><div class="ttdef"><b>Definition:</b> sync_generic.h:55</div></div>
+<div class="ttc" id="structgpr__event_html"><div class="ttname"><a href="structgpr__event.html">gpr_event</a></div><div class="ttdef"><b>Definition:</b> sync_generic.h:41</div></div>
+<div class="ttc" id="atm__gcc__atomic_8h_html_aa9e4b16c09888debe306f14e8090b1cc"><div class="ttname"><a href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a></div><div class="ttdeci">gpr_intptr gpr_atm</div><div class="ttdef"><b>Definition:</b> atm_gcc_atomic.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sync__posix_8c.html b/doc/ref/core.internal/html/sync__posix_8c.html
new file mode 100644
index 0000000000..0134159016
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/sync_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/sync__posix_8h.html b/doc/ref/core.internal/html/sync__posix_8h.html
new file mode 100644
index 0000000000..d663bafc8d
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__posix_8h.html
@@ -0,0 +1,171 @@
+<!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: include/grpc/support/sync_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">sync_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync__generic_8h_source.html">grpc/support/sync_generic.h</a>&gt;</code><br/>
+<code>#include &lt;pthread.h&gt;</code><br/>
+</div>
+<p><a href="sync__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8edd7eb4f6860a4f79defbad49c35666"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666">GPR_ONCE_INIT</a>&#160;&#160;&#160;PTHREAD_ONCE_INIT</td></tr>
+<tr class="separator:a8edd7eb4f6860a4f79defbad49c35666"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aa66fb6a11304ef6759d76f84a34ee28f"><td class="memItemLeft" align="right" valign="top">typedef pthread_mutex_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">gpr_mu</a></td></tr>
+<tr class="separator:aa66fb6a11304ef6759d76f84a34ee28f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1ad613e07180c0459cda9f3f6d881885"><td class="memItemLeft" align="right" valign="top">typedef pthread_cond_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></td></tr>
+<tr class="separator:a1ad613e07180c0459cda9f3f6d881885"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28731dc17a4158343f58f453a4d5e37f"><td class="memItemLeft" align="right" valign="top">typedef pthread_once_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a></td></tr>
+<tr class="separator:a28731dc17a4158343f58f453a4d5e37f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a8edd7eb4f6860a4f79defbad49c35666"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ONCE_INIT&#160;&#160;&#160;PTHREAD_ONCE_INIT</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a1ad613e07180c0459cda9f3f6d881885"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef pthread_cond_t <a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa66fb6a11304ef6759d76f84a34ee28f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef pthread_mutex_t <a class="el" href="structgpr__mu.html">gpr_mu</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a28731dc17a4158343f58f453a4d5e37f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef pthread_once_t <a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sync__posix_8h_source.html b/doc/ref/core.internal/html/sync__posix_8h_source.html
new file mode 100644
index 0000000000..8ba372c999
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__posix_8h_source.html
@@ -0,0 +1,150 @@
+<!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: include/grpc/support/sync_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SYNC_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SYNC_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync__generic_8h.html">grpc/support/sync_generic.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f"> 41</a></span>&#160;<span class="keyword">typedef</span> pthread_mutex_t <a class="code" href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">gpr_mu</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885"> 42</a></span>&#160;<span class="keyword">typedef</span> pthread_cond_t <a class="code" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f"> 43</a></span>&#160;<span class="keyword">typedef</span> pthread_once_t <a class="code" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666"> 45</a></span>&#160;<span class="preprocessor">#define GPR_ONCE_INIT PTHREAD_ONCE_INIT</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_SYNC_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="sync__generic_8h_html"><div class="ttname"><a href="sync__generic_8h.html">sync_generic.h</a></div></div>
+<div class="ttc" id="sync__posix_8h_html_aa66fb6a11304ef6759d76f84a34ee28f"><div class="ttname"><a href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">gpr_mu</a></div><div class="ttdeci">pthread_mutex_t gpr_mu</div><div class="ttdef"><b>Definition:</b> sync_posix.h:41</div></div>
+<div class="ttc" id="sync__posix_8h_html_a28731dc17a4158343f58f453a4d5e37f"><div class="ttname"><a href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a></div><div class="ttdeci">pthread_once_t gpr_once</div><div class="ttdef"><b>Definition:</b> sync_posix.h:43</div></div>
+<div class="ttc" id="sync__posix_8h_html_a1ad613e07180c0459cda9f3f6d881885"><div class="ttname"><a href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></div><div class="ttdeci">pthread_cond_t gpr_cv</div><div class="ttdef"><b>Definition:</b> sync_posix.h:42</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sync__win32_8c.html b/doc/ref/core.internal/html/sync__win32_8c.html
new file mode 100644
index 0000000000..e36709efa8
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/sync_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/sync__win32_8h.html b/doc/ref/core.internal/html/sync__win32_8h.html
new file mode 100644
index 0000000000..b39723891b
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__win32_8h.html
@@ -0,0 +1,162 @@
+<!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: include/grpc/support/sync_win32.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">sync_win32.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync__generic_8h_source.html">grpc/support/sync_generic.h</a>&gt;</code><br/>
+</div>
+<p><a href="sync__win32_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__mu.html">gpr_mu</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8edd7eb4f6860a4f79defbad49c35666"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__win32_8h.html#a8edd7eb4f6860a4f79defbad49c35666">GPR_ONCE_INIT</a>&#160;&#160;&#160;INIT_ONCE_STATIC_INIT</td></tr>
+<tr class="separator:a8edd7eb4f6860a4f79defbad49c35666"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a81241bed6e85e9b106a1311060a04d9d"><td class="memItemLeft" align="right" valign="top">typedef CONDITION_VARIABLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d">gpr_cv</a></td></tr>
+<tr class="separator:a81241bed6e85e9b106a1311060a04d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a752a459fe345c616c26b5a556ccc13"><td class="memItemLeft" align="right" valign="top">typedef INIT_ONCE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13">gpr_once</a></td></tr>
+<tr class="separator:a6a752a459fe345c616c26b5a556ccc13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a8edd7eb4f6860a4f79defbad49c35666"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ONCE_INIT&#160;&#160;&#160;INIT_ONCE_STATIC_INIT</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a81241bed6e85e9b106a1311060a04d9d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef CONDITION_VARIABLE <a class="el" href="sync__posix_8h.html#a1ad613e07180c0459cda9f3f6d881885">gpr_cv</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6a752a459fe345c616c26b5a556ccc13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef INIT_ONCE <a class="el" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/sync__win32_8h_source.html b/doc/ref/core.internal/html/sync__win32_8h_source.html
new file mode 100644
index 0000000000..b70f3aca69
--- /dev/null
+++ b/doc/ref/core.internal/html/sync__win32_8h_source.html
@@ -0,0 +1,154 @@
+<!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: include/grpc/support/sync_win32.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_win32.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync__win32_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_SYNC_WIN32_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_SYNC_WIN32_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync__generic_8h.html">grpc/support/sync_generic.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structgpr__mu.html"> 39</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c"> 40</a></span>&#160; CRITICAL_SECTION <a class="code" href="structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c">cs</a>; <span class="comment">/* Not an SRWLock until Vista is unsupported */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342"> 41</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342">locked</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;} <a class="code" href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">gpr_mu</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d"> 44</a></span>&#160;<span class="keyword">typedef</span> CONDITION_VARIABLE <a class="code" href="sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d">gpr_cv</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13"> 46</a></span>&#160;<span class="keyword">typedef</span> INIT_ONCE <a class="code" href="sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13">gpr_once</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="sync__win32_8h.html#a8edd7eb4f6860a4f79defbad49c35666"> 47</a></span>&#160;<span class="preprocessor">#define GPR_ONCE_INIT INIT_ONCE_STATIC_INIT</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_SYNC_WIN32_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="sync__generic_8h_html"><div class="ttname"><a href="sync__generic_8h.html">sync_generic.h</a></div></div>
+<div class="ttc" id="sync__posix_8h_html_aa66fb6a11304ef6759d76f84a34ee28f"><div class="ttname"><a href="sync__posix_8h.html#aa66fb6a11304ef6759d76f84a34ee28f">gpr_mu</a></div><div class="ttdeci">pthread_mutex_t gpr_mu</div><div class="ttdef"><b>Definition:</b> sync_posix.h:41</div></div>
+<div class="ttc" id="sync__win32_8h_html_a81241bed6e85e9b106a1311060a04d9d"><div class="ttname"><a href="sync__win32_8h.html#a81241bed6e85e9b106a1311060a04d9d">gpr_cv</a></div><div class="ttdeci">CONDITION_VARIABLE gpr_cv</div><div class="ttdef"><b>Definition:</b> sync_win32.h:44</div></div>
+<div class="ttc" id="structgpr__mu_html_ac16a7b74cd7175a34b776215fd357342"><div class="ttname"><a href="structgpr__mu.html#ac16a7b74cd7175a34b776215fd357342">gpr_mu::locked</a></div><div class="ttdeci">int locked</div><div class="ttdef"><b>Definition:</b> sync_win32.h:41</div></div>
+<div class="ttc" id="sync__win32_8h_html_a6a752a459fe345c616c26b5a556ccc13"><div class="ttname"><a href="sync__win32_8h.html#a6a752a459fe345c616c26b5a556ccc13">gpr_once</a></div><div class="ttdeci">INIT_ONCE gpr_once</div><div class="ttdef"><b>Definition:</b> sync_win32.h:46</div></div>
+<div class="ttc" id="structgpr__mu_html_abab5a72a693be27488fb7a9b2cb23e5c"><div class="ttname"><a href="structgpr__mu.html#abab5a72a693be27488fb7a9b2cb23e5c">gpr_mu::cs</a></div><div class="ttdeci">CRITICAL_SECTION cs</div><div class="ttdef"><b>Definition:</b> sync_win32.h:40</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/sync_off.png b/doc/ref/core.internal/html/sync_off.png
new file mode 100644
index 0000000000..3b443fc628
--- /dev/null
+++ b/doc/ref/core.internal/html/sync_off.png
Binary files differ
diff --git a/doc/ref/core.internal/html/sync_on.png b/doc/ref/core.internal/html/sync_on.png
new file mode 100644
index 0000000000..e08320fb64
--- /dev/null
+++ b/doc/ref/core.internal/html/sync_on.png
Binary files differ
diff --git a/doc/ref/core.internal/html/tab_a.png b/doc/ref/core.internal/html/tab_a.png
new file mode 100644
index 0000000000..3b725c41c5
--- /dev/null
+++ b/doc/ref/core.internal/html/tab_a.png
Binary files differ
diff --git a/doc/ref/core.internal/html/tab_b.png b/doc/ref/core.internal/html/tab_b.png
new file mode 100644
index 0000000000..e2b4a8638c
--- /dev/null
+++ b/doc/ref/core.internal/html/tab_b.png
Binary files differ
diff --git a/doc/ref/core.internal/html/tab_h.png b/doc/ref/core.internal/html/tab_h.png
new file mode 100644
index 0000000000..fd5cb70548
--- /dev/null
+++ b/doc/ref/core.internal/html/tab_h.png
Binary files differ
diff --git a/doc/ref/core.internal/html/tab_s.png b/doc/ref/core.internal/html/tab_s.png
new file mode 100644
index 0000000000..ab478c95b6
--- /dev/null
+++ b/doc/ref/core.internal/html/tab_s.png
Binary files differ
diff --git a/doc/ref/core.internal/html/tabs.css b/doc/ref/core.internal/html/tabs.css
new file mode 100644
index 0000000000..9cf578f23a
--- /dev/null
+++ b/doc/ref/core.internal/html/tabs.css
@@ -0,0 +1,60 @@
+.tabs, .tabs2, .tabs3 {
+ background-image: url('tab_b.png');
+ width: 100%;
+ z-index: 101;
+ font-size: 13px;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+.tabs2 {
+ font-size: 10px;
+}
+.tabs3 {
+ font-size: 9px;
+}
+
+.tablist {
+ margin: 0;
+ padding: 0;
+ display: table;
+}
+
+.tablist li {
+ float: left;
+ display: table-cell;
+ background-image: url('tab_b.png');
+ line-height: 36px;
+ list-style: none;
+}
+
+.tablist a {
+ display: block;
+ padding: 0 20px;
+ font-weight: bold;
+ background-image:url('tab_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color: #283A5D;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+ outline: none;
+}
+
+.tabs3 .tablist a {
+ padding: 0 10px;
+}
+
+.tablist a:hover {
+ background-image: url('tab_h.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+ text-decoration: none;
+}
+
+.tablist li.current a {
+ background-image: url('tab_a.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
diff --git a/doc/ref/core.internal/html/tcp__client_8h.html b/doc/ref/core.internal/html/tcp__client_8h.html
new file mode 100644
index 0000000000..95fb2a096b
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__client_8h.html
@@ -0,0 +1,164 @@
+<!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: src/core/iomgr/tcp_client.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">tcp_client.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="pollset__set_8h_source.html">src/core/iomgr/pollset_set.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="sockaddr_8h_source.html">src/core/iomgr/sockaddr.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="tcp__client_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a086207583509b040c4fff779333468cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__client_8h.html#a086207583509b040c4fff779333468cd">grpc_tcp_client_connect</a> (void(*cb)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *tcp), void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *interested_parties, const struct sockaddr *addr, int addr_len, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> deadline)</td></tr>
+<tr class="separator:a086207583509b040c4fff779333468cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a086207583509b040c4fff779333468cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tcp_client_connect </td>
+ <td>(</td>
+ <td class="paramtype">void(*)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *tcp)&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *&#160;</td>
+ <td class="paramname"><em>interested_parties</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const struct sockaddr *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>addr_len</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tcp__client_8h_source.html b/doc/ref/core.internal/html/tcp__client_8h_source.html
new file mode 100644
index 0000000000..ef429d924a
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__client_8h_source.html
@@ -0,0 +1,160 @@
+<!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: src/core/iomgr/tcp_client.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_client.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tcp__client_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_TCP_CLIENT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_TCP_CLIENT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset__set_8h.html">src/core/iomgr/pollset_set.h</a>&quot;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="sockaddr_8h.html">src/core/iomgr/sockaddr.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* Asynchronously connect to an address (specified as (addr, len)), and call</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> cb with arg and the completed connection when done (or call cb with arg and</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> NULL on failure). </span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> interested_parties points to a set of pollsets that would be interested</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> in this connection being established (in order to continue their work) */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="tcp__client_8h.html#a086207583509b040c4fff779333468cd">grpc_tcp_client_connect</a>(<span class="keywordtype">void</span> (*cb)(<span class="keywordtype">void</span> *<a class="code" href="structarg.html">arg</a>, <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *tcp),</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">void</span> *arg, <a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *interested_parties,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">const</span> <span class="keyword">struct</span> sockaddr *addr, <span class="keywordtype">int</span> addr_len,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_TCP_CLIENT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="sockaddr_8h_html"><div class="ttname"><a href="sockaddr_8h.html">sockaddr.h</a></div></div>
+<div class="ttc" id="tcp__client_8h_html_a086207583509b040c4fff779333468cd"><div class="ttname"><a href="tcp__client_8h.html#a086207583509b040c4fff779333468cd">grpc_tcp_client_connect</a></div><div class="ttdeci">void grpc_tcp_client_connect(void(*cb)(void *arg, grpc_endpoint *tcp), void *arg, grpc_pollset_set *interested_parties, const struct sockaddr *addr, int addr_len, gpr_timespec deadline)</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="pollset__set_8h_html"><div class="ttname"><a href="pollset__set_8h.html">pollset_set.h</a></div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tcp__client__posix_8c.html b/doc/ref/core.internal/html/tcp__client__posix_8c.html
new file mode 100644
index 0000000000..15b89745ee
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__client__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/tcp_client_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_client_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/tcp__client__windows_8c.html b/doc/ref/core.internal/html/tcp__client__windows_8c.html
new file mode 100644
index 0000000000..25c6c1252f
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__client__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/tcp_client_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_client_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/tcp__posix_8c.html b/doc/ref/core.internal/html/tcp__posix_8c.html
new file mode 100644
index 0000000000..7f1e8acfee
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/tcp_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/tcp__posix_8h.html b/doc/ref/core.internal/html/tcp__posix_8h.html
new file mode 100644
index 0000000000..f42d23e9d2
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__posix_8h.html
@@ -0,0 +1,182 @@
+<!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: src/core/iomgr/tcp_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">tcp_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="fd__posix_8h_source.html">src/core/iomgr/fd_posix.h</a>&quot;</code><br/>
+</div>
+<p><a href="tcp__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a1f91c3aec64a436d29051c8d415b1053"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__posix_8h.html#a1f91c3aec64a436d29051c8d415b1053">GRPC_TCP_DEFAULT_READ_SLICE_SIZE</a>&#160;&#160;&#160;8192</td></tr>
+<tr class="separator:a1f91c3aec64a436d29051c8d415b1053"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aeb6bcf2634d72073806a1e6ab12bbc05"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05">grpc_tcp_create</a> (<a class="el" href="structgrpc__fd.html">grpc_fd</a> *fd, size_t read_slice_size, const char *peer_string)</td></tr>
+<tr class="separator:aeb6bcf2634d72073806a1e6ab12bbc05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a72c0faa3524bfe76522d6ada920707eb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb">grpc_tcp_trace</a></td></tr>
+<tr class="separator:a72c0faa3524bfe76522d6ada920707eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a1f91c3aec64a436d29051c8d415b1053"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_TCP_DEFAULT_READ_SLICE_SIZE&#160;&#160;&#160;8192</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aeb6bcf2634d72073806a1e6ab12bbc05"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_tcp_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__fd.html">grpc_fd</a> *&#160;</td>
+ <td class="paramname"><em>fd</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>read_slice_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>peer_string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a72c0faa3524bfe76522d6ada920707eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_tcp_trace</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tcp__posix_8h_source.html b/doc/ref/core.internal/html/tcp__posix_8h_source.html
new file mode 100644
index 0000000000..a6c952f1d3
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__posix_8h_source.html
@@ -0,0 +1,164 @@
+<!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: src/core/iomgr/tcp_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tcp__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_TCP_POSIX_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_TCP_POSIX_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span><span class="comment">/*</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> Low level TCP &quot;bottom half&quot; implementation, for use by transports built on</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> top of a TCP connection.</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> Note that this file does not (yet) include APIs for creating the socket in</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> the first place.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> All calls passing slice transfer ownership of a slice refcount unless</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> otherwise specified.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="fd__posix_8h.html">src/core/iomgr/fd_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="tcp__posix_8h.html#a1f91c3aec64a436d29051c8d415b1053"> 50</a></span>&#160;<span class="preprocessor">#define GRPC_TCP_DEFAULT_READ_SLICE_SIZE 8192</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb">grpc_tcp_trace</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* Create a tcp endpoint given a file desciptor and a read slice size.</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> Takes ownership of fd. */</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05">grpc_tcp_create</a>(<a class="code" href="structgrpc__fd.html">grpc_fd</a> *fd, <span class="keywordtype">size_t</span> read_slice_size,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *peer_string);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_TCP_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="tcp__posix_8h_html_a72c0faa3524bfe76522d6ada920707eb"><div class="ttname"><a href="tcp__posix_8h.html#a72c0faa3524bfe76522d6ada920707eb">grpc_tcp_trace</a></div><div class="ttdeci">int grpc_tcp_trace</div></div>
+<div class="ttc" id="tcp__posix_8h_html_aeb6bcf2634d72073806a1e6ab12bbc05"><div class="ttname"><a href="tcp__posix_8h.html#aeb6bcf2634d72073806a1e6ab12bbc05">grpc_tcp_create</a></div><div class="ttdeci">grpc_endpoint * grpc_tcp_create(grpc_fd *fd, size_t read_slice_size, const char *peer_string)</div></div>
+<div class="ttc" id="fd__posix_8h_html"><div class="ttname"><a href="fd__posix_8h.html">fd_posix.h</a></div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="structgrpc__fd_html"><div class="ttname"><a href="structgrpc__fd.html">grpc_fd</a></div><div class="ttdef"><b>Definition:</b> fd_posix.h:52</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tcp__server_8h.html b/doc/ref/core.internal/html/tcp__server_8h.html
new file mode 100644
index 0000000000..3e08f1aea8
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__server_8h.html
@@ -0,0 +1,302 @@
+<!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: src/core/iomgr/tcp_server.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">tcp_server.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+</div>
+<p><a href="tcp__server_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a441eeedb58bf1fe1b656292b3c919e6d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a></td></tr>
+<tr class="separator:a441eeedb58bf1fe1b656292b3c919e6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78c33e7fded0e0a871be12e9f6c9a4c9"><td class="memItemLeft" align="right" valign="top">typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">grpc_tcp_server_cb</a> )(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td></tr>
+<tr class="separator:a78c33e7fded0e0a871be12e9f6c9a4c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9acd9c36ef686dd76283b1a92954aff0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0">grpc_tcp_server_create</a> (void)</td></tr>
+<tr class="separator:a9acd9c36ef686dd76283b1a92954aff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a552695c278adc52ba5433da5c57d5bd7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7">grpc_tcp_server_start</a> (<a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *server, <a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets, size_t pollset_count, <a class="el" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">grpc_tcp_server_cb</a> cb, void *cb_arg)</td></tr>
+<tr class="separator:a552695c278adc52ba5433da5c57d5bd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59a2b20ad1fc958839512edd26a598ae"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae">grpc_tcp_server_add_port</a> (<a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *s, const void *addr, int addr_len)</td></tr>
+<tr class="separator:a59a2b20ad1fc958839512edd26a598ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd39e961ac244633e016980551ac7ed3"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3">grpc_tcp_server_get_fd</a> (<a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *s, unsigned index)</td></tr>
+<tr class="separator:afd39e961ac244633e016980551ac7ed3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c674f461e0b92ebd6bb358eac04b772"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772">grpc_tcp_server_destroy</a> (<a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *server, void(*shutdown_done)(void *shutdown_done_arg), void *shutdown_done_arg)</td></tr>
+<tr class="separator:a4c674f461e0b92ebd6bb358eac04b772"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a441eeedb58bf1fe1b656292b3c919e6d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> <a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78c33e7fded0e0a871be12e9f6c9a4c9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef void(* grpc_tcp_server_cb)(void *<a class="el" href="structarg.html">arg</a>, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a59a2b20ad1fc958839512edd26a598ae"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_tcp_server_add_port </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>addr_len</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9acd9c36ef686dd76283b1a92954aff0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a>* grpc_tcp_server_create </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4c674f461e0b92ebd6bb358eac04b772"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tcp_server_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *shutdown_done_arg)&#160;</td>
+ <td class="paramname"><em>shutdown_done</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>shutdown_done_arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afd39e961ac244633e016980551ac7ed3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_tcp_server_get_fd </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned&#160;</td>
+ <td class="paramname"><em>index</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a552695c278adc52ba5433da5c57d5bd7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tcp_server_start </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *&#160;</td>
+ <td class="paramname"><em>server</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__pollset.html">grpc_pollset</a> **&#160;</td>
+ <td class="paramname"><em>pollsets</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>pollset_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">grpc_tcp_server_cb</a>&#160;</td>
+ <td class="paramname"><em>cb</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>cb_arg</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tcp__server_8h_source.html b/doc/ref/core.internal/html/tcp__server_8h_source.html
new file mode 100644
index 0000000000..f74364d4c7
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__server_8h_source.html
@@ -0,0 +1,188 @@
+<!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: src/core/iomgr/tcp_server.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_server.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tcp__server_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_TCP_SERVER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_TCP_SERVER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Forward decl of grpc_tcp_server */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d"> 40</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> <a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* New server callback: tcp is the newly connected tcp connection */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9"> 43</a></span>&#160;<span class="keyword">typedef</span> void (*<a class="code" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">grpc_tcp_server_cb</a>)(<span class="keywordtype">void</span> *<a class="code" href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a>, <a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *ep);</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Create a server, initially not bound to any ports */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *<a class="code" href="tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0">grpc_tcp_server_create</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* Start listening to bound ports */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keywordtype">void</span> <a class="code" href="tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7">grpc_tcp_server_start</a>(<a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *server, <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> **pollsets,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">size_t</span> pollset_count, <a class="code" href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">grpc_tcp_server_cb</a> cb,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">void</span> *cb_arg);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Add a port to the server, returning port number on success, or negative</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> on failure.</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> The :: and 0.0.0.0 wildcard addresses are treated identically, accepting</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> both IPv4 and IPv6 connections, but :: is the preferred style. This usually</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> creates one socket, but possibly two on systems which support IPv6,</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> but not dualstack sockets.</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> For raw access to the underlying sockets, see grpc_tcp_server_get_fd(). */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment">/* TODO(ctiller): deprecate this, and make grpc_tcp_server_add_ports to handle</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> all of the multiple socket port matching logic in one place */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keywordtype">int</span> <a class="code" href="tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae">grpc_tcp_server_add_port</a>(<a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *s, <span class="keyword">const</span> <span class="keywordtype">void</span> *addr,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">int</span> addr_len);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment">/* Returns the file descriptor of the Nth listening socket on this server,</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> or -1 if the index is out of bounds.</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> The file descriptor remains owned by the server, and will be cleaned</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> up when grpc_tcp_server_destroy is called. */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">int</span> <a class="code" href="tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3">grpc_tcp_server_get_fd</a>(<a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *s, <span class="keywordtype">unsigned</span> index);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keywordtype">void</span> <a class="code" href="tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772">grpc_tcp_server_destroy</a>(<a class="code" href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a> *server,</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">void</span> (*shutdown_done)(<span class="keywordtype">void</span> *shutdown_done_arg),</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> *shutdown_done_arg);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_TCP_SERVER_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="tcp__server_8h_html_a4c674f461e0b92ebd6bb358eac04b772"><div class="ttname"><a href="tcp__server_8h.html#a4c674f461e0b92ebd6bb358eac04b772">grpc_tcp_server_destroy</a></div><div class="ttdeci">void grpc_tcp_server_destroy(grpc_tcp_server *server, void(*shutdown_done)(void *shutdown_done_arg), void *shutdown_done_arg)</div></div>
+<div class="ttc" id="tcp__server_8h_html_a9acd9c36ef686dd76283b1a92954aff0"><div class="ttname"><a href="tcp__server_8h.html#a9acd9c36ef686dd76283b1a92954aff0">grpc_tcp_server_create</a></div><div class="ttdeci">grpc_tcp_server * grpc_tcp_server_create(void)</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="tcp__server_8h_html_a78c33e7fded0e0a871be12e9f6c9a4c9"><div class="ttname"><a href="tcp__server_8h.html#a78c33e7fded0e0a871be12e9f6c9a4c9">grpc_tcp_server_cb</a></div><div class="ttdeci">void(* grpc_tcp_server_cb)(void *arg, grpc_endpoint *ep)</div><div class="ttdef"><b>Definition:</b> tcp_server.h:43</div></div>
+<div class="ttc" id="tcp__server_8h_html_a552695c278adc52ba5433da5c57d5bd7"><div class="ttname"><a href="tcp__server_8h.html#a552695c278adc52ba5433da5c57d5bd7">grpc_tcp_server_start</a></div><div class="ttdeci">void grpc_tcp_server_start(grpc_tcp_server *server, grpc_pollset **pollsets, size_t pollset_count, grpc_tcp_server_cb cb, void *cb_arg)</div></div>
+<div class="ttc" id="cmdline_8c_html_af240efb36795b416de0779ad5d5159e4"><div class="ttname"><a href="cmdline_8c.html#af240efb36795b416de0779ad5d5159e4">arg</a></div><div class="ttdeci">struct arg arg</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="tcp__server_8h_html_a441eeedb58bf1fe1b656292b3c919e6d"><div class="ttname"><a href="tcp__server_8h.html#a441eeedb58bf1fe1b656292b3c919e6d">grpc_tcp_server</a></div><div class="ttdeci">struct grpc_tcp_server grpc_tcp_server</div><div class="ttdef"><b>Definition:</b> tcp_server.h:40</div></div>
+<div class="ttc" id="tcp__server_8h_html_afd39e961ac244633e016980551ac7ed3"><div class="ttname"><a href="tcp__server_8h.html#afd39e961ac244633e016980551ac7ed3">grpc_tcp_server_get_fd</a></div><div class="ttdeci">int grpc_tcp_server_get_fd(grpc_tcp_server *s, unsigned index)</div></div>
+<div class="ttc" id="tcp__server_8h_html_a59a2b20ad1fc958839512edd26a598ae"><div class="ttname"><a href="tcp__server_8h.html#a59a2b20ad1fc958839512edd26a598ae">grpc_tcp_server_add_port</a></div><div class="ttdeci">int grpc_tcp_server_add_port(grpc_tcp_server *s, const void *addr, int addr_len)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tcp__server__posix_8c.html b/doc/ref/core.internal/html/tcp__server__posix_8c.html
new file mode 100644
index 0000000000..c9bee9af23
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__server__posix_8c.html
@@ -0,0 +1,121 @@
+<!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: src/core/iomgr/tcp_server_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">tcp_server_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a369266c24eacffb87046522897a570d5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__server__posix_8c.html#a369266c24eacffb87046522897a570d5">_GNU_SOURCE</a></td></tr>
+<tr class="separator:a369266c24eacffb87046522897a570d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a369266c24eacffb87046522897a570d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define _GNU_SOURCE</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tcp__server__windows_8c.html b/doc/ref/core.internal/html/tcp__server__windows_8c.html
new file mode 100644
index 0000000000..8c1fd05e89
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__server__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/tcp_server_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_server_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/tcp__windows_8c.html b/doc/ref/core.internal/html/tcp__windows_8c.html
new file mode 100644
index 0000000000..9272e07580
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__windows_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/tcp_windows.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_windows.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/tcp__windows_8h.html b/doc/ref/core.internal/html/tcp__windows_8h.html
new file mode 100644
index 0000000000..4e42957a74
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__windows_8h.html
@@ -0,0 +1,156 @@
+<!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: src/core/iomgr/tcp_windows.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">tcp_windows.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="endpoint_8h_source.html">src/core/iomgr/endpoint.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="socket__windows_8h_source.html">src/core/iomgr/socket_windows.h</a>&quot;</code><br/>
+</div>
+<p><a href="tcp__windows_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a206a5b2cbaacb2b87bdf38c709714483"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483">grpc_tcp_create</a> (<a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket, char *peer_string)</td></tr>
+<tr class="separator:a206a5b2cbaacb2b87bdf38c709714483"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b565022a9a4f019af40826e4937546c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c">grpc_tcp_prepare_socket</a> (SOCKET sock)</td></tr>
+<tr class="separator:a7b565022a9a4f019af40826e4937546c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a206a5b2cbaacb2b87bdf38c709714483"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_tcp_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__winsocket.html">grpc_winsocket</a> *&#160;</td>
+ <td class="paramname"><em>socket</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>peer_string</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b565022a9a4f019af40826e4937546c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_tcp_prepare_socket </td>
+ <td>(</td>
+ <td class="paramtype">SOCKET&#160;</td>
+ <td class="paramname"><em>sock</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tcp__windows_8h_source.html b/doc/ref/core.internal/html/tcp__windows_8h_source.html
new file mode 100644
index 0000000000..9b40339812
--- /dev/null
+++ b/doc/ref/core.internal/html/tcp__windows_8h_source.html
@@ -0,0 +1,162 @@
+<!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: src/core/iomgr/tcp_windows.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tcp_windows.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tcp__windows_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_TCP_WINDOWS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_TCP_WINDOWS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span><span class="comment">/*</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> Low level TCP &quot;bottom half&quot; implementation, for use by transports built on</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> top of a TCP connection.</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> Note that this file does not (yet) include APIs for creating the socket in</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> the first place.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> All calls passing slice transfer ownership of a slice refcount unless</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> otherwise specified.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="endpoint_8h.html">src/core/iomgr/endpoint.h</a>&quot;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="socket__windows_8h.html">src/core/iomgr/socket_windows.h</a>&quot;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">/* Create a tcp endpoint given a winsock handle.</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> * Takes ownership of the handle.</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<a class="code" href="structgrpc__endpoint.html">grpc_endpoint</a> *<a class="code" href="tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483">grpc_tcp_create</a>(<a class="code" href="structgrpc__winsocket.html">grpc_winsocket</a> *socket, <span class="keywordtype">char</span> *peer_string);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keywordtype">int</span> <a class="code" href="tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c">grpc_tcp_prepare_socket</a>(SOCKET sock);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_TCP_WINDOWS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="socket__windows_8h_html"><div class="ttname"><a href="socket__windows_8h.html">socket_windows.h</a></div></div>
+<div class="ttc" id="tcp__windows_8h_html_a7b565022a9a4f019af40826e4937546c"><div class="ttname"><a href="tcp__windows_8h.html#a7b565022a9a4f019af40826e4937546c">grpc_tcp_prepare_socket</a></div><div class="ttdeci">int grpc_tcp_prepare_socket(SOCKET sock)</div></div>
+<div class="ttc" id="structgrpc__winsocket_html"><div class="ttname"><a href="structgrpc__winsocket.html">grpc_winsocket</a></div><div class="ttdef"><b>Definition:</b> socket_windows.h:84</div></div>
+<div class="ttc" id="structgrpc__endpoint_html"><div class="ttname"><a href="structgrpc__endpoint.html">grpc_endpoint</a></div><div class="ttdef"><b>Definition:</b> endpoint.h:108</div></div>
+<div class="ttc" id="endpoint_8h_html"><div class="ttname"><a href="endpoint_8h.html">endpoint.h</a></div></div>
+<div class="ttc" id="tcp__windows_8h_html_a206a5b2cbaacb2b87bdf38c709714483"><div class="ttname"><a href="tcp__windows_8h.html#a206a5b2cbaacb2b87bdf38c709714483">grpc_tcp_create</a></div><div class="ttdeci">grpc_endpoint * grpc_tcp_create(grpc_winsocket *socket, char *peer_string)</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/thd_8c.html b/doc/ref/core.internal/html/thd_8c.html
new file mode 100644
index 0000000000..7380287144
--- /dev/null
+++ b/doc/ref/core.internal/html/thd_8c.html
@@ -0,0 +1,222 @@
+<!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: src/core/support/thd.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">thd.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thd_8h_source.html">grpc/support/thd.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a0944a4353780132eeab7b06e3e42291d"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="thd_8c.html#a0944a4353780132eeab7b06e3e42291da228d343354c0f2bb16c0fb1f79e71dbc">GPR_THD_JOINABLE</a> = 1
+ }</td></tr>
+<tr class="separator:a0944a4353780132eeab7b06e3e42291d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:abf8bb34ba7d26ddab0696e24b1fcc862"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8c.html#abf8bb34ba7d26ddab0696e24b1fcc862">gpr_thd_options_default</a> (void)</td></tr>
+<tr class="separator:abf8bb34ba7d26ddab0696e24b1fcc862"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a704882e5c65d29c817fae9173085e5ba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8c.html#a704882e5c65d29c817fae9173085e5ba">gpr_thd_options_set_detached</a> (<a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a704882e5c65d29c817fae9173085e5ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87ad3ff4d439450ae1318151c1526745"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8c.html#a87ad3ff4d439450ae1318151c1526745">gpr_thd_options_set_joinable</a> (<a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a87ad3ff4d439450ae1318151c1526745"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1647c2e991d269cdaf146dc33f61ce89"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8c.html#a1647c2e991d269cdaf146dc33f61ce89">gpr_thd_options_is_detached</a> (const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a1647c2e991d269cdaf146dc33f61ce89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afb8d6ad4dcc8ebcdb6a786e8f4ef442b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8c.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">gpr_thd_options_is_joinable</a> (const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:afb8d6ad4dcc8ebcdb6a786e8f4ef442b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a0944a4353780132eeab7b06e3e42291d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">anonymous enum</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a0944a4353780132eeab7b06e3e42291da228d343354c0f2bb16c0fb1f79e71dbc"></a>GPR_THD_JOINABLE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="abf8bb34ba7d26ddab0696e24b1fcc862"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> gpr_thd_options_default </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1647c2e991d269cdaf146dc33f61ce89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_thd_options_is_detached </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afb8d6ad4dcc8ebcdb6a786e8f4ef442b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_thd_options_is_joinable </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a704882e5c65d29c817fae9173085e5ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_thd_options_set_detached </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87ad3ff4d439450ae1318151c1526745"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_thd_options_set_joinable </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/thd_8h.html b/doc/ref/core.internal/html/thd_8h.html
new file mode 100644
index 0000000000..4b67f0b9b5
--- /dev/null
+++ b/doc/ref/core.internal/html/thd_8h.html
@@ -0,0 +1,300 @@
+<!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: include/grpc/support/thd.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">thd.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="thd_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a04194350e2fb18edc439ab0a9d355a72"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a></td></tr>
+<tr class="separator:a04194350e2fb18edc439ab0a9d355a72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9184cf0e025d8a9b098af6c08755b8ea"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea">gpr_thd_new</a> (<a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a> *t, void(*thd_body)(void *<a class="el" href="structarg.html">arg</a>), void *<a class="el" href="structarg.html">arg</a>, const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a9184cf0e025d8a9b098af6c08755b8ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf8bb34ba7d26ddab0696e24b1fcc862"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862">gpr_thd_options_default</a> (void)</td></tr>
+<tr class="separator:abf8bb34ba7d26ddab0696e24b1fcc862"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a704882e5c65d29c817fae9173085e5ba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a704882e5c65d29c817fae9173085e5ba">gpr_thd_options_set_detached</a> (<a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a704882e5c65d29c817fae9173085e5ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87ad3ff4d439450ae1318151c1526745"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a87ad3ff4d439450ae1318151c1526745">gpr_thd_options_set_joinable</a> (<a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a87ad3ff4d439450ae1318151c1526745"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1647c2e991d269cdaf146dc33f61ce89"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89">gpr_thd_options_is_detached</a> (const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:a1647c2e991d269cdaf146dc33f61ce89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afb8d6ad4dcc8ebcdb6a786e8f4ef442b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">gpr_thd_options_is_joinable</a> (const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *options)</td></tr>
+<tr class="separator:afb8d6ad4dcc8ebcdb6a786e8f4ef442b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c875ae5410d10d658cfb7b917909624"><td class="memItemLeft" align="right" valign="top"><a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a8c875ae5410d10d658cfb7b917909624">gpr_thd_currentid</a> (void)</td></tr>
+<tr class="separator:a8c875ae5410d10d658cfb7b917909624"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a73509f851051b4d5f02ca1982d216776"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html#a73509f851051b4d5f02ca1982d216776">gpr_thd_join</a> (<a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a> t)</td></tr>
+<tr class="separator:a73509f851051b4d5f02ca1982d216776"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a04194350e2fb18edc439ab0a9d355a72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8c875ae5410d10d658cfb7b917909624"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a> gpr_thd_currentid </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a73509f851051b4d5f02ca1982d216776"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_thd_join </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a>&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9184cf0e025d8a9b098af6c08755b8ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_thd_new </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a> *&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void(*)(void *<a class="el" href="structarg.html">arg</a>)&#160;</td>
+ <td class="paramname"><em>thd_body</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>arg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abf8bb34ba7d26ddab0696e24b1fcc862"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> gpr_thd_options_default </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1647c2e991d269cdaf146dc33f61ce89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_thd_options_is_detached </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afb8d6ad4dcc8ebcdb6a786e8f4ef442b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_thd_options_is_joinable </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a704882e5c65d29c817fae9173085e5ba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_thd_options_set_detached </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87ad3ff4d439450ae1318151c1526745"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_thd_options_set_joinable </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__thd__options.html">gpr_thd_options</a> *&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/thd_8h_source.html b/doc/ref/core.internal/html/thd_8h_source.html
new file mode 100644
index 0000000000..95a40ddf1d
--- /dev/null
+++ b/doc/ref/core.internal/html/thd_8h_source.html
@@ -0,0 +1,204 @@
+<!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: include/grpc/support/thd.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="thd_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_THD_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_THD_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span><span class="comment">/* Thread interface for GPR.</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> Types</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> gpr_thd_id a thread identifier.</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> (Currently no calls take a thread identifier.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> It exists for future extensibility.)</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> gpr_thd_options options used when creating a thread</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72"> 51</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a> <a class="code" href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">/* Thread creation options. */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgpr__thd__options.html"> 54</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c"> 55</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c">flags</a>; <span class="comment">/* Opaque field. Get and set with accessors below. */</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;} <a class="code" href="structgpr__thd__options.html">gpr_thd_options</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">/* Create a new thread running (*thd_body)(arg) and place its thread identifier</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> in *t, and return true. If there are insufficient resources, return false.</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> If options==NULL, default options are used.</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> The thread is immediately runnable, and exits when (*thd_body)() returns. */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keywordtype">int</span> <a class="code" href="thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea">gpr_thd_new</a>(gpr_thd_id *t, <span class="keywordtype">void</span> (*thd_body)(<span class="keywordtype">void</span> *<a class="code" href="structarg.html">arg</a>), <span class="keywordtype">void</span> *arg,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">const</span> <a class="code" href="structgpr__thd__options.html">gpr_thd_options</a> *options);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/* Return a gpr_thd_options struct with all fields set to defaults. */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<a class="code" href="structgpr__thd__options.html">gpr_thd_options</a> <a class="code" href="thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862">gpr_thd_options_default</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* Set the thread to become detached on startup - this is the default. */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> <a class="code" href="thd_8h.html#a704882e5c65d29c817fae9173085e5ba">gpr_thd_options_set_detached</a>(<a class="code" href="structgpr__thd__options.html">gpr_thd_options</a> *options);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">/* Set the thread to become joinable - mutually exclusive with detached. */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keywordtype">void</span> <a class="code" href="thd_8h.html#a87ad3ff4d439450ae1318151c1526745">gpr_thd_options_set_joinable</a>(<a class="code" href="structgpr__thd__options.html">gpr_thd_options</a> *options);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">/* Returns non-zero if the option detached is set. */</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keywordtype">int</span> <a class="code" href="thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89">gpr_thd_options_is_detached</a>(<span class="keyword">const</span> <a class="code" href="structgpr__thd__options.html">gpr_thd_options</a> *options);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment">/* Returns non-zero if the option joinable is set. */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">int</span> <a class="code" href="thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">gpr_thd_options_is_joinable</a>(<span class="keyword">const</span> <a class="code" href="structgpr__thd__options.html">gpr_thd_options</a> *options);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/* Returns the identifier of the current thread. */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;gpr_thd_id <a class="code" href="thd_8h.html#a8c875ae5410d10d658cfb7b917909624">gpr_thd_currentid</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* Blocks until the specified thread properly terminates.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> Calling this on a detached thread has unpredictable results. */</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keywordtype">void</span> <a class="code" href="thd_8h.html#a73509f851051b4d5f02ca1982d216776">gpr_thd_join</a>(gpr_thd_id t);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_THD_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="thd_8h_html_a87ad3ff4d439450ae1318151c1526745"><div class="ttname"><a href="thd_8h.html#a87ad3ff4d439450ae1318151c1526745">gpr_thd_options_set_joinable</a></div><div class="ttdeci">void gpr_thd_options_set_joinable(gpr_thd_options *options)</div><div class="ttdef"><b>Definition:</b> thd.c:54</div></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="thd_8h_html_a9184cf0e025d8a9b098af6c08755b8ea"><div class="ttname"><a href="thd_8h.html#a9184cf0e025d8a9b098af6c08755b8ea">gpr_thd_new</a></div><div class="ttdeci">int gpr_thd_new(gpr_thd_id *t, void(*thd_body)(void *arg), void *arg, const gpr_thd_options *options)</div></div>
+<div class="ttc" id="structarg_html"><div class="ttname"><a href="structarg.html">arg</a></div><div class="ttdef"><b>Definition:</b> cmdline.c:47</div></div>
+<div class="ttc" id="structgpr__thd__options_html_aaa966777aca6604109eb4cd6cae7984c"><div class="ttname"><a href="structgpr__thd__options.html#aaa966777aca6604109eb4cd6cae7984c">gpr_thd_options::flags</a></div><div class="ttdeci">int flags</div><div class="ttdef"><b>Definition:</b> thd.h:55</div></div>
+<div class="ttc" id="thd_8h_html_a73509f851051b4d5f02ca1982d216776"><div class="ttname"><a href="thd_8h.html#a73509f851051b4d5f02ca1982d216776">gpr_thd_join</a></div><div class="ttdeci">void gpr_thd_join(gpr_thd_id t)</div></div>
+<div class="ttc" id="thd_8h_html_afb8d6ad4dcc8ebcdb6a786e8f4ef442b"><div class="ttname"><a href="thd_8h.html#afb8d6ad4dcc8ebcdb6a786e8f4ef442b">gpr_thd_options_is_joinable</a></div><div class="ttdeci">int gpr_thd_options_is_joinable(const gpr_thd_options *options)</div><div class="ttdef"><b>Definition:</b> thd.c:63</div></div>
+<div class="ttc" id="thd_8h_html_a8c875ae5410d10d658cfb7b917909624"><div class="ttname"><a href="thd_8h.html#a8c875ae5410d10d658cfb7b917909624">gpr_thd_currentid</a></div><div class="ttdeci">gpr_thd_id gpr_thd_currentid(void)</div></div>
+<div class="ttc" id="port__platform_8h_html_a737bb95b7b58d90b4215602d36ed65b6"><div class="ttname"><a href="port__platform_8h.html#a737bb95b7b58d90b4215602d36ed65b6">gpr_uint64</a></div><div class="ttdeci">uint64_t gpr_uint64</div><div class="ttdef"><b>Definition:</b> port_platform.h:310</div></div>
+<div class="ttc" id="thd_8h_html_abf8bb34ba7d26ddab0696e24b1fcc862"><div class="ttname"><a href="thd_8h.html#abf8bb34ba7d26ddab0696e24b1fcc862">gpr_thd_options_default</a></div><div class="ttdeci">gpr_thd_options gpr_thd_options_default(void)</div><div class="ttdef"><b>Definition:</b> thd.c:44</div></div>
+<div class="ttc" id="thd_8h_html_a1647c2e991d269cdaf146dc33f61ce89"><div class="ttname"><a href="thd_8h.html#a1647c2e991d269cdaf146dc33f61ce89">gpr_thd_options_is_detached</a></div><div class="ttdeci">int gpr_thd_options_is_detached(const gpr_thd_options *options)</div><div class="ttdef"><b>Definition:</b> thd.c:58</div></div>
+<div class="ttc" id="structgpr__thd__options_html"><div class="ttname"><a href="structgpr__thd__options.html">gpr_thd_options</a></div><div class="ttdef"><b>Definition:</b> thd.h:54</div></div>
+<div class="ttc" id="thd_8h_html_a704882e5c65d29c817fae9173085e5ba"><div class="ttname"><a href="thd_8h.html#a704882e5c65d29c817fae9173085e5ba">gpr_thd_options_set_detached</a></div><div class="ttdeci">void gpr_thd_options_set_detached(gpr_thd_options *options)</div><div class="ttdef"><b>Definition:</b> thd.c:50</div></div>
+<div class="ttc" id="thd_8h_html_a04194350e2fb18edc439ab0a9d355a72"><div class="ttname"><a href="thd_8h.html#a04194350e2fb18edc439ab0a9d355a72">gpr_thd_id</a></div><div class="ttdeci">gpr_uint64 gpr_thd_id</div><div class="ttdef"><b>Definition:</b> thd.h:51</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/thd__internal_8h.html b/doc/ref/core.internal/html/thd__internal_8h.html
new file mode 100644
index 0000000000..2b8d5ed697
--- /dev/null
+++ b/doc/ref/core.internal/html/thd__internal_8h.html
@@ -0,0 +1,101 @@
+<!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: src/core/support/thd_internal.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd_internal.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="thd__internal_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/thd__internal_8h_source.html b/doc/ref/core.internal/html/thd__internal_8h_source.html
new file mode 100644
index 0000000000..cbb564597b
--- /dev/null
+++ b/doc/ref/core.internal/html/thd__internal_8h_source.html
@@ -0,0 +1,138 @@
+<!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: src/core/support/thd_internal.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd_internal.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="thd__internal_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_SUPPORT_THD_INTERNAL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_SUPPORT_THD_INTERNAL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Internal interfaces between modules within the gpr support library. */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_SUPPORT_THD_INTERNAL_H */</span><span class="preprocessor"></span></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/thd__posix_8c.html b/doc/ref/core.internal/html/thd__posix_8c.html
new file mode 100644
index 0000000000..9dea761e52
--- /dev/null
+++ b/doc/ref/core.internal/html/thd__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/thd_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/thd__win32_8c.html b/doc/ref/core.internal/html/thd__win32_8c.html
new file mode 100644
index 0000000000..8ee0adbea3
--- /dev/null
+++ b/doc/ref/core.internal/html/thd__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/thd_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/time_8c.html b/doc/ref/core.internal/html/time_8c.html
new file mode 100644
index 0000000000..53ca835661
--- /dev/null
+++ b/doc/ref/core.internal/html/time_8c.html
@@ -0,0 +1,652 @@
+<!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: src/core/support/time.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">time.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+<code>#include &lt;limits.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a1238d80d57e92de77f3ea0df0bfbf500"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">TOP_BIT_OF_TYPE</a>(t)&#160;&#160;&#160;(((<a class="el" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">gpr_uintmax</a>)1) &lt;&lt; ((8 * sizeof(t)) - 1))</td></tr>
+<tr class="separator:a1238d80d57e92de77f3ea0df0bfbf500"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee5df4784512f172739646babf8fa13d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#aee5df4784512f172739646babf8fa13d">TYPE_IS_SIGNED</a>(t)&#160;&#160;&#160;(((t)1) &gt; (t) ~(t)0)</td></tr>
+<tr class="separator:aee5df4784512f172739646babf8fa13d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5b4c36b3633abe2c68f8b4ab3c7de8c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#ad5b4c36b3633abe2c68f8b4ab3c7de8c">TYPE_MIN</a>(t)&#160;&#160;&#160;((t)(<a class="el" href="time_8c.html#aee5df4784512f172739646babf8fa13d">TYPE_IS_SIGNED</a>(t) ? <a class="el" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">TOP_BIT_OF_TYPE</a>(t) : 0))</td></tr>
+<tr class="separator:ad5b4c36b3633abe2c68f8b4ab3c7de8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87353338032e1f56c958d981731f8378"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a87353338032e1f56c958d981731f8378">TYPE_MAX</a>(t)</td></tr>
+<tr class="separator:a87353338032e1f56c958d981731f8378"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aeb10778e9b7c1dd7e6c47099d55f0fa0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">gpr_time_cmp</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:aeb10778e9b7c1dd7e6c47099d55f0fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af15f574932e56662f57bd3573e3cc469"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#af15f574932e56662f57bd3573e3cc469">gpr_time_min</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:af15f574932e56662f57bd3573e3cc469"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e1c94c1e488381e9f01d4318c2a45d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a4e1c94c1e488381e9f01d4318c2a45d8">gpr_time_max</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:a4e1c94c1e488381e9f01d4318c2a45d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f552f0628cc389dfbe3674a1a978108"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a4f552f0628cc389dfbe3674a1a978108">gpr_time_0</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a4f552f0628cc389dfbe3674a1a978108"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9324a2b33d5d7686fb14714c59ff026d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a9324a2b33d5d7686fb14714c59ff026d">gpr_inf_future</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a9324a2b33d5d7686fb14714c59ff026d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd2eba8066648fe0d94146d8310b4283"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#abd2eba8066648fe0d94146d8310b4283">gpr_inf_past</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:abd2eba8066648fe0d94146d8310b4283"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7b5437762ab2c7b7b31f7ab8e054eb04"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a7b5437762ab2c7b7b31f7ab8e054eb04">gpr_time_from_nanos</a> (long ns, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a7b5437762ab2c7b7b31f7ab8e054eb04"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c0445a26d72673e14ea4c403b69ee65"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a4c0445a26d72673e14ea4c403b69ee65">gpr_time_from_micros</a> (long us, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a4c0445a26d72673e14ea4c403b69ee65"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b46878435c03a093b01f23b6a23631b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a3b46878435c03a093b01f23b6a23631b">gpr_time_from_millis</a> (long ms, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a3b46878435c03a093b01f23b6a23631b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac43b8cfb4ba31a567eb77c2dacda57a7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#ac43b8cfb4ba31a567eb77c2dacda57a7">gpr_time_from_seconds</a> (long s, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:ac43b8cfb4ba31a567eb77c2dacda57a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd411906dd4100d1a359177eaa8e6d5f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#afd411906dd4100d1a359177eaa8e6d5f">gpr_time_from_minutes</a> (long m, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:afd411906dd4100d1a359177eaa8e6d5f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab8e7ff6a62bcd1fda7ea07ee67ffbacd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#ab8e7ff6a62bcd1fda7ea07ee67ffbacd">gpr_time_from_hours</a> (long h, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:ab8e7ff6a62bcd1fda7ea07ee67ffbacd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f2c6fbc9fef45d74670c446e2bad004"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a6f2c6fbc9fef45d74670c446e2bad004">gpr_time_add</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:a6f2c6fbc9fef45d74670c446e2bad004"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1eaf8db9ee9e94bd4af005f1049f967a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a1eaf8db9ee9e94bd4af005f1049f967a">gpr_time_sub</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:a1eaf8db9ee9e94bd4af005f1049f967a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a914f666c6cfe709650d96c986600de15"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a914f666c6cfe709650d96c986600de15">gpr_time_similar</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> threshold)</td></tr>
+<tr class="separator:a914f666c6cfe709650d96c986600de15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e913ddb6917c82510ff48d34672f6a1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a0e913ddb6917c82510ff48d34672f6a1">gpr_time_to_millis</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> t)</td></tr>
+<tr class="separator:a0e913ddb6917c82510ff48d34672f6a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1704f2028070b3c92bd5420864458bac"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#a1704f2028070b3c92bd5420864458bac">gpr_timespec_to_micros</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> t)</td></tr>
+<tr class="separator:a1704f2028070b3c92bd5420864458bac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab265219dd3038a1e89ded09033bada5e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8c.html#ab265219dd3038a1e89ded09033bada5e">gpr_convert_clock_type</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> t, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:ab265219dd3038a1e89ded09033bada5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a1238d80d57e92de77f3ea0df0bfbf500"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TOP_BIT_OF_TYPE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">t</td><td>)</td>
+ <td>&#160;&#160;&#160;(((<a class="el" href="port__platform_8h.html#abee5d576e1d284a7c8135df7d89af0f7">gpr_uintmax</a>)1) &lt;&lt; ((8 * sizeof(t)) - 1))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee5df4784512f172739646babf8fa13d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TYPE_IS_SIGNED</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">t</td><td>)</td>
+ <td>&#160;&#160;&#160;(((t)1) &gt; (t) ~(t)0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87353338032e1f56c958d981731f8378"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TYPE_MAX</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">t</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((t)(<a class="code" href="time_8c.html#aee5df4784512f172739646babf8fa13d">TYPE_IS_SIGNED</a>(t) ? (<a class="code" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">TOP_BIT_OF_TYPE</a>(t) - 1) \</div>
+<div class="line"> : ((<a class="code" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">TOP_BIT_OF_TYPE</a>(t) - 1) &lt;&lt; 1) + 1))</div>
+<div class="ttc" id="time_8c_html_a1238d80d57e92de77f3ea0df0bfbf500"><div class="ttname"><a href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">TOP_BIT_OF_TYPE</a></div><div class="ttdeci">#define TOP_BIT_OF_TYPE(t)</div><div class="ttdef"><b>Definition:</b> time.c:64</div></div>
+<div class="ttc" id="time_8c_html_aee5df4784512f172739646babf8fa13d"><div class="ttname"><a href="time_8c.html#aee5df4784512f172739646babf8fa13d">TYPE_IS_SIGNED</a></div><div class="ttdeci">#define TYPE_IS_SIGNED(t)</div><div class="ttdef"><b>Definition:</b> time.c:67</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ad5b4c36b3633abe2c68f8b4ab3c7de8c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TYPE_MIN</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">t</td><td>)</td>
+ <td>&#160;&#160;&#160;((t)(<a class="el" href="time_8c.html#aee5df4784512f172739646babf8fa13d">TYPE_IS_SIGNED</a>(t) ? <a class="el" href="time_8c.html#a1238d80d57e92de77f3ea0df0bfbf500">TOP_BIT_OF_TYPE</a>(t) : 0))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ab265219dd3038a1e89ded09033bada5e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_convert_clock_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9324a2b33d5d7686fb14714c59ff026d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_inf_future </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abd2eba8066648fe0d94146d8310b4283"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_inf_past </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f552f0628cc389dfbe3674a1a978108"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_0 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f2c6fbc9fef45d74670c446e2bad004"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb10778e9b7c1dd7e6c47099d55f0fa0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_time_cmp </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab8e7ff6a62bcd1fda7ea07ee67ffbacd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_hours </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>h</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4c0445a26d72673e14ea4c403b69ee65"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_micros </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>us</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3b46878435c03a093b01f23b6a23631b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_millis </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>ms</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afd411906dd4100d1a359177eaa8e6d5f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_minutes </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>m</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b5437762ab2c7b7b31f7ab8e054eb04"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_nanos </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>ns</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac43b8cfb4ba31a567eb77c2dacda57a7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_seconds </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>s</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e1c94c1e488381e9f01d4318c2a45d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_max </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af15f574932e56662f57bd3573e3cc469"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_min </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a914f666c6cfe709650d96c986600de15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_time_similar </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>threshold</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1eaf8db9ee9e94bd4af005f1049f967a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_sub </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0e913ddb6917c82510ff48d34672f6a1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a> gpr_time_to_millis </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1704f2028070b3c92bd5420864458bac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_timespec_to_micros </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/time_8h.html b/doc/ref/core.internal/html/time_8h.html
new file mode 100644
index 0000000000..97df4f284c
--- /dev/null
+++ b/doc/ref/core.internal/html/time_8h.html
@@ -0,0 +1,769 @@
+<!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: include/grpc/support/time.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">time.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+<code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">time.h</a>&gt;</code><br/>
+</div>
+<p><a href="time_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__timespec.html">gpr_timespec</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:af2c8091db4e2a3133b93131f64db859e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#af2c8091db4e2a3133b93131f64db859e">GPR_MS_PER_SEC</a>&#160;&#160;&#160;1000</td></tr>
+<tr class="separator:af2c8091db4e2a3133b93131f64db859e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48433e202646afa00d9694585b05b9e3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a48433e202646afa00d9694585b05b9e3">GPR_US_PER_SEC</a>&#160;&#160;&#160;1000000</td></tr>
+<tr class="separator:a48433e202646afa00d9694585b05b9e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a447d0913b0cfdc943df51585f0e2785e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a447d0913b0cfdc943df51585f0e2785e">GPR_NS_PER_SEC</a>&#160;&#160;&#160;1000000000</td></tr>
+<tr class="separator:a447d0913b0cfdc943df51585f0e2785e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c63ee76f91a122abf3a0806b64318eb"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a3c63ee76f91a122abf3a0806b64318eb">GPR_NS_PER_MS</a>&#160;&#160;&#160;1000000</td></tr>
+<tr class="separator:a3c63ee76f91a122abf3a0806b64318eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adc295bf07c72edae8a2ad49e24da2f32"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#adc295bf07c72edae8a2ad49e24da2f32">GPR_NS_PER_US</a>&#160;&#160;&#160;1000</td></tr>
+<tr class="separator:adc295bf07c72edae8a2ad49e24da2f32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a33dba9a222266cf2270c9b09c1f64336"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a33dba9a222266cf2270c9b09c1f64336">GPR_US_PER_MS</a>&#160;&#160;&#160;1000</td></tr>
+<tr class="separator:a33dba9a222266cf2270c9b09c1f64336"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7dd12c72fcf53ebecfdfc13632914c45"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45">gpr_timespec</a></td></tr>
+<tr class="separator:a7dd12c72fcf53ebecfdfc13632914c45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a2441bd1fbe80e86ff741e0757725b281"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> { <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c">GPR_CLOCK_MONOTONIC</a> = 0,
+<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">GPR_CLOCK_REALTIME</a>,
+<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a>
+ }</td></tr>
+<tr class="separator:a2441bd1fbe80e86ff741e0757725b281"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4f552f0628cc389dfbe3674a1a978108"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a4f552f0628cc389dfbe3674a1a978108">gpr_time_0</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a4f552f0628cc389dfbe3674a1a978108"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9324a2b33d5d7686fb14714c59ff026d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">gpr_inf_future</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:a9324a2b33d5d7686fb14714c59ff026d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd2eba8066648fe0d94146d8310b4283"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#abd2eba8066648fe0d94146d8310b4283">gpr_inf_past</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type)</td></tr>
+<tr class="separator:abd2eba8066648fe0d94146d8310b4283"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a3da26a2eb15fcd312f1b8ef00cad56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56">gpr_time_init</a> (void)</td></tr>
+<tr class="separator:a2a3da26a2eb15fcd312f1b8ef00cad56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf5debcac2bc854e733ca2dec2a1ff19"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">gpr_now</a> (<a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock)</td></tr>
+<tr class="separator:adf5debcac2bc854e733ca2dec2a1ff19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5da0bdd7a1b8735bf1594a2068b7ec74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74">gpr_convert_clock_type</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> t, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> target_clock)</td></tr>
+<tr class="separator:a5da0bdd7a1b8735bf1594a2068b7ec74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb10778e9b7c1dd7e6c47099d55f0fa0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">gpr_time_cmp</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:aeb10778e9b7c1dd7e6c47099d55f0fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e1c94c1e488381e9f01d4318c2a45d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8">gpr_time_max</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:a4e1c94c1e488381e9f01d4318c2a45d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af15f574932e56662f57bd3573e3cc469"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#af15f574932e56662f57bd3573e3cc469">gpr_time_min</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:af15f574932e56662f57bd3573e3cc469"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f2c6fbc9fef45d74670c446e2bad004"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004">gpr_time_add</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:a6f2c6fbc9fef45d74670c446e2bad004"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1eaf8db9ee9e94bd4af005f1049f967a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a">gpr_time_sub</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b)</td></tr>
+<tr class="separator:a1eaf8db9ee9e94bd4af005f1049f967a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a79956c6fba5b660aeee24b09ae026d6c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a79956c6fba5b660aeee24b09ae026d6c">gpr_time_from_micros</a> (long x, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:a79956c6fba5b660aeee24b09ae026d6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16f57f7df5d09bfc38e8b8fcd323e50a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a">gpr_time_from_nanos</a> (long x, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:a16f57f7df5d09bfc38e8b8fcd323e50a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a491cdb7a2d2da81c337ed4c8c6a24946"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946">gpr_time_from_millis</a> (long x, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:a491cdb7a2d2da81c337ed4c8c6a24946"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4bc0bd3df3e9537035fc2b8675f01916"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916">gpr_time_from_seconds</a> (long x, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:a4bc0bd3df3e9537035fc2b8675f01916"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2ae89810eabe8c224b15a4ae0991eba"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba">gpr_time_from_minutes</a> (long x, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:ad2ae89810eabe8c224b15a4ae0991eba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7a9aca2af5348cbb8dc835853dc2756"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#af7a9aca2af5348cbb8dc835853dc2756">gpr_time_from_hours</a> (long x, <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type)</td></tr>
+<tr class="separator:af7a9aca2af5348cbb8dc835853dc2756"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aebea7c2faef2e16b802a5e9ae1f3b7df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df">gpr_time_to_millis</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> timespec)</td></tr>
+<tr class="separator:aebea7c2faef2e16b802a5e9ae1f3b7df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a914f666c6cfe709650d96c986600de15"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a914f666c6cfe709650d96c986600de15">gpr_time_similar</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> b, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> threshold)</td></tr>
+<tr class="separator:a914f666c6cfe709650d96c986600de15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad037af8b7288a3f2e5ce46d3e3ca50d7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7">gpr_sleep_until</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> until)</td></tr>
+<tr class="separator:ad037af8b7288a3f2e5ce46d3e3ca50d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1704f2028070b3c92bd5420864458bac"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html#a1704f2028070b3c92bd5420864458bac">gpr_timespec_to_micros</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> t)</td></tr>
+<tr class="separator:a1704f2028070b3c92bd5420864458bac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="af2c8091db4e2a3133b93131f64db859e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_MS_PER_SEC&#160;&#160;&#160;1000</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3c63ee76f91a122abf3a0806b64318eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_NS_PER_MS&#160;&#160;&#160;1000000</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a447d0913b0cfdc943df51585f0e2785e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_NS_PER_SEC&#160;&#160;&#160;1000000000</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adc295bf07c72edae8a2ad49e24da2f32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_NS_PER_US&#160;&#160;&#160;1000</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a33dba9a222266cf2270c9b09c1f64336"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_US_PER_MS&#160;&#160;&#160;1000</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a48433e202646afa00d9694585b05b9e3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_US_PER_SEC&#160;&#160;&#160;1000000</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a7dd12c72fcf53ebecfdfc13632914c45"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgpr__timespec.html">gpr_timespec</a> <a class="el" href="structgpr__timespec.html">gpr_timespec</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a2441bd1fbe80e86ff741e0757725b281"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c"></a>GPR_CLOCK_MONOTONIC</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746"></a>GPR_CLOCK_REALTIME</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741"></a>GPR_TIMESPAN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a5da0bdd7a1b8735bf1594a2068b7ec74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_convert_clock_type </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>t</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>target_clock</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9324a2b33d5d7686fb14714c59ff026d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_inf_future </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abd2eba8066648fe0d94146d8310b4283"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_inf_past </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf5debcac2bc854e733ca2dec2a1ff19"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_now </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad037af8b7288a3f2e5ce46d3e3ca50d7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_sleep_until </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>until</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f552f0628cc389dfbe3674a1a978108"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_0 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>type</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f2c6fbc9fef45d74670c446e2bad004"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_add </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb10778e9b7c1dd7e6c47099d55f0fa0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_time_cmp </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af7a9aca2af5348cbb8dc835853dc2756"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_hours </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a79956c6fba5b660aeee24b09ae026d6c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_micros </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a491cdb7a2d2da81c337ed4c8c6a24946"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_millis </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad2ae89810eabe8c224b15a4ae0991eba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_minutes </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16f57f7df5d09bfc38e8b8fcd323e50a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_nanos </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4bc0bd3df3e9537035fc2b8675f01916"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_from_seconds </td>
+ <td>(</td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>x</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>&#160;</td>
+ <td class="paramname"><em>clock_type</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2a3da26a2eb15fcd312f1b8ef00cad56"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void gpr_time_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e1c94c1e488381e9f01d4318c2a45d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_max </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af15f574932e56662f57bd3573e3cc469"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_min </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a914f666c6cfe709650d96c986600de15"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int gpr_time_similar </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>threshold</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1eaf8db9ee9e94bd4af005f1049f967a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> gpr_time_sub </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>b</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aebea7c2faef2e16b802a5e9ae1f3b7df"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a> gpr_time_to_millis </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>timespec</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1704f2028070b3c92bd5420864458bac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double gpr_timespec_to_micros </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/time_8h_source.html b/doc/ref/core.internal/html/time_8h_source.html
new file mode 100644
index 0000000000..b24859db27
--- /dev/null
+++ b/doc/ref/core.internal/html/time_8h_source.html
@@ -0,0 +1,254 @@
+<!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: include/grpc/support/time.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">time.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="time_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_TIME_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_TIME_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span><span class="comment">/* Time support.</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> We use gpr_timespec, which is analogous to struct timespec. On some</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> machines, absolute times may be in local time. */</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">time.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/* The clocks we support. */</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281"> 49</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="comment">/* Monotonic clock. Epoch undefined. Always moves forwards. */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c"> 51</a></span>&#160; <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c">GPR_CLOCK_MONOTONIC</a> = 0,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="comment">/* Realtime clock. May jump forwards or backwards. Settable by</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> the system administrator. Has its epoch at 0:00:00 UTC 1 Jan 1970. */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746"> 54</a></span>&#160; <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">GPR_CLOCK_REALTIME</a>,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">/* Unmeasurable clock type: no base, created by taking the difference</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> between two times */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741"> 57</a></span>&#160; <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;} <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgpr__timespec.html"> 60</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgpr__timespec.html">gpr_timespec</a> {</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e"> 61</a></span>&#160; time_t <a class="code" href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">tv_sec</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268"> 62</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">tv_nsec</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff"> 65</a></span>&#160; <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> <a class="code" href="structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff">clock_type</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <a class="code" href="time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45">gpr_timespec</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* Time constants. */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a4f552f0628cc389dfbe3674a1a978108">gpr_time_0</a>(<a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type); <span class="comment">/* The zero time interval. */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">gpr_inf_future</a>(<a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type); <span class="comment">/* The far future */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#abd2eba8066648fe0d94146d8310b4283">gpr_inf_past</a>(<a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> type); <span class="comment">/* The far past. */</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="time_8h.html#af2c8091db4e2a3133b93131f64db859e"> 73</a></span>&#160;<span class="preprocessor">#define GPR_MS_PER_SEC 1000</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="time_8h.html#a48433e202646afa00d9694585b05b9e3"> 74</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_US_PER_SEC 1000000</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="time_8h.html#a447d0913b0cfdc943df51585f0e2785e"> 75</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_NS_PER_SEC 1000000000</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="time_8h.html#a3c63ee76f91a122abf3a0806b64318eb"> 76</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_NS_PER_MS 1000000</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="time_8h.html#adc295bf07c72edae8a2ad49e24da2f32"> 77</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_NS_PER_US 1000</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="time_8h.html#a33dba9a222266cf2270c9b09c1f64336"> 78</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_US_PER_MS 1000</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/* initialize time subsystem */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keywordtype">void</span> <a class="code" href="time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56">gpr_time_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">/* Return the current time measured from the given clocks epoch. */</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">gpr_now</a>(<a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">/* Convert a timespec from one clock to another */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74">gpr_convert_clock_type</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> t, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> target_clock);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment">/* Return -ve, 0, or +ve according to whether a &lt; b, a == b, or a &gt; b</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> respectively. */</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">int</span> <a class="code" href="time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">gpr_time_cmp</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> b);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8">gpr_time_max</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> b);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#af15f574932e56662f57bd3573e3cc469">gpr_time_min</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> b);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment">/* Add and subtract times. Calculations saturate at infinities. */</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004">gpr_time_add</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> b);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a">gpr_time_sub</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> b);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment">/* Return a timespec representing a given number of time units. LONG_MIN is</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> interpreted as gpr_inf_past, and LONG_MAX as gpr_inf_future. */</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a79956c6fba5b660aeee24b09ae026d6c">gpr_time_from_micros</a>(<span class="keywordtype">long</span> x, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a">gpr_time_from_nanos</a>(<span class="keywordtype">long</span> x, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type);</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946">gpr_time_from_millis</a>(<span class="keywordtype">long</span> x, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916">gpr_time_from_seconds</a>(<span class="keywordtype">long</span> x, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba">gpr_time_from_minutes</a>(<span class="keywordtype">long</span> x, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="time_8h.html#af7a9aca2af5348cbb8dc835853dc2756">gpr_time_from_hours</a>(<span class="keywordtype">long</span> x, <a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a> clock_type);</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<a class="code" href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a> <a class="code" href="time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df">gpr_time_to_millis</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> timespec);</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment">/* Return 1 if two times are equal or within threshold of each other,</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> 0 otherwise */</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keywordtype">int</span> <a class="code" href="time_8h.html#a914f666c6cfe709650d96c986600de15">gpr_time_similar</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> a, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> b, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> threshold);</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment">/* Sleep until at least &#39;until&#39; - an absolute timeout */</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keywordtype">void</span> <a class="code" href="time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7">gpr_sleep_until</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> until);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keywordtype">double</span> <a class="code" href="time_8h.html#a1704f2028070b3c92bd5420864458bac">gpr_timespec_to_micros</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> t);</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_TIME_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="time_8h_html_a4e1c94c1e488381e9f01d4318c2a45d8"><div class="ttname"><a href="time_8h.html#a4e1c94c1e488381e9f01d4318c2a45d8">gpr_time_max</a></div><div class="ttdeci">gpr_timespec gpr_time_max(gpr_timespec a, gpr_timespec b)</div><div class="ttdef"><b>Definition:</b> time.c:55</div></div>
+<div class="ttc" id="structgpr__timespec_html_af9294cf0049fd33c76ad2da925d9051e"><div class="ttname"><a href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">gpr_timespec::tv_sec</a></div><div class="ttdeci">time_t tv_sec</div><div class="ttdef"><b>Definition:</b> time.h:61</div></div>
+<div class="ttc" id="time_8h_html_a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746"><div class="ttname"><a href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">GPR_CLOCK_REALTIME</a></div><div class="ttdef"><b>Definition:</b> time.h:54</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="time_8h_html_a491cdb7a2d2da81c337ed4c8c6a24946"><div class="ttname"><a href="time_8h.html#a491cdb7a2d2da81c337ed4c8c6a24946">gpr_time_from_millis</a></div><div class="ttdeci">gpr_timespec gpr_time_from_millis(long x, gpr_clock_type clock_type)</div><div class="ttdef"><b>Definition:</b> time.c:138</div></div>
+<div class="ttc" id="time_8h_html_a9324a2b33d5d7686fb14714c59ff026d"><div class="ttname"><a href="time_8h.html#a9324a2b33d5d7686fb14714c59ff026d">gpr_inf_future</a></div><div class="ttdeci">gpr_timespec gpr_inf_future(gpr_clock_type type)</div><div class="ttdef"><b>Definition:</b> time.c:83</div></div>
+<div class="ttc" id="time_8h_html_abd2eba8066648fe0d94146d8310b4283"><div class="ttname"><a href="time_8h.html#abd2eba8066648fe0d94146d8310b4283">gpr_inf_past</a></div><div class="ttdeci">gpr_timespec gpr_inf_past(gpr_clock_type type)</div><div class="ttdef"><b>Definition:</b> time.c:91</div></div>
+<div class="ttc" id="time_8h_html_af7a9aca2af5348cbb8dc835853dc2756"><div class="ttname"><a href="time_8h.html#af7a9aca2af5348cbb8dc835853dc2756">gpr_time_from_hours</a></div><div class="ttdeci">gpr_timespec gpr_time_from_hours(long x, gpr_clock_type clock_type)</div><div class="ttdef"><b>Definition:</b> time.c:184</div></div>
+<div class="ttc" id="time_8h_html_af15f574932e56662f57bd3573e3cc469"><div class="ttname"><a href="time_8h.html#af15f574932e56662f57bd3573e3cc469">gpr_time_min</a></div><div class="ttdeci">gpr_timespec gpr_time_min(gpr_timespec a, gpr_timespec b)</div><div class="ttdef"><b>Definition:</b> time.c:51</div></div>
+<div class="ttc" id="structgpr__timespec_html_a6dd26976820fa71a7c5a710d4c1845ff"><div class="ttname"><a href="structgpr__timespec.html#a6dd26976820fa71a7c5a710d4c1845ff">gpr_timespec::clock_type</a></div><div class="ttdeci">gpr_clock_type clock_type</div><div class="ttdoc">Against which clock was this time measured? (or GPR_TIMESPAN if this is a relative time meaure) ...</div><div class="ttdef"><b>Definition:</b> time.h:65</div></div>
+<div class="ttc" id="time_8h_html_a16f57f7df5d09bfc38e8b8fcd323e50a"><div class="ttname"><a href="time_8h.html#a16f57f7df5d09bfc38e8b8fcd323e50a">gpr_time_from_nanos</a></div><div class="ttdeci">gpr_timespec gpr_time_from_nanos(long x, gpr_clock_type clock_type)</div><div class="ttdef"><b>Definition:</b> time.c:102</div></div>
+<div class="ttc" id="time_8h_html_a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c"><div class="ttname"><a href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a6ddd11813c5172c7b3e0e46e5ce7f01c">GPR_CLOCK_MONOTONIC</a></div><div class="ttdef"><b>Definition:</b> time.h:51</div></div>
+<div class="ttc" id="time_8h_html_a5da0bdd7a1b8735bf1594a2068b7ec74"><div class="ttname"><a href="time_8h.html#a5da0bdd7a1b8735bf1594a2068b7ec74">gpr_convert_clock_type</a></div><div class="ttdeci">gpr_timespec gpr_convert_clock_type(gpr_timespec t, gpr_clock_type target_clock)</div><div class="ttdef"><b>Definition:</b> time.c:294</div></div>
+<div class="ttc" id="time_8h_html_a1eaf8db9ee9e94bd4af005f1049f967a"><div class="ttname"><a href="time_8h.html#a1eaf8db9ee9e94bd4af005f1049f967a">gpr_time_sub</a></div><div class="ttdeci">gpr_timespec gpr_time_sub(gpr_timespec a, gpr_timespec b)</div><div class="ttdef"><b>Definition:</b> time.c:227</div></div>
+<div class="ttc" id="time_8h_html_aeb10778e9b7c1dd7e6c47099d55f0fa0"><div class="ttname"><a href="time_8h.html#aeb10778e9b7c1dd7e6c47099d55f0fa0">gpr_time_cmp</a></div><div class="ttdeci">int gpr_time_cmp(gpr_timespec a, gpr_timespec b)</div><div class="ttdef"><b>Definition:</b> time.c:42</div></div>
+<div class="ttc" id="structgpr__timespec_html_ac326c2133cd003cb206715cf5f500268"><div class="ttname"><a href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">gpr_timespec::tv_nsec</a></div><div class="ttdeci">int tv_nsec</div><div class="ttdef"><b>Definition:</b> time.h:62</div></div>
+<div class="ttc" id="time_8h_html_a2a3da26a2eb15fcd312f1b8ef00cad56"><div class="ttname"><a href="time_8h.html#a2a3da26a2eb15fcd312f1b8ef00cad56">gpr_time_init</a></div><div class="ttdeci">void gpr_time_init(void)</div></div>
+<div class="ttc" id="time_8h_html_a4f552f0628cc389dfbe3674a1a978108"><div class="ttname"><a href="time_8h.html#a4f552f0628cc389dfbe3674a1a978108">gpr_time_0</a></div><div class="ttdeci">gpr_timespec gpr_time_0(gpr_clock_type type)</div><div class="ttdef"><b>Definition:</b> time.c:75</div></div>
+<div class="ttc" id="time_8h_html_a914f666c6cfe709650d96c986600de15"><div class="ttname"><a href="time_8h.html#a914f666c6cfe709650d96c986600de15">gpr_time_similar</a></div><div class="ttdeci">int gpr_time_similar(gpr_timespec a, gpr_timespec b, gpr_timespec threshold)</div><div class="ttdef"><b>Definition:</b> time.c:260</div></div>
+<div class="ttc" id="time_8h_html_a6f2c6fbc9fef45d74670c446e2bad004"><div class="ttname"><a href="time_8h.html#a6f2c6fbc9fef45d74670c446e2bad004">gpr_time_add</a></div><div class="ttdeci">gpr_timespec gpr_time_add(gpr_timespec a, gpr_timespec b)</div><div class="ttdef"><b>Definition:</b> time.c:198</div></div>
+<div class="ttc" id="time_8h_html_a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741"><div class="ttname"><a href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a52f75e587240b7b44d3b8bc7fb3d5741">GPR_TIMESPAN</a></div><div class="ttdef"><b>Definition:</b> time.h:57</div></div>
+<div class="ttc" id="time_8h_html_aebea7c2faef2e16b802a5e9ae1f3b7df"><div class="ttname"><a href="time_8h.html#aebea7c2faef2e16b802a5e9ae1f3b7df">gpr_time_to_millis</a></div><div class="ttdeci">gpr_int32 gpr_time_to_millis(gpr_timespec timespec)</div><div class="ttdef"><b>Definition:</b> time.c:275</div></div>
+<div class="ttc" id="time_8h_html_ad2ae89810eabe8c224b15a4ae0991eba"><div class="ttname"><a href="time_8h.html#ad2ae89810eabe8c224b15a4ae0991eba">gpr_time_from_minutes</a></div><div class="ttdeci">gpr_timespec gpr_time_from_minutes(long x, gpr_clock_type clock_type)</div><div class="ttdef"><b>Definition:</b> time.c:170</div></div>
+<div class="ttc" id="port__platform_8h_html_a7c9027ffa98b5efe1767efe79903c6b7"><div class="ttname"><a href="port__platform_8h.html#a7c9027ffa98b5efe1767efe79903c6b7">gpr_int32</a></div><div class="ttdeci">int32_t gpr_int32</div><div class="ttdef"><b>Definition:</b> port_platform.h:305</div></div>
+<div class="ttc" id="time_8h_html_a7dd12c72fcf53ebecfdfc13632914c45"><div class="ttname"><a href="time_8h.html#a7dd12c72fcf53ebecfdfc13632914c45">gpr_timespec</a></div><div class="ttdeci">struct gpr_timespec gpr_timespec</div></div>
+<div class="ttc" id="time_8h_html_a2441bd1fbe80e86ff741e0757725b281"><div class="ttname"><a href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281">gpr_clock_type</a></div><div class="ttdeci">gpr_clock_type</div><div class="ttdef"><b>Definition:</b> time.h:49</div></div>
+<div class="ttc" id="time_8h_html_adf5debcac2bc854e733ca2dec2a1ff19"><div class="ttname"><a href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">gpr_now</a></div><div class="ttdeci">gpr_timespec gpr_now(gpr_clock_type clock)</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="time_8h_html_a1704f2028070b3c92bd5420864458bac"><div class="ttname"><a href="time_8h.html#a1704f2028070b3c92bd5420864458bac">gpr_timespec_to_micros</a></div><div class="ttdeci">double gpr_timespec_to_micros(gpr_timespec t)</div><div class="ttdef"><b>Definition:</b> time.c:290</div></div>
+<div class="ttc" id="time_8h_html_a79956c6fba5b660aeee24b09ae026d6c"><div class="ttname"><a href="time_8h.html#a79956c6fba5b660aeee24b09ae026d6c">gpr_time_from_micros</a></div><div class="ttdeci">gpr_timespec gpr_time_from_micros(long x, gpr_clock_type clock_type)</div><div class="ttdef"><b>Definition:</b> time.c:120</div></div>
+<div class="ttc" id="time_8h_html_ad037af8b7288a3f2e5ce46d3e3ca50d7"><div class="ttname"><a href="time_8h.html#ad037af8b7288a3f2e5ce46d3e3ca50d7">gpr_sleep_until</a></div><div class="ttdeci">void gpr_sleep_until(gpr_timespec until)</div></div>
+<div class="ttc" id="time_8h_html_a4bc0bd3df3e9537035fc2b8675f01916"><div class="ttname"><a href="time_8h.html#a4bc0bd3df3e9537035fc2b8675f01916">gpr_time_from_seconds</a></div><div class="ttdeci">gpr_timespec gpr_time_from_seconds(long x, gpr_clock_type clock_type)</div><div class="ttdef"><b>Definition:</b> time.c:156</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/time__averaged__stats_8c.html b/doc/ref/core.internal/html/time__averaged__stats_8c.html
new file mode 100644
index 0000000000..1c974a4323
--- /dev/null
+++ b/doc/ref/core.internal/html/time__averaged__stats_8c.html
@@ -0,0 +1,193 @@
+<!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: src/core/iomgr/time_averaged_stats.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">time_averaged_stats.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="time__averaged__stats_8h_source.html">src/core/iomgr/time_averaged_stats.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9b6a0cb59dc0a3c179ae425525dcb4eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8c.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">grpc_time_averaged_stats_init</a> (<a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats, double init_avg, double regress_weight, double persistence_factor)</td></tr>
+<tr class="separator:a9b6a0cb59dc0a3c179ae425525dcb4eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc252070ff8ec7010c74774a042e54d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8c.html#a3fc252070ff8ec7010c74774a042e54d">grpc_time_averaged_stats_add_sample</a> (<a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats, double <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a3fc252070ff8ec7010c74774a042e54d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a811009e64ef5f5b88021d5aa08ceaf26"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8c.html#a811009e64ef5f5b88021d5aa08ceaf26">grpc_time_averaged_stats_update_average</a> (<a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats)</td></tr>
+<tr class="separator:a811009e64ef5f5b88021d5aa08ceaf26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a3fc252070ff8ec7010c74774a042e54d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_time_averaged_stats_add_sample </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *&#160;</td>
+ <td class="paramname"><em>stats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b6a0cb59dc0a3c179ae425525dcb4eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_time_averaged_stats_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *&#160;</td>
+ <td class="paramname"><em>stats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>init_avg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>regress_weight</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>persistence_factor</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a811009e64ef5f5b88021d5aa08ceaf26"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats_update_average </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *&#160;</td>
+ <td class="paramname"><em>stats</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/time__averaged__stats_8h.html b/doc/ref/core.internal/html/time__averaged__stats_8h.html
new file mode 100644
index 0000000000..6cf02c2c71
--- /dev/null
+++ b/doc/ref/core.internal/html/time__averaged__stats_8h.html
@@ -0,0 +1,200 @@
+<!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: src/core/iomgr/time_averaged_stats.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">time_averaged_stats.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="time__averaged__stats_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a9b6a0cb59dc0a3c179ae425525dcb4eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">grpc_time_averaged_stats_init</a> (<a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats, double init_avg, double regress_weight, double persistence_factor)</td></tr>
+<tr class="separator:a9b6a0cb59dc0a3c179ae425525dcb4eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3fc252070ff8ec7010c74774a042e54d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d">grpc_time_averaged_stats_add_sample</a> (<a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats, double <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a3fc252070ff8ec7010c74774a042e54d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a811009e64ef5f5b88021d5aa08ceaf26"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26">grpc_time_averaged_stats_update_average</a> (<a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats)</td></tr>
+<tr class="separator:a811009e64ef5f5b88021d5aa08ceaf26"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a3fc252070ff8ec7010c74774a042e54d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_time_averaged_stats_add_sample </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *&#160;</td>
+ <td class="paramname"><em>stats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9b6a0cb59dc0a3c179ae425525dcb4eb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_time_averaged_stats_init </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *&#160;</td>
+ <td class="paramname"><em>stats</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>init_avg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>regress_weight</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">double&#160;</td>
+ <td class="paramname"><em>persistence_factor</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a811009e64ef5f5b88021d5aa08ceaf26"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">double grpc_time_averaged_stats_update_average </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *&#160;</td>
+ <td class="paramname"><em>stats</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/time__averaged__stats_8h_source.html b/doc/ref/core.internal/html/time__averaged__stats_8h_source.html
new file mode 100644
index 0000000000..43ba9ebb31
--- /dev/null
+++ b/doc/ref/core.internal/html/time__averaged__stats_8h_source.html
@@ -0,0 +1,199 @@
+<!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: src/core/iomgr/time_averaged_stats.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">time_averaged_stats.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="time__averaged__stats_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_TIME_AVERAGED_STATS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_TIME_AVERAGED_STATS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* This tracks a time-decaying weighted average. It works by collecting</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> batches of samples and then mixing their average into a time-decaying</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> weighted mean. It is designed for batch operations where we do many adds</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> before updating the average. */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html"> 42</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="comment">/* The initial average value. This is the reported average until the first</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> grpc_time_averaged_stats_update_average call. If a positive regress_weight</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> is used, we also regress towards this value on each update. */</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224"> 46</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224">init_avg</a>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="comment">/* The sample weight of &quot;init_avg&quot; that is mixed in with each call to</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> grpc_time_averaged_stats_update_average. If the calls to</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> grpc_time_averaged_stats_add_sample stop, this will cause the average to</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> regress back to the mean. This should be non-negative. Set it to 0 to</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> disable the bias. A value of 1 has the effect of adding in 1 bonus sample</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> with value init_avg to each sample period. */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d"> 53</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d">regress_weight</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">/* This determines the rate of decay of the time-averaging from one period</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> to the next by scaling the aggregate_total_weight of samples from prior</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> periods when combining with the latest period. It should be in the range</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> [0,1]. A higher value adapts more slowly. With a value of 0.5, if the</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> batches each have k samples, the samples_in_avg_ will grow to 2 k, so the</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> weighting of the time average will eventually be 1/3 new batch and 2/3</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> old average. */</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602"> 61</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602">persistence_factor</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/* The total value of samples since the last UpdateAverage(). */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b"> 64</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b">batch_total_value</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">/* The number of samples since the last UpdateAverage(). */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb"> 66</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb">batch_num_samples</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">/* The time-decayed sum of batch_num_samples_ over previous batches. This is</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> the &quot;weight&quot; of the old aggregate_weighted_avg_ when updating the</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> average. */</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1"> 70</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1">aggregate_total_weight</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">/* A time-decayed average of the (batch_total_value_ / batch_num_samples_),</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> computed by decaying the samples_in_avg_ weight in the weighted average. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab"> 73</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab">aggregate_weighted_avg</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;} <a class="code" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* See the comments on the members above for an explanation of init_avg,</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> regress_weight, and persistence_factor. */</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> <a class="code" href="time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">grpc_time_averaged_stats_init</a>(<a class="code" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats,</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">double</span> init_avg, <span class="keywordtype">double</span> regress_weight,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordtype">double</span> persistence_factor);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">/* Add a sample to the current batch. */</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> <a class="code" href="time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d">grpc_time_averaged_stats_add_sample</a>(<a class="code" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">double</span> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">/* Complete a batch and compute the new estimate of the average sample</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> value. */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">double</span> <a class="code" href="time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26">grpc_time_averaged_stats_update_average</a>(<a class="code" href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a> *stats);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_TIME_AVERAGED_STATS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_adbadac315658d04556d28685266f1602"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#adbadac315658d04556d28685266f1602">grpc_time_averaged_stats::persistence_factor</a></div><div class="ttdeci">double persistence_factor</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:61</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_a24abd6f81483e9b6cecfa39eefffd70d"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#a24abd6f81483e9b6cecfa39eefffd70d">grpc_time_averaged_stats::regress_weight</a></div><div class="ttdeci">double regress_weight</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:53</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_a630c3447f5023f4ab790a311ec93f6fb"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#a630c3447f5023f4ab790a311ec93f6fb">grpc_time_averaged_stats::batch_num_samples</a></div><div class="ttdeci">double batch_num_samples</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:66</div></div>
+<div class="ttc" id="time__averaged__stats_8h_html_a9b6a0cb59dc0a3c179ae425525dcb4eb"><div class="ttname"><a href="time__averaged__stats_8h.html#a9b6a0cb59dc0a3c179ae425525dcb4eb">grpc_time_averaged_stats_init</a></div><div class="ttdeci">void grpc_time_averaged_stats_init(grpc_time_averaged_stats *stats, double init_avg, double regress_weight, double persistence_factor)</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.c:36</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_a85043e8ac6f293e2e74c8e93cf8660f1"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#a85043e8ac6f293e2e74c8e93cf8660f1">grpc_time_averaged_stats::aggregate_total_weight</a></div><div class="ttdeci">double aggregate_total_weight</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:70</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_aa1aedfcd876bdec50aab3e1da6bec224"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#aa1aedfcd876bdec50aab3e1da6bec224">grpc_time_averaged_stats::init_avg</a></div><div class="ttdeci">double init_avg</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:46</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_a87b5877b79ff41a32b12065ce4e0273b"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#a87b5877b79ff41a32b12065ce4e0273b">grpc_time_averaged_stats::batch_total_value</a></div><div class="ttdeci">double batch_total_value</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:64</div></div>
+<div class="ttc" id="time__averaged__stats_8h_html_a3fc252070ff8ec7010c74774a042e54d"><div class="ttname"><a href="time__averaged__stats_8h.html#a3fc252070ff8ec7010c74774a042e54d">grpc_time_averaged_stats_add_sample</a></div><div class="ttdeci">void grpc_time_averaged_stats_add_sample(grpc_time_averaged_stats *stats, double value)</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.c:48</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html"><div class="ttname"><a href="structgrpc__time__averaged__stats.html">grpc_time_averaged_stats</a></div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:42</div></div>
+<div class="ttc" id="time__averaged__stats_8h_html_a811009e64ef5f5b88021d5aa08ceaf26"><div class="ttname"><a href="time__averaged__stats_8h.html#a811009e64ef5f5b88021d5aa08ceaf26">grpc_time_averaged_stats_update_average</a></div><div class="ttdeci">double grpc_time_averaged_stats_update_average(grpc_time_averaged_stats *stats)</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.c:54</div></div>
+<div class="ttc" id="structgrpc__time__averaged__stats_html_a0ba895378c9c903375bbe3d153aae2ab"><div class="ttname"><a href="structgrpc__time__averaged__stats.html#a0ba895378c9c903375bbe3d153aae2ab">grpc_time_averaged_stats::aggregate_weighted_avg</a></div><div class="ttdeci">double aggregate_weighted_avg</div><div class="ttdef"><b>Definition:</b> time_averaged_stats.h:73</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/time__posix_8c.html b/doc/ref/core.internal/html/time__posix_8c.html
new file mode 100644
index 0000000000..01ebaff0d6
--- /dev/null
+++ b/doc/ref/core.internal/html/time__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/time_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">time_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/time__win32_8c.html b/doc/ref/core.internal/html/time__win32_8c.html
new file mode 100644
index 0000000000..87049d5480
--- /dev/null
+++ b/doc/ref/core.internal/html/time__win32_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/time_win32.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">time_win32.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/timeout__encoding_8c.html b/doc/ref/core.internal/html/timeout__encoding_8c.html
new file mode 100644
index 0000000000..f3e42abb7c
--- /dev/null
+++ b/doc/ref/core.internal/html/timeout__encoding_8c.html
@@ -0,0 +1,165 @@
+<!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: src/core/transport/chttp2/timeout_encoding.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">timeout_encoding.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="timeout__encoding_8h_source.html">src/core/transport/chttp2/timeout_encoding.h</a>&quot;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa4128995f3b3d4fe068c1635a85f7bcc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8c.html#aa4128995f3b3d4fe068c1635a85f7bcc">grpc_chttp2_encode_timeout</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> timeout, char *buffer)</td></tr>
+<tr class="separator:aa4128995f3b3d4fe068c1635a85f7bcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac96a9d21da277e6a790fa8ac5846b5d8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8c.html#ac96a9d21da277e6a790fa8ac5846b5d8">grpc_chttp2_decode_timeout</a> (const char *buffer, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *timeout)</td></tr>
+<tr class="separator:ac96a9d21da277e6a790fa8ac5846b5d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ac96a9d21da277e6a790fa8ac5846b5d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_decode_timeout </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>timeout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa4128995f3b3d4fe068c1635a85f7bcc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_encode_timeout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>timeout</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/timeout__encoding_8h.html b/doc/ref/core.internal/html/timeout__encoding_8h.html
new file mode 100644
index 0000000000..032367540a
--- /dev/null
+++ b/doc/ref/core.internal/html/timeout__encoding_8h.html
@@ -0,0 +1,185 @@
+<!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: src/core/transport/chttp2/timeout_encoding.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">timeout_encoding.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="string_8h_source.html">src/core/support/string.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="timeout__encoding_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a774d4de6aaa65433d6a318f611c00939"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8h.html#a774d4de6aaa65433d6a318f611c00939">GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE</a>&#160;&#160;&#160;(<a class="el" href="string_8h.html#a21406aaed4e32e895145541eabbad527">GPR_LTOA_MIN_BUFSIZE</a> + 1)</td></tr>
+<tr class="separator:a774d4de6aaa65433d6a318f611c00939"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aa4128995f3b3d4fe068c1635a85f7bcc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc">grpc_chttp2_encode_timeout</a> (<a class="el" href="structgpr__timespec.html">gpr_timespec</a> timeout, char *buffer)</td></tr>
+<tr class="separator:aa4128995f3b3d4fe068c1635a85f7bcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac96a9d21da277e6a790fa8ac5846b5d8"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8">grpc_chttp2_decode_timeout</a> (const char *buffer, <a class="el" href="structgpr__timespec.html">gpr_timespec</a> *timeout)</td></tr>
+<tr class="separator:ac96a9d21da277e6a790fa8ac5846b5d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a774d4de6aaa65433d6a318f611c00939"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE&#160;&#160;&#160;(<a class="el" href="string_8h.html#a21406aaed4e32e895145541eabbad527">GPR_LTOA_MIN_BUFSIZE</a> + 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="ac96a9d21da277e6a790fa8ac5846b5d8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_decode_timeout </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a> *&#160;</td>
+ <td class="paramname"><em>timeout</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa4128995f3b3d4fe068c1635a85f7bcc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_encode_timeout </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgpr__timespec.html">gpr_timespec</a>&#160;</td>
+ <td class="paramname"><em>timeout</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/timeout__encoding_8h_source.html b/doc/ref/core.internal/html/timeout__encoding_8h_source.html
new file mode 100644
index 0000000000..29d325181f
--- /dev/null
+++ b/doc/ref/core.internal/html/timeout__encoding_8h_source.html
@@ -0,0 +1,151 @@
+<!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: src/core/transport/chttp2/timeout_encoding.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">timeout_encoding.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="timeout__encoding_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_TIMEOUT_ENCODING_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_TIMEOUT_ENCODING_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="string_8h.html">src/core/support/string.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="timeout__encoding_8h.html#a774d4de6aaa65433d6a318f611c00939"> 40</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_TIMEOUT_ENCODE_MIN_BUFSIZE (GPR_LTOA_MIN_BUFSIZE + 1)</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* Encode/decode timeouts to the GRPC over HTTP2 format;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> encoding may round up arbitrarily */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc">grpc_chttp2_encode_timeout</a>(<a class="code" href="structgpr__timespec.html">gpr_timespec</a> timeout, <span class="keywordtype">char</span> *buffer);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keywordtype">int</span> <a class="code" href="timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8">grpc_chttp2_decode_timeout</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *buffer, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> *timeout);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_TIMEOUT_ENCODING_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="string_8h_html"><div class="ttname"><a href="string_8h.html">string.h</a></div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="timeout__encoding_8h_html_aa4128995f3b3d4fe068c1635a85f7bcc"><div class="ttname"><a href="timeout__encoding_8h.html#aa4128995f3b3d4fe068c1635a85f7bcc">grpc_chttp2_encode_timeout</a></div><div class="ttdeci">void grpc_chttp2_encode_timeout(gpr_timespec timeout, char *buffer)</div><div class="ttdef"><b>Definition:</b> timeout_encoding.c:119</div></div>
+<div class="ttc" id="timeout__encoding_8h_html_ac96a9d21da277e6a790fa8ac5846b5d8"><div class="ttname"><a href="timeout__encoding_8h.html#ac96a9d21da277e6a790fa8ac5846b5d8">grpc_chttp2_decode_timeout</a></div><div class="ttdeci">int grpc_chttp2_decode_timeout(const char *buffer, gpr_timespec *timeout)</div><div class="ttdef"><b>Definition:</b> timeout_encoding.c:138</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/timers_8h.html b/doc/ref/core.internal/html/timers_8h.html
new file mode 100644
index 0000000000..6e0b1ee737
--- /dev/null
+++ b/doc/ref/core.internal/html/timers_8h.html
@@ -0,0 +1,524 @@
+<!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: src/core/profiling/timers.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">timers.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="timers_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:acafc06612d7b046547ed80c18d519608"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#acafc06612d7b046547ed80c18d519608">GRPC_TIMER_MARK</a>(tag, id)</td></tr>
+<tr class="separator:acafc06612d7b046547ed80c18d519608"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4de2bf5918f608b72f3c426e4a43e7c8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#a4de2bf5918f608b72f3c426e4a43e7c8">GRPC_TIMER_IMPORTANT_MARK</a>(tag, id)</td></tr>
+<tr class="separator:a4de2bf5918f608b72f3c426e4a43e7c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abf4cfef22d1c79525994ba224ac13dba"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#abf4cfef22d1c79525994ba224ac13dba">GRPC_TIMER_BEGIN</a>(tag, id)</td></tr>
+<tr class="separator:abf4cfef22d1c79525994ba224ac13dba"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ada806da3afa32376e244dfeb65ec467b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#ada806da3afa32376e244dfeb65ec467b">GRPC_TIMER_END</a>(tag, id)</td></tr>
+<tr class="separator:ada806da3afa32376e244dfeb65ec467b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a3924e8ccd8dd2091f770739703718fe3"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3">grpc_profiling_tags</a> { <br/>
+&#160;&#160;<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a> = 1000000,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8">GRPC_PTAG_PROTO_SERIALIZE</a> = 100 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b">GRPC_PTAG_PROTO_DESERIALIZE</a> = 101 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129">GRPC_PTAG_HANDLE_READ</a> = 200 + GRPC_PTAG_IGNORE_THRESHOLD,
+<br/>
+&#160;&#160;<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472">GRPC_PTAG_SENDMSG</a> = 201 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77">GRPC_PTAG_RECVMSG</a> = 202 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627">GRPC_PTAG_POLL_FINISHED</a> = 203 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1">GRPC_PTAG_TCP_CB_WRITE</a> = 204 + GRPC_PTAG_IGNORE_THRESHOLD,
+<br/>
+&#160;&#160;<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f">GRPC_PTAG_TCP_WRITE</a> = 205 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a">GRPC_PTAG_CALL_ON_DONE_RECV</a> = 206 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61">GRPC_PTAG_CPP_CALL_CREATED</a> = 300 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e">GRPC_PTAG_CPP_PERFORM_OPS</a> = 301 + GRPC_PTAG_IGNORE_THRESHOLD,
+<br/>
+&#160;&#160;<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d">GRPC_PTAG_HTTP2_UNLOCK</a> = 401 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a">GRPC_PTAG_HTTP2_UNLOCK_CLEANUP</a> = 402 + GRPC_PTAG_IGNORE_THRESHOLD,
+<a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b">GRPC_PTAG_OTHER_BASE</a> = 1024
+<br/>
+ }</td></tr>
+<tr class="separator:a3924e8ccd8dd2091f770739703718fe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac34b4d619b9ed067e02e037b21a6feac"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac">grpc_timers_global_init</a> (void)</td></tr>
+<tr class="separator:ac34b4d619b9ed067e02e037b21a6feac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3464d3fdd0cc9ab2543195d5ee3fec13"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13">grpc_timers_global_destroy</a> (void)</td></tr>
+<tr class="separator:a3464d3fdd0cc9ab2543195d5ee3fec13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb9267f15f0db10c892ff52f8a5af746"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746">grpc_timer_add_mark</a> (int tag, const char *tagstr, void *id, const char *file, int line)</td></tr>
+<tr class="separator:aeb9267f15f0db10c892ff52f8a5af746"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86328e7d7fe3e9b15f5c9c3103f6f744"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744">grpc_timer_add_important_mark</a> (int tag, const char *tagstr, void *id, const char *file, int line)</td></tr>
+<tr class="separator:a86328e7d7fe3e9b15f5c9c3103f6f744"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9ad8a62da486b38462306e41127231ea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#a9ad8a62da486b38462306e41127231ea">grpc_timer_begin</a> (int tag, const char *tagstr, void *id, const char *file, int line)</td></tr>
+<tr class="separator:a9ad8a62da486b38462306e41127231ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a810b9be124a21ed5c4066f2e74112e74"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers_8h.html#a810b9be124a21ed5c4066f2e74112e74">grpc_timer_end</a> (int tag, const char *tagstr, void *id, const char *file, int line)</td></tr>
+<tr class="separator:a810b9be124a21ed5c4066f2e74112e74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="abf4cfef22d1c79525994ba224ac13dba"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_TIMER_BEGIN</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">id&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="ada806da3afa32376e244dfeb65ec467b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_TIMER_END</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">id&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a4de2bf5918f608b72f3c426e4a43e7c8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_TIMER_IMPORTANT_MARK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">id&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="acafc06612d7b046547ed80c18d519608"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_TIMER_MARK</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tag, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">id&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3">grpc_profiling_tags</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392"></a>GRPC_PTAG_IGNORE_THRESHOLD</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8"></a>GRPC_PTAG_PROTO_SERIALIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b"></a>GRPC_PTAG_PROTO_DESERIALIZE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129"></a>GRPC_PTAG_HANDLE_READ</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472"></a>GRPC_PTAG_SENDMSG</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77"></a>GRPC_PTAG_RECVMSG</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627"></a>GRPC_PTAG_POLL_FINISHED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1"></a>GRPC_PTAG_TCP_CB_WRITE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f"></a>GRPC_PTAG_TCP_WRITE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a"></a>GRPC_PTAG_CALL_ON_DONE_RECV</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61"></a>GRPC_PTAG_CPP_CALL_CREATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e"></a>GRPC_PTAG_CPP_PERFORM_OPS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d"></a>GRPC_PTAG_HTTP2_UNLOCK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a"></a>GRPC_PTAG_HTTP2_UNLOCK_CLEANUP</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b"></a>GRPC_PTAG_OTHER_BASE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a86328e7d7fe3e9b15f5c9c3103f6f744"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timer_add_important_mark </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>tagstr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb9267f15f0db10c892ff52f8a5af746"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timer_add_mark </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>tagstr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9ad8a62da486b38462306e41127231ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timer_begin </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>tagstr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a810b9be124a21ed5c4066f2e74112e74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timer_end </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>tagstr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>id</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3464d3fdd0cc9ab2543195d5ee3fec13"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timers_global_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac34b4d619b9ed067e02e037b21a6feac"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_timers_global_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/timers_8h_source.html b/doc/ref/core.internal/html/timers_8h_source.html
new file mode 100644
index 0000000000..a3e72942d6
--- /dev/null
+++ b/doc/ref/core.internal/html/timers_8h_source.html
@@ -0,0 +1,267 @@
+<!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: src/core/profiling/timers.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">timers.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="timers_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_CORE_PROFILING_TIMERS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CORE_PROFILING_TIMERS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac">grpc_timers_global_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13">grpc_timers_global_destroy</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746">grpc_timer_add_mark</a>(<span class="keywordtype">int</span> tag, <span class="keyword">const</span> <span class="keywordtype">char</span> *tagstr, <span class="keywordtype">void</span> *<span class="keywordtype">id</span>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744">grpc_timer_add_important_mark</a>(<span class="keywordtype">int</span> tag, <span class="keyword">const</span> <span class="keywordtype">char</span> *tagstr, <span class="keywordtype">void</span> *<span class="keywordtype">id</span>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timers_8h.html#a9ad8a62da486b38462306e41127231ea">grpc_timer_begin</a>(<span class="keywordtype">int</span> tag, <span class="keyword">const</span> <span class="keywordtype">char</span> *tagstr, <span class="keywordtype">void</span> *<span class="keywordtype">id</span>, <span class="keyword">const</span> <span class="keywordtype">char</span> *file,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keywordtype">void</span> <a class="code" href="timers_8h.html#a810b9be124a21ed5c4066f2e74112e74">grpc_timer_end</a>(<span class="keywordtype">int</span> tag, <span class="keyword">const</span> <span class="keywordtype">char</span> *tagstr, <span class="keywordtype">void</span> *<span class="keywordtype">id</span>, <span class="keyword">const</span> <span class="keywordtype">char</span> *file,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">int</span> line);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3"> 53</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3">grpc_profiling_tags</a> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">/* Any GRPC_PTAG_* &gt;= than the threshold won&#39;t generate any profiling mark. */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392"> 55</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a> = 1000000,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">/* Re. Protos. */</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8"> 58</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8">GRPC_PTAG_PROTO_SERIALIZE</a> = 100 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b"> 59</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b">GRPC_PTAG_PROTO_DESERIALIZE</a> = 101 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">/* Re. sockets. */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129"> 62</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129">GRPC_PTAG_HANDLE_READ</a> = 200 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472"> 63</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472">GRPC_PTAG_SENDMSG</a> = 201 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77"> 64</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77">GRPC_PTAG_RECVMSG</a> = 202 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627"> 65</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627">GRPC_PTAG_POLL_FINISHED</a> = 203 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1"> 66</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1">GRPC_PTAG_TCP_CB_WRITE</a> = 204 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f"> 67</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f">GRPC_PTAG_TCP_WRITE</a> = 205 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a"> 68</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a">GRPC_PTAG_CALL_ON_DONE_RECV</a> = 206 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/* C++ */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61"> 71</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61">GRPC_PTAG_CPP_CALL_CREATED</a> = 300 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e"> 72</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e">GRPC_PTAG_CPP_PERFORM_OPS</a> = 301 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">/* Transports */</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d"> 75</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d">GRPC_PTAG_HTTP2_UNLOCK</a> = 401 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a"> 76</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a">GRPC_PTAG_HTTP2_UNLOCK_CLEANUP</a> = 402 + <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a>,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">/* &gt; 1024 Unassigned reserved. For any miscellaneous use.</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> * Use addition to generate tags from this base or take advantage of the 10</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> * zero&#39;d bits for OR-ing. */</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b"> 81</a></span>&#160; <a class="code" href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b">GRPC_PTAG_OTHER_BASE</a> = 1024</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;};</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#if !(defined(GRPC_STAP_PROFILER) + defined(GRPC_BASIC_PROFILER))</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span><span class="comment">/* No profiling. No-op all the things. */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="timers_8h.html#acafc06612d7b046547ed80c18d519608"> 86</a></span>&#160;<span class="preprocessor">#define GRPC_TIMER_MARK(tag, id) \</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="timers_8h.html#a4de2bf5918f608b72f3c426e4a43e7c8"> 90</a></span>&#160;<span class="preprocessor">#define GRPC_TIMER_IMPORTANT_MARK(tag, id) \</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="timers_8h.html#abf4cfef22d1c79525994ba224ac13dba"> 94</a></span>&#160;<span class="preprocessor">#define GRPC_TIMER_BEGIN(tag, id) \</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="timers_8h.html#ada806da3afa32376e244dfeb65ec467b"> 98</a></span>&#160;<span class="preprocessor">#define GRPC_TIMER_END(tag, id) \</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">#else </span><span class="comment">/* at least one profiler requested... */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor"></span><span class="comment">/* ... hopefully only one. */</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#if defined(GRPC_STAP_PROFILER) &amp;&amp; defined(GRPC_BASIC_PROFILER)</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error &quot;GRPC_STAP_PROFILER and GRPC_BASIC_PROFILER are mutually exclusive.&quot;</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">/* Generic profiling interface. */</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor">#define GRPC_TIMER_MARK(tag, id) \</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"> if (tag &lt; GRPC_PTAG_IGNORE_THRESHOLD) { \</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor"> grpc_timer_add_mark(tag, #tag, ((void *)(gpr_intptr)(id)), __FILE__, \</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor"> __LINE__); \</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="preprocessor">#define GRPC_TIMER_IMPORTANT_MARK(tag, id) \</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor"> if (tag &lt; GRPC_PTAG_IGNORE_THRESHOLD) { \</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor"> grpc_timer_add_important_mark(tag, #tag, ((void *)(gpr_intptr)(id)), \</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor"> __FILE__, __LINE__); \</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor">#define GRPC_TIMER_BEGIN(tag, id) \</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="preprocessor"> if (tag &lt; GRPC_PTAG_IGNORE_THRESHOLD) { \</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor"> grpc_timer_begin(tag, #tag, ((void *)(gpr_intptr)(id)), __FILE__, \</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor"> __LINE__); \</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="preprocessor">#define GRPC_TIMER_END(tag, id) \</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="preprocessor"> if (tag &lt; GRPC_PTAG_IGNORE_THRESHOLD) { \</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor"> grpc_timer_end(tag, #tag, ((void *)(gpr_intptr)(id)), __FILE__, __LINE__); \</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="preprocessor"> }</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="preprocessor">#ifdef GRPC_STAP_PROFILER</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="preprocessor"></span><span class="comment">/* Empty placeholder for now. */</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_STAP_PROFILER */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor">#ifdef GRPC_BASIC_PROFILER</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="preprocessor"></span><span class="comment">/* Empty placeholder for now. */</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_BASIC_PROFILER */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* at least one profiler requested. */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_CORE_PROFILING_TIMERS_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="timers_8h_html_aeb9267f15f0db10c892ff52f8a5af746"><div class="ttname"><a href="timers_8h.html#aeb9267f15f0db10c892ff52f8a5af746">grpc_timer_add_mark</a></div><div class="ttdeci">void grpc_timer_add_mark(int tag, const char *tagstr, void *id, const char *file, int line)</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a2bf041e644a7237941cf8fb3bd28833e">GRPC_PTAG_CPP_PERFORM_OPS</a></div><div class="ttdef"><b>Definition:</b> timers.h:72</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a4979b4e88e202c76b258e4fae28f3129">GRPC_PTAG_HANDLE_READ</a></div><div class="ttdef"><b>Definition:</b> timers.h:62</div></div>
+<div class="ttc" id="timers_8h_html_a9ad8a62da486b38462306e41127231ea"><div class="ttname"><a href="timers_8h.html#a9ad8a62da486b38462306e41127231ea">grpc_timer_begin</a></div><div class="ttdeci">void grpc_timer_begin(int tag, const char *tagstr, void *id, const char *file, int line)</div></div>
+<div class="ttc" id="timers_8h_html_a86328e7d7fe3e9b15f5c9c3103f6f744"><div class="ttname"><a href="timers_8h.html#a86328e7d7fe3e9b15f5c9c3103f6f744">grpc_timer_add_important_mark</a></div><div class="ttdeci">void grpc_timer_add_important_mark(int tag, const char *tagstr, void *id, const char *file, int line)</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a5fa98a7f52f47db42e01914db0b05392">GRPC_PTAG_IGNORE_THRESHOLD</a></div><div class="ttdef"><b>Definition:</b> timers.h:55</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a3b48f83e662bfe6d123d728874f4cc77">GRPC_PTAG_RECVMSG</a></div><div class="ttdef"><b>Definition:</b> timers.h:64</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a39ca9f08c4cc6da08ae53a9d66581f61">GRPC_PTAG_CPP_CALL_CREATED</a></div><div class="ttdef"><b>Definition:</b> timers.h:71</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ad0521181369fe47d134a851aeb882e8a">GRPC_PTAG_CALL_ON_DONE_RECV</a></div><div class="ttdef"><b>Definition:</b> timers.h:68</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3ae3193d2165aaa3802bb3fca59e3ca8e1">GRPC_PTAG_TCP_CB_WRITE</a></div><div class="ttdef"><b>Definition:</b> timers.h:66</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a8564fee65389d96e4b5b4bedcedd2627">GRPC_PTAG_POLL_FINISHED</a></div><div class="ttdef"><b>Definition:</b> timers.h:65</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3afdd4d7916a4a16fdbb47c3a6cb265e4d">GRPC_PTAG_HTTP2_UNLOCK</a></div><div class="ttdef"><b>Definition:</b> timers.h:75</div></div>
+<div class="ttc" id="timers_8h_html_a3464d3fdd0cc9ab2543195d5ee3fec13"><div class="ttname"><a href="timers_8h.html#a3464d3fdd0cc9ab2543195d5ee3fec13">grpc_timers_global_destroy</a></div><div class="ttdeci">void grpc_timers_global_destroy(void)</div><div class="ttdef"><b>Definition:</b> basic_timers.c:141</div></div>
+<div class="ttc" id="timers_8h_html_a810b9be124a21ed5c4066f2e74112e74"><div class="ttname"><a href="timers_8h.html#a810b9be124a21ed5c4066f2e74112e74">grpc_timer_end</a></div><div class="ttdeci">void grpc_timer_end(int tag, const char *tagstr, void *id, const char *file, int line)</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a07f5a2d9703f71ede732477257854472">GRPC_PTAG_SENDMSG</a></div><div class="ttdef"><b>Definition:</b> timers.h:63</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a52fe62d30066246868ec8aee932c24e8">GRPC_PTAG_PROTO_SERIALIZE</a></div><div class="ttdef"><b>Definition:</b> timers.h:58</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a15afe239273be6ec485aea2aff25fb8b">GRPC_PTAG_OTHER_BASE</a></div><div class="ttdef"><b>Definition:</b> timers.h:81</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aac2e05e178ae0a1dba7f00723355ba4b">GRPC_PTAG_PROTO_DESERIALIZE</a></div><div class="ttdef"><b>Definition:</b> timers.h:59</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3aa32b263c7af6b5be92daa442c772618a">GRPC_PTAG_HTTP2_UNLOCK_CLEANUP</a></div><div class="ttdef"><b>Definition:</b> timers.h:76</div></div>
+<div class="ttc" id="timers_8h_html_ac34b4d619b9ed067e02e037b21a6feac"><div class="ttname"><a href="timers_8h.html#ac34b4d619b9ed067e02e037b21a6feac">grpc_timers_global_init</a></div><div class="ttdeci">void grpc_timers_global_init(void)</div><div class="ttdef"><b>Definition:</b> basic_timers.c:140</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3">grpc_profiling_tags</a></div><div class="ttdeci">grpc_profiling_tags</div><div class="ttdef"><b>Definition:</b> timers.h:53</div></div>
+<div class="ttc" id="timers_8h_html_a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f"><div class="ttname"><a href="timers_8h.html#a3924e8ccd8dd2091f770739703718fe3a1cf6704d24c17b339a283c1e1f86ae0f">GRPC_PTAG_TCP_WRITE</a></div><div class="ttdef"><b>Definition:</b> timers.h:67</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/timers__preciseclock_8h.html b/doc/ref/core.internal/html/timers__preciseclock_8h.html
new file mode 100644
index 0000000000..40c8cb6d1e
--- /dev/null
+++ b/doc/ref/core.internal/html/timers__preciseclock_8h.html
@@ -0,0 +1,168 @@
+<!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: src/core/profiling/timers_preciseclock.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">timers_preciseclock.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="sync_8h_source.html">grpc/support/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc/support/time.h</a>&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+</div>
+<p><a href="timers__preciseclock_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__precise__clock.html">grpc_precise_clock</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a8cbb7d29a1f4fcded6337c7d9c61598d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers__preciseclock_8h.html#a8cbb7d29a1f4fcded6337c7d9c61598d">GRPC_PRECISE_CLOCK_FORMAT</a>&#160;&#160;&#160;&quot;%ld.%09d&quot;</td></tr>
+<tr class="separator:a8cbb7d29a1f4fcded6337c7d9c61598d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad8cb0fe2236a54829f5c38cd508305c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers__preciseclock_8h.html#ad8cb0fe2236a54829f5c38cd508305c5">GRPC_PRECISE_CLOCK_PRINTF_ARGS</a>(clk)&#160;&#160;&#160;(clk)-&gt;clock.tv_sec, (clk)-&gt;clock.tv_nsec</td></tr>
+<tr class="separator:ad8cb0fe2236a54829f5c38cd508305c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a4f27cae71a2187ed049a3905cae591e2"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__precise__clock.html">grpc_precise_clock</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2">grpc_precise_clock</a></td></tr>
+<tr class="separator:a4f27cae71a2187ed049a3905cae591e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a8cbb7d29a1f4fcded6337c7d9c61598d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_PRECISE_CLOCK_FORMAT&#160;&#160;&#160;&quot;%ld.%09d&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad8cb0fe2236a54829f5c38cd508305c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_PRECISE_CLOCK_PRINTF_ARGS</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">clk</td><td>)</td>
+ <td>&#160;&#160;&#160;(clk)-&gt;clock.tv_sec, (clk)-&gt;clock.tv_nsec</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a4f27cae71a2187ed049a3905cae591e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__precise__clock.html">grpc_precise_clock</a> <a class="el" href="structgrpc__precise__clock.html">grpc_precise_clock</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/timers__preciseclock_8h_source.html b/doc/ref/core.internal/html/timers__preciseclock_8h_source.html
new file mode 100644
index 0000000000..b9cd95606d
--- /dev/null
+++ b/doc/ref/core.internal/html/timers__preciseclock_8h_source.html
@@ -0,0 +1,207 @@
+<!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: src/core/profiling/timers_preciseclock.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_73fa28a1e06161e89b964f34cd202aba.html">profiling</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">timers_preciseclock.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="timers__preciseclock_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_CORE_PROFILING_TIMERS_PRECISECLOCK_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CORE_PROFILING_TIMERS_PRECISECLOCK_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc/support/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc/support/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;stdio.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#ifdef GRPC_TIMERS_RDTSC</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> <a class="code" href="timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2">grpc_precise_clock</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#if defined(__i386__)</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> grpc_precise_clock_now(<a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> *clk) {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> ret;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; __asm__ <span class="keyword">volatile</span>(<span class="stringliteral">&quot;rdtsc&quot;</span> : <span class="stringliteral">&quot;=A&quot;</span>(ret));</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; *clk = ret;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;}</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">// ----------------------------------------------------------------</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#elif defined(__x86_64__) || defined(__amd64__)</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> grpc_precise_clock_now(<a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> *clk) {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> low, high;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; __asm__ <span class="keyword">volatile</span>(<span class="stringliteral">&quot;rdtsc&quot;</span> : <span class="stringliteral">&quot;=a&quot;</span>(low), <span class="stringliteral">&quot;=d&quot;</span>(high));</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; *clk = (high &lt;&lt; 32) | low;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;}</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"></span><span class="keyword">static</span> <a class="code" href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a> precise_clock_init = <a class="code" href="sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666">GPR_ONCE_INIT</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">static</span> <span class="keywordtype">double</span> cycles_per_second = 0.0;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> grpc_precise_clock_init() {</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; time_t start = time(NULL);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> start_time;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> end_time;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">while</span> (time(NULL) == start)</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; ;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; grpc_precise_clock_now(&amp;start_time);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">while</span> (time(NULL) == start + 1)</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; ;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; grpc_precise_clock_now(&amp;end_time);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; cycles_per_second = end_time - start_time;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;}</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">static</span> <span class="keywordtype">double</span> grpc_precise_clock_scaling_factor() {</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">gpr_once_init</a>(&amp;precise_clock_init, grpc_precise_clock_init);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> 1e6 / cycles_per_second;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;}</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#define GRPC_PRECISE_CLOCK_FORMAT &quot;%f&quot;</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_PRECISE_CLOCK_PRINTF_ARGS(clk) \</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"> (*(clk)*grpc_precise_clock_scaling_factor())</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2"> 80</a></span>&#160;<span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> <a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structgrpc__precise__clock.html"> 81</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a> {</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75"> 82</a></span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> <a class="code" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">clock</a>;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;};</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">static</span> <span class="keywordtype">void</span> grpc_precise_clock_now(<a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a>* clk) {</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; clk-&gt;<a class="code" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">clock</a> = <a class="code" href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">gpr_now</a>(<a class="code" href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">GPR_CLOCK_REALTIME</a>);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;}</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="timers__preciseclock_8h.html#a8cbb7d29a1f4fcded6337c7d9c61598d"> 87</a></span>&#160;<span class="preprocessor">#define GRPC_PRECISE_CLOCK_FORMAT &quot;%ld.%09d&quot;</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="timers__preciseclock_8h.html#ad8cb0fe2236a54829f5c38cd508305c5"> 88</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_PRECISE_CLOCK_PRINTF_ARGS(clk) \</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"> (clk)-&gt;clock.tv_sec, (clk)-&gt;clock.tv_nsec</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> grpc_precise_clock_print(<span class="keyword">const</span> <a class="code" href="structgrpc__precise__clock.html">grpc_precise_clock</a>* clk, FILE* fp) {</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; fprintf(fp, <span class="stringliteral">&quot;%ld.%09d&quot;</span>, clk-&gt;<a class="code" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">clock</a>.<a class="code" href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">tv_sec</a>, clk-&gt;<a class="code" href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">clock</a>.<a class="code" href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">tv_nsec</a>);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;}</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_TIMERS_RDTSC */</span><span class="preprocessor"></span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_CORE_PROFILING_TIMERS_PRECISECLOCK_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structgpr__timespec_html_af9294cf0049fd33c76ad2da925d9051e"><div class="ttname"><a href="structgpr__timespec.html#af9294cf0049fd33c76ad2da925d9051e">gpr_timespec::tv_sec</a></div><div class="ttdeci">time_t tv_sec</div><div class="ttdef"><b>Definition:</b> time.h:61</div></div>
+<div class="ttc" id="sync_8h_html_ad5c88872723a129b09200b1892d2323f"><div class="ttname"><a href="sync_8h.html#ad5c88872723a129b09200b1892d2323f">gpr_once_init</a></div><div class="ttdeci">void gpr_once_init(gpr_once *once, void(*init_routine)(void))</div></div>
+<div class="ttc" id="time_8h_html_a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746"><div class="ttname"><a href="time_8h.html#a2441bd1fbe80e86ff741e0757725b281a685c67eccb0b9e3de6311b1e1330a746">GPR_CLOCK_REALTIME</a></div><div class="ttdef"><b>Definition:</b> time.h:54</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="timers__preciseclock_8h_html_a4f27cae71a2187ed049a3905cae591e2"><div class="ttname"><a href="timers__preciseclock_8h.html#a4f27cae71a2187ed049a3905cae591e2">grpc_precise_clock</a></div><div class="ttdeci">struct grpc_precise_clock grpc_precise_clock</div><div class="ttdef"><b>Definition:</b> timers_preciseclock.h:80</div></div>
+<div class="ttc" id="sync__posix_8h_html_a28731dc17a4158343f58f453a4d5e37f"><div class="ttname"><a href="sync__posix_8h.html#a28731dc17a4158343f58f453a4d5e37f">gpr_once</a></div><div class="ttdeci">pthread_once_t gpr_once</div><div class="ttdef"><b>Definition:</b> sync_posix.h:43</div></div>
+<div class="ttc" id="structgrpc__precise__clock_html_a1200f8fec2cdf0a60e482b79b25adb75"><div class="ttname"><a href="structgrpc__precise__clock.html#a1200f8fec2cdf0a60e482b79b25adb75">grpc_precise_clock::clock</a></div><div class="ttdeci">gpr_timespec clock</div><div class="ttdef"><b>Definition:</b> timers_preciseclock.h:82</div></div>
+<div class="ttc" id="structgpr__timespec_html_ac326c2133cd003cb206715cf5f500268"><div class="ttname"><a href="structgpr__timespec.html#ac326c2133cd003cb206715cf5f500268">gpr_timespec::tv_nsec</a></div><div class="ttdeci">int tv_nsec</div><div class="ttdef"><b>Definition:</b> time.h:62</div></div>
+<div class="ttc" id="sync__posix_8h_html_a8edd7eb4f6860a4f79defbad49c35666"><div class="ttname"><a href="sync__posix_8h.html#a8edd7eb4f6860a4f79defbad49c35666">GPR_ONCE_INIT</a></div><div class="ttdeci">#define GPR_ONCE_INIT</div><div class="ttdef"><b>Definition:</b> sync_posix.h:45</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="time_8h_html_adf5debcac2bc854e733ca2dec2a1ff19"><div class="ttname"><a href="time_8h.html#adf5debcac2bc854e733ca2dec2a1ff19">gpr_now</a></div><div class="ttdeci">gpr_timespec gpr_now(gpr_clock_type clock)</div></div>
+<div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:60</div></div>
+<div class="ttc" id="structgrpc__precise__clock_html"><div class="ttname"><a href="structgrpc__precise__clock.html">grpc_precise_clock</a></div><div class="ttdef"><b>Definition:</b> timers_preciseclock.h:81</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tls_8h.html b/doc/ref/core.internal/html/tls_8h.html
new file mode 100644
index 0000000000..6b42949daa
--- /dev/null
+++ b/doc/ref/core.internal/html/tls_8h.html
@@ -0,0 +1,102 @@
+<!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: include/grpc/support/tls.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tls.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="tls_8h_source.html">Go to the source code of this file.</a></p>
+</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>
diff --git a/doc/ref/core.internal/html/tls_8h_source.html b/doc/ref/core.internal/html/tls_8h_source.html
new file mode 100644
index 0000000000..fbac6319c3
--- /dev/null
+++ b/doc/ref/core.internal/html/tls_8h_source.html
@@ -0,0 +1,180 @@
+<!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: include/grpc/support/tls.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tls.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tls_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_TLS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_TLS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Thread local storage.</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> A minimal wrapper that should be implementable across many compilers,</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> and implementable efficiently across most modern compilers.</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> Thread locals have type gpr_intptr.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> Declaring a thread local variable &#39;foo&#39;:</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> GPR_TLS_DECL(foo);</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> Thread locals always have static scope.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> Initializing a thread local (must be done at library initialization </span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> time):</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> gpr_tls_init(&amp;foo);</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> Destroying a thread local:</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> gpr_tls_destroy(&amp;foo);</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> Setting a thread local (returns new_value):</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> gpr_tls_set(&amp;foo, new_value);</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> Accessing a thread local:</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> current_value = gpr_tls_get(&amp;foo, value); </span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> ALL functions here may be implemented as macros. */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#ifdef GPR_GCC_TLS</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="tls__gcc_8h.html">grpc/support/tls_gcc.h</a>&gt;</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#ifdef GPR_MSVC_TLS</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="tls__msvc_8h.html">grpc/support/tls_msvc.h</a>&gt;</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#ifdef GPR_PTHREAD_TLS</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="tls__pthread_8h.html">grpc/support/tls_pthread.h</a>&gt;</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="tls__pthread_8h_html"><div class="ttname"><a href="tls__pthread_8h.html">tls_pthread.h</a></div></div>
+<div class="ttc" id="tls__msvc_8h_html"><div class="ttname"><a href="tls__msvc_8h.html">tls_msvc.h</a></div></div>
+<div class="ttc" id="tls__gcc_8h_html"><div class="ttname"><a href="tls__gcc_8h.html">tls_gcc.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tls__gcc_8h.html b/doc/ref/core.internal/html/tls__gcc_8h.html
new file mode 100644
index 0000000000..d63b581770
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__gcc_8h.html
@@ -0,0 +1,214 @@
+<!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: include/grpc/support/tls_gcc.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">tls_gcc.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="tls__gcc_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__gcc__thread__local.html">gpr_gcc_thread_local</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab2c3baa4e4ceb366668aaf51379340fd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__gcc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">GPR_TLS_DECL</a>(name)&#160;&#160;&#160;static __thread struct <a class="el" href="structgpr__gcc__thread__local.html">gpr_gcc_thread_local</a> name = {0}</td></tr>
+<tr class="separator:ab2c3baa4e4ceb366668aaf51379340fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43768a42ff705cc028b4a483dc3b65c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__gcc_8h.html#a43768a42ff705cc028b4a483dc3b65c5">gpr_tls_init</a>(tls)&#160;&#160;&#160;do {} while (0)</td></tr>
+<tr class="separator:a43768a42ff705cc028b4a483dc3b65c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a187108e1078d2ce05388cb17bc59ce74"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__gcc_8h.html#a187108e1078d2ce05388cb17bc59ce74">gpr_tls_destroy</a>(tls)&#160;&#160;&#160;do {} while (0)</td></tr>
+<tr class="separator:a187108e1078d2ce05388cb17bc59ce74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8f01b3e40178b80d098650f42c529e7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__gcc_8h.html#aa8f01b3e40178b80d098650f42c529e7">gpr_tls_set</a>(tls, new_value)&#160;&#160;&#160;(((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) = (new_value))</td></tr>
+<tr class="separator:aa8f01b3e40178b80d098650f42c529e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9aa9e55eddbe7fed424526c23e1b55a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__gcc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">gpr_tls_get</a>(tls)&#160;&#160;&#160;((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a9aa9e55eddbe7fed424526c23e1b55a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ab2c3baa4e4ceb366668aaf51379340fd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_TLS_DECL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">name</td><td>)</td>
+ <td>&#160;&#160;&#160;static __thread struct <a class="el" href="structgpr__gcc__thread__local.html">gpr_gcc_thread_local</a> name = {0}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a187108e1078d2ce05388cb17bc59ce74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_destroy</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;do {} while (0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9aa9e55eddbe7fed424526c23e1b55a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_get</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43768a42ff705cc028b4a483dc3b65c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_init</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;do {} while (0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8f01b3e40178b80d098650f42c529e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_set</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">new_value&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) = (new_value))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tls__gcc_8h_source.html b/doc/ref/core.internal/html/tls__gcc_8h_source.html
new file mode 100644
index 0000000000..4840e5535a
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__gcc_8h_source.html
@@ -0,0 +1,154 @@
+<!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: include/grpc/support/tls_gcc.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tls_gcc.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tls__gcc_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_TLS_GCC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_TLS_GCC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Thread local storage based on gcc compiler primitives.</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> #include tls.h to use this - and see that file for documentation */</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgpr__gcc__thread__local.html"> 40</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgpr__gcc__thread__local.html">gpr_gcc_thread_local</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1"> 41</a></span>&#160; <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1">value</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;};</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="tls__gcc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd"> 44</a></span>&#160;<span class="preprocessor">#define GPR_TLS_DECL(name) \</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"> static __thread struct gpr_gcc_thread_local name = {0}</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="tls__gcc_8h.html#a43768a42ff705cc028b4a483dc3b65c5"> 47</a></span>&#160;<span class="preprocessor">#define gpr_tls_init(tls) do {} while (0)</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="tls__gcc_8h.html#a187108e1078d2ce05388cb17bc59ce74"> 48</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_destroy(tls) do {} while (0)</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="tls__gcc_8h.html#aa8f01b3e40178b80d098650f42c529e7"> 49</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_set(tls, new_value) (((tls)-&gt;value) = (new_value))</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="tls__gcc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3"> 50</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_get(tls) ((tls)-&gt;value)</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="structgpr__gcc__thread__local_html"><div class="ttname"><a href="structgpr__gcc__thread__local.html">gpr_gcc_thread_local</a></div><div class="ttdef"><b>Definition:</b> tls_gcc.h:40</div></div>
+<div class="ttc" id="structgpr__gcc__thread__local_html_a057ec2885013c01ce37fffc6d9afece1"><div class="ttname"><a href="structgpr__gcc__thread__local.html#a057ec2885013c01ce37fffc6d9afece1">gpr_gcc_thread_local::value</a></div><div class="ttdeci">gpr_intptr value</div><div class="ttdef"><b>Definition:</b> tls_gcc.h:41</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tls__msvc_8h.html b/doc/ref/core.internal/html/tls__msvc_8h.html
new file mode 100644
index 0000000000..66367553a1
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__msvc_8h.html
@@ -0,0 +1,214 @@
+<!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: include/grpc/support/tls_msvc.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">tls_msvc.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="tls__msvc_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__msvc__thread__local.html">gpr_msvc_thread_local</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab2c3baa4e4ceb366668aaf51379340fd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__msvc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">GPR_TLS_DECL</a>(name)&#160;&#160;&#160;static __declspec(thread) struct <a class="el" href="structgpr__msvc__thread__local.html">gpr_msvc_thread_local</a> name = {0}</td></tr>
+<tr class="separator:ab2c3baa4e4ceb366668aaf51379340fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43768a42ff705cc028b4a483dc3b65c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__msvc_8h.html#a43768a42ff705cc028b4a483dc3b65c5">gpr_tls_init</a>(tls)&#160;&#160;&#160;do {} while (0)</td></tr>
+<tr class="separator:a43768a42ff705cc028b4a483dc3b65c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a187108e1078d2ce05388cb17bc59ce74"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__msvc_8h.html#a187108e1078d2ce05388cb17bc59ce74">gpr_tls_destroy</a>(tls)&#160;&#160;&#160;do {} while (0)</td></tr>
+<tr class="separator:a187108e1078d2ce05388cb17bc59ce74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8f01b3e40178b80d098650f42c529e7"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__msvc_8h.html#aa8f01b3e40178b80d098650f42c529e7">gpr_tls_set</a>(tls, new_value)&#160;&#160;&#160;(((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) = (new_value))</td></tr>
+<tr class="separator:aa8f01b3e40178b80d098650f42c529e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9aa9e55eddbe7fed424526c23e1b55a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__msvc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">gpr_tls_get</a>(tls)&#160;&#160;&#160;((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a9aa9e55eddbe7fed424526c23e1b55a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ab2c3baa4e4ceb366668aaf51379340fd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_TLS_DECL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">name</td><td>)</td>
+ <td>&#160;&#160;&#160;static __declspec(thread) struct <a class="el" href="structgpr__msvc__thread__local.html">gpr_msvc_thread_local</a> name = {0}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a187108e1078d2ce05388cb17bc59ce74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_destroy</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;do {} while (0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9aa9e55eddbe7fed424526c23e1b55a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_get</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43768a42ff705cc028b4a483dc3b65c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_init</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;do {} while (0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8f01b3e40178b80d098650f42c529e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_set</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">new_value&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(((tls)-&gt;<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>) = (new_value))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tls__msvc_8h_source.html b/doc/ref/core.internal/html/tls__msvc_8h_source.html
new file mode 100644
index 0000000000..d2eed0386e
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__msvc_8h_source.html
@@ -0,0 +1,154 @@
+<!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: include/grpc/support/tls_msvc.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tls_msvc.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tls__msvc_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_TLS_GCC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_TLS_GCC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* Thread local storage based on ms visual c compiler primitives.</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> #include tls.h to use this - and see that file for documentation */</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgpr__msvc__thread__local.html"> 40</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgpr__msvc__thread__local.html">gpr_msvc_thread_local</a> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798"> 41</a></span>&#160; <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798">value</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;};</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="tls__msvc_8h.html#ab2c3baa4e4ceb366668aaf51379340fd"> 44</a></span>&#160;<span class="preprocessor">#define GPR_TLS_DECL(name) \</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"> static __declspec(thread) struct gpr_msvc_thread_local name = {0}</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="tls__msvc_8h.html#a43768a42ff705cc028b4a483dc3b65c5"> 47</a></span>&#160;<span class="preprocessor">#define gpr_tls_init(tls) do {} while (0)</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="tls__msvc_8h.html#a187108e1078d2ce05388cb17bc59ce74"> 48</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_destroy(tls) do {} while (0)</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="tls__msvc_8h.html#aa8f01b3e40178b80d098650f42c529e7"> 49</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_set(tls, new_value) (((tls)-&gt;value) = (new_value))</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="tls__msvc_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3"> 50</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_get(tls) ((tls)-&gt;value)</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="structgpr__msvc__thread__local_html_a0187c953da78c5a0620d75aaaaaa5798"><div class="ttname"><a href="structgpr__msvc__thread__local.html#a0187c953da78c5a0620d75aaaaaa5798">gpr_msvc_thread_local::value</a></div><div class="ttdeci">gpr_intptr value</div><div class="ttdef"><b>Definition:</b> tls_msvc.h:41</div></div>
+<div class="ttc" id="structgpr__msvc__thread__local_html"><div class="ttname"><a href="structgpr__msvc__thread__local.html">gpr_msvc_thread_local</a></div><div class="ttdef"><b>Definition:</b> tls_msvc.h:40</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/tls__pthread_8c.html b/doc/ref/core.internal/html/tls__pthread_8c.html
new file mode 100644
index 0000000000..3ac823897a
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__pthread_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/support/tls_pthread.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_9410f15740cc8f8ab312fa27ab494b45.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tls_pthread.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/tls__pthread_8h.html b/doc/ref/core.internal/html/tls__pthread_8h.html
new file mode 100644
index 0000000000..1e770a9bb5
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__pthread_8h.html
@@ -0,0 +1,221 @@
+<!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: include/grpc/support/tls_pthread.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">tls_pthread.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;pthread.h&gt;</code><br/>
+</div>
+<p><a href="tls__pthread_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab2c3baa4e4ceb366668aaf51379340fd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8h.html#ab2c3baa4e4ceb366668aaf51379340fd">GPR_TLS_DECL</a>(name)&#160;&#160;&#160;static struct <a class="el" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a> name = {0}</td></tr>
+<tr class="separator:ab2c3baa4e4ceb366668aaf51379340fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43768a42ff705cc028b4a483dc3b65c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8h.html#a43768a42ff705cc028b4a483dc3b65c5">gpr_tls_init</a>(tls)&#160;&#160;&#160;<a class="el" href="log_8h.html#a6ccf52ff690655cc22cd9d053650876f">GPR_ASSERT</a>(0 == pthread_key_create(&amp;(tls)-&gt;<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, NULL))</td></tr>
+<tr class="separator:a43768a42ff705cc028b4a483dc3b65c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a187108e1078d2ce05388cb17bc59ce74"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8h.html#a187108e1078d2ce05388cb17bc59ce74">gpr_tls_destroy</a>(tls)&#160;&#160;&#160;pthread_key_delete((tls)-&gt;<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>)</td></tr>
+<tr class="separator:a187108e1078d2ce05388cb17bc59ce74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9aa9e55eddbe7fed424526c23e1b55a3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3">gpr_tls_get</a>(tls)&#160;&#160;&#160;((<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)pthread_getspecific((tls)-&gt;<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>))</td></tr>
+<tr class="separator:a9aa9e55eddbe7fed424526c23e1b55a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a02e97731a7a6668a2cb73a7e791e93ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea">gpr_tls_set</a> (struct <a class="el" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a> *tls, <a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>)</td></tr>
+<tr class="separator:a02e97731a7a6668a2cb73a7e791e93ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ab2c3baa4e4ceb366668aaf51379340fd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_TLS_DECL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">name</td><td>)</td>
+ <td>&#160;&#160;&#160;static struct <a class="el" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a> name = {0}</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a187108e1078d2ce05388cb17bc59ce74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_destroy</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;pthread_key_delete((tls)-&gt;<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9aa9e55eddbe7fed424526c23e1b55a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_get</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;((<a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>)pthread_getspecific((tls)-&gt;<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43768a42ff705cc028b4a483dc3b65c5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define gpr_tls_init</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">tls</td><td>)</td>
+ <td>&#160;&#160;&#160;<a class="el" href="log_8h.html#a6ccf52ff690655cc22cd9d053650876f">GPR_ASSERT</a>(0 == pthread_key_create(&amp;(tls)-&gt;<a class="el" href="hpack__table_8c.html#acd3d88da3c0e0313c3645ff34f62f542">key</a>, NULL))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a02e97731a7a6668a2cb73a7e791e93ea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> gpr_tls_set </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a> *&#160;</td>
+ <td class="paramname"><em>tls</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a>&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/tls__pthread_8h_source.html b/doc/ref/core.internal/html/tls__pthread_8h_source.html
new file mode 100644
index 0000000000..9e6b259a8a
--- /dev/null
+++ b/doc/ref/core.internal/html/tls__pthread_8h_source.html
@@ -0,0 +1,165 @@
+<!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: include/grpc/support/tls_pthread.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">tls_pthread.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="tls__pthread_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_TLS_PTHREAD_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_TLS_PTHREAD_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="log_8h.html">grpc/support/log.h</a>&gt;</span> <span class="comment">/* for GPR_ASSERT */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment">/* Thread local storage based on pthread library calls.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> #include tls.h to use this - and see that file for documentation */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structgpr__pthread__thread__local.html"> 43</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a> {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece"> 44</a></span>&#160; pthread_key_t <a class="code" href="structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece">key</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;};</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="tls__pthread_8h.html#ab2c3baa4e4ceb366668aaf51379340fd"> 47</a></span>&#160;<span class="preprocessor">#define GPR_TLS_DECL(name) static struct gpr_pthread_thread_local name = {0}</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="tls__pthread_8h.html#a43768a42ff705cc028b4a483dc3b65c5"> 49</a></span>&#160;<span class="preprocessor">#define gpr_tls_init(tls) GPR_ASSERT(0 == pthread_key_create(&amp;(tls)-&gt;key, NULL))</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="tls__pthread_8h.html#a187108e1078d2ce05388cb17bc59ce74"> 50</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_destroy(tls) pthread_key_delete((tls)-&gt;key)</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="tls__pthread_8h.html#a9aa9e55eddbe7fed424526c23e1b55a3"> 51</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define gpr_tls_get(tls) ((gpr_intptr)pthread_getspecific((tls)-&gt;key))</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"></span><a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea">gpr_tls_set</a>(<span class="keyword">struct</span> <a class="code" href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a> *tls, <a class="code" href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a> <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="port__platform_8h_html_a72d9d0d00bd576cfc8eab61aaea76db2"><div class="ttname"><a href="port__platform_8h.html#a72d9d0d00bd576cfc8eab61aaea76db2">gpr_intptr</a></div><div class="ttdeci">intptr_t gpr_intptr</div><div class="ttdef"><b>Definition:</b> port_platform.h:312</div></div>
+<div class="ttc" id="tls__pthread_8h_html_a02e97731a7a6668a2cb73a7e791e93ea"><div class="ttname"><a href="tls__pthread_8h.html#a02e97731a7a6668a2cb73a7e791e93ea">gpr_tls_set</a></div><div class="ttdeci">gpr_intptr gpr_tls_set(struct gpr_pthread_thread_local *tls, gpr_intptr value)</div></div>
+<div class="ttc" id="structgpr__pthread__thread__local_html"><div class="ttname"><a href="structgpr__pthread__thread__local.html">gpr_pthread_thread_local</a></div><div class="ttdef"><b>Definition:</b> tls_pthread.h:43</div></div>
+<div class="ttc" id="structgpr__pthread__thread__local_html_a006cbb5f30eb7c7c53a99a19f242fece"><div class="ttname"><a href="structgpr__pthread__thread__local.html#a006cbb5f30eb7c7c53a99a19f242fece">gpr_pthread_thread_local::key</a></div><div class="ttdeci">pthread_key_t key</div><div class="ttdef"><b>Definition:</b> tls_pthread.h:44</div></div>
+<div class="ttc" id="log_8h_html"><div class="ttname"><a href="log_8h.html">log.h</a></div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/trace_8c.html b/doc/ref/core.internal/html/trace_8c.html
new file mode 100644
index 0000000000..a93a6be565
--- /dev/null
+++ b/doc/ref/core.internal/html/trace_8c.html
@@ -0,0 +1,234 @@
+<!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: src/core/debug/trace.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_5349cec9f9058ade8b7779c683443df9.html">debug</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">trace.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="trace_8h_source.html">src/core/debug/trace.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &quot;<a class="el" href="env_8h_source.html">src/core/support/env.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtracer.html">tracer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aff327d037f1cb69bc5c5c25a73b63104"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structtracer.html">tracer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8c.html#aff327d037f1cb69bc5c5c25a73b63104">tracer</a></td></tr>
+<tr class="separator:aff327d037f1cb69bc5c5c25a73b63104"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a082b7bb1ebe733f60bf2db0c7cd7b0db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8c.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">grpc_register_tracer</a> (const char *name, int *flag)</td></tr>
+<tr class="separator:a082b7bb1ebe733f60bf2db0c7cd7b0db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6875f9ce4490e731d36e872ab1b7d580"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8c.html#a6875f9ce4490e731d36e872ab1b7d580">grpc_tracer_init</a> (const char *env_var)</td></tr>
+<tr class="separator:a6875f9ce4490e731d36e872ab1b7d580"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5ced3b2457db3a480e13e6e268543d2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8c.html#ad5ced3b2457db3a480e13e6e268543d2">grpc_tracer_shutdown</a> (void)</td></tr>
+<tr class="separator:ad5ced3b2457db3a480e13e6e268543d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae6984d3f0c3b9bc9a47859fd4dddc350"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8c.html#ae6984d3f0c3b9bc9a47859fd4dddc350">grpc_tracer_set_enabled</a> (const char *name, int enabled)</td></tr>
+<tr class="memdesc:ae6984d3f0c3b9bc9a47859fd4dddc350"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable or disable a tracer. <a href="#ae6984d3f0c3b9bc9a47859fd4dddc350">More...</a><br/></td></tr>
+<tr class="separator:ae6984d3f0c3b9bc9a47859fd4dddc350"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="aff327d037f1cb69bc5c5c25a73b63104"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structtracer.html">tracer</a> <a class="el" href="structtracer.html">tracer</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a082b7bb1ebe733f60bf2db0c7cd7b0db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_register_tracer </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>flag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6875f9ce4490e731d36e872ab1b7d580"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tracer_init </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>env_var</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae6984d3f0c3b9bc9a47859fd4dddc350"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_tracer_set_enabled </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>enabled</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Enable or disable a tracer. </p>
+<p>Tracers (usually controlled by the environment variable GRPC_TRACE) allow printf-style debugging on GRPC internals, and are useful for tracking down problems in the field.</p>
+<p>Use of this function is not strictly thread-safe, but the thread-safety issues raised by it should not be of concern. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad5ced3b2457db3a480e13e6e268543d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tracer_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/trace_8h.html b/doc/ref/core.internal/html/trace_8h.html
new file mode 100644
index 0000000000..b9af85a30c
--- /dev/null
+++ b/doc/ref/core.internal/html/trace_8h.html
@@ -0,0 +1,173 @@
+<!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: src/core/debug/trace.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_5349cec9f9058ade8b7779c683443df9.html">debug</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">trace.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="trace_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a082b7bb1ebe733f60bf2db0c7cd7b0db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">grpc_register_tracer</a> (const char *name, int *flag)</td></tr>
+<tr class="separator:a082b7bb1ebe733f60bf2db0c7cd7b0db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8cd8af9cbe35acc74eac3a19db0ef2e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2">grpc_tracer_init</a> (const char *env_var_name)</td></tr>
+<tr class="separator:a8cd8af9cbe35acc74eac3a19db0ef2e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad5ced3b2457db3a480e13e6e268543d2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2">grpc_tracer_shutdown</a> (void)</td></tr>
+<tr class="separator:ad5ced3b2457db3a480e13e6e268543d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a082b7bb1ebe733f60bf2db0c7cd7b0db"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_register_tracer </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>flag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8cd8af9cbe35acc74eac3a19db0ef2e2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tracer_init </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>env_var_name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad5ced3b2457db3a480e13e6e268543d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_tracer_shutdown </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/trace_8h_source.html b/doc/ref/core.internal/html/trace_8h_source.html
new file mode 100644
index 0000000000..2bcbe87fb6
--- /dev/null
+++ b/doc/ref/core.internal/html/trace_8h_source.html
@@ -0,0 +1,146 @@
+<!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: src/core/debug/trace.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_5349cec9f9058ade8b7779c683443df9.html">debug</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">trace.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="trace_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_DEBUG_TRACE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_DEBUG_TRACE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keywordtype">void</span> <a class="code" href="trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">grpc_register_tracer</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keywordtype">int</span> *flag);</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keywordtype">void</span> <a class="code" href="trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2">grpc_tracer_init</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *env_var_name);</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keywordtype">void</span> <a class="code" href="trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2">grpc_tracer_shutdown</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_DEBUG_TRACE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="trace_8h_html_ad5ced3b2457db3a480e13e6e268543d2"><div class="ttname"><a href="trace_8h.html#ad5ced3b2457db3a480e13e6e268543d2">grpc_tracer_shutdown</a></div><div class="ttdeci">void grpc_tracer_shutdown(void)</div><div class="ttdef"><b>Definition:</b> trace.c:104</div></div>
+<div class="ttc" id="trace_8h_html_a8cd8af9cbe35acc74eac3a19db0ef2e2"><div class="ttname"><a href="trace_8h.html#a8cd8af9cbe35acc74eac3a19db0ef2e2">grpc_tracer_init</a></div><div class="ttdeci">void grpc_tracer_init(const char *env_var_name)</div><div class="ttdef"><b>Definition:</b> trace.c:96</div></div>
+<div class="ttc" id="trace_8h_html_a082b7bb1ebe733f60bf2db0c7cd7b0db"><div class="ttname"><a href="trace_8h.html#a082b7bb1ebe733f60bf2db0c7cd7b0db">grpc_register_tracer</a></div><div class="ttdeci">void grpc_register_tracer(const char *name, int *flag)</div><div class="ttdef"><b>Definition:</b> trace.c:50</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/transport_8c.html b/doc/ref/core.internal/html/transport_8c.html
new file mode 100644
index 0000000000..249cc5a19b
--- /dev/null
+++ b/doc/ref/core.internal/html/transport_8c.html
@@ -0,0 +1,344 @@
+<!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: src/core/transport/transport.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">transport.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="transport__impl_8h_source.html">src/core/transport/transport_impl.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a37d45eb0a1f7e25b4bf339a4ec5bc13d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">grpc_transport_stream_size</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:a37d45eb0a1f7e25b4bf339a4ec5bc13d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb3ef83552276a5161ff6733f8455ae1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#adb3ef83552276a5161ff6733f8455ae1">grpc_transport_destroy</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:adb3ef83552276a5161ff6733f8455ae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba013c9e53a24f223283fc78cb6ca6cc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#aba013c9e53a24f223283fc78cb6ca6cc">grpc_transport_init_stream</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, const void *server_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op)</td></tr>
+<tr class="separator:aba013c9e53a24f223283fc78cb6ca6cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81c2ae26b7109481d4538b48c15d5b1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#a81c2ae26b7109481d4538b48c15d5b1b">grpc_transport_perform_stream_op</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:a81c2ae26b7109481d4538b48c15d5b1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae52662de3568a1d961e60e83d28e2dc3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#ae52662de3568a1d961e60e83d28e2dc3">grpc_transport_perform_op</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:ae52662de3568a1d961e60e83d28e2dc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21223037b0bc6a92a9e058e20be1b0af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#a21223037b0bc6a92a9e058e20be1b0af">grpc_transport_destroy_stream</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream)</td></tr>
+<tr class="separator:a21223037b0bc6a92a9e058e20be1b0af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac32bf69379cb94e6f951a4ec45a6157e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#ac32bf69379cb94e6f951a4ec45a6157e">grpc_transport_get_peer</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:ac32bf69379cb94e6f951a4ec45a6157e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5aa9757a292d71026279316979b8e40"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#ac5aa9757a292d71026279316979b8e40">grpc_transport_stream_op_finish_with_failure</a> (<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:ac5aa9757a292d71026279316979b8e40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1deb9664db9760e156951542378fe11"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8c.html#ad1deb9664db9760e156951542378fe11">grpc_transport_stream_op_add_cancellation</a> (<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *message)</td></tr>
+<tr class="separator:ad1deb9664db9760e156951542378fe11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="adb3ef83552276a5161ff6733f8455ae1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a21223037b0bc6a92a9e058e20be1b0af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_destroy_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac32bf69379cb94e6f951a4ec45a6157e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_transport_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba013c9e53a24f223283fc78cb6ca6cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_transport_init_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>server_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>initial_op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae52662de3568a1d961e60e83d28e2dc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_perform_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a81c2ae26b7109481d4538b48c15d5b1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_perform_stream_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1deb9664db9760e156951542378fe11"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_stream_op_add_cancellation </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5aa9757a292d71026279316979b8e40"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_stream_op_finish_with_failure </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a37d45eb0a1f7e25b4bf339a4ec5bc13d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_transport_stream_size </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport_8h.html b/doc/ref/core.internal/html/transport_8h.html
new file mode 100644
index 0000000000..2fd84bb376
--- /dev/null
+++ b/doc/ref/core.internal/html/transport_8h.html
@@ -0,0 +1,568 @@
+<!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: src/core/transport/transport.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">transport.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stddef.h&gt;</code><br/>
+<code>#include &quot;<a class="el" href="pollset_8h_source.html">src/core/iomgr/pollset.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="pollset__set_8h_source.html">src/core/iomgr/pollset_set.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="stream__op_8h_source.html">src/core/transport/stream_op.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="channel_2context_8h_source.html">src/core/channel/context.h</a>&quot;</code><br/>
+</div>
+<p><a href="transport_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transport op: a set of operations to perform on a transport as a whole. <a href="structgrpc__transport__op.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7ba3f709ee3b451e434c67acf7fb7451"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__transport.html">grpc_transport</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a7ba3f709ee3b451e434c67acf7fb7451">grpc_transport</a></td></tr>
+<tr class="separator:a7ba3f709ee3b451e434c67acf7fb7451"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b37030fedc90baec5ff0f15c3e8449"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a></td></tr>
+<tr class="separator:a76b37030fedc90baec5ff0f15c3e8449"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2bffd8c4adc3f1131752a17710d8477"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#ad2bffd8c4adc3f1131752a17710d8477">grpc_stream_state</a></td></tr>
+<tr class="separator:ad2bffd8c4adc3f1131752a17710d8477"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a425321242c0f56ca08e74a4afcbdd017"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a425321242c0f56ca08e74a4afcbdd017">grpc_transport_stream_op</a></td></tr>
+<tr class="separator:a425321242c0f56ca08e74a4afcbdd017"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aae32d98b458fa93adbe5959dbcd6a7bf"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf">grpc_transport_op</a></td></tr>
+<tr class="memdesc:aae32d98b458fa93adbe5959dbcd6a7bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transport op: a set of operations to perform on a transport as a whole. <a href="#aae32d98b458fa93adbe5959dbcd6a7bf">More...</a><br/></td></tr>
+<tr class="separator:aae32d98b458fa93adbe5959dbcd6a7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a5988f9c4b3b23409cda5a38636d97f7b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> { <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76">GRPC_STREAM_OPEN</a>,
+<a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a">GRPC_STREAM_SEND_CLOSED</a>,
+<a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7">GRPC_STREAM_RECV_CLOSED</a>,
+<a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362">GRPC_STREAM_CLOSED</a>
+ }</td></tr>
+<tr class="separator:a5988f9c4b3b23409cda5a38636d97f7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a37d45eb0a1f7e25b4bf339a4ec5bc13d"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">grpc_transport_stream_size</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:a37d45eb0a1f7e25b4bf339a4ec5bc13d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba013c9e53a24f223283fc78cb6ca6cc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc">grpc_transport_init_stream</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, const void *server_data, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op)</td></tr>
+<tr class="separator:aba013c9e53a24f223283fc78cb6ca6cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a21223037b0bc6a92a9e058e20be1b0af"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af">grpc_transport_destroy_stream</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream)</td></tr>
+<tr class="separator:a21223037b0bc6a92a9e058e20be1b0af"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5aa9757a292d71026279316979b8e40"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#ac5aa9757a292d71026279316979b8e40">grpc_transport_stream_op_finish_with_failure</a> (<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:ac5aa9757a292d71026279316979b8e40"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1deb9664db9760e156951542378fe11"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#ad1deb9664db9760e156951542378fe11">grpc_transport_stream_op_add_cancellation</a> (<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, <a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *message)</td></tr>
+<tr class="separator:ad1deb9664db9760e156951542378fe11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a058362edba570c120d125091b3c006d2"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a058362edba570c120d125091b3c006d2">grpc_transport_stream_op_string</a> (<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:a058362edba570c120d125091b3c006d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81c2ae26b7109481d4538b48c15d5b1b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b">grpc_transport_perform_stream_op</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:a81c2ae26b7109481d4538b48c15d5b1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae52662de3568a1d961e60e83d28e2dc3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3">grpc_transport_perform_op</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *op)</td></tr>
+<tr class="separator:ae52662de3568a1d961e60e83d28e2dc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cd26899ca9b8bafd7a2ca6fe23e0bbc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc">grpc_transport_ping</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *cb)</td></tr>
+<tr class="separator:a0cd26899ca9b8bafd7a2ca6fe23e0bbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea30a551f2d7a27edd9ddc9441523818"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#aea30a551f2d7a27edd9ddc9441523818">grpc_transport_goaway</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, <a class="el" href="structgpr__slice.html">gpr_slice</a> debug_data)</td></tr>
+<tr class="separator:aea30a551f2d7a27edd9ddc9441523818"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a55b3f0b2d31060a902aa7517cecc704e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e">grpc_transport_close</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:a55b3f0b2d31060a902aa7517cecc704e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb3ef83552276a5161ff6733f8455ae1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#adb3ef83552276a5161ff6733f8455ae1">grpc_transport_destroy</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:adb3ef83552276a5161ff6733f8455ae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac32bf69379cb94e6f951a4ec45a6157e"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e">grpc_transport_get_peer</a> (<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport)</td></tr>
+<tr class="separator:ac32bf69379cb94e6f951a4ec45a6157e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a76b37030fedc90baec5ff0f15c3e8449"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> <a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad2bffd8c4adc3f1131752a17710d8477"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef enum <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7ba3f709ee3b451e434c67acf7fb7451"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__transport.html">grpc_transport</a> <a class="el" href="structgrpc__transport.html">grpc_transport</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aae32d98b458fa93adbe5959dbcd6a7bf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> <a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Transport op: a set of operations to perform on a transport as a whole. </p>
+
+</div>
+</div>
+<a class="anchor" id="a425321242c0f56ca08e74a4afcbdd017"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a5988f9c4b3b23409cda5a38636d97f7b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76"></a>GRPC_STREAM_OPEN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a"></a>GRPC_STREAM_SEND_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7"></a>GRPC_STREAM_RECV_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362"></a>GRPC_STREAM_CLOSED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a55b3f0b2d31060a902aa7517cecc704e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_close </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adb3ef83552276a5161ff6733f8455ae1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a21223037b0bc6a92a9e058e20be1b0af"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_destroy_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac32bf69379cb94e6f951a4ec45a6157e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_transport_get_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea30a551f2d7a27edd9ddc9441523818"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_goaway </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgpr__slice.html">gpr_slice</a>&#160;</td>
+ <td class="paramname"><em>debug_data</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba013c9e53a24f223283fc78cb6ca6cc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_transport_init_stream </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const void *&#160;</td>
+ <td class="paramname"><em>server_data</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>initial_op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae52662de3568a1d961e60e83d28e2dc3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_perform_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__op.html">grpc_transport_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a81c2ae26b7109481d4538b48c15d5b1b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_perform_stream_op </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0cd26899ca9b8bafd7a2ca6fe23e0bbc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_ping </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *&#160;</td>
+ <td class="paramname"><em>cb</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad1deb9664db9760e156951542378fe11"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_stream_op_add_cancellation </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;</td>
+ <td class="paramname"><em>message</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5aa9757a292d71026279316979b8e40"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_transport_stream_op_finish_with_failure </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a058362edba570c120d125091b3c006d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_transport_stream_op_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a37d45eb0a1f7e25b4bf339a4ec5bc13d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_transport_stream_size </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport.html">grpc_transport</a> *&#160;</td>
+ <td class="paramname"><em>transport</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport_8h_source.html b/doc/ref/core.internal/html/transport_8h_source.html
new file mode 100644
index 0000000000..6a53173774
--- /dev/null
+++ b/doc/ref/core.internal/html/transport_8h_source.html
@@ -0,0 +1,334 @@
+<!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: src/core/transport/transport.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">transport.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="transport_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_TRANSPORT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_TRANSPORT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset_8h.html">src/core/iomgr/pollset.h</a>&quot;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="pollset__set_8h.html">src/core/iomgr/pollset_set.h</a>&quot;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="stream__op_8h.html">src/core/transport/stream_op.h</a>&quot;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="channel_2context_8h.html">src/core/channel/context.h</a>&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* forward declarations */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="transport_8h.html#a7ba3f709ee3b451e434c67acf7fb7451"> 45</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__transport.html">grpc_transport</a> <a class="code" href="structgrpc__transport.html">grpc_transport</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">/* grpc_stream doesn&#39;t actually exist. It&#39;s used as a typesafe</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> opaque pointer for whatever data the transport wants to track</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> for a stream. */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449"> 50</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">/* Represents the send/recv closed state of a stream. */</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b"> 53</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">/* the stream is open for sends and receives */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76"> 55</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76">GRPC_STREAM_OPEN</a>,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">/* the stream is closed for sends, but may still receive data */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a"> 57</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a">GRPC_STREAM_SEND_CLOSED</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">/* the stream is closed for receives, but may still send data */</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7"> 59</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7">GRPC_STREAM_RECV_CLOSED</a>,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="comment">/* the stream is closed for both sends and receives */</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362"> 61</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362">GRPC_STREAM_CLOSED</a></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* Transport stream op: a set of operations to perform on a transport</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> against a single stream */</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html"> 66</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93"> 67</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93">on_consumed</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691"> 69</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *<a class="code" href="structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691">send_ops</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f"> 70</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f">is_last_send</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07"> 71</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07">on_done_send</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991"> 73</a></span>&#160; <a class="code" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *<a class="code" href="structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991">recv_ops</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc"> 74</a></span>&#160; <a class="code" href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a> *<a class="code" href="structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc">recv_state</a>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b"> 78</a></span>&#160; <a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> <a class="code" href="structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b">max_recv_bytes</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479"> 79</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479">on_done_recv</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4"> 81</a></span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *<a class="code" href="structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4">bind_pollset</a>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf"> 83</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf">cancel_with_status</a>;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">/* Indexes correspond to grpc_context_index enum values */</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae"> 86</a></span>&#160; <a class="code" href="structgrpc__call__context__element.html">grpc_call_context_element</a> *<a class="code" href="structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae">context</a>;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;} <a class="code" href="transport_8h.html#a425321242c0f56ca08e74a4afcbdd017">grpc_transport_stream_op</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html"> 90</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a"> 92</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a">on_consumed</a>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953"> 94</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953">on_connectivity_state_change</a>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d"> 95</a></span>&#160; <a class="code" href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> *<a class="code" href="structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d">connectivity_state</a>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b"> 97</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b">disconnect</a>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704"> 101</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704">send_goaway</a>;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f"> 103</a></span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> <a class="code" href="structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f">goaway_status</a>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293"> 104</a></span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> *<a class="code" href="structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293">goaway_message</a>;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8"> 107</a></span>&#160; void (*<a class="code" href="structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8">set_accept_stream</a>)(<span class="keywordtype">void</span> *user_data, <a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *server_data);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f"> 109</a></span>&#160; <span class="keywordtype">void</span> *<a class="code" href="structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f">set_accept_stream_user_data</a>;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2"> 111</a></span>&#160; <a class="code" href="structgrpc__pollset.html">grpc_pollset</a> *<a class="code" href="structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2">bind_pollset</a>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3"> 113</a></span>&#160; <a class="code" href="structgrpc__pollset__set.html">grpc_pollset_set</a> *<a class="code" href="structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3">bind_pollset_set</a>;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286"> 115</a></span>&#160; <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *<a class="code" href="structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286">send_ping</a>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;} <a class="code" href="transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf">grpc_transport_op</a>;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">/* Returns the amount of memory required to store a grpc_stream for this</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> transport */</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">grpc_transport_stream_size</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport);</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment">/* Initialize transport data for a stream.</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> Returns 0 on success, any other (transport-defined) value for failure.</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> Arguments:</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> transport - the transport on which to create this stream</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> stream - a pointer to uninitialized memory to initialize</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> server_data - either NULL for a client initiated stream, or a pointer</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> supplied from the accept_stream callback function */</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">int</span> <a class="code" href="transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc">grpc_transport_init_stream</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream,</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *server_data,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment">/* Destroy transport data for a stream.</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> Requires: a recv_batch with final_state == GRPC_STREAM_CLOSED has been</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> received by the up-layer. Must not be called in the same call stack as</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> recv_frame.</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> Arguments:</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> transport - the transport on which to create this stream</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> stream - the grpc_stream to destroy (memory is still owned by the</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> caller, but any child memory must be cleaned up) */</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af">grpc_transport_destroy_stream</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream);</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#ac5aa9757a292d71026279316979b8e40">grpc_transport_stream_op_finish_with_failure</a>(<a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#ad1deb9664db9760e156951542378fe11">grpc_transport_stream_op_add_cancellation</a>(<a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status,</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="structgrpc__mdstr.html">grpc_mdstr</a> *message);</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="transport_8h.html#a058362edba570c120d125091b3c006d2">grpc_transport_stream_op_string</a>(<a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment">/* Send a batch of operations on a transport</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> Takes ownership of any objects contained in ops.</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> Arguments:</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> transport - the transport on which to initiate the stream</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> stream - the stream on which to send the operations. This must be</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> non-NULL and previously initialized by the same transport.</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> op - a grpc_transport_stream_op specifying the op to perform */</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b">grpc_transport_perform_stream_op</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream,</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3">grpc_transport_perform_op</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport,</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment">/* Send a ping on a transport</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> Calls cb with user data when a response is received. */</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc">grpc_transport_ping</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="code" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> *cb);</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment">/* Advise peer of pending connection termination. */</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#aea30a551f2d7a27edd9ddc9441523818">grpc_transport_goaway</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport, <a class="code" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status,</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="structgpr__slice.html">gpr_slice</a> debug_data);</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment">/* Close a transport. Aborts all open streams. */</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e">grpc_transport_close</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport);</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment">/* Destroy the transport */</span></div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport_8h.html#adb3ef83552276a5161ff6733f8455ae1">grpc_transport_destroy</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport);</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment">/* Get the transports peer */</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keywordtype">char</span> *<a class="code" href="transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e">grpc_transport_get_peer</a>(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *transport);</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_TRANSPORT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="transport_8h_html_a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7"><div class="ttname"><a href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba2454a23efac387974577cd0010e34ec7">GRPC_STREAM_RECV_CLOSED</a></div><div class="ttdef"><b>Definition:</b> transport.h:59</div></div>
+<div class="ttc" id="grpc_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="grpc_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> grpc.h:139</div></div>
+<div class="ttc" id="transport_8h_html_aba013c9e53a24f223283fc78cb6ca6cc"><div class="ttname"><a href="transport_8h.html#aba013c9e53a24f223283fc78cb6ca6cc">grpc_transport_init_stream</a></div><div class="ttdeci">int grpc_transport_init_stream(grpc_transport *transport, grpc_stream *stream, const void *server_data, grpc_transport_stream_op *initial_op)</div><div class="ttdef"><b>Definition:</b> transport.c:45</div></div>
+<div class="ttc" id="transport_8h_html_ae52662de3568a1d961e60e83d28e2dc3"><div class="ttname"><a href="transport_8h.html#ae52662de3568a1d961e60e83d28e2dc3">grpc_transport_perform_op</a></div><div class="ttdeci">void grpc_transport_perform_op(grpc_transport *transport, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> transport.c:58</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_a43d850c3001e92b407b78866d615696f"><div class="ttname"><a href="structgrpc__transport__stream__op.html#a43d850c3001e92b407b78866d615696f">grpc_transport_stream_op::is_last_send</a></div><div class="ttdeci">int is_last_send</div><div class="ttdef"><b>Definition:</b> transport.h:70</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_abd84b0fc93fa58092d4803c4c46e5991"><div class="ttname"><a href="structgrpc__transport__stream__op.html#abd84b0fc93fa58092d4803c4c46e5991">grpc_transport_stream_op::recv_ops</a></div><div class="ttdeci">grpc_stream_op_buffer * recv_ops</div><div class="ttdef"><b>Definition:</b> transport.h:73</div></div>
+<div class="ttc" id="transport_8h_html_a21223037b0bc6a92a9e058e20be1b0af"><div class="ttname"><a href="transport_8h.html#a21223037b0bc6a92a9e058e20be1b0af">grpc_transport_destroy_stream</a></div><div class="ttdeci">void grpc_transport_destroy_stream(grpc_transport *transport, grpc_stream *stream)</div><div class="ttdef"><b>Definition:</b> transport.c:63</div></div>
+<div class="ttc" id="transport_8h_html_a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76"><div class="ttname"><a href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bad87b11b225b4dca8033c118a6f702a76">GRPC_STREAM_OPEN</a></div><div class="ttdef"><b>Definition:</b> transport.h:55</div></div>
+<div class="ttc" id="transport_8h_html_a0cd26899ca9b8bafd7a2ca6fe23e0bbc"><div class="ttname"><a href="transport_8h.html#a0cd26899ca9b8bafd7a2ca6fe23e0bbc">grpc_transport_ping</a></div><div class="ttdeci">void grpc_transport_ping(grpc_transport *transport, grpc_iomgr_closure *cb)</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_ad4862d8029894b6640d2261694e21293"><div class="ttname"><a href="structgrpc__transport__op.html#ad4862d8029894b6640d2261694e21293">grpc_transport_op::goaway_message</a></div><div class="ttdeci">gpr_slice * goaway_message</div><div class="ttdef"><b>Definition:</b> transport.h:104</div></div>
+<div class="ttc" id="transport_8h_html_a76b37030fedc90baec5ff0f15c3e8449"><div class="ttname"><a href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a></div><div class="ttdeci">struct grpc_stream grpc_stream</div><div class="ttdef"><b>Definition:</b> transport.h:50</div></div>
+<div class="ttc" id="transport_8h_html_a37d45eb0a1f7e25b4bf339a4ec5bc13d"><div class="ttname"><a href="transport_8h.html#a37d45eb0a1f7e25b4bf339a4ec5bc13d">grpc_transport_stream_size</a></div><div class="ttdeci">size_t grpc_transport_stream_size(grpc_transport *transport)</div><div class="ttdef"><b>Definition:</b> transport.c:37</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html"><div class="ttname"><a href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a></div><div class="ttdef"><b>Definition:</b> transport.h:66</div></div>
+<div class="ttc" id="structgrpc__mdstr_html"><div class="ttname"><a href="structgrpc__mdstr.html">grpc_mdstr</a></div><div class="ttdef"><b>Definition:</b> metadata.h:70</div></div>
+<div class="ttc" id="transport_8h_html_aae32d98b458fa93adbe5959dbcd6a7bf"><div class="ttname"><a href="transport_8h.html#aae32d98b458fa93adbe5959dbcd6a7bf">grpc_transport_op</a></div><div class="ttdeci">struct grpc_transport_op grpc_transport_op</div><div class="ttdoc">Transport op: a set of operations to perform on a transport as a whole. </div></div>
+<div class="ttc" id="pollset_8h_html"><div class="ttname"><a href="pollset_8h.html">pollset.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="transport_8h_html_adb3ef83552276a5161ff6733f8455ae1"><div class="ttname"><a href="transport_8h.html#adb3ef83552276a5161ff6733f8455ae1">grpc_transport_destroy</a></div><div class="ttdeci">void grpc_transport_destroy(grpc_transport *transport)</div><div class="ttdef"><b>Definition:</b> transport.c:41</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_ae4505fafa286964d362de807efddf0fc"><div class="ttname"><a href="structgrpc__transport__stream__op.html#ae4505fafa286964d362de807efddf0fc">grpc_transport_stream_op::recv_state</a></div><div class="ttdeci">grpc_stream_state * recv_state</div><div class="ttdef"><b>Definition:</b> transport.h:74</div></div>
+<div class="ttc" id="transport_8h_html_a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362"><div class="ttname"><a href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7bab7718622aee58dee9b907c2fcddb6362">GRPC_STREAM_CLOSED</a></div><div class="ttdef"><b>Definition:</b> transport.h:61</div></div>
+<div class="ttc" id="structgrpc__pollset_html"><div class="ttname"><a href="structgrpc__pollset.html">grpc_pollset</a></div><div class="ttdef"><b>Definition:</b> pollset_posix.h:48</div></div>
+<div class="ttc" id="transport_8h_html_ac32bf69379cb94e6f951a4ec45a6157e"><div class="ttname"><a href="transport_8h.html#ac32bf69379cb94e6f951a4ec45a6157e">grpc_transport_get_peer</a></div><div class="ttdeci">char * grpc_transport_get_peer(grpc_transport *transport)</div><div class="ttdef"><b>Definition:</b> transport.c:68</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_a4ab2143e7e598667e29f3366722c07a3"><div class="ttname"><a href="structgrpc__transport__op.html#a4ab2143e7e598667e29f3366722c07a3">grpc_transport_op::bind_pollset_set</a></div><div class="ttdeci">grpc_pollset_set * bind_pollset_set</div><div class="ttdoc">add this transport to a pollset_set </div><div class="ttdef"><b>Definition:</b> transport.h:113</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_a5128bc8ec8613950cbb3037d56f8375b"><div class="ttname"><a href="structgrpc__transport__stream__op.html#a5128bc8ec8613950cbb3037d56f8375b">grpc_transport_stream_op::max_recv_bytes</a></div><div class="ttdeci">gpr_uint32 max_recv_bytes</div><div class="ttdoc">The number of bytes this peer is currently prepared to receive. </div><div class="ttdef"><b>Definition:</b> transport.h:78</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_a7a602604dff1707699650659639d3b8a"><div class="ttname"><a href="structgrpc__transport__op.html#a7a602604dff1707699650659639d3b8a">grpc_transport_op::on_consumed</a></div><div class="ttdeci">grpc_iomgr_closure * on_consumed</div><div class="ttdoc">called when processing of this op is done </div><div class="ttdef"><b>Definition:</b> transport.h:92</div></div>
+<div class="ttc" id="transport_8h_html_a058362edba570c120d125091b3c006d2"><div class="ttname"><a href="transport_8h.html#a058362edba570c120d125091b3c006d2">grpc_transport_stream_op_string</a></div><div class="ttdeci">char * grpc_transport_stream_op_string(grpc_transport_stream_op *op)</div><div class="ttdef"><b>Definition:</b> transport_op_string.c:108</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_adb87801e77b1728a01f374dcf78bb953"><div class="ttname"><a href="structgrpc__transport__op.html#adb87801e77b1728a01f374dcf78bb953">grpc_transport_op::on_connectivity_state_change</a></div><div class="ttdeci">grpc_iomgr_closure * on_connectivity_state_change</div><div class="ttdoc">connectivity monitoring </div><div class="ttdef"><b>Definition:</b> transport.h:94</div></div>
+<div class="ttc" id="transport_8h_html_a5988f9c4b3b23409cda5a38636d97f7b"><div class="ttname"><a href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7b">grpc_stream_state</a></div><div class="ttdeci">grpc_stream_state</div><div class="ttdef"><b>Definition:</b> transport.h:53</div></div>
+<div class="ttc" id="transport_8h_html_a55b3f0b2d31060a902aa7517cecc704e"><div class="ttname"><a href="transport_8h.html#a55b3f0b2d31060a902aa7517cecc704e">grpc_transport_close</a></div><div class="ttdeci">void grpc_transport_close(grpc_transport *transport)</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_a4591bfe47e9155982ad2d25a7750e17f"><div class="ttname"><a href="structgrpc__transport__op.html#a4591bfe47e9155982ad2d25a7750e17f">grpc_transport_op::set_accept_stream_user_data</a></div><div class="ttdeci">void * set_accept_stream_user_data</div><div class="ttdef"><b>Definition:</b> transport.h:109</div></div>
+<div class="ttc" id="transport_8h_html_ad1deb9664db9760e156951542378fe11"><div class="ttname"><a href="transport_8h.html#ad1deb9664db9760e156951542378fe11">grpc_transport_stream_op_add_cancellation</a></div><div class="ttdeci">void grpc_transport_stream_op_add_cancellation(grpc_transport_stream_op *op, grpc_status_code status, grpc_mdstr *message)</div><div class="ttdef"><b>Definition:</b> transport.c:85</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_ae68e6030500899af6788152a0a567c9d"><div class="ttname"><a href="structgrpc__transport__op.html#ae68e6030500899af6788152a0a567c9d">grpc_transport_op::connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state * connectivity_state</div><div class="ttdef"><b>Definition:</b> transport.h:95</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_a7cd4239411c42b2db4271bde0cbc5d93"><div class="ttname"><a href="structgrpc__transport__stream__op.html#a7cd4239411c42b2db4271bde0cbc5d93">grpc_transport_stream_op::on_consumed</a></div><div class="ttdeci">grpc_iomgr_closure * on_consumed</div><div class="ttdef"><b>Definition:</b> transport.h:67</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_a2bc4c019576243679b671f5cebd6000f"><div class="ttname"><a href="structgrpc__transport__op.html#a2bc4c019576243679b671f5cebd6000f">grpc_transport_op::goaway_status</a></div><div class="ttdeci">grpc_status_code goaway_status</div><div class="ttdoc">what should the goaway contain? </div><div class="ttdef"><b>Definition:</b> transport.h:103</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_aa94e5103c8d9845533016b1dac0c1691"><div class="ttname"><a href="structgrpc__transport__stream__op.html#aa94e5103c8d9845533016b1dac0c1691">grpc_transport_stream_op::send_ops</a></div><div class="ttdeci">grpc_stream_op_buffer * send_ops</div><div class="ttdef"><b>Definition:</b> transport.h:69</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_aeb409a2d4224410aec876a3a7e5443bf"><div class="ttname"><a href="structgrpc__transport__stream__op.html#aeb409a2d4224410aec876a3a7e5443bf">grpc_transport_stream_op::cancel_with_status</a></div><div class="ttdeci">grpc_status_code cancel_with_status</div><div class="ttdef"><b>Definition:</b> transport.h:83</div></div>
+<div class="ttc" id="transport_8h_html_a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a"><div class="ttname"><a href="transport_8h.html#a5988f9c4b3b23409cda5a38636d97f7ba41615571ecc19b7f29d5108cb68bc10a">GRPC_STREAM_SEND_CLOSED</a></div><div class="ttdef"><b>Definition:</b> transport.h:57</div></div>
+<div class="ttc" id="structgrpc__iomgr__closure_html"><div class="ttname"><a href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a></div><div class="ttdoc">A closure over a grpc_iomgr_cb_func. </div><div class="ttdef"><b>Definition:</b> iomgr.h:45</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_aabc2f197291cd94543ea984eaf8a61f8"><div class="ttname"><a href="structgrpc__transport__op.html#aabc2f197291cd94543ea984eaf8a61f8">grpc_transport_op::set_accept_stream</a></div><div class="ttdeci">void(* set_accept_stream)(void *user_data, grpc_transport *transport, const void *server_data)</div><div class="ttdoc">set the callback for accepting new streams; this is a permanent callback, unlike the other one-shot c...</div><div class="ttdef"><b>Definition:</b> transport.h:107</div></div>
+<div class="ttc" id="transport_8h_html_aea30a551f2d7a27edd9ddc9441523818"><div class="ttname"><a href="transport_8h.html#aea30a551f2d7a27edd9ddc9441523818">grpc_transport_goaway</a></div><div class="ttdeci">void grpc_transport_goaway(grpc_transport *transport, grpc_status_code status, gpr_slice debug_data)</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_aeaed4d0f2349649d83e662cd69fbe9b2"><div class="ttname"><a href="structgrpc__transport__op.html#aeaed4d0f2349649d83e662cd69fbe9b2">grpc_transport_op::bind_pollset</a></div><div class="ttdeci">grpc_pollset * bind_pollset</div><div class="ttdoc">add this transport to a pollset </div><div class="ttdef"><b>Definition:</b> transport.h:111</div></div>
+<div class="ttc" id="structgrpc__call__context__element_html"><div class="ttname"><a href="structgrpc__call__context__element.html">grpc_call_context_element</a></div><div class="ttdef"><b>Definition:</b> context.h:44</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_a8d6fc4a4607cb5e19255328c69dbbbc4"><div class="ttname"><a href="structgrpc__transport__stream__op.html#a8d6fc4a4607cb5e19255328c69dbbbc4">grpc_transport_stream_op::bind_pollset</a></div><div class="ttdeci">grpc_pollset * bind_pollset</div><div class="ttdef"><b>Definition:</b> transport.h:81</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_abc8ad987231498734088ce324651a479"><div class="ttname"><a href="structgrpc__transport__stream__op.html#abc8ad987231498734088ce324651a479">grpc_transport_stream_op::on_done_recv</a></div><div class="ttdeci">grpc_iomgr_closure * on_done_recv</div><div class="ttdef"><b>Definition:</b> transport.h:79</div></div>
+<div class="ttc" id="channel_2context_8h_html"><div class="ttname"><a href="channel_2context_8h.html">context.h</a></div></div>
+<div class="ttc" id="structgrpc__transport__op_html_aceb73c54b2b677eec23a2bb1507c4704"><div class="ttname"><a href="structgrpc__transport__op.html#aceb73c54b2b677eec23a2bb1507c4704">grpc_transport_op::send_goaway</a></div><div class="ttdeci">int send_goaway</div><div class="ttdoc">should we send a goaway? after a goaway is sent, once there are no more active calls on the transport...</div><div class="ttdef"><b>Definition:</b> transport.h:101</div></div>
+<div class="ttc" id="pollset__set_8h_html"><div class="ttname"><a href="pollset__set_8h.html">pollset_set.h</a></div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_a7c70f894512830f2c77280139a12da07"><div class="ttname"><a href="structgrpc__transport__stream__op.html#a7c70f894512830f2c77280139a12da07">grpc_transport_stream_op::on_done_send</a></div><div class="ttdeci">grpc_iomgr_closure * on_done_send</div><div class="ttdef"><b>Definition:</b> transport.h:71</div></div>
+<div class="ttc" id="stream__op_8h_html"><div class="ttname"><a href="stream__op_8h.html">stream_op.h</a></div></div>
+<div class="ttc" id="status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
+<div class="ttc" id="transport_8h_html_a81c2ae26b7109481d4538b48c15d5b1b"><div class="ttname"><a href="transport_8h.html#a81c2ae26b7109481d4538b48c15d5b1b">grpc_transport_perform_stream_op</a></div><div class="ttdeci">void grpc_transport_perform_stream_op(grpc_transport *transport, grpc_stream *stream, grpc_transport_stream_op *op)</div><div class="ttdef"><b>Definition:</b> transport.c:52</div></div>
+<div class="ttc" id="structgrpc__pollset__set_html"><div class="ttname"><a href="structgrpc__pollset__set.html">grpc_pollset_set</a></div><div class="ttdef"><b>Definition:</b> pollset_set_posix.h:40</div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_a280ecb11f206deb671cb0d9e8a20434b"><div class="ttname"><a href="structgrpc__transport__op.html#a280ecb11f206deb671cb0d9e8a20434b">grpc_transport_op::disconnect</a></div><div class="ttdeci">int disconnect</div><div class="ttdoc">should the transport be disconnected </div><div class="ttdef"><b>Definition:</b> transport.h:97</div></div>
+<div class="ttc" id="structgrpc__stream__op__buffer_html"><div class="ttname"><a href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a></div><div class="ttdoc">A stream op buffer is a wrapper around stream operations that is dynamically extendable. </div><div class="ttdef"><b>Definition:</b> stream_op.h:176</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html_a0d81e12c698cc0a088a0b48eb2250cae"><div class="ttname"><a href="structgrpc__transport__stream__op.html#a0d81e12c698cc0a088a0b48eb2250cae">grpc_transport_stream_op::context</a></div><div class="ttdeci">grpc_call_context_element * context</div><div class="ttdef"><b>Definition:</b> transport.h:86</div></div>
+<div class="ttc" id="structgpr__slice_html"><div class="ttname"><a href="structgpr__slice.html">gpr_slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:79</div></div>
+<div class="ttc" id="structgrpc__transport__op_html"><div class="ttname"><a href="structgrpc__transport__op.html">grpc_transport_op</a></div><div class="ttdoc">Transport op: a set of operations to perform on a transport as a whole. </div><div class="ttdef"><b>Definition:</b> transport.h:90</div></div>
+<div class="ttc" id="transport_8h_html_ac5aa9757a292d71026279316979b8e40"><div class="ttname"><a href="transport_8h.html#ac5aa9757a292d71026279316979b8e40">grpc_transport_stream_op_finish_with_failure</a></div><div class="ttdeci">void grpc_transport_stream_op_finish_with_failure(grpc_transport_stream_op *op)</div><div class="ttdef"><b>Definition:</b> transport.c:72</div></div>
+<div class="ttc" id="transport_8h_html_a425321242c0f56ca08e74a4afcbdd017"><div class="ttname"><a href="transport_8h.html#a425321242c0f56ca08e74a4afcbdd017">grpc_transport_stream_op</a></div><div class="ttdeci">struct grpc_transport_stream_op grpc_transport_stream_op</div></div>
+<div class="ttc" id="structgrpc__transport__op_html_abebcf932a4fa8d14006230dee06e0286"><div class="ttname"><a href="structgrpc__transport__op.html#abebcf932a4fa8d14006230dee06e0286">grpc_transport_op::send_ping</a></div><div class="ttdeci">grpc_iomgr_closure * send_ping</div><div class="ttdoc">send a ping, call this back if not NULL </div><div class="ttdef"><b>Definition:</b> transport.h:115</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/transport__impl_8h.html b/doc/ref/core.internal/html/transport__impl_8h.html
new file mode 100644
index 0000000000..887cbed9d4
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__impl_8h.html
@@ -0,0 +1,132 @@
+<!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: src/core/transport/transport_impl.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">transport_impl.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport_8h_source.html">src/core/transport/transport.h</a>&quot;</code><br/>
+</div>
+<p><a href="transport__impl_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__transport.html">grpc_transport</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a4b1efd30e926ac7b61690b3f5c085aed"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed">grpc_transport_vtable</a></td></tr>
+<tr class="separator:a4b1efd30e926ac7b61690b3f5c085aed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a4b1efd30e926ac7b61690b3f5c085aed"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a> <a class="el" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport__impl_8h_source.html b/doc/ref/core.internal/html/transport__impl_8h_source.html
new file mode 100644
index 0000000000..e5d7c8645e
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__impl_8h_source.html
@@ -0,0 +1,185 @@
+<!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: src/core/transport/transport_impl.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">transport_impl.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="transport__impl_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_TRANSPORT_IMPL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_TRANSPORT_IMPL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport_8h.html">src/core/transport/transport.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html"> 39</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a> {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="comment">/* Memory required for a single stream element - this is allocated by upper</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> layers and initialized by the transport */</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f"> 42</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f">sizeof_stream</a>; <span class="comment">/* = sizeof(transport stream) */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">/* implementation of grpc_transport_init_stream */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f"> 45</a></span>&#160; int (*<a class="code" href="structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f">init_stream</a>)(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<span class="keyword">self</span>, <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">const</span> <span class="keywordtype">void</span> *server_data,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *initial_op);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">/* implementation of grpc_transport_perform_stream_op */</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab"> 50</a></span>&#160; void (*<a class="code" href="structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab">perform_stream_op</a>)(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<span class="keyword">self</span>, <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">/* implementation of grpc_transport_perform_op */</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4"> 54</a></span>&#160; void (*<a class="code" href="structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4">perform_op</a>)(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<span class="keyword">self</span>, <a class="code" href="structgrpc__transport__op.html">grpc_transport_op</a> *op);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">/* implementation of grpc_transport_destroy_stream */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b"> 57</a></span>&#160; void (*<a class="code" href="structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b">destroy_stream</a>)(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<span class="keyword">self</span>, <a class="code" href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a> *stream);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* implementation of grpc_transport_destroy */</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf"> 60</a></span>&#160; void (*<a class="code" href="structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf">destroy</a>)(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<span class="keyword">self</span>);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">/* implementation of grpc_transport_get_peer */</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc__transport__vtable.html#a763d8c95adc9c74dae02a58557e001ed"> 63</a></span>&#160; <span class="keywordtype">char</span> *(*get_peer)(<a class="code" href="structgrpc__transport.html">grpc_transport</a> *<span class="keyword">self</span>);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;} <a class="code" href="transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed">grpc_transport_vtable</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* an instance of a grpc transport */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc__transport.html"> 67</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__transport.html">grpc_transport</a> {</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">/* pointer to a vtable defining operations on this transport */</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007"> 69</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__transport__vtable.html">grpc_transport_vtable</a> *<a class="code" href="structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007">vtable</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;};</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_TRANSPORT_IMPL_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="transport_8h_html"><div class="ttname"><a href="transport_8h.html">transport.h</a></div></div>
+<div class="ttc" id="transport_8h_html_a76b37030fedc90baec5ff0f15c3e8449"><div class="ttname"><a href="transport_8h.html#a76b37030fedc90baec5ff0f15c3e8449">grpc_stream</a></div><div class="ttdeci">struct grpc_stream grpc_stream</div><div class="ttdef"><b>Definition:</b> transport.h:50</div></div>
+<div class="ttc" id="structgrpc__transport__stream__op_html"><div class="ttname"><a href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a></div><div class="ttdef"><b>Definition:</b> transport.h:66</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html_a0d99f3901ef6e1cada6154b92ff5f3cf"><div class="ttname"><a href="structgrpc__transport__vtable.html#a0d99f3901ef6e1cada6154b92ff5f3cf">grpc_transport_vtable::destroy</a></div><div class="ttdeci">void(* destroy)(grpc_transport *self)</div><div class="ttdef"><b>Definition:</b> transport_impl.h:60</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html_a8da19f0fe97ddb546e1deafe65b6e4ab"><div class="ttname"><a href="structgrpc__transport__vtable.html#a8da19f0fe97ddb546e1deafe65b6e4ab">grpc_transport_vtable::perform_stream_op</a></div><div class="ttdeci">void(* perform_stream_op)(grpc_transport *self, grpc_stream *stream, grpc_transport_stream_op *op)</div><div class="ttdef"><b>Definition:</b> transport_impl.h:50</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html"><div class="ttname"><a href="structgrpc__transport__vtable.html">grpc_transport_vtable</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:39</div></div>
+<div class="ttc" id="structgrpc__transport_html_a8cb3afbd2614b5ffcda4adc56c8cb007"><div class="ttname"><a href="structgrpc__transport.html#a8cb3afbd2614b5ffcda4adc56c8cb007">grpc_transport::vtable</a></div><div class="ttdeci">const grpc_transport_vtable * vtable</div><div class="ttdef"><b>Definition:</b> transport_impl.h:69</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html_a32caae908e80e87783bf55b80c81e13f"><div class="ttname"><a href="structgrpc__transport__vtable.html#a32caae908e80e87783bf55b80c81e13f">grpc_transport_vtable::init_stream</a></div><div class="ttdeci">int(* init_stream)(grpc_transport *self, grpc_stream *stream, const void *server_data, grpc_transport_stream_op *initial_op)</div><div class="ttdef"><b>Definition:</b> transport_impl.h:45</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html_a1c229a26492c888075645a15f4f8182f"><div class="ttname"><a href="structgrpc__transport__vtable.html#a1c229a26492c888075645a15f4f8182f">grpc_transport_vtable::sizeof_stream</a></div><div class="ttdeci">size_t sizeof_stream</div><div class="ttdef"><b>Definition:</b> transport_impl.h:42</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html_aef80dd063f930216ef6b34d7847bf34b"><div class="ttname"><a href="structgrpc__transport__vtable.html#aef80dd063f930216ef6b34d7847bf34b">grpc_transport_vtable::destroy_stream</a></div><div class="ttdeci">void(* destroy_stream)(grpc_transport *self, grpc_stream *stream)</div><div class="ttdef"><b>Definition:</b> transport_impl.h:57</div></div>
+<div class="ttc" id="structgrpc__transport__vtable_html_acbb2ddc453b481e3b682f9dc5f612ac4"><div class="ttname"><a href="structgrpc__transport__vtable.html#acbb2ddc453b481e3b682f9dc5f612ac4">grpc_transport_vtable::perform_op</a></div><div class="ttdeci">void(* perform_op)(grpc_transport *self, grpc_transport_op *op)</div><div class="ttdef"><b>Definition:</b> transport_impl.h:54</div></div>
+<div class="ttc" id="structgrpc__transport_html"><div class="ttname"><a href="structgrpc__transport.html">grpc_transport</a></div><div class="ttdef"><b>Definition:</b> transport_impl.h:67</div></div>
+<div class="ttc" id="structgrpc__transport__op_html"><div class="ttname"><a href="structgrpc__transport__op.html">grpc_transport_op</a></div><div class="ttdoc">Transport op: a set of operations to perform on a transport as a whole. </div><div class="ttdef"><b>Definition:</b> transport.h:90</div></div>
+<div class="ttc" id="transport__impl_8h_html_a4b1efd30e926ac7b61690b3f5c085aed"><div class="ttname"><a href="transport__impl_8h.html#a4b1efd30e926ac7b61690b3f5c085aed">grpc_transport_vtable</a></div><div class="ttdeci">struct grpc_transport_vtable grpc_transport_vtable</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/transport__op__string_8c.html b/doc/ref/core.internal/html/transport__op__string_8c.html
new file mode 100644
index 0000000000..83ab2b6f89
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__op__string_8c.html
@@ -0,0 +1,195 @@
+<!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: src/core/transport/transport_op_string.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">transport_op_string.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="channel__stack_8h_source.html">src/core/channel/channel_stack.h</a>&quot;</code><br/>
+<code>#include &lt;stdarg.h&gt;</code><br/>
+<code>#include &lt;stdio.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="useful_8h_source.html">grpc/support/useful.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a225a70176577da4097ecad0b8c647fee"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__op__string_8c.html#a225a70176577da4097ecad0b8c647fee">grpc_sopb_string</a> (<a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *sopb)</td></tr>
+<tr class="separator:a225a70176577da4097ecad0b8c647fee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a058362edba570c120d125091b3c006d2"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__op__string_8c.html#a058362edba570c120d125091b3c006d2">grpc_transport_stream_op_string</a> (<a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:a058362edba570c120d125091b3c006d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa821d8d1e991cb36c971c6524d2ea5ee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__op__string_8c.html#aa821d8d1e991cb36c971c6524d2ea5ee">grpc_call_log_op</a> (char *file, int line, <a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a> severity, <a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *elem, <a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *op)</td></tr>
+<tr class="separator:aa821d8d1e991cb36c971c6524d2ea5ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aa821d8d1e991cb36c971c6524d2ea5ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_call_log_op </td>
+ <td>(</td>
+ <td class="paramtype">char *&#160;</td>
+ <td class="paramname"><em>file</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>line</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="log_8h.html#af10334b4085ac6985a2af9c08478ad48">gpr_log_severity</a>&#160;</td>
+ <td class="paramname"><em>severity</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__call__element.html">grpc_call_element</a> *&#160;</td>
+ <td class="paramname"><em>elem</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a225a70176577da4097ecad0b8c647fee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_sopb_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__stream__op__buffer.html">grpc_stream_op_buffer</a> *&#160;</td>
+ <td class="paramname"><em>sopb</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a058362edba570c120d125091b3c006d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* grpc_transport_stream_op_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__transport__stream__op.html">grpc_transport_stream_op</a> *&#160;</td>
+ <td class="paramname"><em>op</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport__security_8c.html b/doc/ref/core.internal/html/transport__security_8c.html
new file mode 100644
index 0000000000..186c71e03a
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__security_8c.html
@@ -0,0 +1,670 @@
+<!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: src/core/tsi/transport_security.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">transport_security.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport__security_8h_source.html">src/core/tsi/transport_security.h</a>&quot;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4db31a671b7e77b6ecd14af773154c72"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a4db31a671b7e77b6ecd14af773154c72">tsi_strdup</a> (const char *src)</td></tr>
+<tr class="separator:a4db31a671b7e77b6ecd14af773154c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaee2576c8d1108c2f28b78bcf5f85964"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#aaee2576c8d1108c2f28b78bcf5f85964">tsi_result_to_string</a> (<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> result)</td></tr>
+<tr class="separator:aaee2576c8d1108c2f28b78bcf5f85964"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ceba08b6b8e98bc296e3c168cfe7ff6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">tsi_frame_protector_protect</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size)</td></tr>
+<tr class="separator:a5ceba08b6b8e98bc296e3c168cfe7ff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97f093ea9700617a4bd64846e1040e10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a97f093ea9700617a4bd64846e1040e10">tsi_frame_protector_protect_flush</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size)</td></tr>
+<tr class="separator:a97f093ea9700617a4bd64846e1040e10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7379ce84c820020001fd1538135f45f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#af7379ce84c820020001fd1538135f45f">tsi_frame_protector_unprotect</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size)</td></tr>
+<tr class="separator:af7379ce84c820020001fd1538135f45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfd6e29ec9ee51f095a2fd73bbc222f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#adfd6e29ec9ee51f095a2fd73bbc222f9">tsi_frame_protector_destroy</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self)</td></tr>
+<tr class="separator:adfd6e29ec9ee51f095a2fd73bbc222f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29d1896a9b936a8bd534902bfc074e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a29d1896a9b936a8bd534902bfc074e35">tsi_handshaker_get_bytes_to_send_to_peer</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, unsigned char *bytes, size_t *bytes_size)</td></tr>
+<tr class="separator:a29d1896a9b936a8bd534902bfc074e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add638c90585ef6e5e4418c35a7df9fa0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#add638c90585ef6e5e4418c35a7df9fa0">tsi_handshaker_process_bytes_from_peer</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, const unsigned char *bytes, size_t *bytes_size)</td></tr>
+<tr class="separator:add638c90585ef6e5e4418c35a7df9fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac41531015167b3ac51aa5e201189701e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#ac41531015167b3ac51aa5e201189701e">tsi_handshaker_get_result</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td></tr>
+<tr class="separator:ac41531015167b3ac51aa5e201189701e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf71ef6d2d7c6934ba7252195fb866be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#acf71ef6d2d7c6934ba7252195fb866be">tsi_handshaker_extract_peer</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:acf71ef6d2d7c6934ba7252195fb866be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a332227aadf03c58b8ee4089f6f87bde6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a332227aadf03c58b8ee4089f6f87bde6">tsi_handshaker_create_frame_protector</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, size_t *max_protected_frame_size, <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> **protector)</td></tr>
+<tr class="separator:a332227aadf03c58b8ee4089f6f87bde6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa86ebc2ea2967a18ff5c6007bb80e28d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#aa86ebc2ea2967a18ff5c6007bb80e28d">tsi_handshaker_destroy</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td></tr>
+<tr class="separator:aa86ebc2ea2967a18ff5c6007bb80e28d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5d4e3b2905ddbc6fb66be56bd6564b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">tsi_init_peer_property</a> (void)</td></tr>
+<tr class="separator:ab5d4e3b2905ddbc6fb66be56bd6564b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83e56daafef9ce0d55873f2c63940819"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a83e56daafef9ce0d55873f2c63940819">tsi_peer_property_destruct</a> (<a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a83e56daafef9ce0d55873f2c63940819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c4bbdf32c13cf926aa28dc464a6f467"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a2c4bbdf32c13cf926aa28dc464a6f467">tsi_peer_destruct</a> (<a class="el" href="structtsi__peer.html">tsi_peer</a> *self)</td></tr>
+<tr class="separator:a2c4bbdf32c13cf926aa28dc464a6f467"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a308346bff8f401be5fb4411995aafc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a8a308346bff8f401be5fb4411995aafc">tsi_construct_allocated_string_peer_property</a> (const char *name, size_t value_length, <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a8a308346bff8f401be5fb4411995aafc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95d8643bd4378f9e648d5155a757ff3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a95d8643bd4378f9e648d5155a757ff3d">tsi_construct_string_peer_property_from_cstring</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a95d8643bd4378f9e648d5155a757ff3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77bdd8a1373d9badafe0f9628d613ccb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a77bdd8a1373d9badafe0f9628d613ccb">tsi_construct_string_peer_property</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, size_t value_length, <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a77bdd8a1373d9badafe0f9628d613ccb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08ce831015f22dfc2b0c9c324f4d3f68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a08ce831015f22dfc2b0c9c324f4d3f68">tsi_construct_peer</a> (size_t property_count, <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:a08ce831015f22dfc2b0c9c324f4d3f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a4e3d547c54325370492151543325e23c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8c.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a> = 0</td></tr>
+<tr class="separator:a4e3d547c54325370492151543325e23c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8a308346bff8f401be5fb4411995aafc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_allocated_string_peer_property </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08ce831015f22dfc2b0c9c324f4d3f68"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_peer </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>property_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a77bdd8a1373d9badafe0f9628d613ccb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_string_peer_property </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95d8643bd4378f9e648d5155a757ff3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_string_peer_property_from_cstring </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adfd6e29ec9ee51f095a2fd73bbc222f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_frame_protector_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5ceba08b6b8e98bc296e3c168cfe7ff6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_frame_protector_protect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>protected_output_frames</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>protected_output_frames_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a97f093ea9700617a4bd64846e1040e10"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_frame_protector_protect_flush </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>protected_output_frames</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>protected_output_frames_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>still_pending_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af7379ce84c820020001fd1538135f45f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_frame_protector_unprotect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>protected_frames_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>protected_frames_bytes_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a332227aadf03c58b8ee4089f6f87bde6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_create_frame_protector </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>max_protected_frame_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> **&#160;</td>
+ <td class="paramname"><em>protector</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa86ebc2ea2967a18ff5c6007bb80e28d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_handshaker_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf71ef6d2d7c6934ba7252195fb866be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_extract_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29d1896a9b936a8bd534902bfc074e35"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_get_bytes_to_send_to_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>bytes_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac41531015167b3ac51aa5e201189701e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_get_result </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add638c90585ef6e5e4418c35a7df9fa0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_process_bytes_from_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>bytes_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5d4e3b2905ddbc6fb66be56bd6564b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> tsi_init_peer_property </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2c4bbdf32c13cf926aa28dc464a6f467"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_peer_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83e56daafef9ce0d55873f2c63940819"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_peer_property_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaee2576c8d1108c2f28b78bcf5f85964"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* tsi_result_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td>
+ <td class="paramname"><em>result</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4db31a671b7e77b6ecd14af773154c72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* tsi_strdup </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>src</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a4e3d547c54325370492151543325e23c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_tracing_enabled = 0</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport__security_8h.html b/doc/ref/core.internal/html/transport__security_8h.html
new file mode 100644
index 0000000000..86ea232c73
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__security_8h.html
@@ -0,0 +1,330 @@
+<!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: src/core/tsi/transport_security.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">transport_security.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="transport__security__interface_8h_source.html">src/core/tsi/transport_security_interface.h</a>&quot;</code><br/>
+</div>
+<p><a href="transport__security_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a08ce831015f22dfc2b0c9c324f4d3f68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68">tsi_construct_peer</a> (size_t property_count, <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:a08ce831015f22dfc2b0c9c324f4d3f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5d4e3b2905ddbc6fb66be56bd6564b1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">tsi_init_peer_property</a> (void)</td></tr>
+<tr class="separator:ab5d4e3b2905ddbc6fb66be56bd6564b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a83e56daafef9ce0d55873f2c63940819"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819">tsi_peer_property_destruct</a> (<a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a83e56daafef9ce0d55873f2c63940819"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a77bdd8a1373d9badafe0f9628d613ccb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb">tsi_construct_string_peer_property</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, size_t value_length, <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a77bdd8a1373d9badafe0f9628d613ccb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8a308346bff8f401be5fb4411995aafc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc">tsi_construct_allocated_string_peer_property</a> (const char *name, size_t value_length, <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a8a308346bff8f401be5fb4411995aafc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a95d8643bd4378f9e648d5155a757ff3d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d">tsi_construct_string_peer_property_from_cstring</a> (const char *name, const char *<a class="el" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *property)</td></tr>
+<tr class="separator:a95d8643bd4378f9e648d5155a757ff3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4db31a671b7e77b6ecd14af773154c72"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72">tsi_strdup</a> (const char *src)</td></tr>
+<tr class="separator:a4db31a671b7e77b6ecd14af773154c72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a4e3d547c54325370492151543325e23c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security_8h.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a></td></tr>
+<tr class="separator:a4e3d547c54325370492151543325e23c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a8a308346bff8f401be5fb4411995aafc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_allocated_string_peer_property </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08ce831015f22dfc2b0c9c324f4d3f68"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_peer </td>
+ <td>(</td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>property_count</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a77bdd8a1373d9badafe0f9628d613ccb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_string_peer_property </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>value_length</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a95d8643bd4378f9e648d5155a757ff3d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_construct_string_peer_property_from_cstring </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5d4e3b2905ddbc6fb66be56bd6564b1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> tsi_init_peer_property </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a83e56daafef9ce0d55873f2c63940819"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_peer_property_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> *&#160;</td>
+ <td class="paramname"><em>property</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4db31a671b7e77b6ecd14af773154c72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char* tsi_strdup </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>src</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a4e3d547c54325370492151543325e23c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_tracing_enabled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport__security_8h_source.html b/doc/ref/core.internal/html/transport__security_8h_source.html
new file mode 100644
index 0000000000..733b4095c7
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__security_8h_source.html
@@ -0,0 +1,231 @@
+<!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: src/core/tsi/transport_security.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">transport_security.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="transport__security_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TSI_TRANSPORT_SECURITY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TSI_TRANSPORT_SECURITY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="transport__security__interface_8h.html">src/core/tsi/transport_security_interface.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="transport__security_8h.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">/* Base for tsi_frame_protector implementations.</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> See transport_security_interface.h for documentation. */</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="structtsi__frame__protector__vtable.html"> 47</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structtsi__frame__protector__vtable.html#aa9c6a8a8c0154365f7a62924e1ad458f"> 48</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*protect)(<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* unprotected_bytes,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">size_t</span>* unprotected_bytes_size,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* protected_output_frames,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordtype">size_t</span>* protected_output_frames_size);</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="structtsi__frame__protector__vtable.html#a4dc40054ebcebc5d9bc87a63adce0614"> 53</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*protect_flush)(<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* protected_output_frames,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">size_t</span>* protected_output_frames_size,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">size_t</span>* still_pending_size);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structtsi__frame__protector__vtable.html#aa4c1c5ad2e0299585050a3d11247e91e"> 57</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*unprotect)(<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* protected_frames_bytes,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">size_t</span>* protected_frames_bytes_size,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* unprotected_bytes,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordtype">size_t</span>* unprotected_bytes_size);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structtsi__frame__protector__vtable.html#ac47686a0367046026dc8b97050ec2cdf"> 62</a></span>&#160; void (*<a class="code" href="structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a">destroy</a>)(<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;} <a class="code" href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structtsi__frame__protector.html"> 65</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a> {</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619"> 66</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a>* <a class="code" href="structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619">vtable</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;};</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* Base for tsi_handshaker implementations.</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> See transport_security_interface.h for documentation. */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html"> 71</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html#a78c12cd8f2a53cc2bd32367a725f48ff"> 72</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*get_bytes_to_send_to_peer)(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* bytes,</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">size_t</span>* bytes_size);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html#aefed0ec53fa68de5417c720357c50a38"> 75</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*process_bytes_from_peer)(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* bytes,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">size_t</span>* bytes_size);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html#af65c4700c22e71ecb09a94ae951d2bf3"> 78</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*get_result)(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html#ab34c8028cf54bc2b0ee1e5ab95578541"> 79</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*extract_peer)(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>, <a class="code" href="structtsi__peer.html">tsi_peer</a>* peer);</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html#a071e3b76f8ddec1c89f9131c923f3648"> 80</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> (*create_frame_protector)(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">size_t</span>* max_protected_frame_size,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>** protector);</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structtsi__handshaker__vtable.html#a6ddd06eccb4d0576a3daba0ee98f45d8"> 83</a></span>&#160; void (*destroy)(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;} <a class="code" href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structtsi__handshaker.html"> 86</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtsi__handshaker.html">tsi_handshaker</a> {</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958"> 87</a></span>&#160; <span class="keyword">const</span> <a class="code" href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a>* <a class="code" href="structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958">vtable</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec"> 88</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec">frame_protector_created</a>;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;};</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment">/* Peer and property construction/destruction functions. */</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68">tsi_construct_peer</a>(<span class="keywordtype">size_t</span> property_count, <a class="code" href="structtsi__peer.html">tsi_peer</a>* peer);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<a class="code" href="structtsi__peer__property.html">tsi_peer_property</a> <a class="code" href="transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">tsi_init_peer_property</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819">tsi_peer_property_destruct</a>(<a class="code" href="structtsi__peer__property.html">tsi_peer_property</a>* property);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb">tsi_construct_string_peer_property</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* name,</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">size_t</span> value_length,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="structtsi__peer__property.html">tsi_peer_property</a>* property);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc">tsi_construct_allocated_string_peer_property</a>(</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keywordtype">size_t</span> value_length, <a class="code" href="structtsi__peer__property.html">tsi_peer_property</a>* property);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d">tsi_construct_string_peer_property_from_cstring</a>(</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a>, <a class="code" href="structtsi__peer__property.html">tsi_peer_property</a>* property);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">/* Utils. */</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keywordtype">char</span>* <a class="code" href="transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72">tsi_strdup</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* src); <span class="comment">/* Sadly, no strdup in C89. */</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TSI_TRANSPORT_SECURITY_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="hpack__table_8c_html_a8556878012feffc9e0beb86cd78f424d"><div class="ttname"><a href="hpack__table_8c.html#a8556878012feffc9e0beb86cd78f424d">value</a></div><div class="ttdeci">const char * value</div><div class="ttdef"><b>Definition:</b> hpack_table.c:44</div></div>
+<div class="ttc" id="structtsi__frame__protector_html"><div class="ttname"><a href="structtsi__frame__protector.html">tsi_frame_protector</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:65</div></div>
+<div class="ttc" id="structtsi__ssl__handshaker__factory_html_a2b5e1722accee31650b291839612bb6a"><div class="ttname"><a href="structtsi__ssl__handshaker__factory.html#a2b5e1722accee31650b291839612bb6a">tsi_ssl_handshaker_factory::destroy</a></div><div class="ttdeci">void(* destroy)(tsi_ssl_handshaker_factory *self)</div><div class="ttdef"><b>Definition:</b> ssl_transport_security.c:75</div></div>
+<div class="ttc" id="transport__security_8h_html_a4e3d547c54325370492151543325e23c"><div class="ttname"><a href="transport__security_8h.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a></div><div class="ttdeci">int tsi_tracing_enabled</div><div class="ttdef"><b>Definition:</b> transport_security.c:41</div></div>
+<div class="ttc" id="transport__security_8h_html_a95d8643bd4378f9e648d5155a757ff3d"><div class="ttname"><a href="transport__security_8h.html#a95d8643bd4378f9e648d5155a757ff3d">tsi_construct_string_peer_property_from_cstring</a></div><div class="ttdeci">tsi_result tsi_construct_string_peer_property_from_cstring(const char *name, const char *value, tsi_peer_property *property)</div><div class="ttdef"><b>Definition:</b> transport_security.c:253</div></div>
+<div class="ttc" id="structtsi__handshaker_html_a375eb09298453585bc64bd6f99fe14ec"><div class="ttname"><a href="structtsi__handshaker.html#a375eb09298453585bc64bd6f99fe14ec">tsi_handshaker::frame_protector_created</a></div><div class="ttdeci">int frame_protector_created</div><div class="ttdef"><b>Definition:</b> transport_security.h:88</div></div>
+<div class="ttc" id="transport__security__interface_8h_html"><div class="ttname"><a href="transport__security__interface_8h.html">transport_security_interface.h</a></div></div>
+<div class="ttc" id="structtsi__frame__protector_html_a71905393d848e4b2462f1ec9f6665619"><div class="ttname"><a href="structtsi__frame__protector.html#a71905393d848e4b2462f1ec9f6665619">tsi_frame_protector::vtable</a></div><div class="ttdeci">const tsi_frame_protector_vtable * vtable</div><div class="ttdef"><b>Definition:</b> transport_security.h:66</div></div>
+<div class="ttc" id="transport__security_8h_html_a77bdd8a1373d9badafe0f9628d613ccb"><div class="ttname"><a href="transport__security_8h.html#a77bdd8a1373d9badafe0f9628d613ccb">tsi_construct_string_peer_property</a></div><div class="ttdeci">tsi_result tsi_construct_string_peer_property(const char *name, const char *value, size_t value_length, tsi_peer_property *property)</div><div class="ttdef"><b>Definition:</b> transport_security.c:259</div></div>
+<div class="ttc" id="structtsi__handshaker_html_aad13ac357eb603138ec628ff05df2958"><div class="ttname"><a href="structtsi__handshaker.html#aad13ac357eb603138ec628ff05df2958">tsi_handshaker::vtable</a></div><div class="ttdeci">const tsi_handshaker_vtable * vtable</div><div class="ttdef"><b>Definition:</b> transport_security.h:87</div></div>
+<div class="ttc" id="structtsi__peer_html"><div class="ttname"><a href="structtsi__peer.html">tsi_peer</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:192</div></div>
+<div class="ttc" id="transport__security_8h_html_a83e56daafef9ce0d55873f2c63940819"><div class="ttname"><a href="transport__security_8h.html#a83e56daafef9ce0d55873f2c63940819">tsi_peer_property_destruct</a></div><div class="ttdeci">void tsi_peer_property_destruct(tsi_peer_property *property)</div><div class="ttdef"><b>Definition:</b> transport_security.c:216</div></div>
+<div class="ttc" id="structtsi__frame__protector__vtable_html"><div class="ttname"><a href="structtsi__frame__protector__vtable.html">tsi_frame_protector_vtable</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:47</div></div>
+<div class="ttc" id="transport__security_8h_html_ab5d4e3b2905ddbc6fb66be56bd6564b1"><div class="ttname"><a href="transport__security_8h.html#ab5d4e3b2905ddbc6fb66be56bd6564b1">tsi_init_peer_property</a></div><div class="ttdeci">tsi_peer_property tsi_init_peer_property(void)</div><div class="ttdef"><b>Definition:</b> transport_security.c:201</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a></div><div class="ttdeci">tsi_result</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:46</div></div>
+<div class="ttc" id="transport__security_8h_html_a08ce831015f22dfc2b0c9c324f4d3f68"><div class="ttname"><a href="transport__security_8h.html#a08ce831015f22dfc2b0c9c324f4d3f68">tsi_construct_peer</a></div><div class="ttdeci">tsi_result tsi_construct_peer(size_t property_count, tsi_peer *peer)</div><div class="ttdef"><b>Definition:</b> transport_security.c:272</div></div>
+<div class="ttc" id="structtsi__handshaker__vtable_html"><div class="ttname"><a href="structtsi__handshaker__vtable.html">tsi_handshaker_vtable</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:71</div></div>
+<div class="ttc" id="transport__security_8h_html_a8a308346bff8f401be5fb4411995aafc"><div class="ttname"><a href="transport__security_8h.html#a8a308346bff8f401be5fb4411995aafc">tsi_construct_allocated_string_peer_property</a></div><div class="ttdeci">tsi_result tsi_construct_allocated_string_peer_property(const char *name, size_t value_length, tsi_peer_property *property)</div><div class="ttdef"><b>Definition:</b> transport_security.c:235</div></div>
+<div class="ttc" id="transport__security_8h_html_a4db31a671b7e77b6ecd14af773154c72"><div class="ttname"><a href="transport__security_8h.html#a4db31a671b7e77b6ecd14af773154c72">tsi_strdup</a></div><div class="ttdeci">char * tsi_strdup(const char *src)</div><div class="ttdef"><b>Definition:</b> transport_security.c:45</div></div>
+<div class="ttc" id="structtsi__handshaker_html"><div class="ttname"><a href="structtsi__handshaker.html">tsi_handshaker</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:86</div></div>
+<div class="ttc" id="structtsi__peer__property_html"><div class="ttname"><a href="structtsi__peer__property.html">tsi_peer_property</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:184</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/transport__security__interface_8h.html b/doc/ref/core.internal/html/transport__security__interface_8h.html
new file mode 100644
index 0000000000..d9a83a9f3f
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__security__interface_8h.html
@@ -0,0 +1,638 @@
+<!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: src/core/tsi/transport_security_interface.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">transport_security_interface.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;stdint.h&gt;</code><br/>
+<code>#include &lt;stdlib.h&gt;</code><br/>
+</div>
+<p><a href="transport__security__interface_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__peer__property.html">tsi_peer_property</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtsi__peer.html">tsi_peer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ac1c4704b4f46d8db67be7d79cf9abee4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#ac1c4704b4f46d8db67be7d79cf9abee4">TSI_CERTIFICATE_TYPE_PEER_PROPERTY</a>&#160;&#160;&#160;&quot;certificate_type&quot;</td></tr>
+<tr class="separator:ac1c4704b4f46d8db67be7d79cf9abee4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a08a4eb400e7769528cf47bf38542010c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a08a4eb400e7769528cf47bf38542010c">tsi_handshaker_is_in_progress</a>(h)&#160;&#160;&#160;(<a class="el" href="transport__security_8c.html#ac41531015167b3ac51aa5e201189701e">tsi_handshaker_get_result</a>((h)) == <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">TSI_HANDSHAKE_IN_PROGRESS</a>)</td></tr>
+<tr class="separator:a08a4eb400e7769528cf47bf38542010c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a39ae4fe62f4ebc278c7738d6eda50dc8"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a39ae4fe62f4ebc278c7738d6eda50dc8">tsi_frame_protector</a></td></tr>
+<tr class="separator:a39ae4fe62f4ebc278c7738d6eda50dc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac82910ae9258e25d7281f46a9ab9c4be"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be">tsi_peer_property</a></td></tr>
+<tr class="separator:ac82910ae9258e25d7281f46a9ab9c4be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a37dc2869b4b8fbc2347d4e37a7f7a971"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a37dc2869b4b8fbc2347d4e37a7f7a971">tsi_handshaker</a></td></tr>
+<tr class="separator:a37dc2869b4b8fbc2347d4e37a7f7a971"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:a368f59529aaab1dab4d117adfabcb468"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> { <br/>
+&#160;&#160;<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d">TSI_OK</a> = 0,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe">TSI_UNKNOWN_ERROR</a> = 1,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada">TSI_INVALID_ARGUMENT</a> = 2,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906">TSI_PERMISSION_DENIED</a> = 3,
+<br/>
+&#160;&#160;<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e">TSI_INCOMPLETE_DATA</a> = 4,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe">TSI_FAILED_PRECONDITION</a> = 5,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e">TSI_UNIMPLEMENTED</a> = 6,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34">TSI_INTERNAL_ERROR</a> = 7,
+<br/>
+&#160;&#160;<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54">TSI_DATA_CORRUPTED</a> = 8,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6">TSI_NOT_FOUND</a> = 9,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a">TSI_PROTOCOL_FAILURE</a> = 10,
+<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">TSI_HANDSHAKE_IN_PROGRESS</a> = 11,
+<br/>
+&#160;&#160;<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519">TSI_OUT_OF_RESOURCES</a> = 12
+<br/>
+ }</td></tr>
+<tr class="separator:a368f59529aaab1dab4d117adfabcb468"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aaee2576c8d1108c2f28b78bcf5f85964"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964">tsi_result_to_string</a> (<a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> result)</td></tr>
+<tr class="separator:aaee2576c8d1108c2f28b78bcf5f85964"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ceba08b6b8e98bc296e3c168cfe7ff6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">tsi_frame_protector_protect</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size)</td></tr>
+<tr class="separator:a5ceba08b6b8e98bc296e3c168cfe7ff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a97f093ea9700617a4bd64846e1040e10"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10">tsi_frame_protector_protect_flush</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size)</td></tr>
+<tr class="separator:a97f093ea9700617a4bd64846e1040e10"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7379ce84c820020001fd1538135f45f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f">tsi_frame_protector_unprotect</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size)</td></tr>
+<tr class="separator:af7379ce84c820020001fd1538135f45f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adfd6e29ec9ee51f095a2fd73bbc222f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9">tsi_frame_protector_destroy</a> (<a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *self)</td></tr>
+<tr class="separator:adfd6e29ec9ee51f095a2fd73bbc222f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c4bbdf32c13cf926aa28dc464a6f467"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467">tsi_peer_destruct</a> (<a class="el" href="structtsi__peer.html">tsi_peer</a> *self)</td></tr>
+<tr class="separator:a2c4bbdf32c13cf926aa28dc464a6f467"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29d1896a9b936a8bd534902bfc074e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35">tsi_handshaker_get_bytes_to_send_to_peer</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, unsigned char *bytes, size_t *bytes_size)</td></tr>
+<tr class="separator:a29d1896a9b936a8bd534902bfc074e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add638c90585ef6e5e4418c35a7df9fa0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0">tsi_handshaker_process_bytes_from_peer</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, const unsigned char *bytes, size_t *bytes_size)</td></tr>
+<tr class="separator:add638c90585ef6e5e4418c35a7df9fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac41531015167b3ac51aa5e201189701e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e">tsi_handshaker_get_result</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td></tr>
+<tr class="separator:ac41531015167b3ac51aa5e201189701e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf71ef6d2d7c6934ba7252195fb866be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be">tsi_handshaker_extract_peer</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, <a class="el" href="structtsi__peer.html">tsi_peer</a> *peer)</td></tr>
+<tr class="separator:acf71ef6d2d7c6934ba7252195fb866be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c468d1a9eec6e30553a0f0b4a36cf51"><td class="memItemLeft" align="right" valign="top"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51">tsi_handshaker_create_frame_protector</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self, size_t *max_output_protected_frame_size, <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> **protector)</td></tr>
+<tr class="separator:a5c468d1a9eec6e30553a0f0b4a36cf51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa86ebc2ea2967a18ff5c6007bb80e28d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d">tsi_handshaker_destroy</a> (<a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *self)</td></tr>
+<tr class="separator:aa86ebc2ea2967a18ff5c6007bb80e28d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a4e3d547c54325370492151543325e23c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a></td></tr>
+<tr class="separator:a4e3d547c54325370492151543325e23c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="ac1c4704b4f46d8db67be7d79cf9abee4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define TSI_CERTIFICATE_TYPE_PEER_PROPERTY&#160;&#160;&#160;&quot;certificate_type&quot;</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a08a4eb400e7769528cf47bf38542010c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define tsi_handshaker_is_in_progress</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">h</td><td>)</td>
+ <td>&#160;&#160;&#160;(<a class="el" href="transport__security_8c.html#ac41531015167b3ac51aa5e201189701e">tsi_handshaker_get_result</a>((h)) == <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">TSI_HANDSHAKE_IN_PROGRESS</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a39ae4fe62f4ebc278c7738d6eda50dc8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> <a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a37dc2869b4b8fbc2347d4e37a7f7a971"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> <a class="el" href="structtsi__handshaker.html">tsi_handshaker</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac82910ae9258e25d7281f46a9ab9c4be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a> <a class="el" href="structtsi__peer__property.html">tsi_peer_property</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="a368f59529aaab1dab4d117adfabcb468"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d"></a>TSI_OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe"></a>TSI_UNKNOWN_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada"></a>TSI_INVALID_ARGUMENT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906"></a>TSI_PERMISSION_DENIED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e"></a>TSI_INCOMPLETE_DATA</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe"></a>TSI_FAILED_PRECONDITION</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e"></a>TSI_UNIMPLEMENTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34"></a>TSI_INTERNAL_ERROR</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54"></a>TSI_DATA_CORRUPTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6"></a>TSI_NOT_FOUND</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a"></a>TSI_PROTOCOL_FAILURE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c"></a>TSI_HANDSHAKE_IN_PROGRESS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519"></a>TSI_OUT_OF_RESOURCES</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="adfd6e29ec9ee51f095a2fd73bbc222f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_frame_protector_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5ceba08b6b8e98bc296e3c168cfe7ff6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_frame_protector_protect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>protected_output_frames</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>protected_output_frames_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a97f093ea9700617a4bd64846e1040e10"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_frame_protector_protect_flush </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>protected_output_frames</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>protected_output_frames_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>still_pending_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af7379ce84c820020001fd1538135f45f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_frame_protector_unprotect </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>protected_frames_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>protected_frames_bytes_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>unprotected_bytes_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c468d1a9eec6e30553a0f0b4a36cf51"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_create_frame_protector </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>max_output_protected_frame_size</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__frame__protector.html">tsi_frame_protector</a> **&#160;</td>
+ <td class="paramname"><em>protector</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa86ebc2ea2967a18ff5c6007bb80e28d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_handshaker_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acf71ef6d2d7c6934ba7252195fb866be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_extract_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>peer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a29d1896a9b936a8bd534902bfc074e35"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_get_bytes_to_send_to_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned char *&#160;</td>
+ <td class="paramname"><em>bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>bytes_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac41531015167b3ac51aa5e201189701e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_get_result </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add638c90585ef6e5e4418c35a7df9fa0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> tsi_handshaker_process_bytes_from_peer </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__handshaker.html">tsi_handshaker</a> *&#160;</td>
+ <td class="paramname"><em>self</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const unsigned char *&#160;</td>
+ <td class="paramname"><em>bytes</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>bytes_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2c4bbdf32c13cf926aa28dc464a6f467"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void tsi_peer_destruct </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structtsi__peer.html">tsi_peer</a> *&#160;</td>
+ <td class="paramname"><em>self</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaee2576c8d1108c2f28b78bcf5f85964"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* tsi_result_to_string </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>&#160;</td>
+ <td class="paramname"><em>result</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a4e3d547c54325370492151543325e23c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int tsi_tracing_enabled</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/transport__security__interface_8h_source.html b/doc/ref/core.internal/html/transport__security__interface_8h_source.html
new file mode 100644
index 0000000000..70d0d55e34
--- /dev/null
+++ b/doc/ref/core.internal/html/transport__security__interface_8h_source.html
@@ -0,0 +1,479 @@
+<!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: src/core/tsi/transport_security_interface.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_99f60d2bb6231896bcd2887028065f74.html">tsi</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">transport_security_interface.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="transport__security__interface_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TSI_TRANSPORT_SECURITY_INTERFACE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TSI_TRANSPORT_SECURITY_INTERFACE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/* --- tsi result --- */</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468"> 46</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d"> 47</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d">TSI_OK</a> = 0,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe"> 48</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe">TSI_UNKNOWN_ERROR</a> = 1,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada"> 49</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada">TSI_INVALID_ARGUMENT</a> = 2,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906"> 50</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906">TSI_PERMISSION_DENIED</a> = 3,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e"> 51</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e">TSI_INCOMPLETE_DATA</a> = 4,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe"> 52</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe">TSI_FAILED_PRECONDITION</a> = 5,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e"> 53</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e">TSI_UNIMPLEMENTED</a> = 6,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34"> 54</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34">TSI_INTERNAL_ERROR</a> = 7,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54"> 55</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54">TSI_DATA_CORRUPTED</a> = 8,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6"> 56</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6">TSI_NOT_FOUND</a> = 9,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a"> 57</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a">TSI_PROTOCOL_FAILURE</a> = 10,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c"> 58</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">TSI_HANDSHAKE_IN_PROGRESS</a> = 11,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519"> 59</a></span>&#160; <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519">TSI_OUT_OF_RESOURCES</a> = 12</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;} <a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964">tsi_result_to_string</a>(<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> result);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment">/* --- tsi tracing --- */</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment">/* Set this early to avoid races */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">/* --- tsi_frame_protector object ---</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> This object protects and unprotects buffers once the handshake is done.</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> Implementations of this object must be thread compatible. */</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a39ae4fe62f4ebc278c7738d6eda50dc8"> 74</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a> <a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/* Outputs protected frames.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> - unprotected_bytes is an input only parameter and points to the data</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> to be protected.</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> - unprotected_bytes_size is an input/output parameter used by the caller to</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> specify how many bytes are available in unprotected_bytes. The output</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> value is the number of bytes consumed during the call.</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> - protected_output_frames points to a buffer allocated by the caller that</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> will be written.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> - protected_output_frames_size is an input/output parameter used by the</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> caller to specify how many bytes are available in protected_output_frames.</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> As an output, this value indicates the number of bytes written.</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> - This method returns TSI_OK in case of success or a specific error code in</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> case of failure. Note that even if all the input unprotected bytes are</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> consumed, they may not have been processed into the returned protected</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> output frames. The caller should call the protect_flush method</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> to make sure that there are no more protected bytes buffered in the</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> protector.</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> A typical way to call this method would be:</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> ------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> unsigned char protected_buffer[4096];</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> size_t protected_buffer_size = sizeof(protected_buffer);</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> tsi_result result = TSI_OK;</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> while (message_size &gt; 0) {</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> size_t protected_buffer_size_to_send = protected_buffer_size;</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> size_t processed_message_size = message_size;</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> result = tsi_frame_protector_protect(protector,</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> message_bytes,</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> &amp;processed_message_size,</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> protected_buffer,</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> &amp;protected_buffer_size_to_send);</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> if (result != TSI_OK) break;</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> send_bytes_to_peer(protected_buffer, protected_buffer_size_to_send);</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> message_bytes += processed_message_size;</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> message_size -= processed_message_size;</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> // Don&#39;t forget to flush.</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> if (message_size == 0) {</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> size_t still_pending_size;</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> do {</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> protected_buffer_size_to_send = protected_buffer_size;</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> result = tsi_frame_protector_protect_flush(</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> protector, protected_buffer,</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> &amp;protected_buffer_size_to_send, &amp;still_pending_size);</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> if (result != TSI_OK) break;</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> send_bytes_to_peer(protected_buffer, protected_buffer_size_to_send);</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> } while (still_pending_size &gt; 0);</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> }</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> }</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> if (result != TSI_OK) HandleError(result);</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> ------------------------------------------------------------------------ */</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">tsi_frame_protector_protect</a>(<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* unprotected_bytes,</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">size_t</span>* unprotected_bytes_size,</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* protected_output_frames,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordtype">size_t</span>* protected_output_frames_size);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment">/* Indicates that we need to flush the bytes buffered in the protector and get</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> the resulting frame.</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> - protected_output_frames points to a buffer allocated by the caller that</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> will be written.</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> - protected_output_frames_size is an input/output parameter used by the</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> caller to specify how many bytes are available in protected_output_frames.</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> - still_pending_bytes is an output parameter indicating the number of bytes</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> that still need to be flushed from the protector.*/</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10">tsi_frame_protector_protect_flush</a>(</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* protected_output_frames,</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordtype">size_t</span>* protected_output_frames_size, <span class="keywordtype">size_t</span>* still_pending_size);</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment">/* Outputs unprotected bytes.</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> - protected_frames_bytes is an input only parameter and points to the</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> protected frames to be unprotected.</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> - protected_frames_bytes_size is an input/output only parameter used by the</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> caller to specify how many bytes are available in protected_bytes. The</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> output value is the number of bytes consumed during the call.</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"> Implementations will buffer up to a frame of protected data.</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> - unprotected_bytes points to a buffer allocated by the caller that will be</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> written.</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> - unprotected_bytes_size is an input/output parameter used by the caller to</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> specify how many bytes are available in unprotected_bytes. This</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> value is expected to be at most max_protected_frame_size minus overhead</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> which means that max_protected_frame_size is a safe bet. The output value</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> is the number of bytes actually written.</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> - This method returns TSI_OK in case of success. Success includes cases where</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> there is not enough data to output a frame in which case</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> unprotected_bytes_size will be set to 0 and cases where the internal buffer</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> needs to be read before new protected data can be processed in which case</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> protected_frames_size will be set to 0. */</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f">tsi_frame_protector_unprotect</a>(</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* protected_frames_bytes,</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordtype">size_t</span>* protected_frames_bytes_size, <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* unprotected_bytes,</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordtype">size_t</span>* unprotected_bytes_size);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment">/* Destroys the tsi_frame_protector object. */</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9">tsi_frame_protector_destroy</a>(<a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment">/* --- tsi_peer objects ---</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> tsi_peer objects are a set of properties. The peer owns the properties. */</span></div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment">/* This property is of type TSI_PEER_PROPERTY_STRING. */</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#ac1c4704b4f46d8db67be7d79cf9abee4"> 180</a></span>&#160;<span class="preprocessor">#define TSI_CERTIFICATE_TYPE_PEER_PROPERTY &quot;certificate_type&quot;</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment">/* Property values may contain NULL characters just like C++ strings.</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment"> The length field gives the length of the string. */</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="structtsi__peer__property.html"> 184</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structtsi__peer__property.html">tsi_peer_property</a> {</div>
+<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67"> 185</a></span>&#160; <span class="keywordtype">char</span>* <a class="code" href="structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67">name</a>;</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55"> 187</a></span>&#160; <span class="keywordtype">char</span>* <a class="code" href="structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55">data</a>;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7"> 188</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7">length</a>;</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; } <a class="code" href="structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6">value</a>;</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;} <a class="code" href="transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be">tsi_peer_property</a>;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="structtsi__peer.html"> 192</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a"> 193</a></span>&#160; <a class="code" href="structtsi__peer__property.html">tsi_peer_property</a>* <a class="code" href="structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a">properties</a>;</div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8"> 194</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8">property_count</a>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;} <a class="code" href="structtsi__peer.html">tsi_peer</a>;</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment">/* Destructs the tsi_peer object. */</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467">tsi_peer_destruct</a>(<a class="code" href="structtsi__peer.html">tsi_peer</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment">/* --- tsi_handshaker objects ----</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment"> Implementations of this object must be thread compatible.</span></div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> A typical usage of this object would be:</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"> ------------------------------------------------------------------------</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> tsi_result result = TSI_OK;</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> unsigned char buf[4096];</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> size_t buf_offset;</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> size_t buf_size;</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment"> while (1) {</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="comment"> // See if we need to send some bytes to the peer.</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="comment"> do {</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment"> size_t buf_size_to_send = sizeof(buf);</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment"> result = tsi_handshaker_get_bytes_to_send_to_peer(handshaker, buf,</span></div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="comment"> &amp;buf_size_to_send);</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment"> if (buf_size_to_send &gt; 0) send_bytes_to_peer(buf, buf_size_to_send);</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment"> } while (result == TSI_INCOMPLETE_DATA);</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment"> if (result != TSI_OK) return result;</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment"> if (!tsi_handshaker_is_in_progress(handshaker)) break;</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="comment"> do {</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="comment"> // Read bytes from the peer.</span></div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment"> buf_size = sizeof(buf);</span></div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"> buf_offset = 0;</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment"> read_bytes_from_peer(buf, &amp;buf_size);</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"> if (buf_size == 0) break;</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment"> // Process the bytes from the peer. We have to be careful as these bytes</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment"> // may contain non-handshake data (protected data). If this is the case,</span></div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment"> // we will exit from the loop with buf_size &gt; 0.</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment"> size_t consumed_by_handshaker = buf_size;</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"> result = tsi_handshaker_process_bytes_from_peer(</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment"> handshaker, buf, &amp;consumed_by_handshaker);</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment"> buf_size -= consumed_by_handshaker;</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="comment"> buf_offset += consumed_by_handshaker;</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="comment"> } while (result == TSI_INCOMPLETE_DATA);</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> if (result != TSI_OK) return result;</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment"> if (!tsi_handshaker_is_in_progress(handshaker)) break;</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="comment"> }</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> // Check the Peer.</span></div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"> tsi_peer peer;</span></div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"> do {</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="comment"> result = tsi_handshaker_extract_peer(handshaker, &amp;peer);</span></div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment"> if (result != TSI_OK) break;</span></div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment"> result = check_peer(&amp;peer);</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="comment"> } while (0);</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> tsi_peer_destruct(&amp;peer);</span></div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="comment"> if (result != TSI_OK) return result;</span></div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"> // Create the protector.</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> tsi_frame_protector* protector = NULL;</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"> result = tsi_handshaker_create_frame_protector(handshaker, NULL,</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> &amp;protector);</span></div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment"> if (result != TSI_OK) return result;</span></div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> // Do not forget to unprotect outstanding data if any.</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"> if (buf_size &gt; 0) {</span></div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="comment"> result = tsi_frame_protector_unprotect(protector, buf + buf_offset,</span></div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="comment"> buf_size, ..., ...);</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="comment"> ....</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="comment"> }</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> ...</span></div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="comment"> ------------------------------------------------------------------------ */</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a37dc2869b4b8fbc2347d4e37a7f7a971"> 267</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structtsi__handshaker.html">tsi_handshaker</a> <a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>;</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="comment">/* Gets bytes that need to be sent to the peer.</span></div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="comment"> - bytes is the buffer that will be written with the data to be sent to the</span></div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment"> peer.</span></div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="comment"> - bytes_size is an input/output parameter specifying the capacity of the</span></div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"> bytes parameter as input and the number of bytes written as output.</span></div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="comment"> Returns TSI_OK if all the data to send to the peer has been written or if</span></div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"> nothing has to be sent to the peer (in which base bytes_size outputs to 0),</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="comment"> otherwise returns TSI_INCOMPLETE_DATA which indicates that this method</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="comment"> needs to be called again to get all the bytes to send to the peer (there</span></div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment"> was more data to write than the specified bytes_size). In case of a fatal</span></div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"> error in the handshake, another specific error code is returned. */</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35">tsi_handshaker_get_bytes_to_send_to_peer</a>(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* bytes,</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordtype">size_t</span>* bytes_size);</div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="comment">/* Processes bytes received from the peer.</span></div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="comment"> - bytes is the buffer containing the data.</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="comment"> - bytes_size is an input/output parameter specifying the size of the data as</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="comment"> input and the number of bytes consumed as output.</span></div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="comment"> Return TSI_OK if the handshake has all the data it needs to process,</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="comment"> otherwise return TSI_INCOMPLETE_DATA which indicates that this method</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="comment"> needs to be called again to complete the data needed for processing. In</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="comment"> case of a fatal error in the handshake, another specific error code is</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;<span class="comment"> returned. */</span></div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0">tsi_handshaker_process_bytes_from_peer</a>(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>,</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* bytes,</div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordtype">size_t</span>* bytes_size);</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="comment">/* Gets the result of the handshaker.</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"> Returns TSI_OK if the hanshake completed successfully and there has been no</span></div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="comment"> errors. Returns TSI_HANDSHAKE_IN_PROGRESS if the handshaker is not done yet</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="comment"> but no error has been encountered so far. Otherwise the handshaker failed</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="comment"> with the returned error. */</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e">tsi_handshaker_get_result</a>(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="comment">/* Returns 1 if the handshake is in progress, 0 otherwise. */</span></div>
+<div class="line"><a name="l00305"></a><span class="lineno"><a class="line" href="transport__security__interface_8h.html#a08a4eb400e7769528cf47bf38542010c"> 305</a></span>&#160;<span class="preprocessor">#define tsi_handshaker_is_in_progress(h) \</span></div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="preprocessor"> (tsi_handshaker_get_result((h)) == TSI_HANDSHAKE_IN_PROGRESS)</span></div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment">/* This method may return TSI_FAILED_PRECONDITION if</span></div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="comment"> tsi_handshaker_is_in_progress returns 1, it returns TSI_OK otherwise</span></div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;<span class="comment"> assuming the handshaker is not in a fatal error state.</span></div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="comment"> The caller is responsible for destructing the peer. */</span></div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be">tsi_handshaker_extract_peer</a>(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>, <a class="code" href="structtsi__peer.html">tsi_peer</a>* peer);</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="comment">/* This method creates a tsi_frame_protector object after the handshake phase</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="comment"> is done. After this method has been called successfully, the only method</span></div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="comment"> that can be called on this object is Destroy.</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="comment"> - max_output_protected_frame_size is an input/output parameter specifying the</span></div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment"> desired max output protected frame size as input and outputing the actual</span></div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="comment"> max output frame size as the output. Passing NULL is OK and will result in</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment"> the implementation choosing the default maximum protected frame size. Note</span></div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="comment"> that this size only applies to outgoing frames (generated with</span></div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="comment"> tsi_frame_protector_protect) and not incoming frames (input of</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"> tsi_frame_protector_unprotect).</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> - protector is an output parameter pointing to the newly created</span></div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="comment"> tsi_frame_protector object.</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="comment"> This method may return TSI_FAILED_PRECONDITION if</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;<span class="comment"> tsi_handshaker_is_in_progress returns 1, it returns TSI_OK otherwise assuming</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="comment"> the handshaker is not in a fatal error state.</span></div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="comment"> The caller is responsible for destroying the protector. */</span></div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<a class="code" href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a> <a class="code" href="transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51">tsi_handshaker_create_frame_protector</a>(</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>, <span class="keywordtype">size_t</span>* max_output_protected_frame_size,</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="structtsi__frame__protector.html">tsi_frame_protector</a>** protector);</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="comment">/* This method releases the tsi_handshaker object. After this method is called,</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="comment"> no other method can be called on the object. */</span></div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="keywordtype">void</span> <a class="code" href="transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d">tsi_handshaker_destroy</a>(<a class="code" href="structtsi__handshaker.html">tsi_handshaker</a>* <span class="keyword">self</span>);</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;<span class="preprocessor"></span>}</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TSI_TRANSPORT_SECURITY_INTERFACE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="structtsi__frame__protector_html"><div class="ttname"><a href="structtsi__frame__protector.html">tsi_frame_protector</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:65</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_add638c90585ef6e5e4418c35a7df9fa0"><div class="ttname"><a href="transport__security__interface_8h.html#add638c90585ef6e5e4418c35a7df9fa0">tsi_handshaker_process_bytes_from_peer</a></div><div class="ttdeci">tsi_result tsi_handshaker_process_bytes_from_peer(tsi_handshaker *self, const unsigned char *bytes, size_t *bytes_size)</div><div class="ttdef"><b>Definition:</b> transport_security.c:153</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7c116598d89a88d8f85978c172371b7a">TSI_PROTOCOL_FAILURE</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:57</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a46312280869305daacb5dd763b411b34">TSI_INTERNAL_ERROR</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:54</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a7050473db6de8934403ec8edfdc28519">TSI_OUT_OF_RESOURCES</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:59</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a29d1896a9b936a8bd534902bfc074e35"><div class="ttname"><a href="transport__security__interface_8h.html#a29d1896a9b936a8bd534902bfc074e35">tsi_handshaker_get_bytes_to_send_to_peer</a></div><div class="ttdeci">tsi_result tsi_handshaker_get_bytes_to_send_to_peer(tsi_handshaker *self, unsigned char *bytes, size_t *bytes_size)</div><div class="ttdef"><b>Definition:</b> transport_security.c:145</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a2c4bbdf32c13cf926aa28dc464a6f467"><div class="ttname"><a href="transport__security__interface_8h.html#a2c4bbdf32c13cf926aa28dc464a6f467">tsi_peer_destruct</a></div><div class="ttdeci">void tsi_peer_destruct(tsi_peer *self)</div><div class="ttdef"><b>Definition:</b> transport_security.c:226</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a5ceba08b6b8e98bc296e3c168cfe7ff6"><div class="ttname"><a href="transport__security__interface_8h.html#a5ceba08b6b8e98bc296e3c168cfe7ff6">tsi_frame_protector_protect</a></div><div class="ttdeci">tsi_result tsi_frame_protector_protect(tsi_frame_protector *self, const unsigned char *unprotected_bytes, size_t *unprotected_bytes_size, unsigned char *protected_output_frames, size_t *protected_output_frames_size)</div><div class="ttdef"><b>Definition:</b> transport_security.c:95</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_af7379ce84c820020001fd1538135f45f"><div class="ttname"><a href="transport__security__interface_8h.html#af7379ce84c820020001fd1538135f45f">tsi_frame_protector_unprotect</a></div><div class="ttdeci">tsi_result tsi_frame_protector_unprotect(tsi_frame_protector *self, const unsigned char *protected_frames_bytes, size_t *protected_frames_bytes_size, unsigned char *unprotected_bytes, size_t *unprotected_bytes_size)</div><div class="ttdef"><b>Definition:</b> transport_security.c:122</div></div>
+<div class="ttc" id="structtsi__peer__property_html_acb47876765d6b5202dad2215b493fa55"><div class="ttname"><a href="structtsi__peer__property.html#acb47876765d6b5202dad2215b493fa55">tsi_peer_property::data</a></div><div class="ttdeci">char * data</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:187</div></div>
+<div class="ttc" id="structtsi__peer__property_html_a63f8f764dec5c40ffc3d7de0f83509d6"><div class="ttname"><a href="structtsi__peer__property.html#a63f8f764dec5c40ffc3d7de0f83509d6">tsi_peer_property::value</a></div><div class="ttdeci">struct tsi_peer_property::@12 value</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae2d9416092ab23b45df65eaff3796e54">TSI_DATA_CORRUPTED</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:55</div></div>
+<div class="ttc" id="structtsi__peer_html"><div class="ttname"><a href="structtsi__peer.html">tsi_peer</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:192</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a0f30d7f34423297d90c245b1ac78fa8e">TSI_INCOMPLETE_DATA</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:51</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468aeec912b94ea7402b8693166fa9101906">TSI_PERMISSION_DENIED</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:50</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468ae89ee0a742b8fad8c7cc232cc972babe">TSI_FAILED_PRECONDITION</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:52</div></div>
+<div class="ttc" id="structtsi__peer_html_a5656afb1f55b72e3174a2ed10b46f54a"><div class="ttname"><a href="structtsi__peer.html#a5656afb1f55b72e3174a2ed10b46f54a">tsi_peer::properties</a></div><div class="ttdeci">tsi_peer_property * properties</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:193</div></div>
+<div class="ttc" id="structtsi__peer_html_a573f728d9b7804d06296cfdde3ac81c8"><div class="ttname"><a href="structtsi__peer.html#a573f728d9b7804d06296cfdde3ac81c8">tsi_peer::property_count</a></div><div class="ttdeci">size_t property_count</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:194</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468">tsi_result</a></div><div class="ttdeci">tsi_result</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:46</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_aa86ebc2ea2967a18ff5c6007bb80e28d"><div class="ttname"><a href="transport__security__interface_8h.html#aa86ebc2ea2967a18ff5c6007bb80e28d">tsi_handshaker_destroy</a></div><div class="ttdeci">void tsi_handshaker_destroy(tsi_handshaker *self)</div><div class="ttdef"><b>Definition:</b> transport_security.c:194</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a1dcbe7854fb1e3eb73024a6dd249989e">TSI_UNIMPLEMENTED</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:53</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a5c468d1a9eec6e30553a0f0b4a36cf51"><div class="ttname"><a href="transport__security__interface_8h.html#a5c468d1a9eec6e30553a0f0b4a36cf51">tsi_handshaker_create_frame_protector</a></div><div class="ttdeci">tsi_result tsi_handshaker_create_frame_protector(tsi_handshaker *self, size_t *max_output_protected_frame_size, tsi_frame_protector **protector)</div><div class="ttdef"><b>Definition:</b> transport_security.c:177</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a4e3d547c54325370492151543325e23c"><div class="ttname"><a href="transport__security__interface_8h.html#a4e3d547c54325370492151543325e23c">tsi_tracing_enabled</a></div><div class="ttdeci">int tsi_tracing_enabled</div><div class="ttdef"><b>Definition:</b> transport_security.c:41</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a87e7f77215086f32ba4b8596343e99a6">TSI_NOT_FOUND</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:56</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_ac41531015167b3ac51aa5e201189701e"><div class="ttname"><a href="transport__security__interface_8h.html#ac41531015167b3ac51aa5e201189701e">tsi_handshaker_get_result</a></div><div class="ttdeci">tsi_result tsi_handshaker_get_result(tsi_handshaker *self)</div><div class="ttdef"><b>Definition:</b> transport_security.c:161</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_ac82910ae9258e25d7281f46a9ab9c4be"><div class="ttname"><a href="transport__security__interface_8h.html#ac82910ae9258e25d7281f46a9ab9c4be">tsi_peer_property</a></div><div class="ttdeci">struct tsi_peer_property tsi_peer_property</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a32ddfc784c501ef0be0c435257de7ada">TSI_INVALID_ARGUMENT</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:49</div></div>
+<div class="ttc" id="structtsi__peer__property_html_a6e2341fa26194a045824caa9f9b0cd67"><div class="ttname"><a href="structtsi__peer__property.html#a6e2341fa26194a045824caa9f9b0cd67">tsi_peer_property::name</a></div><div class="ttdeci">char * name</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:185</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_acf71ef6d2d7c6934ba7252195fb866be"><div class="ttname"><a href="transport__security__interface_8h.html#acf71ef6d2d7c6934ba7252195fb866be">tsi_handshaker_extract_peer</a></div><div class="ttdeci">tsi_result tsi_handshaker_extract_peer(tsi_handshaker *self, tsi_peer *peer)</div><div class="ttdef"><b>Definition:</b> transport_security.c:167</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_adfd6e29ec9ee51f095a2fd73bbc222f9"><div class="ttname"><a href="transport__security__interface_8h.html#adfd6e29ec9ee51f095a2fd73bbc222f9">tsi_frame_protector_destroy</a></div><div class="ttdeci">void tsi_frame_protector_destroy(tsi_frame_protector *self)</div><div class="ttdef"><b>Definition:</b> transport_security.c:136</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468acc523cfb3ee181516c4965a82e4d104c">TSI_HANDSHAKE_IN_PROGRESS</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:58</div></div>
+<div class="ttc" id="structtsi__handshaker_html"><div class="ttname"><a href="structtsi__handshaker.html">tsi_handshaker</a></div><div class="ttdef"><b>Definition:</b> transport_security.h:86</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a97f093ea9700617a4bd64846e1040e10"><div class="ttname"><a href="transport__security__interface_8h.html#a97f093ea9700617a4bd64846e1040e10">tsi_frame_protector_protect_flush</a></div><div class="ttdeci">tsi_result tsi_frame_protector_protect_flush(tsi_frame_protector *self, unsigned char *protected_output_frames, size_t *protected_output_frames_size, size_t *still_pending_size)</div><div class="ttdef"><b>Definition:</b> transport_security.c:110</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_aaee2576c8d1108c2f28b78bcf5f85964"><div class="ttname"><a href="transport__security__interface_8h.html#aaee2576c8d1108c2f28b78bcf5f85964">tsi_result_to_string</a></div><div class="ttdeci">const char * tsi_result_to_string(tsi_result result)</div><div class="ttdef"><b>Definition:</b> transport_security.c:58</div></div>
+<div class="ttc" id="structtsi__peer__property_html_a7b6a9186739228ff43c134f9fe6af9e7"><div class="ttname"><a href="structtsi__peer__property.html#a7b6a9186739228ff43c134f9fe6af9e7">tsi_peer_property::length</a></div><div class="ttdeci">size_t length</div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:188</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a3f6f3bd9eaa4064ab2299479c95d6cfe">TSI_UNKNOWN_ERROR</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:48</div></div>
+<div class="ttc" id="transport__security__interface_8h_html_a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d"><div class="ttname"><a href="transport__security__interface_8h.html#a368f59529aaab1dab4d117adfabcb468a6e4252da534256e77c5c5c1f37fd9d2d">TSI_OK</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:47</div></div>
+<div class="ttc" id="structtsi__peer__property_html"><div class="ttname"><a href="structtsi__peer__property.html">tsi_peer_property</a></div><div class="ttdef"><b>Definition:</b> transport_security_interface.h:184</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/uniongrpc__ioreq__data.html b/doc/ref/core.internal/html/uniongrpc__ioreq__data.html
new file mode 100644
index 0000000000..fdef531541
--- /dev/null
+++ b/doc/ref/core.internal/html/uniongrpc__ioreq__data.html
@@ -0,0 +1,323 @@
+<!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_ioreq_data Union 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_ioreq_data Union Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.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:a4e3eb01d90e05b23a70c19ad92cdafc8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#a4e3eb01d90e05b23a70c19ad92cdafc8">recv_metadata</a></td></tr>
+<tr class="separator:a4e3eb01d90e05b23a70c19ad92cdafc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ea7284dc03df43bf75f8111bd9339f0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#a5ea7284dc03df43bf75f8111bd9339f0">recv_message</a></td></tr>
+<tr class="separator:a5ea7284dc03df43bf75f8111bd9339f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9788c1a37dea6052f004111bc67d6e7"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:ade88b1652253c49359b642214142d9f9"><td class="memItemLeft" >&#160;&#160;&#160;void(*&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#aedb6839ded1488cf3bd6905345fba0d2">set_value</a> )(<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, <br class="typebreak"/>
+&#160;&#160;&#160;&#160;&#160;&#160;void *<a class="el" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">user_data</a>)</td></tr>
+<tr class="separator:ade88b1652253c49359b642214142d9f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d257602691f2ce9c1db83d9c6991e96"><td class="memItemLeft" >&#160;&#160;&#160;void *&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">user_data</a></td></tr>
+<tr class="separator:a7d257602691f2ce9c1db83d9c6991e96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9788c1a37dea6052f004111bc67d6e7"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#ab9788c1a37dea6052f004111bc67d6e7">recv_status</a></td></tr>
+<tr class="separator:ab9788c1a37dea6052f004111bc67d6e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acddc8869b041b695c617cb46e941859e"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:ac131233f1aa5198bd56bd4d657f9bbc7"><td class="memItemLeft" >&#160;&#160;&#160;char **&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#a6b5db9dd6e61e416c3514b787b25dcc6">details</a></td></tr>
+<tr class="separator:ac131233f1aa5198bd56bd4d657f9bbc7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2919fa2a459d3def55719a56cacf2bb"><td class="memItemLeft" >&#160;&#160;&#160;size_t *&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#a42f927cee57659aa72d79546b897b468">details_capacity</a></td></tr>
+<tr class="separator:aa2919fa2a459d3def55719a56cacf2bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acddc8869b041b695c617cb46e941859e"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#acddc8869b041b695c617cb46e941859e">recv_status_details</a></td></tr>
+<tr class="separator:acddc8869b041b695c617cb46e941859e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b9337cc24e8b42caa5c1502be083952"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:ade02032ad41eb27299af91b14f6109c3"><td class="memItemLeft" >&#160;&#160;&#160;size_t&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#a34eacee09dcb1156021aaeea8206a42a">count</a></td></tr>
+<tr class="separator:ade02032ad41eb27299af91b14f6109c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a009bfe6b610d376d36c21ba205c78872"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__metadata.html">grpc_metadata</a> *&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#a58b11308558f97bf335ce5575d951968">metadata</a></td></tr>
+<tr class="separator:a009bfe6b610d376d36c21ba205c78872"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b9337cc24e8b42caa5c1502be083952"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#a4b9337cc24e8b42caa5c1502be083952">send_metadata</a></td></tr>
+<tr class="separator:a4b9337cc24e8b42caa5c1502be083952"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abcf05c127005fb6267a4f1ef73daec45"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#abcf05c127005fb6267a4f1ef73daec45">send_message</a></td></tr>
+<tr class="separator:abcf05c127005fb6267a4f1ef73daec45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3711b0c39c293284a4e4897f74c974ab"><td class="memItemLeft" >struct {</td></tr>
+<tr class="memitem:a843cbed5ab3882a94d5f75a675134a54"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a>&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#a77fea25992234ba3a0174207114ebbb1">code</a></td></tr>
+<tr class="separator:a843cbed5ab3882a94d5f75a675134a54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9185bca808aed2ffcd2d923192aaef27"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a> *&#160;&#160;&#160;<a class="el" href="uniongrpc__ioreq__data.html#aabf2513498a2eee60eec1d1d70968169">details</a></td></tr>
+<tr class="separator:a9185bca808aed2ffcd2d923192aaef27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3711b0c39c293284a4e4897f74c974ab"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uniongrpc__ioreq__data.html#a3711b0c39c293284a4e4897f74c974ab">send_status</a></td></tr>
+<tr class="separator:a3711b0c39c293284a4e4897f74c974ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a77fea25992234ba3a0174207114ebbb1"></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_ioreq_data::code</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a34eacee09dcb1156021aaeea8206a42a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc_ioreq_data::count</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6b5db9dd6e61e416c3514b787b25dcc6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">char** grpc_ioreq_data::details</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aabf2513498a2eee60eec1d1d70968169"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__mdstr.html">grpc_mdstr</a>* grpc_ioreq_data::details</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a42f927cee57659aa72d79546b897b468"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t* grpc_ioreq_data::details_capacity</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58b11308558f97bf335ce5575d951968"></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_ioreq_data::metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5ea7284dc03df43bf75f8111bd9339f0"></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_ioreq_data::recv_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e3eb01d90e05b23a70c19ad92cdafc8"></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_ioreq_data::recv_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9788c1a37dea6052f004111bc67d6e7"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_ioreq_data::recv_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acddc8869b041b695c617cb46e941859e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_ioreq_data::recv_status_details</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abcf05c127005fb6267a4f1ef73daec45"></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_ioreq_data::send_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b9337cc24e8b42caa5c1502be083952"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_ioreq_data::send_metadata</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3711b0c39c293284a4e4897f74c974ab"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct { ... } grpc_ioreq_data::send_status</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aedb6839ded1488cf3bd6905345fba0d2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void(* grpc_ioreq_data::set_value)(<a class="el" href="status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status, void *<a class="el" href="uniongrpc__ioreq__data.html#a442beede6948f0efc06a0a9404b49331">user_data</a>)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a442beede6948f0efc06a0a9404b49331"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc_ioreq_data::user_data</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this union was generated from the following file:<ul>
+<li>src/core/surface/<a class="el" href="call_8h_source.html">call.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>
diff --git a/doc/ref/core.internal/html/unionlockfree__node.html b/doc/ref/core.internal/html/unionlockfree__node.html
new file mode 100644
index 0000000000..835e3b3221
--- /dev/null
+++ b/doc/ref/core.internal/html/unionlockfree__node.html
@@ -0,0 +1,134 @@
+<!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: lockfree_node Union 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">lockfree_node Union Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<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:a8bac5e680ab1fce893f7727f7a0be892"><td class="memItemLeft" align="right" valign="top"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionlockfree__node.html#a8bac5e680ab1fce893f7727f7a0be892">atm</a></td></tr>
+<tr class="separator:a8bac5e680ab1fce893f7727f7a0be892"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4cf276073deb1a941a409b19bb78f5c4"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structlockfree__node__contents.html">lockfree_node_contents</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="unionlockfree__node.html#a4cf276073deb1a941a409b19bb78f5c4">contents</a></td></tr>
+<tr class="separator:a4cf276073deb1a941a409b19bb78f5c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a8bac5e680ab1fce893f7727f7a0be892"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="atm__gcc__atomic_8h.html#aa9e4b16c09888debe306f14e8090b1cc">gpr_atm</a> lockfree_node::atm</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4cf276073deb1a941a409b19bb78f5c4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct <a class="el" href="structlockfree__node__contents.html">lockfree_node_contents</a> lockfree_node::contents</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this union was generated from the following file:<ul>
+<li>src/core/support/<a class="el" href="stack__lockfree_8c.html">stack_lockfree.c</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>
diff --git a/doc/ref/core.internal/html/uri__parser_8c.html b/doc/ref/core.internal/html/uri__parser_8c.html
new file mode 100644
index 0000000000..20bc36da65
--- /dev/null
+++ b/doc/ref/core.internal/html/uri__parser_8c.html
@@ -0,0 +1,163 @@
+<!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: src/core/client_config/uri_parser.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">uri_parser.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="uri__parser_8h_source.html">src/core/client_config/uri_parser.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="string_8h_source.html">string.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="alloc_8h_source.html">grpc/support/alloc.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="string__util_8h_source.html">grpc/support/string_util.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aef57f54325374603bb0510e8b8b5976d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__uri.html">grpc_uri</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uri__parser_8c.html#aef57f54325374603bb0510e8b8b5976d">grpc_uri_parse</a> (const char *uri_text, int suppress_errors)</td></tr>
+<tr class="memdesc:aef57f54325374603bb0510e8b8b5976d"><td class="mdescLeft">&#160;</td><td class="mdescRight">parse a uri, return NULL on failure <a href="#aef57f54325374603bb0510e8b8b5976d">More...</a><br/></td></tr>
+<tr class="separator:aef57f54325374603bb0510e8b8b5976d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4744a0a3c814548dbbecb79c4620ac1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uri__parser_8c.html#af4744a0a3c814548dbbecb79c4620ac1">grpc_uri_destroy</a> (<a class="el" href="structgrpc__uri.html">grpc_uri</a> *uri)</td></tr>
+<tr class="memdesc:af4744a0a3c814548dbbecb79c4620ac1"><td class="mdescLeft">&#160;</td><td class="mdescRight">destroy a uri <a href="#af4744a0a3c814548dbbecb79c4620ac1">More...</a><br/></td></tr>
+<tr class="separator:af4744a0a3c814548dbbecb79c4620ac1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="af4744a0a3c814548dbbecb79c4620ac1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_uri_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__uri.html">grpc_uri</a> *&#160;</td>
+ <td class="paramname"><em>uri</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>destroy a uri </p>
+
+</div>
+</div>
+<a class="anchor" id="aef57f54325374603bb0510e8b8b5976d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__uri.html">grpc_uri</a>* grpc_uri_parse </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>uri_text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>suppress_errors</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>parse a uri, return NULL on failure </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/uri__parser_8h.html b/doc/ref/core.internal/html/uri__parser_8h.html
new file mode 100644
index 0000000000..a854023cb3
--- /dev/null
+++ b/doc/ref/core.internal/html/uri__parser_8h.html
@@ -0,0 +1,166 @@
+<!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: src/core/client_config/uri_parser.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">uri_parser.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="uri__parser_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__uri.html">grpc_uri</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:aef57f54325374603bb0510e8b8b5976d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__uri.html">grpc_uri</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d">grpc_uri_parse</a> (const char *uri_text, int suppress_errors)</td></tr>
+<tr class="memdesc:aef57f54325374603bb0510e8b8b5976d"><td class="mdescLeft">&#160;</td><td class="mdescRight">parse a uri, return NULL on failure <a href="#aef57f54325374603bb0510e8b8b5976d">More...</a><br/></td></tr>
+<tr class="separator:aef57f54325374603bb0510e8b8b5976d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4744a0a3c814548dbbecb79c4620ac1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1">grpc_uri_destroy</a> (<a class="el" href="structgrpc__uri.html">grpc_uri</a> *uri)</td></tr>
+<tr class="memdesc:af4744a0a3c814548dbbecb79c4620ac1"><td class="mdescLeft">&#160;</td><td class="mdescRight">destroy a uri <a href="#af4744a0a3c814548dbbecb79c4620ac1">More...</a><br/></td></tr>
+<tr class="separator:af4744a0a3c814548dbbecb79c4620ac1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="af4744a0a3c814548dbbecb79c4620ac1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_uri_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__uri.html">grpc_uri</a> *&#160;</td>
+ <td class="paramname"><em>uri</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>destroy a uri </p>
+
+</div>
+</div>
+<a class="anchor" id="aef57f54325374603bb0510e8b8b5976d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__uri.html">grpc_uri</a>* grpc_uri_parse </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>uri_text</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>suppress_errors</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>parse a uri, return NULL on failure </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/uri__parser_8h_source.html b/doc/ref/core.internal/html/uri__parser_8h_source.html
new file mode 100644
index 0000000000..806396ca40
--- /dev/null
+++ b/doc/ref/core.internal/html/uri__parser_8h_source.html
@@ -0,0 +1,152 @@
+<!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: src/core/client_config/uri_parser.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_d6c86f4345f838817939dd561d8a016c.html">client_config</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">uri_parser.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="uri__parser_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_URI_PARSER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_CLIENT_CONFIG_URI_PARSER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structgrpc__uri.html"> 37</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structgrpc__uri.html#a6163de89ece765552254810174fdfc32"> 38</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__uri.html#a6163de89ece765552254810174fdfc32">scheme</a>;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7"> 39</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7">authority</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f"> 40</a></span>&#160; <span class="keywordtype">char</span> *<a class="code" href="structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f">path</a>;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;} <a class="code" href="structgrpc__uri.html">grpc_uri</a>;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<a class="code" href="structgrpc__uri.html">grpc_uri</a> *<a class="code" href="uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d">grpc_uri_parse</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *uri_text, <span class="keywordtype">int</span> suppress_errors);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> <a class="code" href="uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1">grpc_uri_destroy</a>(<a class="code" href="structgrpc__uri.html">grpc_uri</a> *uri);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="ttc" id="structgrpc__uri_html_a6163de89ece765552254810174fdfc32"><div class="ttname"><a href="structgrpc__uri.html#a6163de89ece765552254810174fdfc32">grpc_uri::scheme</a></div><div class="ttdeci">char * scheme</div><div class="ttdef"><b>Definition:</b> uri_parser.h:38</div></div>
+<div class="ttc" id="structgrpc__uri_html_a9930f3989c76fd5b36dc63943190e40f"><div class="ttname"><a href="structgrpc__uri.html#a9930f3989c76fd5b36dc63943190e40f">grpc_uri::path</a></div><div class="ttdeci">char * path</div><div class="ttdef"><b>Definition:</b> uri_parser.h:40</div></div>
+<div class="ttc" id="uri__parser_8h_html_aef57f54325374603bb0510e8b8b5976d"><div class="ttname"><a href="uri__parser_8h.html#aef57f54325374603bb0510e8b8b5976d">grpc_uri_parse</a></div><div class="ttdeci">grpc_uri * grpc_uri_parse(const char *uri_text, int suppress_errors)</div><div class="ttdoc">parse a uri, return NULL on failure </div><div class="ttdef"><b>Definition:</b> uri_parser.c:70</div></div>
+<div class="ttc" id="structgrpc__uri_html_a45c46df3b35b7f1ce728ea22c9d5dde7"><div class="ttname"><a href="structgrpc__uri.html#a45c46df3b35b7f1ce728ea22c9d5dde7">grpc_uri::authority</a></div><div class="ttdeci">char * authority</div><div class="ttdef"><b>Definition:</b> uri_parser.h:39</div></div>
+<div class="ttc" id="uri__parser_8h_html_af4744a0a3c814548dbbecb79c4620ac1"><div class="ttname"><a href="uri__parser_8h.html#af4744a0a3c814548dbbecb79c4620ac1">grpc_uri_destroy</a></div><div class="ttdeci">void grpc_uri_destroy(grpc_uri *uri)</div><div class="ttdoc">destroy a uri </div><div class="ttdef"><b>Definition:</b> uri_parser.c:143</div></div>
+<div class="ttc" id="structgrpc__uri_html"><div class="ttname"><a href="structgrpc__uri.html">grpc_uri</a></div><div class="ttdef"><b>Definition:</b> uri_parser.h:37</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/useful_8h.html b/doc/ref/core.internal/html/useful_8h.html
new file mode 100644
index 0000000000..5f99cbb09c
--- /dev/null
+++ b/doc/ref/core.internal/html/useful_8h.html
@@ -0,0 +1,450 @@
+<!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: include/grpc/support/useful.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> </div>
+ <div class="headertitle">
+<div class="title">useful.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="useful_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a298322c952526928cf8dbc7aaba7b84d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a298322c952526928cf8dbc7aaba7b84d">GPR_MIN</a>(a, b)&#160;&#160;&#160;((a) &lt; (b) ? (a) : (b))</td></tr>
+<tr class="separator:a298322c952526928cf8dbc7aaba7b84d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af50c518bb1183da84adb7d8a86cd568a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#af50c518bb1183da84adb7d8a86cd568a">GPR_MAX</a>(a, b)&#160;&#160;&#160;((a) &gt; (b) ? (a) : (b))</td></tr>
+<tr class="separator:af50c518bb1183da84adb7d8a86cd568a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac974b8c13ee716193e0ee30d9513672c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#ac974b8c13ee716193e0ee30d9513672c">GPR_CLAMP</a>(a, min, max)&#160;&#160;&#160;((a) &lt; (min) ? (min) : (a) &gt; (max) ? (max) : (a))</td></tr>
+<tr class="separator:ac974b8c13ee716193e0ee30d9513672c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f7a8aba8e044f6b20fc8a7560f28f85"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85">GPR_ROTL</a>(x, n)&#160;&#160;&#160;(((x) &lt;&lt; (n)) | ((x) &gt;&gt; (sizeof(x) * 8 - (n))))</td></tr>
+<tr class="separator:a6f7a8aba8e044f6b20fc8a7560f28f85"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ff4b278972e799dc134963a0249f316"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a5ff4b278972e799dc134963a0249f316">GPR_ROTR</a>(x, n)&#160;&#160;&#160;(((x) &gt;&gt; (n)) | ((x) &lt;&lt; (sizeof(x) * 8 - (n))))</td></tr>
+<tr class="separator:a5ff4b278972e799dc134963a0249f316"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e411d4f81a169c97c319d4e84df5747"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a0e411d4f81a169c97c319d4e84df5747">GPR_ARRAY_SIZE</a>(array)&#160;&#160;&#160;(sizeof(array) / sizeof(*(array)))</td></tr>
+<tr class="separator:a0e411d4f81a169c97c319d4e84df5747"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f884f8218a97ed9739e2dac467f0719"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a9f884f8218a97ed9739e2dac467f0719">GPR_SWAP</a>(type, a, b)</td></tr>
+<tr class="separator:a9f884f8218a97ed9739e2dac467f0719"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a28de4ed955bfc2bff309061b7820a37a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a28de4ed955bfc2bff309061b7820a37a">GPR_BITSET</a>(i, n)&#160;&#160;&#160;((*(i)) |= (1u &lt;&lt; (n)))</td></tr>
+<tr class="memdesc:a28de4ed955bfc2bff309061b7820a37a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the <em>n-th</em> bit of <em>i</em> (a mutable pointer). <a href="#a28de4ed955bfc2bff309061b7820a37a">More...</a><br/></td></tr>
+<tr class="separator:a28de4ed955bfc2bff309061b7820a37a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af797bf1803f9809b3ccceaa619078c89"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#af797bf1803f9809b3ccceaa619078c89">GPR_BITCLEAR</a>(i, n)&#160;&#160;&#160;((*(i)) &amp;= ~(1u &lt;&lt; (n)))</td></tr>
+<tr class="memdesc:af797bf1803f9809b3ccceaa619078c89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the <em>n-th</em> bit of <em>i</em> (a mutable pointer). <a href="#af797bf1803f9809b3ccceaa619078c89">More...</a><br/></td></tr>
+<tr class="separator:af797bf1803f9809b3ccceaa619078c89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c54bb2fffdaae24ba38ca5e5c53ab41"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a7c54bb2fffdaae24ba38ca5e5c53ab41">GPR_BITGET</a>(i, n)&#160;&#160;&#160;(((i) &amp; (1u &lt;&lt; (n))) != 0)</td></tr>
+<tr class="memdesc:a7c54bb2fffdaae24ba38ca5e5c53ab41"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the <em>n-th</em> bit of <em>i</em>. <a href="#a7c54bb2fffdaae24ba38ca5e5c53ab41">More...</a><br/></td></tr>
+<tr class="separator:a7c54bb2fffdaae24ba38ca5e5c53ab41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a601e1be692fe7922b52991a5d410b945"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a601e1be692fe7922b52991a5d410b945">GPR_INTERNAL_HEXDIGIT_BITCOUNT</a>(x)</td></tr>
+<tr class="separator:a601e1be692fe7922b52991a5d410b945"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f51444fe97eb3f83184b98035e3357f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="useful_8h.html#a8f51444fe97eb3f83184b98035e3357f">GPR_BITCOUNT</a>(i)</td></tr>
+<tr class="memdesc:a8f51444fe97eb3f83184b98035e3357f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns number of bits set in bitset <em>i</em>. <a href="#a8f51444fe97eb3f83184b98035e3357f">More...</a><br/></td></tr>
+<tr class="separator:a8f51444fe97eb3f83184b98035e3357f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a0e411d4f81a169c97c319d4e84df5747"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ARRAY_SIZE</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">array</td><td>)</td>
+ <td>&#160;&#160;&#160;(sizeof(array) / sizeof(*(array)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af797bf1803f9809b3ccceaa619078c89"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_BITCLEAR</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">i, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;((*(i)) &amp;= ~(1u &lt;&lt; (n)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Clear the <em>n-th</em> bit of <em>i</em> (a mutable pointer). </p>
+
+</div>
+</div>
+<a class="anchor" id="a8f51444fe97eb3f83184b98035e3357f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_BITCOUNT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">i</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">(((<a class="code" href="useful_8h.html#a601e1be692fe7922b52991a5d410b945">GPR_INTERNAL_HEXDIGIT_BITCOUNT</a>(i) + \</div>
+<div class="line"> (<a class="code" href="useful_8h.html#a601e1be692fe7922b52991a5d410b945">GPR_INTERNAL_HEXDIGIT_BITCOUNT</a>(i) &gt;&gt; 4)) &amp; \</div>
+<div class="line"> 0x0f0f0f0f) % \</div>
+<div class="line"> 255)</div>
+<div class="ttc" id="useful_8h_html_a601e1be692fe7922b52991a5d410b945"><div class="ttname"><a href="useful_8h.html#a601e1be692fe7922b52991a5d410b945">GPR_INTERNAL_HEXDIGIT_BITCOUNT</a></div><div class="ttdeci">#define GPR_INTERNAL_HEXDIGIT_BITCOUNT(x)</div><div class="ttdef"><b>Definition:</b> useful.h:64</div></div>
+</div><!-- fragment -->
+<p>Returns number of bits set in bitset <em>i</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a7c54bb2fffdaae24ba38ca5e5c53ab41"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_BITGET</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">i, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(((i) &amp; (1u &lt;&lt; (n))) != 0)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Get the <em>n-th</em> bit of <em>i</em>. </p>
+
+</div>
+</div>
+<a class="anchor" id="a28de4ed955bfc2bff309061b7820a37a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_BITSET</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">i, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;((*(i)) |= (1u &lt;&lt; (n)))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Set the <em>n-th</em> bit of <em>i</em> (a mutable pointer). </p>
+
+</div>
+</div>
+<a class="anchor" id="ac974b8c13ee716193e0ee30d9513672c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_CLAMP</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">min, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">max&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;((a) &lt; (min) ? (min) : (a) &gt; (max) ? (max) : (a))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a601e1be692fe7922b52991a5d410b945"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_INTERNAL_HEXDIGIT_BITCOUNT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x</td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((x) - (((x) &gt;&gt; 1) &amp; 0x77777777) - (((x) &gt;&gt; 2) &amp; 0x33333333) - \</div>
+<div class="line"> (((x) &gt;&gt; 3) &amp; 0x11111111))</div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="af50c518bb1183da84adb7d8a86cd568a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_MAX</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;((a) &gt; (b) ? (a) : (b))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a298322c952526928cf8dbc7aaba7b84d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_MIN</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;((a) &lt; (b) ? (a) : (b))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f7a8aba8e044f6b20fc8a7560f28f85"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ROTL</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(((x) &lt;&lt; (n)) | ((x) &gt;&gt; (sizeof(x) * 8 - (n))))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5ff4b278972e799dc134963a0249f316"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_ROTR</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">x, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td>&#160;&#160;&#160;(((x) &gt;&gt; (n)) | ((x) &lt;&lt; (sizeof(x) * 8 - (n))))</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9f884f8218a97ed9739e2dac467f0719"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GPR_SWAP</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">type, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">a, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">b&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { \</div>
+<div class="line"> type x = a; \</div>
+<div class="line"> a = b; \</div>
+<div class="line"> b = x; \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+</div><!-- fragment -->
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/useful_8h_source.html b/doc/ref/core.internal/html/useful_8h_source.html
new file mode 100644
index 0000000000..719f8fde6d
--- /dev/null
+++ b/doc/ref/core.internal/html/useful_8h_source.html
@@ -0,0 +1,170 @@
+<!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: include/grpc/support/useful.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li><li class="navelem"><a class="el" href="dir_cad3142e04109052413f2d2a2d1813b0.html">support</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">useful.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="useful_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_SUPPORT_USEFUL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_SUPPORT_USEFUL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">/* useful macros that don&#39;t belong anywhere else */</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="useful_8h.html#a298322c952526928cf8dbc7aaba7b84d"> 39</a></span>&#160;<span class="preprocessor">#define GPR_MIN(a, b) ((a) &lt; (b) ? (a) : (b))</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="useful_8h.html#af50c518bb1183da84adb7d8a86cd568a"> 40</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_MAX(a, b) ((a) &gt; (b) ? (a) : (b))</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="useful_8h.html#ac974b8c13ee716193e0ee30d9513672c"> 41</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_CLAMP(a, min, max) ((a) &lt; (min) ? (min) : (a) &gt; (max) ? (max) : (a))</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="comment">/* rotl, rotr assume x is unsigned */</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="useful_8h.html#a6f7a8aba8e044f6b20fc8a7560f28f85"> 43</a></span>&#160;<span class="preprocessor">#define GPR_ROTL(x, n) (((x) &lt;&lt; (n)) | ((x) &gt;&gt; (sizeof(x) * 8 - (n))))</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="useful_8h.html#a5ff4b278972e799dc134963a0249f316"> 44</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GPR_ROTR(x, n) (((x) &gt;&gt; (n)) | ((x) &lt;&lt; (sizeof(x) * 8 - (n))))</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="useful_8h.html#a0e411d4f81a169c97c319d4e84df5747"> 46</a></span>&#160;<span class="preprocessor">#define GPR_ARRAY_SIZE(array) (sizeof(array) / sizeof(*(array)))</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="useful_8h.html#a9f884f8218a97ed9739e2dac467f0719"> 48</a></span>&#160;<span class="preprocessor">#define GPR_SWAP(type, a, b) \</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"> type x = a; \</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"> a = b; \</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"> b = x; \</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="useful_8h.html#a28de4ed955bfc2bff309061b7820a37a"> 56</a></span>&#160;<span class="preprocessor">#define GPR_BITSET(i, n) ((*(i)) |= (1u &lt;&lt; (n)))</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="useful_8h.html#af797bf1803f9809b3ccceaa619078c89"> 59</a></span>&#160;<span class="preprocessor">#define GPR_BITCLEAR(i, n) ((*(i)) &amp;= ~(1u &lt;&lt; (n)))</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="useful_8h.html#a7c54bb2fffdaae24ba38ca5e5c53ab41"> 62</a></span>&#160;<span class="preprocessor">#define GPR_BITGET(i, n) (((i) &amp; (1u &lt;&lt; (n))) != 0)</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="useful_8h.html#a601e1be692fe7922b52991a5d410b945"> 64</a></span>&#160;<span class="preprocessor">#define GPR_INTERNAL_HEXDIGIT_BITCOUNT(x) \</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"> ((x) - (((x) &gt;&gt; 1) &amp; 0x77777777) - (((x) &gt;&gt; 2) &amp; 0x33333333) - \</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"> (((x) &gt;&gt; 3) &amp; 0x11111111))</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="useful_8h.html#a8f51444fe97eb3f83184b98035e3357f"> 69</a></span>&#160;<span class="preprocessor">#define GPR_BITCOUNT(i) \</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor"> (((GPR_INTERNAL_HEXDIGIT_BITCOUNT(i) + \</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor"> (GPR_INTERNAL_HEXDIGIT_BITCOUNT(i) &gt;&gt; 4)) &amp; \</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"> 0x0f0f0f0f) % \</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"> 255)</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_SUPPORT_USEFUL_H */</span><span class="preprocessor"></span></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/varint_8c.html b/doc/ref/core.internal/html/varint_8c.html
new file mode 100644
index 0000000000..229aac2d18
--- /dev/null
+++ b/doc/ref/core.internal/html/varint_8c.html
@@ -0,0 +1,159 @@
+<!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: src/core/transport/chttp2/varint.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">varint.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="varint_8h_source.html">src/core/transport/chttp2/varint.h</a>&quot;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2b4567fce80183246809231da7d798dc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8c.html#a2b4567fce80183246809231da7d798dc">grpc_chttp2_hpack_varint_length</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> tail_value)</td></tr>
+<tr class="separator:a2b4567fce80183246809231da7d798dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fcc1174a3686feebdb7085e30283a66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8c.html#a7fcc1174a3686feebdb7085e30283a66">grpc_chttp2_hpack_write_varint_tail</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> tail_value, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *target, int tail_length)</td></tr>
+<tr class="separator:a7fcc1174a3686feebdb7085e30283a66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2b4567fce80183246809231da7d798dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_hpack_varint_length </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>tail_value</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fcc1174a3686feebdb7085e30283a66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_write_varint_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>tail_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>tail_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/varint_8h.html b/doc/ref/core.internal/html/varint_8h.html
new file mode 100644
index 0000000000..86822cb003
--- /dev/null
+++ b/doc/ref/core.internal/html/varint_8h.html
@@ -0,0 +1,277 @@
+<!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: src/core/transport/chttp2/varint.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#define-members">Macros</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">varint.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div>
+<p><a href="varint_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a13810a2894d0705c3f1b6fd462f567bd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a>(prefix_bits)&#160;&#160;&#160;((1 &lt;&lt; (8 - (prefix_bits))) - 1)</td></tr>
+<tr class="separator:a13810a2894d0705c3f1b6fd462f567bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af09078f363c97757f6e7bfa3953cb93d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#af09078f363c97757f6e7bfa3953cb93d">GRPC_CHTTP2_VARINT_LENGTH</a>(n, prefix_bits)</td></tr>
+<tr class="separator:af09078f363c97757f6e7bfa3953cb93d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f5350a7ba20095c1c903463e74b8e54"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a6f5350a7ba20095c1c903463e74b8e54">GRPC_CHTTP2_WRITE_VARINT</a>(n, prefix_bits, prefix_or, target, length)</td></tr>
+<tr class="separator:a6f5350a7ba20095c1c903463e74b8e54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a2b4567fce80183246809231da7d798dc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a2b4567fce80183246809231da7d798dc">grpc_chttp2_hpack_varint_length</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> tail_value)</td></tr>
+<tr class="separator:a2b4567fce80183246809231da7d798dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7fcc1174a3686feebdb7085e30283a66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">grpc_chttp2_hpack_write_varint_tail</a> (<a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> tail_value, <a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *target, int tail_length)</td></tr>
+<tr class="separator:a7fcc1174a3686feebdb7085e30283a66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="a13810a2894d0705c3f1b6fd462f567bd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_MAX_IN_PREFIX</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">prefix_bits</td><td>)</td>
+ <td>&#160;&#160;&#160;((1 &lt;&lt; (8 - (prefix_bits))) - 1)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af09078f363c97757f6e7bfa3953cb93d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_VARINT_LENGTH</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">prefix_bits&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line">((n) &lt; <a class="code" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a>(prefix_bits) \</div>
+<div class="line"> ? 1 \</div>
+<div class="line"> : <a class="code" href="varint_8h.html#a2b4567fce80183246809231da7d798dc">grpc_chttp2_hpack_varint_length</a>( \</div>
+<div class="line"> (n)-<a class="code" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a>(prefix_bits)))</div>
+<div class="ttc" id="varint_8h_html_a13810a2894d0705c3f1b6fd462f567bd"><div class="ttname"><a href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a></div><div class="ttdeci">#define GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits)</div><div class="ttdef"><b>Definition:</b> varint.h:52</div></div>
+<div class="ttc" id="varint_8h_html_a2b4567fce80183246809231da7d798dc"><div class="ttname"><a href="varint_8h.html#a2b4567fce80183246809231da7d798dc">grpc_chttp2_hpack_varint_length</a></div><div class="ttdeci">int grpc_chttp2_hpack_varint_length(gpr_uint32 tail_value)</div><div class="ttdef"><b>Definition:</b> varint.c:36</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<a class="anchor" id="a6f5350a7ba20095c1c903463e74b8e54"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CHTTP2_WRITE_VARINT</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">n, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">prefix_bits, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">prefix_or, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">target, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">length&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<b>Value:</b><div class="fragment"><div class="line"><span class="keywordflow">do</span> { <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">\</a></div>
+<div class="line"><a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0"> gpr_uint8</a>* tgt = target; \</div>
+<div class="line"> if ((length) == 1) { \</div>
+<div class="line"> (tgt)[0] = (prefix_or) | (n); \</div>
+<div class="line"> } <span class="keywordflow">else</span> { \</div>
+<div class="line"> (tgt)[0] = (prefix_or) | <a class="code" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a>(prefix_bits); <a class="code" href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">\</a></div>
+<div class="line"><a class="code" href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66"> grpc_chttp2_hpack_write_varint_tail</a>( \</div>
+<div class="line"> (n)-<a class="code" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a>(prefix_bits), (tgt) + 1, (length)-1); \</div>
+<div class="line"> } \</div>
+<div class="line"> } <span class="keywordflow">while</span> (0)</div>
+<div class="ttc" id="varint_8h_html_a13810a2894d0705c3f1b6fd462f567bd"><div class="ttname"><a href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd">GRPC_CHTTP2_MAX_IN_PREFIX</a></div><div class="ttdeci">#define GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits)</div><div class="ttdef"><b>Definition:</b> varint.h:52</div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="varint_8h_html_a7fcc1174a3686feebdb7085e30283a66"><div class="ttname"><a href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">grpc_chttp2_hpack_write_varint_tail</a></div><div class="ttdeci">void grpc_chttp2_hpack_write_varint_tail(gpr_uint32 tail_value, gpr_uint8 *target, int tail_length)</div><div class="ttdef"><b>Definition:</b> varint.c:50</div></div>
+</div><!-- fragment -->
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2b4567fce80183246809231da7d798dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_hpack_varint_length </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>tail_value</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7fcc1174a3686feebdb7085e30283a66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_hpack_write_varint_tail </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a>&#160;</td>
+ <td class="paramname"><em>tail_value</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> *&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>tail_length</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/varint_8h_source.html b/doc/ref/core.internal/html/varint_8h_source.html
new file mode 100644
index 0000000000..44f4b0029b
--- /dev/null
+++ b/doc/ref/core.internal/html/varint_8h_source.html
@@ -0,0 +1,177 @@
+<!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: src/core/transport/chttp2/varint.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">varint.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="varint_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_VARINT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_VARINT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="port__platform_8h.html">grpc/support/port_platform.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">/* Helpers for hpack varint encoding */</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* length of a value that needs varint tail encoding (it&#39;s bigger than can be</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> bitpacked into the opcode byte) - returned value includes the length of the</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> opcode byte */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keywordtype">int</span> <a class="code" href="varint_8h.html#a2b4567fce80183246809231da7d798dc">grpc_chttp2_hpack_varint_length</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> tail_value);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keywordtype">void</span> <a class="code" href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">grpc_chttp2_hpack_write_varint_tail</a>(<a class="code" href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a> tail_value,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>* target, <span class="keywordtype">int</span> tail_length);</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">/* maximum value that can be bitpacked with the opcode if the opcode has a</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> prefix</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> of length prefix_bits */</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="varint_8h.html#a13810a2894d0705c3f1b6fd462f567bd"> 52</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits) ((1 &lt;&lt; (8 - (prefix_bits))) - 1)</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* length required to bitpack a value */</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="varint_8h.html#af09078f363c97757f6e7bfa3953cb93d"> 55</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_VARINT_LENGTH(n, prefix_bits) \</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> ((n) &lt; GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits) \</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"> ? 1 \</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"> : grpc_chttp2_hpack_varint_length( \</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"> (n)-GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits)))</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="varint_8h.html#a6f5350a7ba20095c1c903463e74b8e54"> 61</a></span>&#160;<span class="preprocessor">#define GRPC_CHTTP2_WRITE_VARINT(n, prefix_bits, prefix_or, target, length) \</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"> do { \</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"> gpr_uint8* tgt = target; \</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"> if ((length) == 1) { \</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"> (tgt)[0] = (prefix_or) | (n); \</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor"> } else { \</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"> (tgt)[0] = (prefix_or) | GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits); \</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor"> grpc_chttp2_hpack_write_varint_tail( \</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"> (n)-GRPC_CHTTP2_MAX_IN_PREFIX(prefix_bits), (tgt) + 1, (length)-1); \</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor"> } \</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor"> } while (0)</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_TRANSPORT_CHTTP2_VARINT_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="port__platform_8h_html"><div class="ttname"><a href="port__platform_8h.html">port_platform.h</a></div></div>
+<div class="ttc" id="port__platform_8h_html_aeeb41e29e7c7a916a4e0fb6cfb9f92e0"><div class="ttname"><a href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a></div><div class="ttdeci">uint8_t gpr_uint8</div><div class="ttdef"><b>Definition:</b> port_platform.h:307</div></div>
+<div class="ttc" id="varint_8h_html_a2b4567fce80183246809231da7d798dc"><div class="ttname"><a href="varint_8h.html#a2b4567fce80183246809231da7d798dc">grpc_chttp2_hpack_varint_length</a></div><div class="ttdeci">int grpc_chttp2_hpack_varint_length(gpr_uint32 tail_value)</div><div class="ttdef"><b>Definition:</b> varint.c:36</div></div>
+<div class="ttc" id="port__platform_8h_html_aa6abd4df815a5498d1a04b5e691a74a9"><div class="ttname"><a href="port__platform_8h.html#aa6abd4df815a5498d1a04b5e691a74a9">gpr_uint32</a></div><div class="ttdeci">uint32_t gpr_uint32</div><div class="ttdef"><b>Definition:</b> port_platform.h:309</div></div>
+<div class="ttc" id="varint_8h_html_a7fcc1174a3686feebdb7085e30283a66"><div class="ttname"><a href="varint_8h.html#a7fcc1174a3686feebdb7085e30283a66">grpc_chttp2_hpack_write_varint_tail</a></div><div class="ttdeci">void grpc_chttp2_hpack_write_varint_tail(gpr_uint32 tail_value, gpr_uint8 *target, int tail_length)</div><div class="ttdef"><b>Definition:</b> varint.c:50</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/version_8c.html b/doc/ref/core.internal/html/version_8c.html
new file mode 100644
index 0000000000..d824751078
--- /dev/null
+++ b/doc/ref/core.internal/html/version_8c.html
@@ -0,0 +1,128 @@
+<!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: src/core/surface/version.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_ea54cbef5e3ffa125df07262bbfc9627.html">surface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">version.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="grpc_8h_source.html">grpc/grpc.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a250ca547d790874bd7b5ceec25f18c51"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="version_8c.html#a250ca547d790874bd7b5ceec25f18c51">grpc_version_string</a> (void)</td></tr>
+<tr class="memdesc:a250ca547d790874bd7b5ceec25f18c51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a string representing the current version of grpc. <a href="#a250ca547d790874bd7b5ceec25f18c51">More...</a><br/></td></tr>
+<tr class="separator:a250ca547d790874bd7b5ceec25f18c51"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a250ca547d790874bd7b5ceec25f18c51"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc_version_string </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Return a string representing the current version of grpc. </p>
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__eventfd_8c.html b/doc/ref/core.internal/html/wakeup__fd__eventfd_8c.html
new file mode 100644
index 0000000000..908b696387
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__eventfd_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/wakeup_fd_eventfd.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">wakeup_fd_eventfd.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__nospecial_8c.html b/doc/ref/core.internal/html/wakeup__fd__nospecial_8c.html
new file mode 100644
index 0000000000..8aeb342e3d
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__nospecial_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/wakeup_fd_nospecial.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">wakeup_fd_nospecial.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__pipe_8c.html b/doc/ref/core.internal/html/wakeup__fd__pipe_8c.html
new file mode 100644
index 0000000000..238b2ff346
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__pipe_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/wakeup_fd_pipe.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">wakeup_fd_pipe.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__pipe_8h.html b/doc/ref/core.internal/html/wakeup__fd__pipe_8h.html
new file mode 100644
index 0000000000..b40f081acc
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__pipe_8h.html
@@ -0,0 +1,123 @@
+<!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: src/core/iomgr/wakeup_fd_pipe.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">wakeup_fd_pipe.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="wakeup__fd__posix_8h_source.html">src/core/iomgr/wakeup_fd_posix.h</a>&quot;</code><br/>
+</div>
+<p><a href="wakeup__fd__pipe_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:acc18a91c417090e877808146cd85d882"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882">grpc_pipe_wakeup_fd_vtable</a></td></tr>
+<tr class="separator:acc18a91c417090e877808146cd85d882"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="acc18a91c417090e877808146cd85d882"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a> grpc_pipe_wakeup_fd_vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__pipe_8h_source.html b/doc/ref/core.internal/html/wakeup__fd__pipe_8h_source.html
new file mode 100644
index 0000000000..50acd00c8b
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__pipe_8h_source.html
@@ -0,0 +1,143 @@
+<!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: src/core/iomgr/wakeup_fd_pipe.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">wakeup_fd_pipe.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="wakeup__fd__pipe_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_WAKEUP_FD_PIPE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_WAKEUP_FD_PIPE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="wakeup__fd__posix_8h.html">src/core/iomgr/wakeup_fd_posix.h</a>&quot;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">extern</span> <a class="code" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a> <a class="code" href="wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882">grpc_pipe_wakeup_fd_vtable</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_WAKEUP_FD_PIPE_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="wakeup__fd__pipe_8h_html_acc18a91c417090e877808146cd85d882"><div class="ttname"><a href="wakeup__fd__pipe_8h.html#acc18a91c417090e877808146cd85d882">grpc_pipe_wakeup_fd_vtable</a></div><div class="ttdeci">grpc_wakeup_fd_vtable grpc_pipe_wakeup_fd_vtable</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html"><div class="ttname"><a href="wakeup__fd__posix_8h.html">wakeup_fd_posix.h</a></div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a></div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:74</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__posix_8c.html b/doc/ref/core.internal/html/wakeup__fd__posix_8c.html
new file mode 100644
index 0000000000..d20c9c8566
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__posix_8c.html
@@ -0,0 +1,100 @@
+<!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: src/core/iomgr/wakeup_fd_posix.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">wakeup_fd_posix.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="port__platform_8h_source.html">grpc/support/port_platform.h</a>&gt;</code><br/>
+</div></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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__posix_8h.html b/doc/ref/core.internal/html/wakeup__fd__posix_8h.html
new file mode 100644
index 0000000000..a31915cc9c
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__posix_8h.html
@@ -0,0 +1,318 @@
+<!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: src/core/iomgr/wakeup_fd_posix.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a> &#124;
+<a href="#var-members">Variables</a> </div>
+ <div class="headertitle">
+<div class="title">wakeup_fd_posix.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="wakeup__fd__posix_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:aa2c03135ade856e0b50c123d60dc50ff"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff">GRPC_WAKEUP_FD_GET_READ_FD</a>(fd_info)&#160;&#160;&#160;((fd_info)-&gt;read_fd)</td></tr>
+<tr class="separator:aa2c03135ade856e0b50c123d60dc50ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a5b7e6c1bff52dd231ecb17a6716c3815"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#a5b7e6c1bff52dd231ecb17a6716c3815">grpc_wakeup_fd_info</a></td></tr>
+<tr class="separator:a5b7e6c1bff52dd231ecb17a6716c3815"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c0de4baf5c167e5e1b153bb89b77e3e"><td class="memItemLeft" align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e">grpc_wakeup_fd_vtable</a></td></tr>
+<tr class="separator:a6c0de4baf5c167e5e1b153bb89b77e3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a8af9610dd3f2910fd4943f9d2719d8be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be">grpc_wakeup_fd_global_init</a> (void)</td></tr>
+<tr class="separator:a8af9610dd3f2910fd4943f9d2719d8be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe49a7b08cd7a2ab7c7b79e64dffbd7e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e">grpc_wakeup_fd_global_destroy</a> (void)</td></tr>
+<tr class="separator:afe49a7b08cd7a2ab7c7b79e64dffbd7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3bb107d5e350a9c0ea8f1bfaa281c55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55">grpc_wakeup_fd_global_init_force_fallback</a> (void)</td></tr>
+<tr class="separator:af3bb107d5e350a9c0ea8f1bfaa281c55"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b37e7362bf286befb3c650fd305ce80"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80">grpc_wakeup_fd_create</a> (<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:a1b37e7362bf286befb3c650fd305ce80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb453784dce582205f0f62ce2f812f6f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f">grpc_wakeup_fd_consume_wakeup</a> (<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:aeb453784dce582205f0f62ce2f812f6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeff09cb231a31e1a4b900270a7c4cec8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8">grpc_wakeup_fd_wakeup</a> (<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:aeff09cb231a31e1a4b900270a7c4cec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae388f6f609c1c335b43f4abaa589feef"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef">grpc_wakeup_fd_destroy</a> (<a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info)</td></tr>
+<tr class="separator:ae388f6f609c1c335b43f4abaa589feef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
+Variables</h2></td></tr>
+<tr class="memitem:a5f252ab892107e6a1150ca77c1200e42"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42">grpc_specialized_wakeup_fd_vtable</a></td></tr>
+<tr class="separator:a5f252ab892107e6a1150ca77c1200e42"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="aa2c03135ade856e0b50c123d60dc50ff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_WAKEUP_FD_GET_READ_FD</td>
+ <td>(</td>
+ <td class="paramtype">&#160;</td>
+ <td class="paramname">fd_info</td><td>)</td>
+ <td>&#160;&#160;&#160;((fd_info)-&gt;read_fd)</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a5b7e6c1bff52dd231ecb17a6716c3815"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> <a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c0de4baf5c167e5e1b153bb89b77e3e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef struct <a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a> <a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aeb453784dce582205f0f62ce2f812f6f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_consume_wakeup </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *&#160;</td>
+ <td class="paramname"><em>fd_info</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1b37e7362bf286befb3c650fd305ce80"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_create </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *&#160;</td>
+ <td class="paramname"><em>fd_info</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae388f6f609c1c335b43f4abaa589feef"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_destroy </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *&#160;</td>
+ <td class="paramname"><em>fd_info</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afe49a7b08cd7a2ab7c7b79e64dffbd7e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_global_destroy </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8af9610dd3f2910fd4943f9d2719d8be"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_global_init </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af3bb107d5e350a9c0ea8f1bfaa281c55"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_global_init_force_fallback </td>
+ <td>(</td>
+ <td class="paramtype">void&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeff09cb231a31e1a4b900270a7c4cec8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_wakeup_fd_wakeup </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *&#160;</td>
+ <td class="paramname"><em>fd_info</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Variable Documentation</h2>
+<a class="anchor" id="a5f252ab892107e6a1150ca77c1200e42"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a> grpc_specialized_wakeup_fd_vtable</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</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>
diff --git a/doc/ref/core.internal/html/wakeup__fd__posix_8h_source.html b/doc/ref/core.internal/html/wakeup__fd__posix_8h_source.html
new file mode 100644
index 0000000000..5ea6ea8b5d
--- /dev/null
+++ b/doc/ref/core.internal/html/wakeup__fd__posix_8h_source.html
@@ -0,0 +1,216 @@
+<!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: src/core/iomgr/wakeup_fd_posix.h Source File</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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_3f1a464cbd6442b4d6b6ee306c9b0460.html">iomgr</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">wakeup_fd_posix.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="wakeup__fd__posix_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> * wakeup_fd abstracts the concept of a file descriptor for the purpose of</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> * waking up a thread in select()/poll()/epoll_wait()/etc.</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> * The poll() family of system calls provide a way for a thread to block until</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> * there is activity on one (or more) of a set of file descriptors. An</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> * application may wish to wake up this thread to do non file related work. The</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> * typical way to do this is to add a pipe to the set of file descriptors, then</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> * write to the pipe to wake up the thread in poll().</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> * Linux has a lighter weight eventfd specifically designed for this purpose.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> * wakeup_fd abstracts the difference between the two.</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> * Setup:</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> * 1. Before calling anything, call global_init() at least once.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> * 1. Call grpc_wakeup_fd_create() to get a wakeup_fd.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> * 2. Add the result of GRPC_WAKEUP_FD_FD to the set of monitored file</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> * descriptors for the poll() style API you are using. Monitor the file</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> * descriptor for readability.</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> * 3. To tear down, call grpc_wakeup_fd_destroy(). This closes the underlying</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> * file descriptor.</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> * Usage:</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> * 1. To wake up a polling thread, call grpc_wakeup_fd_wakeup() on a wakeup_fd</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> * it is monitoring.</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> * 2. If the polling thread was awakened by a wakeup_fd event, call</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> * grpc_wakeup_fd_consume_wakeup() on it.</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CORE_IOMGR_WAKEUP_FD_POSIX_H</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CORE_IOMGR_WAKEUP_FD_POSIX_H</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be">grpc_wakeup_fd_global_init</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e">grpc_wakeup_fd_global_destroy</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* Force using the fallback implementation. This is intended for testing</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> * purposes only.*/</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55">grpc_wakeup_fd_global_init_force_fallback</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="wakeup__fd__posix_8h.html#a5b7e6c1bff52dd231ecb17a6716c3815"> 72</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> <a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__vtable.html"> 74</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a> {</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e"> 75</a></span>&#160; void (*<a class="code" href="structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e">create</a>)(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e"> 76</a></span>&#160; void (*<a class="code" href="structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e">consume</a>)(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f"> 77</a></span>&#160; void (*<a class="code" href="structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f">wakeup</a>)(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2"> 78</a></span>&#160; void (*<a class="code" href="structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2">destroy</a>)(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="comment">/* Must be called before calling any other functions */</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04"> 80</a></span>&#160; int (*<a class="code" href="structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04">check_availability</a>)(void);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;} <a class="code" href="wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e">grpc_wakeup_fd_vtable</a>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__info.html"> 83</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86"> 84</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86">read_fd</a>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f"> 85</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f">write_fd</a>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;};</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="wakeup__fd__posix_8h.html#aa2c03135ade856e0b50c123d60dc50ff"> 88</a></span>&#160;<span class="preprocessor">#define GRPC_WAKEUP_FD_GET_READ_FD(fd_info) ((fd_info)-&gt;read_fd)</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80">grpc_wakeup_fd_create</a>(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f">grpc_wakeup_fd_consume_wakeup</a>(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8">grpc_wakeup_fd_wakeup</a>(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="keywordtype">void</span> <a class="code" href="wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef">grpc_wakeup_fd_destroy</a>(<a class="code" href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a> *fd_info);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment">/* Defined in some specialized implementation&#39;s .c file, or by</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> * wakeup_fd_nospecial.c if no such implementation exists. */</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <a class="code" href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a> <a class="code" href="wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42">grpc_specialized_wakeup_fd_vtable</a>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_INTERNAL_CORE_IOMGR_WAKEUP_FD_POSIX_H */</span><span class="preprocessor"></span></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_a1b37e7362bf286befb3c650fd305ce80"><div class="ttname"><a href="wakeup__fd__posix_8h.html#a1b37e7362bf286befb3c650fd305ce80">grpc_wakeup_fd_create</a></div><div class="ttdeci">void grpc_wakeup_fd_create(grpc_wakeup_fd_info *fd_info)</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html_aebd377bd042b46aa79be6fdeeb9e139e"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html#aebd377bd042b46aa79be6fdeeb9e139e">grpc_wakeup_fd_vtable::create</a></div><div class="ttdeci">void(* create)(grpc_wakeup_fd_info *fd_info)</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:75</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html_ae86eb136235fd51cbf4d459880ea6d04"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html#ae86eb136235fd51cbf4d459880ea6d04">grpc_wakeup_fd_vtable::check_availability</a></div><div class="ttdeci">int(* check_availability)(void)</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:80</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_aeff09cb231a31e1a4b900270a7c4cec8"><div class="ttname"><a href="wakeup__fd__posix_8h.html#aeff09cb231a31e1a4b900270a7c4cec8">grpc_wakeup_fd_wakeup</a></div><div class="ttdeci">void grpc_wakeup_fd_wakeup(grpc_wakeup_fd_info *fd_info)</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__info_html"><div class="ttname"><a href="structgrpc__wakeup__fd__info.html">grpc_wakeup_fd_info</a></div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:83</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_af3bb107d5e350a9c0ea8f1bfaa281c55"><div class="ttname"><a href="wakeup__fd__posix_8h.html#af3bb107d5e350a9c0ea8f1bfaa281c55">grpc_wakeup_fd_global_init_force_fallback</a></div><div class="ttdeci">void grpc_wakeup_fd_global_init_force_fallback(void)</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_aeb453784dce582205f0f62ce2f812f6f"><div class="ttname"><a href="wakeup__fd__posix_8h.html#aeb453784dce582205f0f62ce2f812f6f">grpc_wakeup_fd_consume_wakeup</a></div><div class="ttdeci">void grpc_wakeup_fd_consume_wakeup(grpc_wakeup_fd_info *fd_info)</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html_a6d03e580e5ac38e408454678f0db7b5e"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html#a6d03e580e5ac38e408454678f0db7b5e">grpc_wakeup_fd_vtable::consume</a></div><div class="ttdeci">void(* consume)(grpc_wakeup_fd_info *fd_info)</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:76</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__info_html_a7e8536d8e32a9c4e98294dfa2b98f28f"><div class="ttname"><a href="structgrpc__wakeup__fd__info.html#a7e8536d8e32a9c4e98294dfa2b98f28f">grpc_wakeup_fd_info::write_fd</a></div><div class="ttdeci">int write_fd</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:85</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html_ac4c3b97bfad7575b7a98e07c6b10fbd2"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html#ac4c3b97bfad7575b7a98e07c6b10fbd2">grpc_wakeup_fd_vtable::destroy</a></div><div class="ttdeci">void(* destroy)(grpc_wakeup_fd_info *fd_info)</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:78</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_a8af9610dd3f2910fd4943f9d2719d8be"><div class="ttname"><a href="wakeup__fd__posix_8h.html#a8af9610dd3f2910fd4943f9d2719d8be">grpc_wakeup_fd_global_init</a></div><div class="ttdeci">void grpc_wakeup_fd_global_init(void)</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_a5f252ab892107e6a1150ca77c1200e42"><div class="ttname"><a href="wakeup__fd__posix_8h.html#a5f252ab892107e6a1150ca77c1200e42">grpc_specialized_wakeup_fd_vtable</a></div><div class="ttdeci">const grpc_wakeup_fd_vtable grpc_specialized_wakeup_fd_vtable</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_a6c0de4baf5c167e5e1b153bb89b77e3e"><div class="ttname"><a href="wakeup__fd__posix_8h.html#a6c0de4baf5c167e5e1b153bb89b77e3e">grpc_wakeup_fd_vtable</a></div><div class="ttdeci">struct grpc_wakeup_fd_vtable grpc_wakeup_fd_vtable</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_afe49a7b08cd7a2ab7c7b79e64dffbd7e"><div class="ttname"><a href="wakeup__fd__posix_8h.html#afe49a7b08cd7a2ab7c7b79e64dffbd7e">grpc_wakeup_fd_global_destroy</a></div><div class="ttdeci">void grpc_wakeup_fd_global_destroy(void)</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html_a454fa9945c56e646245eb00b1f387a5f"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html#a454fa9945c56e646245eb00b1f387a5f">grpc_wakeup_fd_vtable::wakeup</a></div><div class="ttdeci">void(* wakeup)(grpc_wakeup_fd_info *fd_info)</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:77</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__vtable_html"><div class="ttname"><a href="structgrpc__wakeup__fd__vtable.html">grpc_wakeup_fd_vtable</a></div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:74</div></div>
+<div class="ttc" id="wakeup__fd__posix_8h_html_ae388f6f609c1c335b43f4abaa589feef"><div class="ttname"><a href="wakeup__fd__posix_8h.html#ae388f6f609c1c335b43f4abaa589feef">grpc_wakeup_fd_destroy</a></div><div class="ttdeci">void grpc_wakeup_fd_destroy(grpc_wakeup_fd_info *fd_info)</div></div>
+<div class="ttc" id="structgrpc__wakeup__fd__info_html_ab7484c58e72718ae50ab1bb094fecf86"><div class="ttname"><a href="structgrpc__wakeup__fd__info.html#ab7484c58e72718ae50ab1bb094fecf86">grpc_wakeup_fd_info::read_fd</a></div><div class="ttdeci">int read_fd</div><div class="ttdef"><b>Definition:</b> wakeup_fd_posix.h:84</div></div>
+</div><!-- fragment --></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>
diff --git a/doc/ref/core.internal/html/writing_8c.html b/doc/ref/core.internal/html/writing_8c.html
new file mode 100644
index 0000000000..46d3f52a3b
--- /dev/null
+++ b/doc/ref/core.internal/html/writing_8c.html
@@ -0,0 +1,197 @@
+<!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: src/core/transport/chttp2/writing.c File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="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><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><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="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</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 id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_aebb8dcc11953d78e620bbef0b9e2183.html">core</a></li><li class="navelem"><a class="el" href="dir_79268b13b30141157b35932967b4e740.html">transport</a></li><li class="navelem"><a class="el" href="dir_bf8522d75c0d0c872d1b1e399b1737b8.html">chttp2</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">writing.c File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &quot;<a class="el" href="internal_8h_source.html">src/core/transport/chttp2/internal.h</a>&quot;</code><br/>
+<code>#include &quot;<a class="el" href="http2__errors_8h_source.html">src/core/transport/chttp2/http2_errors.h</a>&quot;</code><br/>
+<code>#include &lt;<a class="el" href="log_8h_source.html">grpc/support/log.h</a>&gt;</code><br/>
+</div><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a309a5e92de22678f146956743d86f18a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="writing_8c.html#a309a5e92de22678f146956743d86f18a">grpc_chttp2_unlocking_check_writes</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing)</td></tr>
+<tr class="memdesc:a309a5e92de22678f146956743d86f18a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Transport writing call flow: <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_unlocking_check_writes to see if writes are required; if they are, <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_perform_writes to do the writes. <a href="#a309a5e92de22678f146956743d86f18a">More...</a><br/></td></tr>
+<tr class="separator:a309a5e92de22678f146956743d86f18a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8fa6e3087336e9d487f3987148cc3930"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="writing_8c.html#a8fa6e3087336e9d487f3987148cc3930">grpc_chttp2_perform_writes</a> (<a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing, <a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *endpoint)</td></tr>
+<tr class="separator:a8fa6e3087336e9d487f3987148cc3930"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aec2dafff34e07d99d473de28a658614f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="writing_8c.html#aec2dafff34e07d99d473de28a658614f">grpc_chttp2_cleanup_writing</a> (<a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *transport_global, <a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *transport_writing)</td></tr>
+<tr class="separator:aec2dafff34e07d99d473de28a658614f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="aec2dafff34e07d99d473de28a658614f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_cleanup_writing </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>transport_global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8fa6e3087336e9d487f3987148cc3930"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc_chttp2_perform_writes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>transport_writing</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td>
+ <td class="paramname"><em>endpoint</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a309a5e92de22678f146956743d86f18a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc_chttp2_unlocking_check_writes </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> *&#160;</td>
+ <td class="paramname"><em>global</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> *&#160;</td>
+ <td class="paramname"><em>writing</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Transport writing call flow: <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_unlocking_check_writes to see if writes are required; if they are, <a class="el" href="chttp2__transport_8c.html">chttp2_transport.c</a> calls grpc_chttp2_perform_writes to do the writes. </p>
+<p>Once writes have been completed (meaning another write could potentially be started), grpc_chttp2_terminate_writing is called. This will call grpc_chttp2_cleanup_writing, at which point the write phase is complete. Someone is unlocking the transport mutex: check to see if writes are required, and schedule them if so </p>
+
+</div>
+</div>
+</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>